L7.3 Time-optimal control for linear systems using Pontryagin's principle of maximum

  Рет қаралды 10,696

aa4cc

aa4cc

Күн бұрын

Пікірлер: 15
@aa4cc
@aa4cc 4 жыл бұрын
Typo at 6:43: should be lambda2 = -c1 t + x2. The minus sign was missing in the text and video. Fortunately, it had no impact on the validity of subsequent development because, in fact, knowing that the costate lambda2 is a linear function was enough (perhaps combined with the information that at the end of the time interval it was either 1 or -1 thanks to the condition that Hamiltonian is vanishing there).
@J7baodaF22
@J7baodaF22 4 жыл бұрын
Full of practical knowleges. Thanks for this magnificant course!
@aa4cc
@aa4cc 4 жыл бұрын
At 11:39 there was an omission in the prescription for an optimal controller. I omitted for each value of the control (1 and -1) the second if part. Somehow this happened while copy&pasting the formulas from the lecture notes (in the lecture notes on page 12 this formula with the vertical curly is full and correct). This omission is, however, still present in the subsequent boxed formula that is claimed as "the more compact version" in the slides. Unfortunately, it was also stated in the lecture notes (equation 78). Here I cannot just blaim the copy&pasting-induced typo... The trouble with both the omission and the boxed formula is that it misses the instruction for the controller as for how to slide along the switching curve, that is, when y+1/2v|v| is zero. This trouble is finally projected into the Simulink implementation of the code. Well, strictly speaking, the block diagram on which our Simulink model is based, can also be found in the authoritative textbooks such as Athans&Falbe (Fig.7-5) and Kirk (Fig. 5-22). The reason why the results of the simulation did not reveal any problems (and they really did not) is that in general in numerical algorithms the program paths that are only entered if something equals to zero EXACTLY are NEVER actually entered (remember, it is all just finite precision arithmentics). In our case, the controller initially detected that the state vector is above the switching curve, it set the control to -1 and the system started moved towards the switching curve in the lower right quadrant. Once the controller detected reaching the switching curve, it actually detected not that the expression y+1/2v|v| is zero, but that that it changed its sign. The other polarity of the control signal was set and since then the system slided nicely a tiny tiny tiny litle bit BELOW the switching curve. The chattering problems only appeared once the system approached the origin (and the steepness of the switching curve became close to infinity). I will upload corrected versions of both the video and the lecture notes soon.
@NoNTr1v1aL
@NoNTr1v1aL 3 жыл бұрын
Amazing lecture series!
@alexpilloni
@alexpilloni 11 ай бұрын
Nice lecture! May I ask you from which textbook did u took this treatment? Particularly I'm interested in the closed-loop form part of slide 32. Thanks for replying :-)
@dawitsco9283
@dawitsco9283 2 жыл бұрын
How do you plot the trajectory on the switching curve
@tennenrishin
@tennenrishin 2 жыл бұрын
Very useful video. Thank you. At the end you mention a next lecture that covers "numerical optimal control". I can't find it on your channel though. Does it still exist?
@aa4cc
@aa4cc 2 жыл бұрын
Well, sorry, not yet. Instead, have a look at a list of other resources for the corresponding lecture (or the whole course) at moodle.fel.cvut.cz/course/view.php?id=6589. In particular, the block for the topic of numerical optimal control is at moodle.fel.cvut.cz/course/view.php?id=6589#section-8. I hope you will find some bits useful even if no video is available.
@sardorisrailov1376
@sardorisrailov1376 Жыл бұрын
6:43 there should be lambda2=-c2... no??
@aa4cc
@aa4cc Жыл бұрын
If you mean that c1 in the formula should be replaced with c2, then no. Note that lambda2 is obtained as (minus) the integral of lambda1. And lambda1 has previously been determined to be a constant c1. Integrating a constant amounts to multiplying it by the time (and allowing for a nonzero initial condition brings in the constant c2). Does it help?
@sardorisrailov1376
@sardorisrailov1376 Жыл бұрын
sorry I wanted to tell that there is a minus sign missing in c1... lambda2=-c1*t+c2, because \dot{lambda2}=-lambda1@@aa4cc , no!?
@aa4cc
@aa4cc Жыл бұрын
True, but this I acknowledged three post below (and some three years ago) :-) Indeed, after collecting a few typos these videos should be remade. Or perhaps I should at least create some kind of Errata list for each video because navigating in these responses is not convenient.@@sardorisrailov1376
@sardorisrailov1376
@sardorisrailov1376 Жыл бұрын
thanks for the content, you can also pin the comments, so that they appear at the top with verified account
@aa4cc
@aa4cc Жыл бұрын
Thanks for this advice, @sardorisrailov1376, I was not aware of this possibility. Back then it was possible to pin some kind of "sticky notes" to the particular time in the video (as a quick fix for some typos), but such possibility was later removed, which is a pity.
@yashiroman93
@yashiroman93 3 жыл бұрын
Finally, what is the value of min J?
L9.1 Stability margins for LQ-optimal regulators
8:30
aa4cc
Рет қаралды 2,3 М.
Quando A Diferença De Altura É Muito Grande 😲😂
00:12
Mari Maria
Рет қаралды 45 МЛН
My scorpion was taken away from me 😢
00:55
TyphoonFast 5
Рет қаралды 2,7 МЛН
State space feedback 7 - optimal control
16:43
John Rossiter
Рет қаралды 41 М.
Pontryagin's Principle (CEE lecture)
52:51
João Miranda Lemos
Рет қаралды 4,1 М.
Optimal Control (CMU 16-745) 2023 Lecture 6: Deterministic Optimal Control Intro
1:22:25
CMU Robotic Exploration Lab
Рет қаралды 3,2 М.