diff --git a/__pycache__/RotTable.cpython-37.pyc b/__pycache__/RotTable.cpython-37.pyc
index e6bef50c3581cf2f06a53777c7291030d276cecd..64b41c9070f8c3bcccf58f1c80d64aa9e723cf13 100644
Binary files a/__pycache__/RotTable.cpython-37.pyc and b/__pycache__/RotTable.cpython-37.pyc differ
diff --git a/__pycache__/Traj3D.cpython-37.pyc b/__pycache__/Traj3D.cpython-37.pyc
index 865cc612f429be0814ee850289aa455b69755f50..5bcb4d8418f4525b71a8bb56bf694fb3e384bafb 100644
Binary files a/__pycache__/Traj3D.cpython-37.pyc and b/__pycache__/Traj3D.cpython-37.pyc differ
diff --git a/algogenetique.py b/algogenetique.py
index cbcde6366a75846200845f298aabc3b3588fda1c..2dab902ae6d3fb5d5936b82b2d06d8621ccb46ff 100644
--- a/algogenetique.py
+++ b/algogenetique.py
@@ -31,7 +31,7 @@ def main(N,tmax,pmutation, proportion,brin="plasmid_8k.fasta"):
             if individu.score>max:
                 best=individu
                 max=individu.score
-        afficher(People)
+        # afficher(People)
         L.append(max)
         #print(L)
     plt.plot([i for i in range(tmax)], L)
@@ -39,7 +39,7 @@ def main(N,tmax,pmutation, proportion,brin="plasmid_8k.fasta"):
     return(best)
 
 
-main(10,50,0,5)
+main(6,8,0.01,2)
 
 
 
diff --git a/individu.py b/individu.py
index fbc09a35d5937ef2e9593154befc0f2a22a7f9cc..18b2158c1619aa48cf6bfb811a9d606be46bbd4b 100644
--- a/individu.py
+++ b/individu.py
@@ -8,8 +8,6 @@ P1 = 0.015
 
 class Individu():
 
-
-
     def __init__(self, table):
         self.table = table
         self.score = None
@@ -61,3 +59,9 @@ class Individu():
 # test = Individu(table)
 # test.evaluate("AAAGGATCTTCTTGAGATCCTTTTTTTCTGCGCGTAATCTGCTGCCAGTAAACGAAAAAACCGCCTGGGGAGGCGGTTTAGTCGAA")
 # print(test.score)
+
+
+qqun=Individu(RotTable())
+qqun.table.rot_table={'AA': [35.576558502141, 7.433901511509349, -154], 'AC': [33.22048222654215, 5.25191751302917, 143], 'AG': [26.446029097301288, 6.052240462237622, -2], 'AT': [30.47045254036881, 1.333716025628036, 0], 'CA': [34.00734209585039, 33.70710613604862, -64], 'CC': [33.61019622767888, 3.713127032109607, -57], 'CG': [29.664061041382677, 6.725155507162601, 0], 'CT': [26.446029097301288, 6.052240462237622, 2], 'GA': [36.655773481637176, 10.45337581740701, 120], 'GC': [42.26984493493484, 3.5310453395352823, 180], 'GG': [33.61019622767888, 3.713127032109607, -57], 'GT': [33.22048222654215, 5.25191751302917, 143], 'TA': [36.951508786388914, -2.5174751178033303, 0], 'TC': [36.655773481637176, 10.45337581740701, -120], 'TG': [34.00734209585039, 33.70710613604862, -64], 'TT': [35.576558502141, 7.433901511509349, -154]}
+qqun.evaluate("AAAGGATCTTCTTGAGATCCTTTTTTTCTGCGCGTAATCTGCTGCCAGTAAACGAAAAAACCGCCTGGGGAGGCGGTTTAGTCGAA")
+print(qqun.score)
diff --git a/inutile.py b/inutile.py
index 1a2947e5d6d776eaab4c42387fcd36f075272bea..420a646fc6e25c17b5aec102de8321736ae1ebaf 100644
--- a/inutile.py
+++ b/inutile.py
@@ -31,7 +31,7 @@ class table_rotation(rotation):
         self.dict = {doublet : rotation(doublet) for doublet in ORIGINAL_ROT_TABLE}
 
 table1 = table_rotation()
-print(table1.dict["AA"].x)
+# print(table1.dict["AA"].x)
 
 #table1.dict --> {'AA': <__main__.rotation object at 0x000001A722E1BAC8>, 'AC': <__main__.rotation object at 0x000001A722E1BB00>, 'AG': <__main__.rotation object at 0x000001A729A66A58>, 'AT': <__main__.rotation object at 0x000001A729A66A20>, 'CA': <__main__.rotation object at 0x000001A729A669E8>, 'CC': <__main__.rotation object at 0x000001A729A66A90>, 'CG': <__main__.rotation object at 0x000001A729A66B00>, 'CT': <__main__.rotation object at 0x000001A729A66B70>, 'GA': <__main__.rotation object at 0x000001A729B88D68>, 'GC': <__main__.rotation object at 0x000001A729B88DA0>, 'GG': <__main__.rotation object at 0x000001A729B88DD8>, 'GT': <__main__.rotation object at 0x000001A729B88E10>, 'TA': <__main__.rotation object at 0x000001A729B88E48>, 'TC': <__main__.rotation object at 0x000001A729B88E80>, 'TG': <__main__.rotation object at 0x000001A729B88EB8>, 'TT': <__main__.rotation object at 0x000001A729B88EF0>}
 #table1.dict["AA"] ---> <__main__.rotation object at 0x000001A722E1BAC8> (qui est l'object rotation)
diff --git a/population.py b/population.py
index dc51f8c876c286ad1822991da190f5dcf3804b40..25f612d53f3e06512efb23ac15e5ed3426e9fbc7 100644
--- a/population.py
+++ b/population.py
@@ -1,5 +1,5 @@
-import random
-from random import random, randint, randrange
+
+from random import *
 from individu import Individu
 from RotTable import RotTable
 from croisement import croisement_un_point, croisement_deux_points
@@ -45,25 +45,28 @@ class Population:
         meilleur = self.indiv[0]
         for individu in self.indiv :
             if meilleur.score < individu.score:
+                print("meilleur, individu: ", meilleur.score, individu.score)
                 meilleur = individu
         newself = [meilleur]
-        print("\n \n \nmeilleur", meilleur.table.rot_table, "\n \nscore", meilleur.score)
-        vu=set()                        
+        # print("\n \n \nmeilleur", meilleur.table.rot_table, "\n \nscore", meilleur.score)
+                           
         t=randrange(0,self.n)
-        m=randrange(0,self.n)             
+        m=randrange(0,self.n)
+        non_vu = [i for i in range(0, self.n)]          
         while len(newself)<p:
-            while m in vu:
-                m=randrange(0,self.n)
-            while t in vu:
-                t=randrange(0,self.n)
+            m = choice(non_vu)
+            non_vu.remove(m)
+            t = choice(non_vu)
+            non_vu.remove(t)
+            
             x=self.indiv[m]
             y=self.indiv[t]
-            vu.add(t)
-            vu.add(m)
             if x.score>=y.score:
                 newself.append(x)
             else:
                 newself.append(y)
+        for i in range(0, len(newself)):
+            print(newself[i].score)
         self = self.modifier_population(newself)
 
     def selection_par_rang(self,p = None):