- OpenOpt
-
OpenOpt is an open-source framework for numerical optimization, nonlinear equations and systems of them. It is licensed under the BSD license, making it available to be used in both open- and closed-code software. The package already has some essential applications.
The framework interfaces with around ~30 different solvers for optimization problems, both free (e.g. IPOPT, Algencan, GLPK) and commercial (e.g. CPLEX). Some solvers are written in C or Fortran. Also there are some Python-written own ones, e.g.
- ralg for medium-scaled nonlinear/nonsmooth problems (number of variables ~1500)
- gsubg for large-scaled nonlinear/nonsmooth problems
- interalg - can obtain optimum with guarantied precision and all solutions of nonlinear equations system
- Multifactor analysis tool with easy and convenient GUI for experiment planning (in phisics, chemistry, biology etc)
OpenOpt-connected solvers can have any type of license, but are primarily open source and OSI-approved ones such as GPL, LGPL, and BSD.
Originally developed in MATLAB, OpenOpt is now developed in Python and has a single dependence: NumPy (numerical package for low-level matrix operations, well-known for Python language programmers, with some code written in C, Fortran languages and wrappers to BLAS, LAPACK, ACML, MKL etc). This makes OpenOpt easy to install and OS-independent.
If you have a model written in FuncDesigner (another software from OpenOpt developers), it can be optimized with first derivatives obtained via Automatic differentiation. Also, it can be used more like a language of mathematical formulas, possibly with recursive import of variables/formulas from other files.
Both OpenOpt and FuncDesigner can solve constrained large-scale problems involving sparse matrices.
Along with FuncDesigner, OpenOpt Suite also includes
- DerApproximator - tool to get (or check user-supplied) derivatives via finite-difference approximation
- SpaceFuncs - tool for 2D, 3D, N-dimensional geometric modeling with possibilities of parametrized calculations, numerical optimization and solving systems of geometrical equations
(OpenOpt, FuncDesigner, DerApproximator and SpaceFuncs are available for installation as standalone Python language modules, but some functionality will be missing).
You can try the modules on-line (without installation) via the SAGE-server (unfortunately, it often hangs due to high load).
Also OpenOpt website powers a numerical optimization forum.
External links
Categories:- Numerical software
- Mathematical optimization software
- Python libraries
- Free science software
- Free mathematics software
- Linux numerical analysis software
- Free software programmed in Python
- Data analysis software
- Operations research
Wikimedia Foundation. 2010.