What is Model Predictive Control? | Understanding MPC, Part 2

Поделиться
HTML-код
  • Опубликовано: 18 окт 2024
  • Using a simple car example, this video provides insight into an MPC controller’s strategy for finding the optimal steering wheel angle to control the car’s longitudinal speed. At each time step, the MPC controller makes predictions about the future lateral positions of the car.
    To drive the predicted path of the car as close to the reference as possible, the MPC controller formulates the control problem as an optimization problem. It tries to minimize the errors between the lateral positions of the car and the reference as well as steering wheel angle increments. The cost function is represented as a weighted squared sum of these two terms.
    The solution to this optimization problem provides the optimal steering wheel angle sequence. At the current time step, MPC only applies the first step of this optimal sequence to the car and disregards the rest. In the next time step, it gets a new measurement of the car’s lateral position. The prediction horizon shifts by one time step, and the controller repeats the same cycle to calculate the next optimal steering wheel angle.
    Watch all of the videos in this series about Understanding Model Predictive Control: • Understanding Model Pr...
    Download this hands-on MPC virtual lab to practice design of model predictive controllers for an autonomous vehicle steering system: bit.ly/MPC-vir...
    Learn how model predictive control (MPC) works.
    Model Predictive Control Toolbox: bit.ly/2xgwWvN
    What Is Model Predictive Control Toolbox?: bit.ly/2xfEe2M
    Getting Started with Model Predictive Control Toolbox: bit.ly/2GskEY4
    MPC uses a model of the plant to make predictions about future plant outputs. It solves an optimization problem at each time step in order to find the control action that drives the predicted plant output as close to the desired reference as possible.
    Optimization Problem: bit.ly/2Gx0OuI
    How to Design an MPC Controller with Simulink and Model Predictive Control Toolbox: bit.ly/2Gvv0qe
    Adaptive MPC Design with Simulink and Model Predictive Control Toolbox: bit.ly/2GsL5Nu
    Watch more MATLAB Tech Talks: bit.ly/2rTc8Yp
    Get a free MATLAB Trial: goo.gl/ZHFb5u
    Learn more about MATLAB: goo.gl/8QV7ZZ
    Learn more about Simulink: goo.gl/nqnbLe
    See What's New in MATLAB and Simulink: goo.gl/pgGtod
    © 2018 The MathWorks, Inc. MATLAB and Simulink are registered
    trademarks of The MathWorks, Inc.
    See www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.

Комментарии • 59

  • @MATLAB
    @MATLAB  8 месяцев назад

    Download this hands-on MPC virtual lab to practice design of model predictive controllers for an autonomous vehicle steering system: bit.ly/MPC-virtual-lab

  • @h.matiin
    @h.matiin 2 года назад +4

    Besides MPC, this video series implies: "TEACHING SKILL IS AN ART".
    Thank you.

  • @JayD3luxe
    @JayD3luxe 5 лет назад +34

    The person who created the animations deserves an oscar! Very good work!

    • @SaeedAcronia
      @SaeedAcronia 4 года назад

      It's actually not that difficult.

    • @chris-px8qc
      @chris-px8qc 4 года назад

      @@SaeedAcronia which software must be used to make them?

    • @SaeedAcronia
      @SaeedAcronia 4 года назад

      I meant you can create animations with matlab easily

    • @chantholtouch129
      @chantholtouch129 4 года назад

      Hi

    • @esraasheikhdaoud6039
      @esraasheikhdaoud6039 11 месяцев назад

      could you please tell me how to simulate the results (the possible trajectories) in a road model?@@SaeedAcronia

  • @omidagheb1979
    @omidagheb1979 2 года назад

    a great description on MPC using a very simple example...that helped me a lot. wish the bests for you

  • @jonathanuis
    @jonathanuis 4 года назад +1

    The explanation is super clear!!!! thanks a lot

  • @misonnayak6265
    @misonnayak6265 4 года назад

    Awesome explanations....high clarity...enjoyed it!!!!!

  • @badrlaamri9028
    @badrlaamri9028 6 лет назад

    Clear and simple, thanks a lot. Can't wait to watch the next video.

  • @kerrimac31
    @kerrimac31 5 лет назад

    this teacher is the best

  • @harikrishnachalla435
    @harikrishnachalla435 2 года назад

    you are the best. thank you so much for sharing.

  • @manigoyal4872
    @manigoyal4872 Год назад +1

    at 2:10 the best predictive path is talked about, but how can we make the predictive path by car dynamics

  • @kumarrahulbhadani
    @kumarrahulbhadani 6 лет назад +1

    It would be great if you can demonstrate this example with MPC toolbox, clearly stating the problem, its formulation, assumptions and results.

    • @meldaulusoy8389
      @meldaulusoy8389 6 лет назад +2

      Thanks for the feedback. We'll definitely have a demo video in this series where we'll show you how to use MPC Designer to design your controllers.

  • @vernonrajman5378
    @vernonrajman5378 3 года назад

    Well done 👏. You really bring understanding to this concept. Thank you.

  • @bonginkosingwenya4291
    @bonginkosingwenya4291 7 месяцев назад

    Hi please can you explain the formular used for cost function

  • @patilshubham3129
    @patilshubham3129 3 года назад

    Extremely helpful!! Thank you

  • @gustavovargas6299
    @gustavovargas6299 5 лет назад +1

    Which textbooks would you recommend to learn all basics about mpc and to go in depth about the subject?

    • @sivadharshinia5384
      @sivadharshinia5384 3 года назад

      Hii.. did you followed any book?

    • @gio-yj3en
      @gio-yj3en 4 месяца назад

      I believe learning about the basics and building towards making your own controller involves understanding the theory and formulations that make MPC what it is. There is a lot of documentation in learning how cost functions, weights, and constraints work. Remember if you want to build the actual controller yourself, you have to take into account the plant and system dynamics you are trying to control. The best way to do this is to acquire pieces of example codes that could be useful for your controller, in any other way you will be lost in where to start. This book will help: Model Predictive Control System Design and Implementation Using MATLAB

  • @deebo7276
    @deebo7276 3 года назад

    Very well done, thanks!

  • @guidefreitas
    @guidefreitas 6 лет назад +1

    Very very nice work!

  • @MarcusVinicius-lq3fe
    @MarcusVinicius-lq3fe 3 года назад

    Amazing video. Thanks a lot!

  • @MinhVu-fo6hd
    @MinhVu-fo6hd 5 лет назад +1

    How one can solve the online optimization problem around 2.55? With non-linear dynamics (resulting in a non-convex objective function) and complex constraints, this problem can very much become non-convex, or even very hard to solve for local optimality.

  • @laszlokovacs5297
    @laszlokovacs5297 3 года назад

    Thanks! Very helpful! :)

  • @ahmetmutlu3779
    @ahmetmutlu3779 6 лет назад

    Ty for very nice Explanation..

  • @anacosta1421
    @anacosta1421 5 лет назад

    I'm impressed!!! Very good!!!

  • @pocopoco3468
    @pocopoco3468 Год назад

    Can I use this in line follower robot?

  • @uditgupta3962
    @uditgupta3962 2 года назад

    what are the states of the plant in this example?

  • @dongtonthat6961
    @dongtonthat6961 6 лет назад

    It's very useful for me! Thanks a lot...!

  • @alexandrpetrov1110
    @alexandrpetrov1110 3 года назад

    Very good!!!

  • @serkanozkan-ksadankodlama4356
    @serkanozkan-ksadankodlama4356 5 лет назад

    Hi, how to apply mpc on system which has faults? I apply mpc via toolbox on my system and it works well, but when I apply faults than I can't obtain suitable results? maybe it's about blocks I couldn't figure it out. Could you give me a hint? Thanks.

  • @totoilongo6132
    @totoilongo6132 6 лет назад

    Good presentation it's helpful

  • @javierquiroga6922
    @javierquiroga6922 6 лет назад

    Very helpful!

  • @actfootball7437
    @actfootball7437 5 лет назад

    Thanks alot ,teacher how can I find out the full course

    • @meldaulusoy8389
      @meldaulusoy8389 5 лет назад

      Here's the link to the "Understanding Model Predictive Control" series: ruclips.net/video/8U0xiOkDcmw/видео.html

    • @vishnutheja1
      @vishnutheja1 3 года назад

      @@meldaulusoy8389 hello hi...can you explain how apply in process automation

  • @fernando.liozzi.41878
    @fernando.liozzi.41878 6 лет назад

    Excellent!, thanks!

  • @bdasama7893
    @bdasama7893 4 года назад

    I need document with MPC and cascade please

  • @autome4374
    @autome4374 6 лет назад

    how the controller gets the new measurements
    and how we define the feedback from MPC

    • @meldaulusoy8389
      @meldaulusoy8389 6 лет назад +1

      Hi, this is explained at 4:11. MPC finds an optimal sequence for the steering angle but only applies the first step to the car. With this input the car travels some distance. Next we take a measurement and this loop repeats itself. The output of MPC is the steering angle which drives the car.

  • @erickfernandoalves6746
    @erickfernandoalves6746 5 лет назад +2

    Kudos! Best explanation about MPC ever :-)

  • @charifall8311
    @charifall8311 3 года назад

    why MPC applies only the first the first step of the optimal sequence and disregrds the rest ???
    why doesn't use the average value of all steps ??!

    • @makita3680
      @makita3680 3 года назад

      Why would it? Look at 2:31. Do you think the input at time k+3 is the same as the input at time k?

  • @Hermis14
    @Hermis14 3 года назад

    I love Ulusoy.

  • @alizidan7
    @alizidan7 6 лет назад

    i need exemple , simulation (matab code) of NMPC , please

    • @meldaulusoy8389
      @meldaulusoy8389 6 лет назад

      Hi, I recommend checking out the following examples: www.mathworks.com/help/mpc/examples/swing-up-control-of-a-pendulum-using-nonlinear-model-predictive-control.html
      www.mathworks.com/help/mpc/ug/nonlinear-model-predictive-control-of-exothermic-chemical-reactor.html

  • @najnanazeer2590
    @najnanazeer2590 5 лет назад

    Thank u maam for your valuable points about MPC.Best explanation about MPC .

  • @goodwords.5645
    @goodwords.5645 6 лет назад

    please do a video on adaptive mpc for dc dc converters

  • @benisonbesra
    @benisonbesra 5 лет назад

    Very well explained. Please use mic.

  • @mohemahmoude3356
    @mohemahmoude3356 6 лет назад +1

    when she say "plant " did she mean "the system""

    • @meldaulusoy8389
      @meldaulusoy8389 6 лет назад +3

      Hi, with plant I'm referring to the system you're trying to control. The input to the plant the computed by the controller to keep the plant output at a desired value.

  • @ahmedismail1018
    @ahmedismail1018 6 лет назад

    we need more thank u
    i have to make project in MPC with deep learning

    • @meldaulusoy8389
      @meldaulusoy8389 6 лет назад +1

      Hi Ahmed, you may also want to check out MATLAB Tech Talks on Deep Learning: www.mathworks.com/videos/series/introduction-to-deep-learning.html

  • @ahmedismail1018
    @ahmedismail1018 6 лет назад

    we need text book and contact to you pls
    i have next month v to give my projekt to the professor