from individual import INDIVIDUAL import copy, pickle # ---------------------- parent = INDIVIDUAL() parent.Evaluate(True) print parent.fitness for g in range(0, 200): child = copy.deepcopy(parent) child.Mutate() child.Evaluate(True) print '[g:', g, ']', print '[pw:', parent.genome, ']', print '[p:', parent.fitness, ']', print '[c:', child.fitness, ']' if (child.fitness > parent.fitness): parent = child
from robot import ROBOT from individual import INDIVIDUAL import pyrosim import matplotlib.pyplot as plt import random for i in range(0, 10): individual = INDIVIDUAL() individual.Evaluate() print(individual.fitness) ''' Sensor data from red cylinder sensorData = sim.get_sensor_data(sensor_id = P2) print(sensorData) Plot of sensor data f = plt.figure() panel = f.add_subplot(111) plt.plot(sensorData) panel.set_ylim(-1, +2) plt.show() '''
import pyrosim import matplotlib.pyplot as plt from robot import ROBOT from individual import INDIVIDUAL import random import copy import pickle parent = INDIVIDUAL() parent.Evaluate(True) print(parent.fitness) for i in range(100): child = copy.deepcopy(parent) child.Mutate() child.Evaluate(True) print('[g:', i,'] [pw:', parent.genome, '] [p:', parent.fitness, '] [c:', child.fitness, ']') if (child.fitness > parent.fitness): parent = child child.Evaluate(True) # f = open('robot.p', 'wb') # pickle.dump(parent, f) # f.close()
from pyrosim import PYROSIM from robot import ROBOT from individual import INDIVIDUAL import copy as cp import pickle import random parent = INDIVIDUAL() for i in range(0,100): child = cp.deepcopy(parent) child.Mutate() parent.Evaluate(hideSim=True) child.Evaluate(hideSim=True) print("[g: ", i, "] [PW: ", parent.genome," ][P: ", parent.fitness, "] [C:", child.fitness, "]") if (child.fitness > parent.fitness): parent = child f = open("robot.p", "wb") pickle.dump(parent, f) f.close() parent.Evaluate(hideSim=False) ######################################################################################################################## # Data Visualization ########################################################################################################################
import pyrosim from individual import INDIVIDUAL import matplotlib.pyplot as plt from robot import ROBOT import random import copy import pickle parent = INDIVIDUAL() parent.Evaluate(False) print(parent.fitness) for i in range(0, 100): child = copy.deepcopy(parent) child.Mutate() child.Evaluate(True) print("[g:", i, "]", "[pw:", parent.genome, "]", "[p:", parent.fitness, "]", "[C:", child.fitness, "]") if (child.fitness > parent.fitness): child.Evaluate(False) parent = child f = open('robot.p', 'wb') #ojo, colocar wb en vez de solo w pickle.dump(parent, f) f.close() #for i in range(0,10): # individual=INDIVIDUAL() # individual.Evaluate() # print(individual.fitness) # sim=pyrosim.Simulator(eval_time=100) # robot=ROBOT(sim,random.random()*2-1)
import constants as c from individual import INDIVIDUAL def Random_X(): return random.random()*(c.endX-c.startX) + c.startX def Random_Y(): return random.random()*(c.endY-c.startY) + c.startY def Random_Theta(): return random.random()*2.0*math.pi # --------------- Start of the program --------------- ind = INDIVIDUAL() initialX = Random_X() initialY = Random_Y() initialTheta = Random_Theta() ind.Evaluate(initialX,initialY,initialTheta,pp=False,pb=False) print 'total light collected = ' + str(ind.fitness)