AI4Finance-Foundation / AI4Finance-Foundation/ElegantRL

One confusion about DQN

Open
#404 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
4.4k
Forks
978
PR merge metrics
No merged PRs in 30d

Description

def valid_agent(env_class, env_args: dict, net_dims: List[int], agent_class, actor_path: str, render_times: int = 8):
env = build_env(env_class, env_args)

state_dim = env_args['state_dim']
action_dim = env_args['action_dim']
agent = agent_class(net_dims, state_dim, action_dim, gpu_id=-1)
actor = agent.act

print(f"| render and load actor from: {actor_path}")
actor.load_state_dict(th.load(actor_path, map_location=lambda storage, loc: storage))
for i in range(render_times):
cumulative_reward, episode_step = get_rewards_and_steps(env, actor, if_render=True)
print(f"|{i:4} cumulative_reward {cumulative_reward:9.3f} episode_step {episode_step:5.0f}")

Does the above code read the trained pth(dict) files, namely neural network parameters, and directly test the new environment with the neural network (no longer use the explore rate)? Why do you choose th.save(actor.state_dict(), save_path) instead of direct actor for saving pth files?

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.