You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
hinfsyn: very slow if stabilizing controller cannot be found #152
takes very long to report that a stabilizing controller cannot be found (or so I assume: I gave up waiting). I changed the initial gamma in control.robust.hinfsyn from 1e100 (!!!) from 1e2, up to 1e5, and found execution time (best of 3 in each case):
gamma
time [s]
1e2
0.8
1e3
0.9
1e4
2.3
1e5
15.7
If I add "job=1" to the sb10ad argument list, the run-time drops back to 0.8s for initial gamma of 1e5, and also for 1e100.
The sb10ad SLICOT SB10AD comments say "job=3", the Slycot default, is the fastest. job=1 might be bisection search (I don't understand what the SLICOT docs say; Slycot help comment claims job=1 is bisection.)
I don't know what a good initial gamma value is; an old reference of mine says 1e6 is "very large"; this is Maciejowski, published in 1989.
So, possible fixes are to change the SB10AD search type via the job parameter, or to reduce the initial gamma value.
I don't have the expertise to understand the implications. I don't think hinfsyn is used much, so I doubt regressions or backward compatibility are a concern.
Activity
don4get commentedon Jan 5, 2019
Hello,
As you suggest, two approaches are possible to fix this problem. I have seen that @murrayrm asked for help on this topic.
Do you expect that changing the default job or the initial gamma will cause regressions in some cases?
roryyorke commentedon Jan 6, 2019
I don't have the expertise to understand the implications. I don't think hinfsyn is used much, so I doubt regressions or backward compatibility are a concern.
Matlab's hinfsyn allows one to supply a particular gamma, or a search range of gamma values https://www.mathworks.com/help/robust/ref/hinfsyn.html
From a quick look at sb10ad I'm not sure if we can support those, but we could add an optional initial gamma value to pass to sb10ad.
bnavigator commentedon Jun 9, 2020
The "h-infinite wait" seems to pose a problem on PowerPC: https://bugzilla.opensuse.org/show_bug.cgi?id=1172555