What is the purpose of Gmin and Gmax value in Hinfinty controller

9 views (last 30 days)
ncont = 1;
nmeas = 2;
K = ss(zeros(ncont,nmeas,3));
gamma = zeros(3,1);
for i=1:3
i
[K(:,:,i),~,gamma(i)] = hinfsyn(qcaric(:,:,i),nmeas,ncont,'GMAX',inf,'GMIN',5,'METHOD','lmi','DISPLAY','on');
end
gamma;
for this code from active suspension control eventhough i am using Gmin as 5, I am getting these values of gamma =
0.9402
0.6774
1.0306

Answers (1)

Aquatris
Aquatris on 17 Dec 2018
From the function page you can find the information you need. I am pasting it here for convenience.
---------------
Performance range for search, specified as a vector of the form [gmin,gmax]. The hinfsyn command tests only performance levels within that range. It returns a controller with performance:
gammagmin, when gmin is achievable
gmin < gamma < gmax, when gmax is achievable and but gmin is not
gamma = Inf when gmax is not achievable. In this case, hinfsyn returns [] for K and CL.
If you know a range of feasible performance levels, specifying this range can speed up computation by reducing the number of iterations performed by hinfsyn to test different performance levels.
---------------
Basically it is not a strict constraint that the controller will results in gamma>= gmin. It is more of a suggestion for the algorithm to speed things up.
  1 Comment
Ayush Mittal
Ayush Mittal on 19 Dec 2018
Thank you for your response.
As stated above that It returns a controller with performance: gammagmin, when gmin is achievable. So, is it accurate to say that if it will always give the same value of gamma irrespective of gmin as long as this condition is satisfied.
For example:
gamma= 0.9467
gmin= 1
so now if I increase the value of gmin (e.g. 2,5,10,100), will I still get the same gamma value for all these values of gmin?

Sign in to comment.

Tags

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!