AI4Finance-Foundation / AI4Finance-Foundation/ElegantRL

A little bug in elegantrl/train/run.py

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

Description

run.py 中第82行 exp_r = buffer_items[2].mean().item
当agent为AgentPPO时,由于AgentPPO中重写了上一行中的agent.explore_env,也就是调用的是elegantrl/agents/AgentPPO中的explore_one_env和explore_vec_env两个函数,返回的元组中第三位不再是reward而是logprobs。如果需要获取探索的奖励,这里应该改为 exp_r = buffer_items[3].mean().item,请确认下是否是这样。
同理对run.py中的多进程版本即第218行求exp_r也应该将buffer_items_tensor[2]改为buffer_items_tensor[3]。
当然为了使用其他的Agent依然正确,其实应该修改的是AgentPPO中的xplore_one_env和explore_vec_env返回值顺序,这样的话就要修改elegantrl/agents/AgentPPO.py的81、120、124行将rewards调整到第三个返回值位置上。

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.