Optimizing function of functions
1 次查看(过去 30 天)
显示 更早的评论
I am trying to optimize two functions
and
where. The function
is a subfunction of
means the results of
are input to
.







I am curious whether it is better to optimize a sum of the functions e.g.
or I can co-optimize the functions as
additionally depends on w. I am inclined to co-optimization but not sure if optimizing the sum of functions is a better or mandatory approach for this problem. I would appreciate any guidance, comments or helpful literature references.


5 个评论
Walter Roberson
2020-3-17
It doesn't matter. All gamultiobj cares about is that it can place a call through the function handle and get back a vector of results. It does not care how many function calls that uses.
Consider for example that
F = @(X, Y, W) X.^2 + Y.^2 + (X-Y-W).^2
can be rewritten as
P = @(X,Y,W) (X-Y-W).^2
F = @(X,Y,W) X.^2 + Y.^2 + P(X, Y, W)
which can in turn be rewritten as
F = @(X, Y, W, Q) X.^2 + Y.^2 + Q(X, Y, W)
Called with (x, y, w, P)
obviously this is just an implementation detail as far as the mathematics is concerned.
采纳的回答
Alan Weiss
2020-3-17
You could use the approach in Generate and Plot a Pareto Front. Or you could try using a multiobjective solver, if you have a Global Optimization Toolbox license. As usual, Walter has good ideas.
Alan Weiss
MATLAB mathematical toolbox documentation
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Get Started with Optimization Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!