PRIMA: Optimization without Using Derivatives

Version 0.7.3 (9,13 MB) von Zaikun Zhang
PRIMA is a package for solving general nonlinear optimization problems without using derivatives.
331 Downloads
Aktualisiert 2. Mär 2026
(More information is available at http://www.libprima.net ; in case of questions or requests, open an issue at the GitHub repository of PRIMA)
PRIMA is a package for solving general nonlinear optimization problems without requiring derivatives. It is the successor of PDFO.
PRIMA provides a MATLAB functions prima, which can automatically identify the type of your problem and then solve it by one of Powell's methods, namely COBYLA, UOBYQA, NEWUOA, BOBYQA, and LINCOA.
The prima function is designed to be compatible with the fmincon function available in the Optimization Toolbox of MATLAB. You can call prima in the same way as calling fmincon:
x = prima(fun, x0)
x = prima(fun, x0, A, b)
x = prima(fun, x0, A, b, Aeq, beq)
x = prima(fun, x0, A, b, Aeq, beq, lb, ub)
x = prima(fun, x0, A, b, Aeq, beq, lb, ub, nonlcon)
x = prima(fun, x0, A, b, Aeq, beq, lb, ub, nonlcon, options)
x = prima(problem) % PROBLEM is a structure defining the optimization problem
[x, fval] = prima(___)
[x, fval, exitflag, output] = prima(___)
In addition, prima can be called in some flexible ways that are not supported by fmincon. If your problem can be solved by fmincon without specifying the derivatives, then it can probably be better solved by prima; if your problem cannot be solved by fmincon, then try prima.
If you need help with the setup of MEX, see https://www.mathworks.com/matlabcentral/fileexchange/127968-setup_mex .
The "P" in the name stands for Powell, and "RIMA" is an acronym for "Reference Implementation with Modernization and Amelioration".
PRIMA is dedicated to the late Professor M. J. D. Powell FRS (1936--2015).

Zitieren als

Z. Zhang, PRIMA: Reference Implementation for Powell's Methods with Modernization and Amelioration, available at https://github.com/libprima/prima, DOI: 10.5281/zenodo.8052655, 2023

Kompatibilität der MATLAB-Version
Erstellt mit R2023a
Kompatibel mit R2018a und späteren Versionen
Plattform-Kompatibilität
Windows macOS Linux

Versionen, die den GitHub-Standardzweig verwenden, können nicht heruntergeladen werden

Version Veröffentlicht Versionshinweise
0.7.3

Support Apple Silicon chips.

0.7.2.0

See release notes for this release on GitHub: https://github.com/libprima/prima/releases/tag/v0.7.2

0.7.1.0

See release notes for this release on GitHub: https://github.com/libprima/prima/releases/tag/v0.7.1

0.7.0.0

See release notes for this release on GitHub: https://github.com/libprima/prima/releases/tag/v0.7

0.6.2.0

See release notes for this release on GitHub: https://github.com/libprima/prima/releases/tag/v0.6.2

0.6.1

See release notes for this release on GitHub: https://github.com/libprima/prima/releases/tag/v0.6.1

0.6

See release notes for this release on GitHub: https://github.com/libprima/prima/releases/tag/v0.6

0.5.1.0

See release notes for this release on GitHub: https://github.com/libprima/prima/releases/tag/v0.5.1

0.5

See release notes for this release on GitHub: https://github.com/libprima/prima/releases/tag/v0.5

0.4.0.0

See release notes for this release on GitHub: https://github.com/libprima/prima/releases/tag/v0.4

0.3

Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.
Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.