MATLAB Answers

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

3 ビュー (過去 30 日間)
AYUSH MITTAL 2018 年 12 月 17 日
コメント済み: Ayush Mittal 2018 年 12 月 19 日
ncont = 1;
nmeas = 2;
K = ss(zeros(ncont,nmeas,3));
gamma = zeros(3,1);
for i=1:3
[K(:,:,i),~,gamma(i)] = hinfsyn(qcaric(:,:,i),nmeas,ncont,'GMAX',inf,'GMIN',5,'METHOD','lmi','DISPLAY','on');
for this code from active suspension control eventhough i am using Gmin as 5, I am getting these values of gamma =

  0 件のコメント

Sign in to comment.

回答 (1 件)

Aquatris 2018 年 12 月 17 日
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 件のコメント

Ayush Mittal
Ayush Mittal 2018 年 12 月 19 日
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.





Translated by