コード例 #1
0
import random
import pyrosim
import matplotlib.pyplot as plt
from robot import ROBOT
from individual import INDIVIDUAL

for i in range(0, 10):

    individual = INDIVIDUAL()

    individual.evaluate()

    # sim = pyrosim.Simulator(eval_time=500, play_paused=False)
    #
    # robot = ROBOT(sim, random.random()*2-1)
    #
    # # Start
    #
    # sim.start()
    #
    # sim.wait_to_finish()
    #
    # # y
    # sensorData = sim.get_sensor_data(sensor_id=robot.P4, svi=1)
    #
    # print(sensorData[-1])
    #
    # # Analyze sensor data
    #
    # f = plt.figure()
    #
コード例 #2
0
from individual import INDIVIDUAL

'''
Instructions:
Implement hill climber search
https://www.reddit.com/r/ludobots/wiki/pyrosim/hillclimber

Blue diamond is the y coordinate
'''

plot_flag = True
visualize_best = True
fitness_robots = []

parent = INDIVIDUAL()
parent.evaluate(blind_mode=False)
print(parent.fitness)
for i in range(100):
    child = copy.deepcopy(parent)
    child.mutate()
    child.evaluate(blind_mode=True)

    print('[g:{}] - [Pw:{}] - [P:{}] - [c:{}]'.format(i, parent.genome, parent.fitness, child.fitness))

    if (child.fitness > parent.fitness):
        parent = child
        fitness_robots.append(child.fitness)
        child.evaluate(blind_mode=True)

        # Save the strongest model
        f = open('robot.p', 'wb')
コード例 #3
0
import matplotlib.pyplot as plt
import pickle
from robot import ROBOT
from individual import INDIVIDUAL
from copy import deepcopy

#create objects
parent = INDIVIDUAL()
print(parent.evaluate(play_blind=True))

for i in range(100):
    child = deepcopy(parent)
    child.mutate()
    print(
        f'[g: {i}] [pw: {parent.genome}] [p: {parent.fitness}] [c: {child.evaluate(play_blind=True)}]'
    )

    if (child.fitness > parent.fitness):
        parent = child
        # f = open('robot.p','wb')
        # pickle.dump(parent , f )
        # f.close()
        # child.evaluate()
コード例 #4
0
import random
import pyrosim
import matplotlib.pyplot as plt
from robot import ROBOT
import copy
import pickle
from individual import INDIVIDUAL

parent = INDIVIDUAL()
parent.evaluate(True)

for i in range(0, 100):

    child = copy.deepcopy(parent)
    child.mutate()
    child.evaluate(True)

    print("[g: %s] [pw: %s] [p: %s] [c: %s]" %
          (i + 1, parent.genome, parent.fitness, child.fitness))

    if child.fitness > parent.fitness:

        child.evaluate(True)
        parent = child

        # f = open("robot.p", "wb")
        #
        # pickle.dump(parent, f)
        #
        # f.close()