SpaceX is preparing Starship to land and take off from mars, NASA is planning to go to the moon, and missions like OSIRIS-REx need to landing on asteroids previously unexplored asteroids. But landing on uneven terrain in one piece is a challenging task!

What it does

Here I explored ways of using reinforcement learning to teach an AI how to land on uneven terrain.

How I built it

I first tried using Deep Q Learning (which I implemented without tensorflow! Yay!) I then made a Proximal Policy Optimization network (with the help of tensorflow). As for the environment, I modified the LunarLander-v2 environment to and tweaked it as needed.

Challenges I ran into

Often times certain approaches did not work, so I had to research different approaches. For example, Deep Q Learning didn't work, so I found and decided to use PPO. I had to tweak the environments a lot to get the rewards right in order for the neural networks to learn well.

Accomplishments that I'm proud of

I am very happy that I actually managed to teach a computer to land a lunar rover (even if it is in 2d). It's amazing!

What I learned

I learned a ton about reinforcement learning. In regards to ML, I'm only just a beginner, so doing this project has thought me way more than I anticipated. For example, I hadn't even hear of Proximal Policy Optimization before this.

What's next for Lunar Lander

Built With

Share this project: