how to solve an optimization with a function in objective function
Ältere Kommentare anzeigen
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? :)
Antworten (1)
Matt J
am 11 Mai 2022
1 Stimme
8 Kommentare
Shahrooz Pouryousef
am 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
am 11 Mai 2022
Matt J
am 11 Mai 2022
It's quite a complex problem, but I see no immediate reason to think ga() would fail.
Shahrooz Pouryousef
am 11 Mai 2022
Matt J
am 11 Mai 2022
It's possible. There are never any guarantees in non-convex minimization and ga() is a stochastic algorithm.
Shahrooz Pouryousef
am 11 Mai 2022
Shahrooz Pouryousef
am 11 Mai 2022
Kategorien
Mehr zu Surrogate Optimization finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
