Optimization Software
(CPLEX, LINDO, KNITRO, GAMS, AMPL, ...)
Optimization has traditionally been the domain of expensive specialized packages. But over the past several years, Mathematica has progressively redefined these expectations—not only by bringing industrial-strength optimization capabilities into standard desktop software, but also by integrating optimization into Mathematica's complete modeling, programming, visualization and interface environment.
Built into Mathematica are state-of-the-art algorithms for linear and nonlinear, constrained and unconstrained, local and global as well as continuous and discrete optimization. Mathematica's unique architecture allows it to scale seamlessly from small interactive problems directly entered in the standard Mathematica language with traditional mathematical notation, to large-scale algorithmically constructed problems that can be deployed in a modern distributed computing environment.
The integration of optimization with the full symbolic Mathematica system makes possible a new level of algorithmic model construction and manipulation, and allows industrial-strength optimization to become part of the routine workflow. In addition, Mathematica's unique web of algorithmic capabilities—extending across continuous and discrete mathematics, as well as newer complex-systems-inspired methods—consistently allows Wolfram Research to extend the state of the art in optimization algorithms, and make the results immediately available through Mathematica's automatic algorithm selection mechanism.
Optimization Software Features in Mathematica:
- Constrained and unconstrained polyalgorithmic local optimization »
- Constrained and unconstrained polyalgorithmic global optimization »
- Linear programming with simplex, interior point and exact methods »
- Integer and mixed integer linear programming »
- Combinatorial optimization, including the traveling salesman problem »
- Linear and nonlinear interior point methods »
- Linear and nonlinear least squares methods
- Constrained and unconstrained data fitting >>
- Built-in sparse algorithms for large-scale optimization »
- Automatic differentiation of programs seamlessly used
- Latest platform-optimized libraries used
Key Advantages of Mathematica for Optimization:
- Industrial-strength optimization included at no additional cost
- Full integration with numerics, symbolics, graphics, programming and interface
- Exact symbolic optimization giving symbolic formula results »
- Arbitrary-precision numerical optimization »
- Support for arbitrary logical combinations of constraints »
- Rich modeling capabilities built in and fully integrated with optimization
- Symbolic representation of problems; manipulation of problems in symbolic form
- Formulas entered in traditional math notation, for enhanced readability and verifiability »
- Integrated statistics and data analysis; immediate import of hundreds of data formats »
- Built-in support for piecewise functions, approximate interpolated functions, etc.
- Built-in state-of-the-art numerical differential equation solving »
- Integrated dynamic interface allowing real-time exploration of design space »
- Built-in automated graph layout and computational graph theory »
- Extensive 2D and 3D visualization, including constraint/contour region visualization »
- Extensive built-in live data collections (financial, chemical, etc.) »
- Built-in library of optimization test problems »
- Fully compatible on all standard and emerging computer platforms »
- Immediate integration with distributed computing through gridMathematica
- Deployment using webMathematica, Mathematica Player, etc.
- 20-year history of progressive algorithm development »
Interoperability with Optimization Software:
- Import and export of MPS-formatted data »
- Import and export of matrix formats (MAT, MTX, Harwell-Boeing, HDF, ...) »
- Import and export of all standard spreadsheet formats »
- API for calling between Mathematica and C++, Java, C#, etc. »
- Third-party optimization packages, including connections to KNITRO, etc. »
- Mathematica Link for Excel available for full integration with Excel
Interesting Tidbits:
- Mathematica's symbolic program representation is used in genetic programming
- Mathematica can find symbolic solutions to many standard optimization test problems
- Wolfram's NKS methods are increasingly being studied for optimization
See Also Analyses On: