LessWrong25m agoenergy 127

Better honeypots, fewer tries: training an optimizer to make PPO cheat

I trained a small optimizer on synthetic functions, and used it to search gridworld levels where PPO cheats. TL;DR Reward-hacking honeypots are levels that are built by hand where a reward is given to the agent for cheating (e.g. taking a shortcut to the goal). I converted this process into a black box optimization problem where the score is based on how often PPO cheats. I used evolution strategies to train the optimizer on the cheap, synthetic functions, and applied it to the honeypot without any further training. Given the same PPO budget, my best policy (RLBO) found levels where PPO cheated 79% of the time, compared to 70% for CMA-ES , and 49% for GP Bayesian optimization . Doing the above, with a shared PPO budget yielded 90% success rate, and with 3 times the budget, yielded 88% success rate. My learned walker found its first strong level in a median of 6 PPO runs, compared to 17 for CMA-ES, and 46 for GP Bayesian optimization. Try it: Colab demo (Run pip install metawalker before running demo cells.) Epistemic Status: This is a course project. I have only tried testing in 1 artificial environment, and the differences between methods are small enough that they could be due to

read the original at LessWrong →
This source publishes only a summary in its feed, so the full article lives at the outlet. The link above and below goes to the original.