Nonlinear Control: Hamilton Jacobi Bellman (HJB) and Dynamic Programming

  Рет қаралды 67,996

Steve Brunton

Steve Brunton

Күн бұрын

This video discusses optimal nonlinear control using the Hamilton Jacobi Bellman (HJB) equation, and how to solve this using dynamic programming.
Citable link for this video: doi.org/10.52843/cassyni.4t5069
This is a lecture in a series on reinforcement learning, following the new Chapter 11 from the 2nd edition of our book "Data-Driven Science and Engineering: Machine Learning, Dynamical Systems, and Control" by Brunton and Kutz
Book Website: databookuw.com
Book PDF: databookuw.com/databook.pdf
Amazon: www.amazon.com/Data-Driven-Sc...
Brunton Website: eigensteve.com
This video was produced at the University of Washington

Пікірлер: 79
@higasa24351
@higasa24351 2 жыл бұрын
This is the first time I've ever seen the explanation of HJB-DP in a intuitive and fashionable way, not by following the text book lines one by one. Thank you so much for the great talk.
@charlescai6672
@charlescai6672 2 ай бұрын
Very good explanation to derivative of HJB equation. But there's a point I may have to add that I think there may be a typo in 'DERIVING HJB EQUATION': In dV/dt, minimizing the integral of L(x,u), the lower limits of integral should be t instead of 0. Only by the case, we can conclude in the second last equation that -L(x(t), u(t)) can be obtained from the time derivative of integral of function L(x,u)...
@alanzhus2730
@alanzhus2730 2 жыл бұрын
Can't believe serious topic as this can have thousands of views hours after release. KZbin is really a magic place.
@Eigensteve
@Eigensteve 2 жыл бұрын
It's pretty wild to me how many people like hard math :)
@roro4787
@roro4787 2 жыл бұрын
@@Eigensteve we love math💕
@ecologypig
@ecologypig 2 жыл бұрын
Excellent. Can see a lot of connections with Control and how the essence of Bellman equation are all over the place in different fields. Thanks Prof. Brunton!
@ailsani8749
@ailsani8749 2 жыл бұрын
I am a follower from his 'control bootcamp' series. Just trying to tell everyone new here that his video is life-saving.
@mingyucai6559
@mingyucai6559 2 жыл бұрын
Clear tutorial. Thanks Prof. Steve. Keep following your steps.
@sounghwanhwang5422
@sounghwanhwang5422 2 жыл бұрын
One of the best lectures that I've ever seen!
@hfkssadfrew
@hfkssadfrew 2 жыл бұрын
Hey Steve, on 9:11 it should be integration from t to t_f, then that’s where the - comes from.
@umarniazi7320
@umarniazi7320 2 жыл бұрын
Yes, you are right.
@MBronstein
@MBronstein 2 жыл бұрын
But then shouldn’t there also be an integral going from t0 to t?
@hfkssadfrew
@hfkssadfrew 2 жыл бұрын
@@MBronstein I guess it is because such t can varying arbitrarily from t0 to tf. And the whole point is to analyze the derivative wrt anyway. so there is no need to derive another one from t0 to t.
@MBronstein
@MBronstein 2 жыл бұрын
@@hfkssadfrew But the definition of V goes from t_0 to t_f.. So, we have V= integral of L going from t_O to t and from t to t_f +Q. Notice, if we take derivative now, we get -L from the first integral and +L from the second integral. I don't understand why we can just ignore the second integral
@Eigensteve
@Eigensteve 2 жыл бұрын
Good catch, thanks! I caught this in the 2nd edition book proofs, but not before the video...
@amaarquadri
@amaarquadri 2 жыл бұрын
Wow it's so cool that these concepts from reinforcement learning apply so perfectly to nonlinear control.
@aiwithhamzanaeem
@aiwithhamzanaeem Ай бұрын
Thanks Professor Steve, Finally I completed the playlist.
@geonheelee4717
@geonheelee4717 Жыл бұрын
A Great Lecture. I hope the next lecture will open asap. In particular, I'm interest in detailed relationship between RL and optimal control.
@dmitryb4666
@dmitryb4666 2 жыл бұрын
thanks Steve for a great lecture; looking forward to more lectures on RL and non-linear control if possible with some simple examples. thank you very much!
@ramanujanbose6785
@ramanujanbose6785 2 жыл бұрын
Steve I follow all of your lectures. Being a mechanical engineer I really got amazed by watching your turbulence lectures. I personally worked with CFD using scientific python and visualization and computation using python and published a couple of research articles. I'm very eager to work under your guidance in the field of CFD and Fluid dynamics using Machine learning specifically simulation and modelling of turbulence fluid flow field and explore the mysterious world of turbulence. How should I reach you for further communication?
@tuptge
@tuptge 2 жыл бұрын
More on non linear control please! Im trying to make up my mind on topics for my postgrad thesis!
@boldirio
@boldirio 2 жыл бұрын
Great as always Steve! I was wondering if you have any experience in transfer learning, specifically domain adaptation? If so it would be a cool topic to go through! /J
@blitzkringe
@blitzkringe 2 жыл бұрын
Please do more of this content. Thank you.
@Eigensteve
@Eigensteve 2 жыл бұрын
Glad you like it!
@mohammadabdollahzadeh268
@mohammadabdollahzadeh268 Жыл бұрын
Thanks dear steve for this wonderful tutorial I was wondering would it be ok if you solving an example for that?
@InfernalPasquale
@InfernalPasquale 3 ай бұрын
Excellent communication
@ronbackal
@ronbackal 4 ай бұрын
Thanks! That is very interesting. I have the book Data driven science and engineering, which I want to get to sometime to learn more deeply
@emmab5151
@emmab5151 2 жыл бұрын
Amazing!
@rajanisingh1148
@rajanisingh1148 Ай бұрын
@Eigensteve, Thanks for such a nice and interesting videos. I've seen all your videos on reinforcement learning. It would be really helpful if you could do a lecture on how dynamic games (either discrete or continuous time) can be solved using reinforcement learning with a walkthrough example. For now, the theoretical concepts on reinforcement learning are clear from your videos, but how it's actually implemented to solve problems is still unclear. Also if you can recommend some resource that would be bonus!
@prantel1
@prantel1 2 жыл бұрын
At 11:47 the bounds of the integral should be from “t” to “tf”; not from 0 to tf. If you make that change then the derivative of the integral wrt to t will be -L(.,.)
@BalajiSankar
@BalajiSankar Жыл бұрын
Can you please tell how changing lower limit changes the sign?
@BarDownBoys
@BarDownBoys Жыл бұрын
@@BalajiSankar I’m happy I can answer as I came here to ask the same question, and Behzad cleared it up for me. As behzad stated, it should be integral (t to tf). Then you agree that you can write this as negative the integral (tf to t). Then simply look at the fundamental theorem of calculus - the lower limit being a constant drops out and the upper limit being the variable you’re differentiation is with respect to just means that what’s inside (-L) is your output
@kirar2004
@kirar2004 Ай бұрын
@@BarDownBoys Thanks
@sounakmojumder5689
@sounakmojumder5689 2 жыл бұрын
thank you, I have a request if you can please upload a lecture on infinite horizon model predictive control......
@G12GilbertProduction
@G12GilbertProduction 2 жыл бұрын
This Hilbert space is include in f(x(k),u(k) * (x(0),y(k)-0) or outside the x(k) - (without double equation)?
@qiguosun129
@qiguosun129 3 ай бұрын
Great Lecture, could you think about discusing HJB with variational inequality? thanks!
@Connect.2source
@Connect.2source Жыл бұрын
Is there any way I can learn from you in more detail? Any programs you offer by chance? Thanks so much!!
@djredrover
@djredrover Жыл бұрын
it would be lovely if you could do a MATLAB demo of an ONC using HJB for a hovercraft/drone with full 6-DOF model.
@nitishabordoloi3987
@nitishabordoloi3987 Жыл бұрын
Hello Steve, can you please comment on the necessity of terminal cost in the performance index
@SRIMANTASANTRA
@SRIMANTASANTRA 2 жыл бұрын
Lovely, Professor Steve
@Eigensteve
@Eigensteve 2 жыл бұрын
Thanks!
@Silva98122
@Silva98122 Жыл бұрын
In general, if DP algorithm depends on discretization and interpolation in continuous state space and input space when solving a discrete time, finite time optimal control problem, does it yield a suboptimal solution?
@vietanhle6321
@vietanhle6321 Жыл бұрын
Good instructor
@chinamatt
@chinamatt 2 жыл бұрын
Hi Steve, thanks for the lecture. At the beginning, should the differential equation be dx/dt = f(x,u,t)? As in the derivation of the HJB equation, the subsitution of dx/dt to f(x,u) is made.
@Eigensteve
@Eigensteve 2 жыл бұрын
Yes, good call
@mamadoupathely9369
@mamadoupathely9369 2 жыл бұрын
yeah it must be dx/dt = f(x,u)
@leventguvenc917
@leventguvenc917 2 жыл бұрын
Very nice video. In deriving the HJB equation, the lower limit of the integral should be t instead of 0.
@jameschen2308
@jameschen2308 2 жыл бұрын
I was about to say
@user-en1kz2ew6n
@user-en1kz2ew6n Жыл бұрын
I second that!
@amirhosseinafkhami2606
@amirhosseinafkhami2606 2 жыл бұрын
Hi Dr. Brunton, thanks for your excellent lecture. Do you have any good code examples of solving the HJB equation for non-linear systems? And what resources do you suggest for getting more depth into this field?
@Eigensteve
@Eigensteve 2 жыл бұрын
I don't have a good recent code... way back in grad school I remember solving these numerically as a two point boundary value problem... but all of that code is deprecated. Will look into a better example
@amirhosseinafkhami2606
@amirhosseinafkhami2606 2 жыл бұрын
@@Eigensteve Actually, I took a look into chapter 11 of your book, but unfortunately, unlike other chapters, I did not find any sample code in it. I think it would be great if an example code for solving the HJB of a non-linear system was added to the book! This could be a great complementary to this chapter! Thank you so much again for making such great contents
@Eigensteve
@Eigensteve 2 жыл бұрын
@@amirhosseinafkhami2606 Totally agree, but this will need to wait for an updated version. Definitely in the works though.
@amirhosseinafkhami2606
@amirhosseinafkhami2606 2 жыл бұрын
@@Eigensteve I look forward to the updated version of the book then
@CoffeeVector
@CoffeeVector 2 жыл бұрын
In the equation, dx/dt = f(x(t), u(t), t), why is there an extra dt at the end?
@qejacwa
@qejacwa 2 жыл бұрын
This is a fantastic video on the derivation. However, there are quite some typos in the video. Hopefully, Steve can correct them. For example, the lower limit in the integral is supposed to be t instead of 0 in the derivation of HJB equation.
@sai4007
@sai4007 Жыл бұрын
Yep, without this correction -L(x, u) derivation doesn't make sense
@hw1875
@hw1875 Жыл бұрын
16:58, shoud the V at RHS of Discrete time HJB be associated with n, not n-1? Because cost to go (from k to n) should be equal to current cost plus cost to go (from k+1 to n)
@julienriou4511
@julienriou4511 2 жыл бұрын
that's weird not to talk about Pontryagin Maximum Principle in an introduction to optiaml control
@Eigensteve
@Eigensteve 2 жыл бұрын
That's a great point. There are a lot of things conspicuously missing from these intro lectures. A lot of it is that I'm still learning more about these topics myself. Maybe a topic for another day!
@justinting1422
@justinting1422 2 жыл бұрын
What's the purpose of the terminal cost? It just disappears when you take the time derivative at 9:22, since it's just a constant, so it shouldn't affect the trajectory of u(t). Also, isn't the cost of the final state already taken into account in the integral, since it integrates all the way to tf anyway?
@sechristen
@sechristen 2 жыл бұрын
The terminal cost term will appear as a boundary condition in the PDE that HJB gives us, as V(x(t_f),t_f,t_f)=Q(x(t_f),t_f). The terminal cost cannot be taken inside the integral (without breaking all the other math by including delta functions as valid cost functions). The formulas in the video are derived with the idea of a fixed tf, so if t_f doesn't vary the final cost function will probably look like "After attempting to control the dynamical system, did it end where I wanted it to? eg Q=(x(t_f)-x_target)^2"
@qiangli4022
@qiangli4022 2 ай бұрын
actor-critic seems to be categorized as a model-free rl in other literatures.
@clairecheung5388
@clairecheung5388 Жыл бұрын
The lower bound of the integral for V(x(t),t,t_f) should be t instead of 0.
@RGDot422
@RGDot422 Жыл бұрын
Why d ( integral ( L(x,u)dt )/dt = - L(x,u)?... Specifically, why is the negative sign?
@batoolalhashemi1167
@batoolalhashemi1167 Жыл бұрын
Please give us some examples to more understanding
@peasant12345
@peasant12345 2 жыл бұрын
7:10 the bellman opt must include Q(x(t),t)
@matouspikous7489
@matouspikous7489 2 жыл бұрын
min(L) != -min(-L), I don't know how to cancel these minus signs.
@CupuycA
@CupuycA 2 жыл бұрын
1:35 mistake in the equation
@wikipiggy0.0
@wikipiggy0.0 Жыл бұрын
the derivation is not clear. maybe it is due to the typos metioned in other comments I find it hard to follow
@CupuycA
@CupuycA 2 жыл бұрын
9:15 it's not obvious, that the operators min and d/dt commute. In general this of course is not true.
@matouspikous7489
@matouspikous7489 2 жыл бұрын
I think there shouldn't be the minimum. V is just what is in the minimum. You do the calculations and then, you say that some V* is the optimal, which has the minimum in the equation.
@canis_mjr
@canis_mjr Ай бұрын
Шикарный ролик (нет) пример где? Идею прдзода понятнати примитивна, как наипрактике жто применить?
@__--JY-Moe--__
@__--JY-Moe--__ 2 жыл бұрын
👍I don't know why I see super mario Bros!! I love Calculus though!! this goes well, with my jacobian meshing geometries! Rosey the Robot was so over worked! X0-Xn= Cello...ha..ha..💫
@ctrlaltdebug
@ctrlaltdebug Жыл бұрын
Your trajectory x(t) is not a function.
@KHMakerD
@KHMakerD 2 жыл бұрын
Lol solving PDE’s is heinous by definition 😂😂
@beaglesnlove580
@beaglesnlove580 11 ай бұрын
Crap ur 100x better than this horrible professor I had who was teaching hjb equation without any background.
Everything You Need to Know About Control Theory
16:08
MATLAB
Рет қаралды 510 М.
FOOLED THE GUARD🤢
00:54
INO
Рет қаралды 48 МЛН
⬅️🤔➡️
00:31
Celine Dept
Рет қаралды 37 МЛН
Василиса наняла личного массажиста 😂 #shorts
00:22
Денис Кукояка
Рет қаралды 7 МЛН
Introduction to Trajectory Optimization
46:40
Matthew Kelly
Рет қаралды 87 М.
Deep Reinforcement Learning: Neural Networks for Learning Control Laws
21:15
Why the Riccati Equation Is important for LQR Control
14:30
Overview of Deep Reinforcement Learning Methods
24:50
Steve Brunton
Рет қаралды 55 М.
Model Predictive Control
12:13
Steve Brunton
Рет қаралды 246 М.
Bellman Equation Basics for Reinforcement Learning
13:50
Skowster the Geek
Рет қаралды 141 М.
ПОКУПКА ТЕЛЕФОНА С АВИТО?🤭
1:00
Корнеич
Рет қаралды 2,4 МЛН
Хотела заскамить на Айфон!😱📱(@gertieinar)
0:21
Взрывная История
Рет қаралды 2,9 МЛН
Мечта Каждого Геймера
0:59
ЖЕЛЕЗНЫЙ КОРОЛЬ
Рет қаралды 1,5 МЛН
APPLE совершила РЕВОЛЮЦИЮ!
0:39
ÉЖИ АКСЁНОВ
Рет қаралды 1,9 МЛН
После ввода кода - протирайте панель
0:18