What is the best objective function to avoid the overshot when optimizing a PID controller?

7 views (last 30 days)
I am using PSO to optimize my PID controller parameters and I want to avoid any kind of overshot.
what is the best objective function ISE, IAE, ITSE, ITAE or RMSE or any other objective function.
  1 Comment
Walter Roberson
Walter Roberson on 13 May 2023
Any kind of polynomial interpolation can have overshoot.
Analysis of functions in terms of a finite number of fourier transform coefficients will typically have overshoot.
Overshoot is common and not easy to get rid of.

Sign in to comment.

Answers (1)

Sam Chak
Sam Chak on 14 May 2023
First of all, you need to understand what causes the overshoot in the system, and what does not.
Do you have the model of the uncompensated system? Is it a transfer function, or a set of ODEs?
For your info, if you study the math functions of those ISE, IAE, ITSE, ITAE or RMSE, they don't care about the factor that causes overshoot so long as the minumum value is reached.
You can probably write a custom overshoot-free objective function in a way that is similar to the overshoot-free model reference tracking.
  1 Comment
aymene bacha
aymene bacha on 15 May 2023
Edited: aymene bacha on 15 May 2023
"ISE, IAE, ITSE, ITAE or RMSE, they don't care about the factor that causes overshoot" this is what I want to confirme, thank you so much.
I have made a costum objective function by myselt as you mentionned and it works perfectly as I want.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!