Effacer les filtres
Effacer les filtres

FMINCON - Include constraints provided by the objective function

11 vues (au cours des 30 derniers jours)
Lennart
Lennart le 22 Mar 2023
Commenté : Lennart le 22 Mar 2023
Hi All,
I am currently working on an optimization problem with fmincon. The objective function takes quite a while to calculate, but in the end it is giving me a result in terms of resulting mass. This mass shall be optimized/minimized using fmincon which is working quite well on its own.
I am calling fmincon as follows:
[x,fval] = fmincon(@MASTER, x0,[], [], [],[],lb,ub,[], options);
Now, I would like to include constraints as well. Checking the help/support pages, I can simply add a constraint evaluation function at the end of the fmincon-call.
However, my objective function is also capable of giving me my constraint information as well. I am currently not returing it of course but it can be easily calculated. Sure I can double-call the function, once for objective and once for constraint, but I really dont want to call it twice due to the long calculation time. Is there any way I can use the constraint values I am already calculating in my objective function to be used by fmincon without calling it a second time?
Any advice would be fantastic!
kind regards,
Lennart

Réponses (1)

Jon
Jon le 22 Mar 2023
You can use nested functions to avoid recomputing your constraint values.
  1 commentaire
Lennart
Lennart le 22 Mar 2023
That fits scarily well to my problem, thank you very much!

Connectez-vous pour commenter.

Produits


Version

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by