diff --git a/__pycache__/RotTable.cpython-37.pyc b/__pycache__/RotTable.cpython-37.pyc index c4ba5fb8c0ad48c03b7f8a7c221b50aa6d3855e3..05beb1065b7ec82c0c9134821bc9c0f226cfd40d 100644 Binary files a/__pycache__/RotTable.cpython-37.pyc and b/__pycache__/RotTable.cpython-37.pyc differ diff --git a/__pycache__/croisement.cpython-37.pyc b/__pycache__/croisement.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..98b13d554544eea09ac20c1e882b98c4ee553e0c Binary files /dev/null and b/__pycache__/croisement.cpython-37.pyc differ diff --git a/__pycache__/population.cpython-37.pyc b/__pycache__/population.cpython-37.pyc index 4c15af9fe50e86ecdb3fec1091fef3c0890d0a6e..14e980ef62041555b1d3d28efc6dd1b0cc4e3b90 100644 Binary files a/__pycache__/population.cpython-37.pyc and b/__pycache__/population.cpython-37.pyc differ diff --git a/algogenetique.py b/algogenetique.py index dbd21924dbc80a42ad7ad1200fe4bc0cc7ab1154..9b91cb95af25a08044e3ecc9e682ca1e82153211 100644 --- a/algogenetique.py +++ b/algogenetique.py @@ -2,15 +2,15 @@ import mathutils import math import numpy import RotTable -import individu -import population +from individu import Individu +from population import Population import croisement from Traj3D import * from random import random import matplotlib.pyplot as plt -def main(N,tmax,pmutation, proportion, selection="selection_duel", croisement="croisement_un_point",brin="plasmid_8k.fasta"): +def main(N,tmax,pmutation, proportion,brin="plasmid_8k.fasta"): '''lineList = [line.rstrip('\n') for line in open(brin)] brin = ''.join(lineList[1:])''' L=[] @@ -20,18 +20,20 @@ def main(N,tmax,pmutation, proportion, selection="selection_duel", croisement="c best=None for individu in People.indiv: individu.evaluate("AAAGGATCTTCTTGAGATCCTTTTTTTCTGCGCGTAATCTGCTGCCAGTAAACGAAAAAACCGCCTGGGGAGGCGGTTTAGTCGAA") - People.reproduction(selection,p = proportion,enfant=croisement) + People.reproduction(p = proportion) for individu in People.indiv: individu.mutation(pmutation) for individu in People.indiv: + individu.evaluate("AAAGGATCTTCTTGAGATCCTTTTTTTCTGCGCGTAATCTGCTGCCAGTAAACGAAAAAACCGCCTGGGGAGGCGGTTTAGTCGAA") if individu.score>max: best=individu max=individu.score - L.append(max) - plt.plot([i for i in range(tmax)], L) - plt.show() + L.append(max) + print(L) + plt.plot([i for i in range(tmax)], L) + plt.show() return(individu) -main(4,10,0.015,2) +main(100,50,0.015,2) diff --git a/population.py b/population.py index 5fe490a6d715086ff6e363f27c68d0f47d01110f..f395d5d5de3b21d6d05697b1413670cce8e6c32d 100644 --- a/population.py +++ b/population.py @@ -156,7 +156,7 @@ def test(): print("\n REPRODUCTION \n") afficher(popu) -test() +#test()