how to optimize a function which optimization variable is not in it directly?
3 次查看(过去 30 天)
显示 更早的评论
there is a function in the picture which I should optimize it. Dm and I are matrixes . I has an indirect role in cacules of this function. how can I do that in matlab
0 个评论
回答(2 个)
Alan Weiss
2019-7-19
This looks like a binary programming problem. I don't know how the D_m depend on the I_{n,k}, but it looks like there is no big issue. Use intlinprog for the solution, or the problem-based approach.
Alan Weiss
MATLAB mathematical toolbox documentation
3 个评论
Walter Roberson
2019-7-25
If you are using max and it is a discrete programming problem then try all of the possible input combinations and pick the best results.
If trying all of the possible inputs is not feasible (for example too slow above 2^40 possibilities) then ga()
fmincon cannot be used for discrete variables. intlinprog cannot be used when max() appears in the formula or constraints.
Sometimes instead of using max it can be feasible to run several slightly different problems, each assuming that one of the possibilities is the max, and then to take the result in which the max was true.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Problem-Based Optimization Setup 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!