diff --git a/skais/ais/ais_trajectory.py b/skais/ais/ais_trajectory.py
index 1f605ce0b77c60165efa7f0c11bd9d2eed0368d9..37d58bb4802d4209d1b50f22c1199c99080ba1d4 100644
--- a/skais/ais/ais_trajectory.py
+++ b/skais/ais/ais_trajectory.py
@@ -153,7 +153,7 @@ def generate_points_with_features(data, positions, features_vectors, bounds, nod
 
 
 @jit(nopython=True)
-def generate_links(data, positions, height, width, lower_lat, upper_lat, lower_lon, upper_lon, values, interpolate=None):
+def generate_links(data, positions, height, width, lower_lat, upper_lat, lower_lon, upper_lon, values, interpolate=False):
     lon, lat = positions[0, 0], positions[0, 1]
 
     current_value = values[0]
@@ -164,7 +164,7 @@ def generate_links(data, positions, height, width, lower_lat, upper_lat, lower_l
         x_nxt, y_nxt = get_coord(latitude, longitude, height, width, lower_lat, upper_lat, lower_lon,
                                  upper_lon)
         lon, lat = longitude, latitude
-        if interpolate is not None and nxt_value != current_value:
+        if interpolate and (nxt_value != current_value).all() and (x_prv != x_nxt) and (y_prev!= y_nxt):
             dist = dist_on_grid(x_prv, y_prev, x_nxt, y_nxt)
             for x, y in bresenham(x_prv, y_prev, x_nxt, y_nxt):
                 dist_prev = dist_on_grid(x_prv, y_prev, x, y)
@@ -359,7 +359,7 @@ class AISTrajectory(AISPoints):
         return result
 
     def generate_array_from_positions(self, height=256, width=256, link=True, bounding_box='fit', ref_index=-1,
-                                      features=None, node_size=0, interpolation=None):
+                                      features=None, node_size=0, interpolation=False):
 
         positions = self.df[['longitude', 'latitude']].to_numpy()
 
@@ -399,8 +399,8 @@ class AISTrajectory(AISPoints):
 
         else:
             generate_points_with_features(data, positions, features_vectors, np.array(bounds), node_size, height, width,
-                                          lower_lat, upper_lat, lower_lon, upper_lon, )
+                                          lower_lat, upper_lat, lower_lon, upper_lon)
             if link:
                 generate_links(data, positions, height, width, lower_lat, upper_lat, lower_lon, upper_lon,
-                               generate_values(features_vectors, bounds), interpolation)
+                               generate_values(features_vectors, bounds), interpolate=interpolation)
         return data