# Optimizing function of functions

5 views (last 30 days)
Saifullah Khalid on 16 Mar 2020
Commented: Walter Roberson on 17 Mar 2020
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.
Walter Roberson on 17 Mar 2020
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 on 17 Mar 2020
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
Saifullah Khalid on 17 Mar 2020
Alan Weiss, thank you very much for response. Luckily, I have licence for Global Optimization Tool Box and will utilize it as needed. can you please have a look on the last comment I posted in response to @Walter Roberson comment.