PRIMA: Optimization without Using Derivatives

PRIMA is a package for solving general nonlinear optimization problems without using derivatives.
294 download
Aggiornato 6 feb 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).

Cita come

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

Compatibilità della release di MATLAB
Creato con R2023a
Compatibile con R2018a e release successive
Compatibilità della piattaforma
Windows macOS Linux

Le versioni che utilizzano il ramo predefinito di GitHub non possono essere scaricate

Versione Pubblicato Note della release
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

Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.
Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.