diff --git a/__pycache__/RotTable.cpython-36.pyc b/__pycache__/RotTable.cpython-36.pyc
index 7a6158dd6374a43aa0874b27bdbf65bcfb4208a1..a8064bb45dbaad46db289f9e730b7dd816423ae4 100644
Binary files a/__pycache__/RotTable.cpython-36.pyc and b/__pycache__/RotTable.cpython-36.pyc differ
diff --git a/__pycache__/Traj3D.cpython-36.pyc b/__pycache__/Traj3D.cpython-36.pyc
index 31651032f232ae34320d1f923ad5b5548331aa50..b5c1da4e7f16d56be5828446b2f8423d03027c1c 100644
Binary files a/__pycache__/Traj3D.cpython-36.pyc and b/__pycache__/Traj3D.cpython-36.pyc differ
diff --git a/individu.py b/individu.py
index 0b14b4cf7baf06b66c3374a6bae2f16c6fc795ff..3c652c85b782d491cabfc214baefcdef6f3d34eb 100644
--- a/individu.py
+++ b/individu.py
@@ -1,7 +1,7 @@
 from RotTable import RotTable
 from Traj3D import *
 import numpy as np
-from math import sqrt
+from math import sqrt, inf
 
 class Individu():
 
@@ -12,20 +12,30 @@ class Individu():
     def evaluate(self, brin):
         traj = Traj3D()
 
-        fisrt_nuc = brin[0]
-        last_nu = brin[-1]
+        numb_ajout = 3
 
-        traj.compute(brin + fisrt_nuc, self.table)
+        fisrt_seq = brin[0:numb_ajout]
+        last_seq = brin[-numb_ajout:]
+
+        traj.compute(last_seq + brin + fisrt_seq, self.table)
         traj_array = np.array(traj.getTraj())
 
-        first_nuc_coordonate = traj_array[0, 0:3]
-        last_nuc_coordonate = traj_array[-2, 0:3]
+        list_distance = []
+
+        for i in range(numb_ajout):
+                first_nuc_coordonate = traj_array[numb_ajout+i, 0:3]
+                first_nuc_coordonate_compute = traj_array[-(numb_ajout-i), 0:3]
+                
+                last_nuc_coordonate = traj_array[-(2*numb_ajout-i), 0:3]
+                last_nuc_coordonate_compute = traj_array[i, 0:3]
+
+                distance_first_nuc = np.linalg.norm(first_nuc_coordonate - first_nuc_coordonate_compute, ord=2)
+                distance_last_nuc = np.linalg.norm(last_nuc_coordonate - last_nuc_coordonate_compute, ord=2)
+
+                list_distance += [distance_first_nuc, distance_last_nuc]
+
 
-        test = np.linalg.norm(first_nuc_coordonate - last_nuc_coordonate, ord=2)
-        distance = sqrt(sum((first_nuc_coordonate - last_nuc_coordonate) ** 2))
-        diff_ideal_distance = abs(3.38 - distance)
-        diff_ideal_distance_2 = abs(3.38 - test)
-        self.score = (1/(diff_ideal_distance ), 1/diff_ideal_distance_2)
+        self.score = 1/max(list_distance)
         
     
     def mutation(self):