The controller package#

Submodules#

mpt4py.controllers.base_controller module#

class mpt4py.controllers.base_controller.ControllerBase(sys: SystemBase)[source]#

Bases: ABC

The base class for all controllers.

abstractmethod evaluate(x0: ndarray[tuple[Any, ...], dtype[float64]]) ndarray[tuple[Any, ...], dtype[float64]][source]#

mpt4py.controllers.mpc_controller module#

class mpt4py.controllers.mpc_controller.MPCController(sys: LTISystem, N: int | None = None, T: float | None = None, dt: float | None = None)[source]#

Bases: ControllerBase

Model Predictive Controller.

property A: ndarray[tuple[Any, ...], dtype[float64]]#
property B: ndarray[tuple[Any, ...], dtype[float64]]#
property N: int#
property Q: ndarray[tuple[Any, ...], dtype[float64]]#
property Qf: ndarray[tuple[Any, ...], dtype[float64]]#
property R: ndarray[tuple[Any, ...], dtype[float64]]#
evaluate(x0: ndarray[tuple[Any, ...], dtype[float64]]) Tuple[ndarray[tuple[Any, ...], dtype[float64]], str][source]#

solve the mpc problem for a given initial state x0

property input_constraints: Polyhedron#
property nu: int#
property nx: int#
property state_constraints: Polyhedron#
property terminal_constraints: Polyhedron#
to_explicit()[source]#

Convert the MPC problem to an explicit form

property u_opt_traj#
property u_ref: ndarray[tuple[Any, ...], dtype[float64]]#
property x_opt_traj#
property x_ref: ndarray[tuple[Any, ...], dtype[float64]]#

Module contents#