def test(best=False): with tf.Session() as sess: agent = Agent(sess) agent.sess = sess SAVER.set_sess(sess) SAVER.load(agent, best) agent.env.set_render(True) agent.play(3)
from Displayer import DISPLAYER from Saver import SAVER import parameters if __name__ == '__main__': tf.reset_default_graph() with tf.Session() as sess: agent = Agent(sess) SAVER.set_sess(sess) SAVER.load(agent) print("Beginning of the run") try: agent.run() except KeyboardInterrupt: pass print("End of the run") SAVER.save(agent.total_steps) DISPLAYER.disp() # agent.play(10) # agent.play(3, "results/gif/".format(parameters.ENV)) agent.close()
with tf.device("/cpu:0"): # Create the global network render = settings.DISPLAY master_agent = Agent(0, sess, render=render, master=True) # Create all the workers workers = [] for i in range(settings.THREADS): workers.append(Agent(i + 1, sess, render=False)) coord = tf.train.Coordinator() SAVER.set_sess(sess) SAVER.load() # Run threads that each contains one worker worker_threads = [] for i, worker in enumerate(workers): print("Threading worker", i + 1) sleep(0.05) work = lambda: worker.work(sess, coord) t = threading.Thread(target=(work)) t.start() worker_threads.append(t) sleep(0.1) try: # Wait till all the workers are done coord.join(worker_threads)
device = "/cpu:0" stop_requested = False print("Creating the global network...") global_network = Network(0, device) env = Environment(True) # prepare session sess = tf.Session(config=tf.ConfigProto(log_device_placement=False, allow_soft_placement=True)) sess.run(tf.global_variables_initializer()) SAVER.set_sess(sess) settings.LOAD = True global_total_time, wall_time, total_eps, total_steps = SAVER.load() for i in range(NB_PLAY): done = False reward, step = 0, 0 state = env.reset() global_network.reset_state() while not done: pi, value = global_network.run_policy_and_value(sess, state) a = np.random.choice(settings.ACTION_SIZE, p=pi) state, r, done, _ = env.act(a) reward += r
import tensorflow as tf from Agent import Agent from Displayer import DISPLAYER from Saver import SAVER import parameters if __name__ == '__main__': tf.reset_default_graph() with tf.Session() as sess: agent = Agent(sess) SAVER.set_sess(sess) SAVER.load(agent, best=True) agent.play(1, "results/gif/".format(parameters.ENV)) agent.close()