1 of 29

Aerial Robotics

Control: Model Predictive Control

C. Papachristos

Robotic Workers (RoboWork) Lab

University of Nevada, Reno

CS-491/691

2 of 29

Model Predictive Control

  • Often, a system cannot be accurately represented for realistic control purposes by means of a simple LTI block

  • Even if LTI model is realistic enough in terms of dynamics, other principal considerations to guarantee effective control remain unaccounted for:

    • System Constraints
    • Control Constraints

CS491/691 C. Papachristos

3 of 29

Model Predictive Control

Model Predictive Control paradigm

Car-driving example:

  • The driver looks at the road ahead

  • Takes into account the present state and the previous action

  • Predicts their action and its effects up to some distance ahead, which we refer to as the prediction horizon

  • Based on the prediction, adjusts the driving direction

  • Repeat … !

CS491/691 C. Papachristos

4 of 29

Model Predictive Control

Model Predictive Control (MPC) paradigm

Use a dynamical model of the process to predict its future evolution and choose the best control action

CS491/691 C. Papachristos

5 of 29

Model Predictive Control

 

 

 

 

 

 

CS491/691 C. Papachristos

6 of 29

Model Predictive Control

 

 

 

 

Penalty on control effort

Penalty on output tracking error

 

 

Initial conditions

CS491/691 C. Papachristos

7 of 29

MPC – Output Tracking

  • LTI (Prediction) Discrete-Time Model :

Define:

  • Backwards-differencing ( ) , apply:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Augmented State Vector:

C. Papachristos

 

 

8 of 29

MPC – Output Tracking

  • LTI (Prediction) Discrete-Time Model :

Define:

  • Backwards-differencing ( ) , apply:

 

 

 

 

 

 

 

 

 

 

Output Vector (Recasted):

CS491/691 C. Papachristos

 

 

9 of 29

MPC – Output Tracking

  • Construction of Control – (predicted) State sequence :

 

 

 

 

 

N-horizon

future�action moves

 

CS491/691 C. Papachristos

10 of 29

MPC – Output Tracking

  • Construction of Control – (predicted) Output sequence :

 

 

 

 

 

 

 

 

 

CS491/691 C. Papachristos

 

11 of 29

MPC – Unconstrained Problem

  • Quadratic Optimization Objective :

  • First-Order Necessary Condition for minimum:

 

Output Reference

Manipulated Move Sequence

 

 

 

CS491/691 C. Papachristos

 

 

 

 

 

 

 

 

 

Output Errors Sequence

 

12 of 29

MPC – Unconstrained Problem

  • Quadratic Optimization Objective :

  • First-Order Condition for minimum:

  • Also – Second-Order Sufficiency Condition Test :

 

 

 

 

 

 

Manipulated Move Sequence

 

C. Papachristos

Invertible & Positive- Definite because:

 

 

 

Output Reference

Output Errors Sequence

13 of 29

MPC – Unconstrained Problem

 

 

 

 

 

 

 

Manipulated Move Sequence

 

CS491/691 C. Papachristos

Output Reference

Output Errors Sequence

14 of 29

MPC – Constraint Incorporation

 

 

 

 

 

 

CS491/691 C. Papachristos

15 of 29

MPC – Constraint Incorporation

 

 

 

 

 

CS491/691 C. Papachristos

 

16 of 29

MPC – Constraint Incorporation

 

 

 

 

 

 

 

Manipulated Input Sequence

 

CS491/691 C. Papachristos

 

 

 

 

17 of 29

MPC – Constraint Incorporation

 

 

 

 

 

Predicted Output Sequence

 

CS491/691 C. Papachristos

 

 

18 of 29

MPC – Constrained

 

 

 

 

 

 

 

CS491/691 C. Papachristos

19 of 29

MPC – Constrained

 

 

Convex�Quadratic Optimization�Problem

 

 

CS491/691 C. Papachristos

 

20 of 29

MPC – Constrained Optimization

 

 

 

 

 

 

Step size:

 

 

 

 

CS491/691 C. Papachristos

 

21 of 29

MPC – Constrained Optimization

 

 

 

 

CS491/691 C. Papachristos

22 of 29

MPC – Control Algorithm

 

 

 

CS491/691 C. Papachristos

23 of 29

MPC – Control Algorithm

 

 

 

CS491/691 C. Papachristos

24 of 29

MPC in Robotic Systems

  • Model Predictive Control – Optimization w.r.t Multi-Authority Control & Higher-order Dynamics

Hybrid System Piecewise Affine Representation

Desired Constraints

CS491/691 C. Papachristos

25 of 29

MPC in Robotic Systems

  • Model Predictive Control – Optimization w.r.t Multi-Authority Control & Higher-order Dynamics

CS491/691 C. Papachristos

26 of 29

MPC in Robotic Systems

Hybrid System Piecewise Affine Representation

Desired Constraints

  • Hybrid Model Predictive Control – Optimization accounting for Hybrid (Physical Interaction) Dynamics

CS491/691 C. Papachristos

27 of 29

MPC in Robotic Systems

  • Hybrid Model Predictive Control – Optimization accounting for Hybrid (Physical Interaction) Dynamics

CS491/691 C. Papachristos

28 of 29

MPC in Robotic Systems

  • Model Predictive Control – Optimization for mobile robotic dynamic planning with collision avoidance

Online Motion Planning based on Nonlinear Model Predictive Control with Non-Euclidean Rotation Groups, C. Rosmann, A. Makarow, and T. Bertram

ROS implementation

CS491/691 C. Papachristos

29 of 29

Time for Questions !

CS-491/691

CS491/691 C. Papachristos