how to solve an optimization with a function in objective function
显示 更早的评论
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? :)
回答(1 个)
Matt J
2022-5-11
1 个投票
8 个评论
Shahrooz Pouryousef
2022-5-11
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
2022-5-11
Matt J
2022-5-11
It's quite a complex problem, but I see no immediate reason to think ga() would fail.
Shahrooz Pouryousef
2022-5-11
Matt J
2022-5-11
It's possible. There are never any guarantees in non-convex minimization and ga() is a stochastic algorithm.
Shahrooz Pouryousef
2022-5-11
Shahrooz Pouryousef
2022-5-11
类别
在 帮助中心 和 File Exchange 中查找有关 Surrogate Optimization 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
