1 / 28

Recent Advances in Model Predictive Control

Recent Advances in Model Predictive Control. (Real time MPC). Prepared by : Kamal Reza Varhoushi. December – 2011. The philosophy behind MPC . Manipulated variables : u(k-1) Controlled variables : y(k). The model of sys used to prediction. The critical step of the predictive control.

chi
Télécharger la présentation

Recent Advances in Model Predictive Control

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Recent Advances in Model Predictive Control (Real time MPC) Prepared by : Kamal Reza Varhoushi December – 2011

  2. The philosophy behind MPC

  3. Manipulated variables : u(k-1) Controlled variables : y(k) The model of sys used to prediction The critical step of the predictive control

  4. open-loop optimization problem

  5. practical disadvantage of MPC

  6. Robust MPC The uncertainty representation PolytopicUncertainty Structured Feedback Uncertainty

  7. Real time MPC For each MPC problem, we need to solve an optimization problem for each sampling. So MPC limited to applications with slow dynamics (sampling time in seconds or minutes). A well-known technique for implementing fast MPC is to compute the entire control law offline (explicit MPC), in which case the online controller can be implemented as a lookup table. The control action is then implemented online in the form of a lookup table. The major drawback here is that the number of entries in the table can grow exponentially with the horizon, state, and input dimensions, so that “explicit MPC” can only be applied reliably to small problems (where the state dimension is no more than around five). So this method is not applicable for more complex problems.

  8. The new methods for fast MPC, develops by professor Boyd research group in Stanford university. These methods are based on combination of MPC with automatic code generation.

  9. This report describe the capabilities and implementation of CVXGEN software package. CVXGEN takes a high level description of a convex optimization family, and automatically generate flat, library-free C code that can be compiled into high speed custom solver for the problem family

  10. The main disadvantages of CVXGEN are: 1. It reduced to quadratic programming(QPs) 2. It is suitable for small and medium size problems

  11. Problem statement energy storage system that can be charged or discharged from a source with varying energy price. A simple example is a battery connected to a power grid The goal is to alternate between charging and discharging in order to maximize the average revenue

  12. Let first introduce problem variables and parameters:

  13. the energy price at time t denote discourage excessive charging and discharging time horizon T=50

  14. The easiest way to use this interface is via the ‘Matlab’ screen in CVXGEN's online interface, Go to the website “www.cvxgen.com” and create new project, then impose your project data’s to the blank spaces shown in window

  15. The second step is creating custom C codes for using in Matlab : Download and extract the ‘cvxgen.zip’ archive for your problem. This will create a subdirectory called CVXGEN. Inside the cvxgen/ folder in Matlab, call make_csolve. This will use the mex command to compile and build your custom solver and creates a csolve.mex* file.

  16. As shown in figures, the variation of uc and ud between max and min values, determine this agreement that process has been done in optimal way.

  17. CVXGEN implementation Once the problem is in canonical form, we use a standard primal dual interior point method to find the solution we introduce slack variables to solve equivalent problem

  18. we find analytically the solution of the pair of primal and dual problems: For duality formulation :

  19. Karush-Kuhn-Tucker (KKT) conditions Each of the primal and dual algorithms require two solves with the so-called KKT matrix to find the solution (L) for the system KL = R.

  20. Thank you

More Related