Inspiration
We wanted to change the world. Since it's difficult to do this, we decided to make our own world and change that instead (terraforming).
What we did
We designed a world defined by 4 state parameters: Atmosphere, Plant Life, Animal Life, and Water. The initial state of the planet has bad atmosphere quality and life, so we deploy an agent that can take actions to optimize the state of the planet. We also did some simple predictive modeling on real-life phenomena, such as rain and CO2 in the atmosphere.
How we built it
We employed Q-Learning to learn the optimal policy to optimize the planet's state. In addition to this, we used matplotlib and Processing to build our visualizations.
Challenges I ran into
As the team worked together very well, there were no major challenges that we faced. One minor challenge was that we found it difficult to implement Q-Learning over a continuous state space. Although there were other, perhaps better, options, we decided to discretize the state space to employe Q-Learning to solve this.
Accomplishments that I'm proud of
By reinterpreting our initial goal, we came to an idea that was very interesting and fun to work on. The Q-Learning was very successful, as was the predictive modeling.
What I learned
We learned to implement Q-Learning from scratch as well as other fundamental principles of reinforcement learning.
Conclusion
Our project has shown that reinforcement learning can change the world as long as you can quantitatively express the state of the world and define a set of actions the agent can take.
Built With
- matplotlib
- processing
- python
- sklearn
Log in or sign up for Devpost to join the conversation.