Exemple #1
0
imp_net.share_memory()
#eval_net.share_memory()
#eval_target_net.share_memory()
#env = Environment()
#env = myGym()

# populate memory
# let improver populate first
SyncManager.register('ReplayMemory',
                     ReplayMemory,
                     exposed=['getCapacity', 'push', 'sample', '__len__'])
manager = SyncManager()
#memory = ReplayMemory(MEMORY_SIZE)
manager.start()
lst = manager.list()
memory = manager.ReplayMemory(MEMORY_SIZE, lst)
shared = manager.dict({'memory': memory, 'SENT_FLAG': True, 'weights': None})

#print('create improver, evaluator...')
#time.sleep(1)
improver = Improver(imp_net, shared, myGym())
# improver is executed by the main process
evaluator = Evaluator(shared)

threads = []
#improver.start()
evaluator.start()  # fork & exec the evaluator
improver.run()
threads.append(evaluator)

for t in threads: