Пример #1
0
def run():
    """Run the agent for a finite number of trials."""

    options = parseOptions()

    env = Environment()  # create environment (also adds some dummy traffic)
    sim = Simulator(
        env, update_delay=0, display=options.display
    )  # create simulator (uses pygame when display=True, if available)

    results = {}

    from settings import params
    for agent, symbol in [(options.player1, 1), (options.player2, -1)]:
        kwargs = params[agent]
        env.add_agent(symbol=symbol,
                      file=options.file,
                      clear=options.clear,
                      save=options.save,
                      **kwargs)

    sim.run(
        n_trials=options.iterations)  # run for a specified number of trials

    for agent in env.agents:
        results["X" if agent.symbol == 1 else 'O'] = agent.wins

    print results

    dispatcher.send(signal='main.complete', sender={})
Пример #2
0
def run():
    """Run the agent for a finite number of trials."""

    options = parseOptions()

    env = Environment()  # create environment (also adds some dummy traffic)
    sim = Simulator(env, update_delay=0, display=options.display) # create simulator (uses pygame when display=True, if available)

    results = {}

    from settings import params
    for agent, symbol in [(options.player1, 1), (options.player2, -1)]:
        kwargs = params[agent]
        env.add_agent(
            symbol=symbol, 
            file=options.file, 
            clear=options.clear,
            save=options.save,
            **kwargs)

    sim.run(n_trials=options.iterations)  # run for a specified number of trials

    for agent in env.agents:
        results["X" if agent.symbol == 1 else 'O'] = agent.wins

    print results

    dispatcher.send(signal='main.complete', sender={})
Пример #3
0
def main():

    env = Environment(10, 10, magnification=80)
    robot = Agent(env)
    env.add_agent(robot)
    env.starting_agent_location()

    for i in range(50):

        # make the robot sense the env and update beiliefs
        robot.sense(env.get_obs())
        env.draw()
        env.step(robot.do_move())

    # print(env.agent_state)
    # print(robot)
    # print(robot.p.sum())

    return None
Пример #4
0
        self.environment = environment

    def run(self):
        while(True):
            # Movement of targets eq.(2):
            if(np.random.random() > 0.9999):
                print("Change speed!")
                with self.lock:
                    self.environment.set_targets_command((np.random.random((self.environment.xi.shape))-0.5))
            
            self.environment.update()
            time.sleep(self.environment.t)

env = Environment(10,10,0.01, True)

for i in range(5):
    env.add_target(np.random.random()*2.5-2.5, np.random.random()*2.5-2.5, 0.005, 0.005)
    env.add_agent(np.random.random()*2.5-2.5, np.random.random()*2.5-2.5, 0.005, 0.005)
    # env.add_agent(np.random.random()*2.5-2.5, np.random.random()*2.5-2.5, 0.005, 0.005)

main = Main(env)
main.start()
#main.run()
plt.gcf()
plt.show()
# plt.savefig("output/" + "MRS" + str(time.time()) + ".png")
main.join()

# To recover a final video of de execution:
# ffmpeg -f image2 -s 1920x1080 -i output/MRS%5d.png -vcodec libx264 -crf 25 -pix_fmt yuv420p MRS.mp4