Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigate nn.utils.clip_grad_norm_ for DQN, DDPG, and TD3 #148

Closed
3 tasks
Tracked by #115 ...
vwxyzjn opened this issue Mar 24, 2022 · 3 comments · Fixed by #173
Closed
3 tasks
Tracked by #115 ...

Investigate nn.utils.clip_grad_norm_ for DQN, DDPG, and TD3 #148

vwxyzjn opened this issue Mar 24, 2022 · 3 comments · Fixed by #173

Comments

@vwxyzjn
Copy link
Owner

vwxyzjn commented Mar 24, 2022

Problem Description

Compared to the original implementations, our DQN, DDPG, and TD3 implementations additionally do global gradient clipping, a code-level optimization done in PPO. It is unclear if global gradient clipping offers real performance benefits, so we should look into it and remove it if necessary.

  • dqn_atari.py
  • ddpg_continuous_action.py
  • td3_continuous_action.py
@dosssman
Copy link
Collaborator

dosssman commented Apr 6, 2022

  • sac_continuous_action.py

Some runs for comparison here:

Overall, SAC without the gradient norm clipping (yellow in the plots) performs around 10% to 20% better than the version with gradient norm clipping (red color in the plots).

@dosssman
Copy link
Collaborator

dosssman commented Apr 7, 2022

@vwxyzjn vwxyzjn mentioned this issue Apr 10, 2022
19 tasks
vwxyzjn added a commit that referenced this issue Apr 25, 2022
@vwxyzjn
Copy link
Owner Author

vwxyzjn commented May 2, 2022

See #173 (comment)

vwxyzjn added a commit that referenced this issue May 9, 2022
* Fix the seed issue: see #171

* Quick fix

* log `episodic_length`

* Fix #172

* Fix #148 and #172-style problem for SAC

* Add benchmark scripts

* add sac script

* Removes gradient clipping reference

* use the latest reproduction script

* Remove past reproducibility script

* update documentation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants