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 (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) |
| 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. |
| 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 |