how to solve an optimization with a function in objective function
Afficher commentaires plus anciens
I need to do a non-convex non-linear integer programming optimization. The thing is I have a function in my objective function.
The objective function is as follows:
max
where
and
are my variables for each k, t, and p. Function f is as follows:
function f(F_p,n):
f_1 = F_p;
f_0 = F_p;
for i = 1:n
f_1 = f_1*f_0/(f_1*f_0 + (1-f_1)*(1-f_0));
end
and it returns f_1. There are some constraints about the lower and upper bound and also the relation between the varibales that I have not mentioned here.
My question is can I implement and solve this using matlab Opti solver? And how? :)
Réponses (1)
Matt J
le 11 Mai 2022
1 vote
8 commentaires
Shahrooz Pouryousef
le 11 Mai 2022
Are you sure ga can solve non-convex optimization?
Yes, in fact, it was created to deal with non-convex problems.
But for mine, I have a function in my oobjective function that I can not write the function implementation as an equation.
Doesn't matter. None of the solvers in any of the Matlab toolboxes know or care how many lines of code are used to implement the function.
Shahrooz Pouryousef
le 11 Mai 2022
Matt J
le 11 Mai 2022
It's quite a complex problem, but I see no immediate reason to think ga() would fail.
Shahrooz Pouryousef
le 11 Mai 2022
Matt J
le 11 Mai 2022
It's possible. There are never any guarantees in non-convex minimization and ga() is a stochastic algorithm.
Shahrooz Pouryousef
le 11 Mai 2022
Shahrooz Pouryousef
le 11 Mai 2022
Catégories
En savoir plus sur Surrogate Optimization dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
