What is the purpose of Gmin and Gmax value in Hinfinty controller
7 次查看(过去 30 天)
显示 更早的评论
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
0 个评论
回答(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:
gamma ≤ gmin, when gmin is achievable
gmin < gamma < gmax, when gmax is achievable and but gmin is not
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
2018-12-19
Thank you for your response.
As stated above that It returns a controller with performance: gamma ≤ gmin, 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?
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 H-Infinity Synthesis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!