GloptiPoly 3- moments,
optimization and semidefinite programming
Developed by Didier Henrion, Jean-Bernard Lasserre and Johan Loefberg.
GloptiPoly 3 is intended to solve, or at least approximate,
the Generalized Problem of Moments (GPM), an infinite-dimensional
optimization problem which can be viewed as an extension of
the classical problem of moments.
From a theoretical viewpoint, the GPM has developments and impact
in various areas of mathematics such as algebra, Fourier analysis,
functional analysis, operator theory, probability and statistics,
to cite a few. In addition, and despite a rather simple and
short formulation, the GPM has a large number of important
applications in various fields such as optimization, probability,
finance, control, signal processing, chemistry, cristallography,
The present version of GloptiPoly 3 can handle moment problems with
polynomial data. Many important applications in e.g. optimization,
probability, financial economics and optimal control, can be viewed
as particular instances of the GPM, and (possibly after some
transformation) of the GPM with polynomial data.
The approach is similar to that used in the former
version 2 of
GloptiPoly. The software allows to build up a
hierarchy of semidefinite programming (SDP), or linear matrix
inequality (LMI) relaxations of the GPM, whose associated monotone
sequence of optimal values converges to the global optimum.
The public release of GloptiPoly 3 was annonced during
IMA Workshop on Optimization and Control in January 2007 in Minneapolis.
GloptiPoly 3 is described in:
D. Henrion, J. B. Lasserre, J. Loefberg. GloptiPoly 3: moments, optimization and semidefinite programming. Optimization Methods and Software, Vol. 24, Nos. 4-5, pp. 761-779, 2009.
The GPM and its SDP
formulation are described in:
J. B. Lasserre. A Semidefinite programming approach to the generalized problem of moments.
Mathematical Programming, Vol. 112, pp. 65-92, 2008.
GloptiPoly 3.9 (28 November 2018) can be downloaded as a
archive, including this
documentation for version 3.3.
It is developed for Matlab 7.2 and higher.
It is a freeware subject to the General Public Licence (GPL) policy.
GloptiPoly 3.6 benefited from feedback
by Damien Bily, Florian Bugarin, Mathieu Claeys, Akin Delibasi, Martin Mevissen,
Carlo Savorgnan and Tung Phan Thanh.
Gloptipoly 3.7 benefited from feedback
by Milan Korda and Jiawang Nie.
Gloptipoly 3.8 fixes a bug in the YALMIP interface
pointed out by Mathieu Claeys.
GloptiPoly 3.9 fixes a bug in the case of no objective function as pointed by Swann Marx, Quentin Vila and Tillmann Weisser.
Please forward comments, suggestions and bug reports to Didier Henrion.
Last updated on 28 February 2019.