Box2D environment for vertical rocket landing simulation
Top 84.0% on sourcepulse
This project provides a continuous-action simulation environment for landing a SpaceX Falcon 9 rocket, built using Python and OpenAI Gym with the Box2D physics engine. It targets researchers and engineers interested in comparing classical control methods (PID, MPC, LQR) with AI algorithms (DDPG, ES, FA Q-Learning) for continuous control problems, offering a more realistic scenario than discrete-action simulators.
How It Works
The simulator models a vertical rocket landing, focusing on a continuous action space for thruster control (main engine, side thrusters, nozzle angle). This contrasts with discrete action spaces found in similar environments like LunarLander. The core advantage is enabling the evaluation of advanced control strategies like Deep Deterministic Policy Gradients (DDPG), which uses an actor-critic architecture with neural networks to handle continuous states and actions effectively.
Quick Start & Requirements
python main_simulation.py
tensorflow
, matplotlib
, gym
, numpy
, Box2D
, logging
, pyglet
, cvxpy
. Windows users may need specific extension libraries for cvxpy
.cvxpy
installation can be time-consuming.Highlighted Details
[x_pos, y_pos, x_vel, y_vel, lateral_angle, angular_velocity]
.Maintenance & Community
Licensing & Compatibility
Limitations & Caveats
The README mentions "unstructured scripts" and "messy untested code" in the controller implementations, suggesting potential quality issues outside the core environment. Modern Predictive Control (MPC) is noted as "not generalized."
2 years ago
Inactive