From 328064cb7cc33ce5de9d6c88f9a1cca32778ef4e Mon Sep 17 00:00:00 2001 From: George Lacey Date: Wed, 27 Sep 2017 13:48:39 +0100 Subject: [PATCH] Set values between 0.0 and 1.0 only --- src/individual.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/individual.py b/src/individual.py index 32abc55..9fa0c41 100644 --- a/src/individual.py +++ b/src/individual.py @@ -1,4 +1,4 @@ -from math import pow, sin, pi +from math import pow, sin, pi, cos from random import Random rand = Random() @@ -7,8 +7,8 @@ rand = Random() class Individual(object): def __init__(self): - self.x = rand.uniform(-100, 100) - self.y = rand.uniform(-100, 100) + self.x = self.get_rand_param() + self.y = self.get_rand_param() @classmethod def from_params(cls, x, y): @@ -34,6 +34,10 @@ class Individual(object): def mutate(self): if rand.randint(1, 10) % 2 == 0: - self.x = rand.random() + self.x = self.get_rand_param() else: - self.y = rand.random() + self.y = self.get_rand_param() + + @staticmethod + def get_rand_param(): + return rand.uniform(0, 1)