Home About Documentation Install Newsline Links Feedback Appeal Guestbook
since 2007/10/24
OpenOpt Foreword
(brief introduction to numerical optimization problems and related software)
Numerical optimization problems occur almost everywhere - in physics, economics, chemistry, biology etc. For example:
- planes, helicopters, vehicles fuel consumption minimizing
- shop profits maximizing
- seedlings of crops growth (in greenhouses) maximizing
- gaskets ways communications minimizing (auto and transportation industries, the Internet network)
with all kinds of restrictions, such as
- minimum and maximum speed
- working capital, the risk for devastation, the showcase
- illumination, water and financial costs on them
- capacity of branches and nodes
Mathematically, 90% of them are members of one or two dozens of major classes, such as LP, QP, NLP, MILP etc. For example, NEOS staff represents this graphically here.
Software for solving numerical optimization costs thousands, and sometimes tens of thousands $ example
In addition, you should spend approximately 10% on updating software libraries annually.
In recent times, due to sponsorship from various funds, universities, some corporations (IBM), lots of viable free numerical optimization software have appeared. However, most packages have license GPL/LGPL containing copyleft restriction, that prevents using of the software by closed or any other non-free code. Also, most of them is C- or Fortran-written, that doesn't allows RAD (Rapid Application Development) and have lots of cross-platform troubles (Linux, Windows, MacOS etc).
Note: connecting C or Fortran code to Python is much easier than, for example, using MATLAB MEX-functions.
As many experts note, the development of software in Python is approximately 2 times faster than Fortran one, and it should be noted that this is not just programmer man-hours, but other staff as well, rental payments etc.
100%-free OpenOpt (Python-written, license: BSD) consists of few own solvers, and includes interfaces to a number of other (free as well), many of which are written in C/Fortran (BTW, for matrix operations OpenOpt uses C-written NumPy that is BSD-licensed as well).
See also
- ця сторінка українською мовою
- Some reasons to choose OpenOpt (for numerical optimization users)
- OpenOpt TODO list >>>
