mirror of
https://github.com/wassname/DeepRL.git
synced 2026-09-09 11:13:47 +08:00
DDPG Pendulum
This commit is contained in:
@@ -68,7 +68,6 @@ def a3c_pendulum():
|
||||
config = Config()
|
||||
config.task_fn = lambda: Pendulum()
|
||||
config.reward_shift_fn = lambda reward: reward / 10
|
||||
# config.task_fn = lambda: MountainCarContinuous()
|
||||
task = config.task_fn()
|
||||
config.optimizer_fn = lambda params: torch.optim.Adam(params, 0.0001)
|
||||
config.critic_optimizer_fn = lambda params: torch.optim.Adam(params, 0.001)
|
||||
@@ -184,25 +183,25 @@ def a3c_pixel_atari(name):
|
||||
def ddpg_pendulum():
|
||||
task_fn = lambda: Pendulum()
|
||||
task = task_fn()
|
||||
config = dict()
|
||||
config['task_fn'] = task_fn
|
||||
config['actor_network_fn'] = lambda: DDPGActorNet(task.state_dim, task.action_dim, F.tanh)
|
||||
config['critic_network_fn'] = lambda: DDPGCriticNet(task.state_dim, task.action_dim)
|
||||
config['actor_optimizer_fn'] = lambda params: torch.optim.Adam(params, lr=1e-4)
|
||||
config['critic_optimizer_fn'] =\
|
||||
config = Config()
|
||||
config.task_fn = task_fn
|
||||
config.actor_network_fn = lambda: DDPGActorNet(task.state_dim, task.action_dim, F.tanh, 2)
|
||||
config.critic_network_fn = lambda: DDPGCriticNet(task.state_dim, task.action_dim)
|
||||
config.actor_optimizer_fn = lambda params: torch.optim.Adam(params, lr=1e-4)
|
||||
config.critic_optimizer_fn =\
|
||||
lambda params: torch.optim.Adam(params, lr=1e-3, weight_decay=0.01)
|
||||
config['replay_fn'] = lambda: HighDimActionReplay(memory_size=1000000, batch_size=64)
|
||||
config['discount'] = 0.99
|
||||
config['step_limit'] = 200
|
||||
config['tau'] = 0.001
|
||||
config['exploration_steps'] = 100
|
||||
config['random_process_fn'] = \
|
||||
config.replay_fn = lambda: HighDimActionReplay(memory_size=1000000, batch_size=64)
|
||||
config.discount = 0.99
|
||||
config.max_episode_length = 200
|
||||
config.target_network_mix = 0.001
|
||||
config.exploration_steps = 100
|
||||
config.noise_decay_interval = 10000
|
||||
config.random_process_fn = \
|
||||
lambda: OrnsteinUhlenbeckProcess(size=task.action_dim, theta=0.15, sigma=0.2)
|
||||
config['test_interval'] = 10
|
||||
config['test_repetitions'] = 10
|
||||
config['tag'] = ''
|
||||
config['logger'] = Logger('./log', gym.logger)
|
||||
agent = DDPGAgent(**config)
|
||||
config.test_interval = 10
|
||||
config.test_repetitions = 10
|
||||
config.logger = Logger('./log', gym.logger)
|
||||
agent = DDPGAgent(config)
|
||||
agent.run()
|
||||
|
||||
def ddpg_bipedal_walker():
|
||||
@@ -237,8 +236,9 @@ if __name__ == '__main__':
|
||||
# dqn_cart_pole()
|
||||
# async_cart_pole()
|
||||
# a3c_cart_pole()
|
||||
a3c_pendulum()
|
||||
# a3c_pendulum()
|
||||
# a3c_walker()
|
||||
ddpg_pendulum()
|
||||
|
||||
# dqn_pixel_atari('PongNoFrameskip-v3')
|
||||
# async_pixel_atari('PongNoFrameskip-v3')
|
||||
@@ -248,5 +248,4 @@ if __name__ == '__main__':
|
||||
# async_pixel_atari('BreakoutNoFrameskip-v3')
|
||||
# a3c_pixel_atari('BreakoutNoFrameskip-v3')
|
||||
|
||||
# ddpg_pendulum()
|
||||
# ddpg_bipedal_walker()
|
||||
Reference in New Issue
Block a user