What Is Linear Quadratic Regulator (LQR) Optimal Control? | State Space, Part 4

Ғылым және технология

Check out the other videos in the series: • State Space
Part 1 - The state space equations: • Introduction to State-...
Part 2 - Pole placement: • What is Pole Placement...
Part 3 - Observability and Controllability: • A Conceptual Approach ...
The Linear Quadratic Regulator (LQR)
LQR is a type of optimal control that is based on state space representation. In this video, we introduce this topic at a very high level so that you walk away with a general understanding of the control problem and can build on this understanding when you are studying the math behind it. This video will cover what it means to be optimal and how to think about the LQR problem. At the end I’ll show you some examples in MATLAB that I think will help you gain a little intuition about LQR.
Check out these other resources!
Download the code for the UFO animation: bit.ly/2tbHFVJ
Integral action: bit.ly/2t4hwIr
LQR by Christopher Lum: • Introduction to Linear...
LQR by Steven Brunton: • Linear Quadratic Regul...
Solving LQR problem: bit.ly/2t5gc8k
Learn more about State Space Models: bit.ly/2HrtZQy
-----------------------------------------------------------------------------------------------------------
Get a free product 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
© 2019 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.

Пікірлер: 214

  • @justinhendrick3743
    @justinhendrick37434 жыл бұрын

    "That's how you rotate to pick up a cow" is a sentence I never thought I'd hear.

  • @BrianBDouglas
    @BrianBDouglas5 жыл бұрын

    Hey everyone, thanks for watching this video! If you have any questions or comments that you'd like me to see, please leave them under this comment so that I get notified and can respond. Cheers!

  • @ahmadalghooneh2105

    @ahmadalghooneh2105

    5 жыл бұрын

    Hi Brian, Could you please share the code?

  • @BrianBDouglas

    @BrianBDouglas

    5 жыл бұрын

    @@ahmadalghooneh2105 I knew someone would ask and I should have been prepared. Yes I can ... but the code was written quickly to get this video out so it is horribly written. I'll get it up on Github shortly and let you know.

  • @ahmadalghooneh2105

    @ahmadalghooneh2105

    5 жыл бұрын

    Brian Douglas so much thanks brian, no matter the order, I just wanted to know how did you manage to make the plots so cool, A huge fan of yours, Regards

  • @gosayeweldemaryam2415

    @gosayeweldemaryam2415

    5 жыл бұрын

    Best presentation. deep knowing and great experience can be seen on your video

  • @Ayahalom123

    @Ayahalom123

    5 жыл бұрын

    It's good to see you on matlab's channel! Loved your videos all along

  • @ChristopherLum
    @ChristopherLum5 жыл бұрын

    As usual, Brian Douglas creates another great video! I especially like the easy to understand example at 2:46 😉.

  • @speedracer1702

    @speedracer1702

    2 жыл бұрын

    Two Legends! I like both this video and your video on LQR control. Your video helped us implement our project for Robot Control in grad school!

  • @yaacheese8643

    @yaacheese8643

    11 күн бұрын

    @@speedracer1702 Been more than 2 years, but here goes ahah. I am in a robotics undergrad class and we are mainly dealing with PID. Anything cool you can share about LQR control for your robot? What did it do and why did you go with the LQR method? Anything really. Very curious to learn more thanks!

  • @LeeWhitcher
    @LeeWhitcher5 жыл бұрын

    Your dedication to the animation is something to behold! You even animated the magnitude of the thrusters 😂

  • @GustavoRinaldi1
    @GustavoRinaldi12 жыл бұрын

    I'd like to thank Brian for that fantastic take on the LQR explanation. I had understood the math behind it but I hadn't get the intuition I should have gotten while developing my LQR model and now I feel really ready to give it a shot.

  • @nabilmohammad5076
    @nabilmohammad50765 жыл бұрын

    This is the best explanation of LQR I have ever seen. Thank you Brian. :)

  • @yashrunwal5111
    @yashrunwal51115 жыл бұрын

    Hey Brian, what an absolutely mind boggling video. I can now literally explain my Professor what LQR control is all about, thanks to you. Just brilliant! Who says only actors can be superstars? You are one. Thanks a lot.

  • @blablabla12a
    @blablabla12a5 жыл бұрын

    I've got a test in two days and your new videos on the topic are like a gift from god 👏🏼

  • @satishone999
    @satishone9995 жыл бұрын

    Dear Brian, It is one of the best explanation. Thank you for your time and effort.

  • @krystoflis7157
    @krystoflis71574 жыл бұрын

    Excellent introduction to LQR. Thank you Brian

  • @branislavjeremic4904
    @branislavjeremic49044 жыл бұрын

    These kind of videos can have the universities close their doors, and be left with certification only or distant learning. I mean who needs professors' lectures after this, really. :) I have been familiar with pole placement and LQR for years, but really wanted to find the video explaining it in simple words for my own sake. The whole series is brilliant, I am leaving comment of gratefulness to this one in particular, for the reason I stumbled on it firstly. Great job is a diminutive here.

  • @NadimC137
    @NadimC1373 жыл бұрын

    I knew it was brian the moment this video started, you are truly an amazing educator, some of your videos built my foundation in control!

  • @tongvanngoc_gv-t9091
    @tongvanngoc_gv-t9091 Жыл бұрын

    This is definitely a great and simple explanation I've seen so far

  • @erikasantuccio1887
    @erikasantuccio18873 жыл бұрын

    It was really nice to see your videos, they were quite helpful as refresh and also maybe to understand better what I studied some years ago. Many thanks!

  • @SuperNaicker
    @SuperNaicker4 жыл бұрын

    Brilliant class. I hope I learned control systems from a professor like you. Thanks.

  • @darylfishback-duran3580
    @darylfishback-duran35804 жыл бұрын

    Great video! Glad for another reference for LQR intuition and usage!

  • @mohammadrezaadib8999
    @mohammadrezaadib89992 жыл бұрын

    these series of videos are amazing & well described. cheers.

  • @Engineermehwishayub
    @Engineermehwishayub3 жыл бұрын

    Thank you so much. Your lecture really helped me understanding the control system basics.

  • @chazcal
    @chazcal2 жыл бұрын

    Nice video...helps a lot to get a clear explanation of optimal control and how to actually use it in a realistic manner.

  • @hkroniAcademy
    @hkroniAcademy5 жыл бұрын

    Wowww. Man I am just amazed. Really been following your videos for a long time. You are awesome!!!!

  • @energyeve2152
    @energyeve21529 ай бұрын

    I haven't finished the video yet but I found exactly what I was looking for. Thank you for sharing this in such an intuitive way to understand what I am doing haha. Keep shining :D

  • @julial1572
    @julial15725 ай бұрын

    Thank you Brian !!! Wonderful explanation !!

  • @selamhendrix5252
    @selamhendrix52524 жыл бұрын

    such a great video, I like all your other videos on control theory as well, thank you!

  • @piyu826
    @piyu8263 жыл бұрын

    Thank you so much for this video, it's so straight forward and easy to understand ! :)

  • @Seboymogabeny
    @Seboymogabeny4 жыл бұрын

    watched all 4 parts.. keep up the good work ;)!

  • @khushbuKumari-fx6xo
    @khushbuKumari-fx6xo3 жыл бұрын

    This is a really really good video for understanding the basisc of LQR...thank you so much sir

  • @omarel-ghezawi6466
    @omarel-ghezawi64664 жыл бұрын

    Excellent exposition. Good effort. Well done

  • @user-jx1ui2oz1x
    @user-jx1ui2oz1x Жыл бұрын

    What a wonderful lecture. Thank you so much

  • @hongkunhu5842
    @hongkunhu58424 жыл бұрын

    Great job, Thank you Brian!

  • @fredvh4565
    @fredvh45653 жыл бұрын

    Amazing explanation, thank you!

  • @layzerfreedman5517
    @layzerfreedman55172 жыл бұрын

    Thank you for the explanation ! You made it very easy to understand :)

  • @nilamasrourisaadat1462
    @nilamasrourisaadat14622 жыл бұрын

    I loveeeeee this video.. havent seen a more beautiful and better explanation. Thanks

  • @alirezaghaderi
    @alirezaghaderi4 жыл бұрын

    Thanks Man ! Your videos are better than whole academic education !! Please create more videos

  • @nitinkmaurya
    @nitinkmaurya5 жыл бұрын

    Thankyou. A big fan of urs control lessons.

  • @omarabdulwahhab1485
    @omarabdulwahhab14853 жыл бұрын

    Excellent illustration

  • @karolmazaraki4271
    @karolmazaraki42715 жыл бұрын

    Just great video. Thank you!

  • @edwardsanchez2331
    @edwardsanchez23314 жыл бұрын

    Great video with great explanations.

  • @gitarplayer13
    @gitarplayer134 жыл бұрын

    UW AE511 brought me here. Great video, will be checking out more in the future.

  • @brianhumphreys5161
    @brianhumphreys51614 жыл бұрын

    good, easy to understand video. shout out to Professor Lum.

  • @wes1588
    @wes15884 жыл бұрын

    Great video as always Brian!

  • @shashwatsingh2682
    @shashwatsingh26829 ай бұрын

    Excellent explanation

  • @bedirhansen2219
    @bedirhansen2219 Жыл бұрын

    Best video I have ever seen on youtube

  • @arnecl9566
    @arnecl95663 жыл бұрын

    @Brian Douglas I love you for making these videos!!

  • @nikhilvaliveti5717
    @nikhilvaliveti57172 ай бұрын

    Brian, you can't make things look so easy man. Dope work.

  • @BrianBDouglas

    @BrianBDouglas

    2 ай бұрын

    Thank you!

  • @DRAMBgo
    @DRAMBgo2 жыл бұрын

    What an amazing explanation!

  • @celilylmaz4426
    @celilylmaz4426 Жыл бұрын

    really awesome explanation, thank you!

  • @maesnr
    @maesnr3 жыл бұрын

    Very good video. Thank you so much for your work.

  • @RoboGenesHimanshuVerma
    @RoboGenesHimanshuVerma3 жыл бұрын

    Wow! This is exactly what I needed to know to develop interest in this. Cool animation model btw

  • @user-zg2fo2zv8i
    @user-zg2fo2zv8i4 ай бұрын

    This is awesome! It's much easier to understand. Thank you!

  • @BrianBDouglas

    @BrianBDouglas

    4 ай бұрын

    Great to hear! I also have a video on the Algebraic Riccati Equation which might help as well: kzread.info/dash/bejne/jJ-orpWSmrfIcpc.htmlsi=MWLW8nn0S9zPjjCG

  • @carrot5581
    @carrot55815 ай бұрын

    I'm studying Control and we have a space-state module which at first it was easy, but gradually getting harder to understand. However, after your videos it really help me a lot since you made it really simple to understand and even gave different methods, but what help me the must its showing how they can be apply to different systems. Now I even think Space-State is actually really cool and would like to learn more about it and even apply it in my personal project and such. Thank you so much.

  • @BrianBDouglas

    @BrianBDouglas

    5 ай бұрын

    I really appreciate your comment! That's great to hear :)

  • @mohamedbenrekia2211
    @mohamedbenrekia22114 ай бұрын

    You are just the best tutor on youtube.. thanks ..

  • @BrianBDouglas

    @BrianBDouglas

    4 ай бұрын

    I appreciate that!

  • @abcxyz4207
    @abcxyz42073 жыл бұрын

    Wow optimal control is amazing!! Way cooler than PID

  • @rostamr4096
    @rostamr4096 Жыл бұрын

    I wish Brian create more tutorials...he is the best.

  • @sankettambe1580
    @sankettambe1580 Жыл бұрын

    thank you sir for the great explanation

  • @Tomisdeb0m
    @Tomisdeb0m4 жыл бұрын

    Amazing video! Thanks

  • @techupdateswithjosh6044
    @techupdateswithjosh6044 Жыл бұрын

    Great and simple explanation. Thank you. I hope I will so good and make great videos too.

  • @MattAero
    @MattAero4 жыл бұрын

    UW AE511: Great video, thank you!

  • @salarbasiri5959
    @salarbasiri59592 жыл бұрын

    perfect explanation!

  • @jacobodebruynmonge2874
    @jacobodebruynmonge28744 жыл бұрын

    The video is awesome. Thanks!!

  • @user-pt4fe6nj3k
    @user-pt4fe6nj3k11 ай бұрын

    THAT'S SO HELPFUL!!!!

  • @yakeshbalasubramaniam216
    @yakeshbalasubramaniam2163 жыл бұрын

    Wow perfectly explained

  • @SaludContable
    @SaludContable3 жыл бұрын

    Really good video, content and form, both great! Very enjoyable

  • @SaludContable

    @SaludContable

    3 жыл бұрын

    I wish I could present this way

  • @Shark_Oswald
    @Shark_Oswald5 жыл бұрын

    Awesome job

  • @georgigeorgiev271
    @georgigeorgiev2712 жыл бұрын

    Just brilliant!

  • @sreevarshiniyohanandhan8325
    @sreevarshiniyohanandhan83254 жыл бұрын

    Well said👏

  • @Vashi29Cricket
    @Vashi29Cricket3 жыл бұрын

    OMG I think I am gonna ace my Controls class now!

  • @jakeayres1979
    @jakeayres19793 жыл бұрын

    Fantastic video!

  • @himanshudubara6362
    @himanshudubara63624 жыл бұрын

    Hello Brian, thank you for the great explanation. Could you tell me how you arrived at the mathematical model for actuator effort( for plotting) in your simulation?

  • @kamirtharaj6801
    @kamirtharaj68014 жыл бұрын

    thnx bro.....you are the best

  • @abdelkaderbelabed3868
    @abdelkaderbelabed3868 Жыл бұрын

    Hi, Brian your videos about control theory is great , I hope you will talk about MPC controller :)

  • @spiworkshop9416
    @spiworkshop94164 жыл бұрын

    Hope to get lessons on Sliding Mode Controller in up coming days and its application.

  • @danielbohorquezalvarado5841
    @danielbohorquezalvarado5841 Жыл бұрын

    this is the funniest video I've ever seen about something related with engineering

  • @sebastiangrimm6478
    @sebastiangrimm6478 Жыл бұрын

    Great video! Tank u so much👍

  • @danielstankowski1307
    @danielstankowski13074 жыл бұрын

    You are the best!

  • @saeedbasaleh1917
    @saeedbasaleh1917 Жыл бұрын

    Thank you sir.

  • @saeedenikan5686
    @saeedenikan56865 ай бұрын

    easy and excellent explanation ever ! thanks a lot :)

  • @BrianBDouglas

    @BrianBDouglas

    5 ай бұрын

    🤗

  • @pnachtwey
    @pnachtwey Жыл бұрын

    The issue I come across is choosing "optional' values for Q and R. I prefer pole placement for SISO systems. It is easy to determine the response and effort. I usually want to place the poles on the negative real axis. I can move the poles to the left ( more negative ) until I hit one of two limits. 1 output saturation as mentioned. However, usually the problem is feed back resolution. Placing the closed loop pole on the negative real axis does not guarantee that there will be no over shoot. The closed loop zeros can cause over shoot if the closed loop zeros are closer to the origin than the closed loop polse. Sometimes the closed loop zeros must be placed too. LQR has an advantage for MIMO systems. If the Q matrix is chosen correctly, the closed loop zeros will be close to the close loop poles almost canceling them out and improving performance.

  • @danielweber8961
    @danielweber89615 жыл бұрын

    Thanks for the awesome video! I just have one question: What if the reference vector and the state vector do not have the same dimensions? In this case a subtraction would not be defined.

  • @alanlee4326
    @alanlee43264 жыл бұрын

    Great Video!

  • @alexandrpetrov1110
    @alexandrpetrov11103 жыл бұрын

    Thank you!

  • @senorimotor
    @senorimotor3 жыл бұрын

    Sooo good!

  • @benjaminpommer628
    @benjaminpommer628 Жыл бұрын

    As always, great video Brian. I have a question in regard to LQR. Where is the difference between LQR and MPC in a practical and a mathematical way?

  • @mohanasundaramgobinath3470
    @mohanasundaramgobinath34707 ай бұрын

    Sir, just now I have watched this video lecture. Thank you for explaining with the simple terms. I have a question. Why the state should be zero for a observer or other design ? Can you please explain me?

  • @yacinemahboub
    @yacinemahboub6 ай бұрын

    loved it 😁

  • @djredrover
    @djredrover8 ай бұрын

    Hey Brian, would it be possible to continue this spacecraft example but using MPC? I'd appreciate it greatly. Love.

  • @robertdelacafet1464
    @robertdelacafet14643 жыл бұрын

    You save my credit, thanks a lot

  • @gmatheus10
    @gmatheus1010 ай бұрын

    Holy shit, my professor went through all the mathematics that I could'nt even track the concepts. Thank you for this video

  • @charlesguilmin7248
    @charlesguilmin72484 жыл бұрын

    It's really interesting and explanations are really nice. I didn't find the R_tuning.m file. Can you tell me where I can find it ? Thank you so much

  • @danoku5582
    @danoku5582 Жыл бұрын

    Hi Brian, thanks for your lecture on LQR. You and Chris have done a great Job on this. Please my question is on the other diagonal that makes my matrix positive definite or semi positive definite in case of R., How can I choose members in case for nxn matrix, for n>=3. its easier for 2x2 to just pick any number and repeat it , just like zero if I am using an identity matrix, but for n>3 is my question. Secondly please can you do a video also for MPC?

  • @davidm973
    @davidm9732 ай бұрын

    Awesomenesssss

  • @mordecai806
    @mordecai806 Жыл бұрын

    Obrigado! IFSP- Eng. Controle e Automação-São Paulo Brasil!

  • @luislandazuri2070
    @luislandazuri20704 жыл бұрын

    If someone is having problems finding the scaling term, try using simulink to see the step response of the system. Matlab and simulink responses are very different. This might be my mistake mishandling matlab, but if anyone is trying to implement this in a real system and nothing works it might be because of this. To give you some context the step response in matlab gave me a scaling term of around 3000 while with simulink I get the gain around 1,6 and with this my system works perfectly.

  • @noahrichard6707
    @noahrichard67074 жыл бұрын

    thanks

  • @chivornit2071
    @chivornit20715 жыл бұрын

    Hey Brian, Can you help me about this problem? I am working on 3Omni-wheeled mobile robot. In robot frame X’r=AXr+BU, where Xr=[xr’,yr’,theta’] linear state space model. But I when use global coordinates with rotation matrix R(theta), that’s Xr=R(theta)Xw, then Xr’=R(theta)’Xw+R(theta)Xw”. It becomes non linear model. How can I use LQR controller for control this robot with trajectory tracking? Thanks!!!

  • @dprashad7838
    @dprashad78384 жыл бұрын

    Hamiltonian? I need help implementing Hamiltonian. LQR is built in I've gotten to use it, but don't know how to graph it. Also, how'd you make the animation? I'd like to do something similar modeling a rocket landing, for example the falcon 9. Help meeeeeee!!!!!!!!!!!!!!!!!!!!

  • @sc-gw5ph
    @sc-gw5ph5 жыл бұрын

    Hey Brian, thanks for another fantastic and very informative video. I am curious would it be possible for you to share the code you used in this video? Thanks for taking the time to create these great videos.

  • @BrianBDouglas

    @BrianBDouglas

    5 жыл бұрын

    Here's a GitHub where I posted the code for the UFO animation. I'll ask MATLAB to place it in the description so others can get to it too if they want. github.com/aerojunkie/control-tools/blob/master/ufo_rotate.m

  • @sc-gw5ph

    @sc-gw5ph

    5 жыл бұрын

    Thanks for sharing the code, very much appreciated. I look forward to your next video :)

  • @antonete125
    @antonete1253 жыл бұрын

    where can I find the fundation of why I can apply the gain matrix to the state error? min: 1:35

  • @Mehdi2c
    @Mehdi2c5 ай бұрын

    @BrianBDouglas Great work! thank you very much. Question, did I misunderstood this or you didn't have to calculate Kr here because a Kr=1 works fine for this example? other cases we also need to calculate Kr

  • @BrianBDouglas

    @BrianBDouglas

    5 ай бұрын

    This example doesn't need a Kr term since we're trying to drive all of the states to 0 (regulator). If this was a tracking problem (non-zero states is our goal) then a Kr term could be needed.

  • @den4ess
    @den4ess3 жыл бұрын

    Brian, I love you

  • @smitdumore1064
    @smitdumore10643 жыл бұрын

    beautiful

Келесі