devsisters / DQN-tensorflow

Tensorflow implementation of Human-Level Control through Deep Reinforcement Learning
MIT License
2.46k stars 765 forks source link

UnboundLocalError: local variable 'avg_ep_reward' referenced before assignment #2

Closed YigitDemirag closed 8 years ago

YigitDemirag commented 8 years ago

When I run training with python main.py --env_name=Breakout-v0 --is_train=True --display=True --cpu=True , I got this output after a couple of training episodes:

python main.py --env_name=Breakout-v0 --istrain=True --display=True --cpu=True [] GPU : 0.5000 [2016-05-20 17:00:38,585] Making new env: Breakout-v0 {'_save_step': 50000, '_test_step': 10000, 'action_repeat': 4, 'backend': 'tf', 'batch_size': 32, 'cnn_format': 'NHWC', 'discount': 0.99, 'display': True, 'env_name': 'Breakout-v0', 'env_type': 'simple', 'ep_end': 0.1, 'ep_end_t': 1000000, 'ep_start': 1.0, 'history_length': 4, 'learn_start': 50000.0, 'learning_rate': 0.00025, 'max_delta': 1, 'max_reward': 1.0, 'max_step': 50000000, 'memory_size': 1000000, 'min_delta': -1, 'min_reward': -1.0, 'model': 'm2', 'random_start': 30, 'scale': 10000, 'screen_height': 84, 'screen_width': 84, 'target_q_update_step': 10000, 'trainfrequency': 4} [] Loading checkpoints... [!] Load FAILED: checkpoints/Breakout-v0/min_delta--1/max_delta-1/history_length-4/train_frequency-4/target_q_update_step-10000/memory_size-1000000/action_repeat-4/ep_end_t-1000000/backend-tf/random_start-30/scale-10000/env_type-simple/min_reward--1.0/ep_start-1.0/screen_width-84/learn_start-50000.0/cnn_format-NHWC/learning_rate-0.00025/batch_size-32/discount-0.99/max_reward-1.0/max_step-50000000/env_name-Breakout-v0/ep_end-0.1/model-m2/screen_height-84/ 2016-05-20 17:00:40.195 Python[25567:405995] ApplePersistenceIgnoreState: Existing state will not be touched. New state will be written to /var/folders/t0/tw1pt8nn5xv2ykn_4tmnxg5m0000gn/T/org.python.python.savedState 0%| | 49978/50000000 [02:47<39:09:30, 354.33it/s] Traceback (most recent call last): File "main.py", line 63, in tf.app.run() File "/usr/local/lib/python2.7/site-packages/tensorflow/python/platform/app.py", line 30, in run sys.exit(main(sys.argv)) File "main.py", line 58, in main agent.train() File "/Users/x0r/Documents/codes/DQN-tensorflow/dqn/agent.py", line 110, in train if max_avg_ep_reward >= avg_ep_reward * 0.9: UnboundLocalError: local variable 'avg_ep_reward' referenced before assignment

carpedm20 commented 8 years ago

@YigitDemirag Sorry, I commit a wrong code. Thanks for noticing me this issue.

YigitDemirag commented 8 years ago

@carpedm20 No problem. Seems working with --cpu=True code now.

carpedm20 commented 8 years ago

@YigitDemirag The saving condition was reversed. You should clone the code again.