hmm, I don't know. Perhaps if you square the function so that all outputs are positive and then take the negative so that the zero crossings are the maximums you could find one of the roots by initializing the extremum seeking controller near it.
Probably yes. It is a little better "perturb and observe" that are being used for decades. The problem is that it won't be able to track correctly during panel shading, for example.
Yes, if you're looking for the minimum of a function you can just multiply the output by -1 and then look for the maximum still. That'll return the same optimal input value that will produce the lowest cost.
If you assume that the frequency of the input signal is low enough, then you can approximate the function you want to optimize to be static. You now make a first order taylor expansion on either side the optimal (maximum) point, then the gain will be positive and negative on the left and right side respectively. This implies that since the sine wave is the only varying component in the output (since we assumed the function to be static and the input just just a constant and a sine wave), you will have that the gain of the static function is what determines the phase in the output (for the taylor expansion approximation). Hope it made sense.
Thanks, Brain! That's so useful. I have a question about the term you just used for the speed of dynamic changing; "It'll continuously lag behind the maximum value". What does it mean? Do you mean the dynamic should have a lag behind the controller? Looking forward to your response.
I think what Brian is trying to say is that if you have a system whose dynamics change too fast (e.g. has parameters that change value quickly) or at least faster than your controller converges, then the controller won’t have enough time to converge to the local optima. Imagine a heat-seeking missile trying to hit a target that can move faster than it.
@@benquickfall8384 Thanks Ben, I think so. In general this proposition is correct, the controller dynamic should be faster than plant ones, but what about finding maximum or optimal solution? It seems that continuously lag behind is equivalent to be slower, but I don't understand the use of "maximum value" term here!
If the learning rate (gain) of the model is too large, it could overstep values of the objective function and diverge as it tries to correct its own mistake.
The use of sinewaves and phase comparisons is so intuitive and clever, very cool
Best quality as usual. The high-pass filter can be interpreted as a derivative (detecting the signal change) and smoothing the low-pass filter :-)
this is getting really meta, it's like a controller for controller
Excellent presentation, thanks Brian.
Excellent and clear presentation. Thank you!
In your simulink model I noticed that you didn't add a delay block to your feedback loop. How did simulink know that the feedback signal was delayed?
Great video, this seams similar to using Newton Raphson method for finding zero of a function can this model be altered for root finding?
hmm, I don't know. Perhaps if you square the function so that all outputs are positive and then take the negative so that the zero crossings are the maximums you could find one of the roots by initializing the extremum seeking controller near it.
Hi Everyone, How can I improve the Iterative Learning Control based Model Predictive Controller enhance Atomic Force Microscopy performance?
Sheer genius.
Can we use this in solar MPPT ??
Yes you can, and Steve explains several good applications in his video here: czcams.com/video/-mD3bGD3Nbc/video.html
Probably yes. It is a little better "perturb and observe" that are being used for decades. The problem is that it won't be able to track correctly during panel shading, for example.
@@BrianBDouglas 👍👍👍
awesome! anything else on ABS?
were just designing a controller for our final exam!
So.... can Extremum Seeking Control be utilized to seek minimum rather than the maximum value?
I believe so, when seeking a minimum of f, try min f = max -f. Just mirror your function.
Yes, if you're looking for the minimum of a function you can just multiply the output by -1 and then look for the maximum still. That'll return the same optimal input value that will produce the lowest cost.
i'm sorry i didn't understand why the two signals get out of phase when input is higher than the minimum, can anyone explain it to me? thanks
If you assume that the frequency of the input signal is low enough, then you can approximate the function you want to optimize to be static. You now make a first order taylor expansion on either side the optimal (maximum) point, then the gain will be positive and negative on the left and right side respectively. This implies that since the sine wave is the only varying component in the output (since we assumed the function to be static and the input just just a constant and a sine wave), you will have that the gain of the static function is what determines the phase in the output (for the taylor expansion approximation). Hope it made sense.
Thanks, Brain! That's so useful. I have a question about the term you just used for the speed of dynamic changing; "It'll continuously lag behind the maximum value". What does it mean? Do you mean the dynamic should have a lag behind the controller? Looking forward to your response.
I think what Brian is trying to say is that if you have a system whose dynamics change too fast (e.g. has parameters that change value quickly) or at least faster than your controller converges, then the controller won’t have enough time to converge to the local optima.
Imagine a heat-seeking missile trying to hit a target that can move faster than it.
@@benquickfall8384 Thanks Ben, I think so. In general this proposition is correct, the controller dynamic should be faster than plant ones, but what about finding maximum or optimal solution? It seems that continuously lag behind is equivalent to be slower, but I don't understand the use of "maximum value" term here!
What about singular control?
Could this also be used as online/offline PID auto tuning?
Yes
How can speed of convergence lead to instability?
If the learning rate (gain) of the model is too large, it could overstep values of the objective function and diverge as it tries to correct its own mistake.