PENNON logo penalty method for nonlinear and semidefinite programming

PENNON is a computer program for solving problems of convex and nonconvex nonlinear programming and (generally nonlinear) semidefinite programming. Originally an implementation of the PBM method of Ben-Tal and Zibulevsky for problems of structural optimization, it has grown into a stand alone program for solving general problems. PENNON is particularly aimed at large-scale problems with sparse data structure. It is based on a generalized augmented Lagrangian method.

The algorithm, implementation issues, and results of numerical tests for linear SDP and SOCP problems can be found in a paper (pdf , ps) presented at the workshop on High Performance Algorithms for Nonlinear Optimization, Erice, 2001.
In a newer report (pdf , ps), published in a final form in Optimization Methods and Software 18(3):317-333, 2003, you will find more about the unified approach to NLP and SDP problems; this paper also includes results of extensive tests.

NEW - try PENLAB a free open source MATLABŪ toolbox for nonlinear optimization, linear and nonlinear semidefinite optimization and any combination of these.

Complete theory, the full algorithm and results of extensive testing is available in the thesis of Michael Stingl "On the Solution of Nonlinear Semidefinite Programs by Augmented Lagrangian Methods". The thesis, submitted in August 2005, is available here.

Try PENNON on the NEOS server for
PENNON and other codes: Hans Mittelmann tested both versions, SDP and NLP, on a large set of problems and compared several solvers, both academic and commercial. Some of these test results in the form of tables and performance profiles can be also found here.

PENNON is also employed as an optimization solver in the software package MOPED for material and topology optimization of elastic structures. Here it helps to sove real-world problems of aircraft industry.

Our main goal is to solve problems from structural optimization. We collected several test examples (linear SDP), small to large scale, generally sparse. The corresponding input files in SDPA format can be found here.

PENNON is available through PENOPT GbR; there you can also find more details about the code. If you have any questions, please contact Michal Kocvara ( or Michael Stingl (

Michal Kocvara
November 3, 2013