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!
