HIFOO 1.0: H-Infinity Fixed Order Optimization
A MATLAB package for fixed-order controller design

HIFOO 1.0 addresses the following control design problems:
  • fixed-order stabilization (including static output feedback stabilization),
  • fixed-order H-infinity local optimization,
  • fixed-order complex stability radius local optimization,
  • fixed-order stability margin (spectral abscissa) local optimization.
  • fixed-order robust stability margin (pseudospectral abscissa) local optimization.

    User's guide to HIFOO 1.0

    A brief description of the main features of HIFOO 1.0 appears in a paper published in the proceedings of the IFAC Symposium on Robust Control Design in Toulouse, France, July 2006:
  • J. V. Burke, D. Henrion, A. S. Lewis, M. L. Overton. HIFOO - A MATLAB package for fixed-order controller design and H-infinity optimization.

    Examples

    Some examples of the use of HIFOO 1.0 are given in:
  • D. Henrion, Some Control Design Experiments with HIFOO.

    Download HIFOO 1.0

    HIFOO version 1.0 runs under MATLAB. It is freely available.

    HIFOO 1.0 uses the following external MATLAB packages:

  • HANSO version 1.0 (required), core optimization code, freely available

  • a convex quadratic programming solver (required for the optional final phase of HANSO), which can be either
  • an H-infinity norm computation algorithm (required for optimizing the H-infinity norm and complex stability radius), which can be either
  • PSPA version 1.0 (optional), a pseudospectral abscissa computation algorithm, required for optimizing the pseudospectral abscissa, freely available

  • COMPleib (optional), a database of benchmark open-loop systems in state-space format, freely available.

    HIFOO checks the presence of the external routines and, by default, prints informative messages about what software is being used. If both versions of QUADPROG are installed, the one earlier in the MATLAB path is used. The function LINORM is strongly recommended in preference to NORM because of its much faster performance, and if both are available, LINORM is used.

    Warning

    The SLICOT H-infinity norm computation routine LINORM was kindly provided by NICONET e.V. through the help of Peter Benner and Vasile Sima. Any kind of commercial use of this routine requires a license agreement with Synoptio GmbH, Berlin, Germany.


    HIFOO 1.5 addresses the same design problems but allows the user to specify structure in the controller. It also allows problems with nontrivial feed-through.