Using LLM's to improve their underlying architecture through an Evolutionary Algorithm is, besides poetically satisfying, also proven to be quite effective.
EvoPrompting on Reinforcement Learning Architectures aims to create novel reinforcement learning (RL) algorithms by incorporating an evolutionary algorithm with a large language model (LLM) as a crossover operator.
This project is based on the paper: EvoPrompting: Language Models for Code-Level Neural Architecture Search by Angelica Chen, David M. Dohan, and David R. So.
The authors successfully demonstrate the application of an evolutionary algorithm with an LLM to create novel machine learning architectures for the MNIST problem. In this project, we attempt to replicate their success for reinforcement learning algorithms.
- Replace task T and dataset D with task T and environment E (CartPole-v1).
- Use minimal implementations of popular algorithms as seed code (AC2, ACER, DQN, PPO, REINFORCE).
- Adapt the LLM tuning approach due to limited access to large parameter embeddings.
We begin with minimal implementations of fan-favorite reinforcement learning algorithms:
- AC2 - Advantage Actor-Critic
- ACER - Actor-Critic with Experience Replay
- DQN - Deep Q-Network
- PPO - Proximal Policy Optimization
- REINFORCE - REINFORCE Algorithm
These seed implementations will serve as the starting point for the evolutionary algorithm.
The chosen environment for this project is CartPole-v1
from the OpenAI Gym.
Due to the lack of access to the embeddings of a 65-billion parameter LLM, we are currently working on an alternative method for fine-tuning GPT-3.
Results and insights gained from the evolutionary algorithm will be uploaded as soon as they are available.
Special thanks to the authors of the original paper, Angelica Chen, David M. Dohan, and David R. So, for their work and inspiration.