From 3874ae398a91e94fed5cda7fd398a9033995d35d Mon Sep 17 00:00:00 2001 From: Gauthier Roy <gauthierroy83@gmail.com> Date: Mon, 27 Jan 2020 17:14:03 +0100 Subject: [PATCH] mieux avec sauvegarde --- individu.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/individu.py b/individu.py index e69de29..02c676c 100644 --- a/individu.py +++ b/individu.py @@ -0,0 +1,33 @@ +from table_rotation import table_rotation +from traj3D import * +import numpy as np +from math import sqrt + +class Individu(): + + def __init__(self, rot_table): + self.rot_table = rot_table + self.score = None + + def evaluate(self, brin): + traj = Traj3D() + traj.compute(brin, self.rot_table) + traj_array = np.array(traj.getTraj()) + + first_nucleotide = traj_array[0, :] + last_nucleotide = traj_array[-1, :] + distance = sqrt(sum((last_nucleotide - last_nucleotide) ** 2)) + + first_name = brin[0] + last_name = brin[-1] + + rot_computed = rot_table[last_name+first_name] + rot_traj = first_name - last_name + diff_angle = sum(abs(rot_computed - rot_traj)) + + self.score = 1/(distance + diff_angle) + + + def mutation(self): + + return mutation -- GitLab