Multiobjective Optimization

The problem to be solved:

vecmin f(x) subject to h(x)=0, g(x)>=0,
n=dim(x), m=dim(g), p=dim(h).

Many problems in real life are multiple criteria decision problems. These are usually solved by proper scalarization and parametrization. The vecmin means usually a Pareto optimum. An optimum in the sense of the natural halforder of R^n need not exist.

Solvers which explicitly provide for multiple objectives are

MOSQP SQP method for differentiable constrained NLPs, AMPL interface (Matlab)
PolySciP solver for multi-criteria integer programming and multi-criteria linear programming with an arbitrary number of objectives
NSGA-II evolutionary method (Matlab)
LIONsolver reactive search, free for research
PaGMO/PyGMO Parallel Global Multiobjective Optimizer (C++/Python)
FSQP (f77, C) FFSQP(f77), CFSQP(C), specifically strong for large number of inequalities. generate feasible iterates, ADIFOR interface for automatic differentiation.
AMPL interface to CFSQP
MCDM Overview of commercial and other MCDM software
MOEA Multiobjective optimization framework in Java
NDA_PMIN An SQP variable metric method for minimax optimization, linear constraints.
NLPJOB Interactively changeable scalarization and solution by NLPQL
CONMAX (f77) uses ODEs to generate search direction followed by Newton to correct back to feasible region, authors claim it is very robust but somewhat slow.
NIMBUS to be used interactively through a web-interface ,allows nonsmooth problems, uses bundle method
NBI Normal Boundary Intersection (Matlab)
jMetal extensive Multiple-Objective MetaHeuristics library in Java
EMOO Evolutionary Multi-objective Optimization (Python, MPI)
SPEA Strength Pareto Evolutionary Algorithm (C++)
SPEA-TSP SPEA implementation for the TSP (C++)
HIPRE 3+ Decision analytic tool for Windows 95/98/NT
MCMA From IIASA. Linear multiobjective problems. Needs HOPDM and others. only binaries for Solaris 2.5 and Windows 95.
FGM/RGM Linear and nonlinear problems; feasible/resonable goals method. Windows binaries.