PyAdvancedControl
Python Codes for Advanced Control
Dependencies
-
Python 3.7.x
-
cvxpy 1.0.x
-
ecos 2.0.7
-
cvxopt 1.2.x
-
scipy 1.1.0
-
numpy 1.15.0
-
matplotlib 2.2.2
lqr_sample
This is a sample code of Linear-Quadratic Regulator
This is LQR regulator simulation.
This is LQR tracking simulation.
finite_horizon_optimal_control
This is a finite horizon optimal control sample code
mpc_sample
This is a sample code of a simple Model Predictive Control (MPC) regulator simulation
mpc_tracking
This is a sample code of a Model Predictive Control (MPC) traget tracking simulation
mpc_modeling
This is a sample code for model predictive control optimization modeling without any modeling tool (e.g cvxpy)
This means it only use a solver (cvxopt) for MPC optimization.
It includes two MPC optimization functions:
1 opt_mpc_with_input_const()
It can be applied input constraints (not state constraints).
2 opt_mpc_with_state_const()
It can be applied state constraints and input constraints.
This figure is a comparison of MPC results with and without modeling tool.
inverted_pendulum_mpc_control
This is a inverted pendulum mpc control simulation.
tools
c2d
This is a API compatible function of MATLAB c2d function.