PDFO
PDFO (Powell's Derivative-Free Optimization solvers)[1] is a cross-platform package providing interfaces for using Michael J. D. Powell's derivative-free optimization solvers, including COBYLA, UOBYQA, NEWUOA, BOBYQA, and LINCOA, which were originally implemented in Fortran 77.
Original author(s) | Michael J. D. Powell |
---|---|
Developer(s) | Tom M. Ragonneau and Zaikun Zhang, The Hong Kong Polytechnic University |
Stable release | v1.0
/ June 10, 2020 |
Repository | github |
Written in | MATLAB, Python |
Operating system | Linux, macOS, Microsoft Windows |
Platform | x86, x86-64 |
Available in | English |
Type | Optimization software |
License | GNU Lesser General Public License |
Website | www |
Powell's solvers are devised to tackle general nonlinear optimization problems of continuous variables with or without constraints using only function values but not derivatives of the objective function or nonlinear constraint functions. [2] In practice, such functions are often black boxes defined by simulations.[3][4] [5] Consequently, the corresponding optimization problems are often categorized as black-box optimization or simulation-based optimization. Problem specified by explicit formulas can probably be handled by other methods more efficiently.[6] UOBYQA and NEWUOA can solve unconstrained problems, NEWUOA being preferable except for rather small problems;[7][8] BOBYQA can solve unconstrained and bound-constrained problems; [9] LINCOA can solve unconstrained, bound-constrained, and linearly constrained problems; COBYLA can solve general nonlinear optimization problems.[10]
The current version of PDFO supports MATLAB and Python. It relies on MEX for MATLAB and F2PY for Python to compile the Fortran solvers and wrap them into user-friendly functions.
PDFO is included in the Decision Tree for Optimization Software by Hans D. Mittelmann under the category of "The general nonlinear Problem; Using function values only". Here "general nonlinear Problem" includes unconstrained, bound-constrained, linearly constrained, and nonlinearly constrained problems.
PDFO is distributed under the GNU Lesser General Public License (LGPL).[1]
See also
References
- "Homepage of PDFO". Retrieved 2020-04-14.
- M. J. D. Powell (2007). A view of algorithms for optimization without derivatives. Cambridge University Technical Report DAMTP 2007.
- Conn, A. R.; Scheinberg, K.; Vicente, L. N. (2009). Introduction to Derivative-Free Optimization. MPS-SIAM Book Series on Optimization. Philadelphia: SIAM. Retrieved 2014-01-18.
- Audet, Charles; Harre, Warren (2017). Derivative-Free and Blackbox Optimization. Springer Series in Operations Research and Financial Engineering. Berlin: Springer. Retrieved 2020-04-19.
- Larson, J.; Menickelly, M.; Wild, S. M. "Derivative-free optimization methods". Acta Numerica. Retrieved 2020-04-19.
- Nocedal, Jorge; Wright, Stephan J. (2000). Numerical Optimization. Springer Series in Operations Research and Financial Engineering. Berlin: Springer. Retrieved 2020-04-19.
- Powell, M. J. D. (2002). "UOBYQA: unconstrained optimization by quadratic approximation". Mathematical Programming, Series B. 92 (3): 555–582. CiteSeerX 10.1.1.28.1756. doi:10.1007/s101070100290.
- Powell, M. J. D. (November 2004). The NEWUOA software for unconstrained optimization without derivatives (PDF) (Report). Department of Applied Mathematics and Theoretical Physics, Cambridge University. DAMTP 2004/NA05. Retrieved 2014-01-14.
- Powell, M. J. D. (June 2009). The BOBYQA algorithm for bound constrained optimization without derivatives (PDF) (Report). Department of Applied Mathematics and Theoretical Physics, Cambridge University. DAMTP 2009/NA06. Retrieved 2014-02-14.
- Powell M. J. D. (1994). "A Direct Search Optimization Method That Models the Objective and Constraint Functions by Linear Interpolation". Advances in Optimization and Numerical Analysis: 61–67. Retrieved 2020-04-25.CS1 maint: date and year (link)
External links
- Latest version of PDFO
- Decision Tree for Optimization Software
- Homepage of PDFO
- GitHub repository of PDFO (mirrored on Gitee and GitLab)
- PDFO on PyPI
- MATLAB File Exchange of PDFO
- PDFO: Powell's Derivative-Free Optimization Solvers with MATLAB and Python Interfaces
- An introduction to PDFO in "宝藏数学家的优化人生", a biography of Michael J. D. Powell (in Chinese)