NMPC_Differential_Drive_Robot w/ Obstacle Avoidance

This project is aimed to the solution of optimal control problems for a differential drive robot in an environment with obstacles. In particular two kind of tasks are solved, point stabilization and trajectory tracking.
Solutions to these Optimal Control Problems are found considering a Non Linear MPC strategy in order to minimize the power consumption of the robot and avoid possible obstacles in the environment.

Two possible direct approaches are used with the N-MPC strategy :

  • Single Shooting -> It takes into account only control actions as optimization variables.

    Problem formulation:

  • Multiple Shooting -> It considers also trajectory states as optimziation variables.

    Problem formulation:

Furthermore a comparison between these two approaches, when the same finite horizon is imposed, is given. All solutions are computed by means of fmincon in MATLAB®.

Point Stabilization

Single Shooting Multiple Shooting

Trajectory Tracking

An example of a Trajectory Tracking, solved with Single Shooting approach, is shown in the following figure: