Multi-target data optimization
2 views (last 30 days)
Show older comments
Alejandro Fernández
on 2 Feb 2020
Commented: Thiago Henrique Gomes Lobato
on 2 Feb 2020
Hi, there. I was wondering if someone could help me with something.
I have 3 data matrices, of which I show you the contour plots (these I show would be just an example, these are from functions but the real ones are not from any kind of functions).
What I need is to be able to define a region of minimum optimums by weighting the matrices, that is, that not all of them have the same importance. The thing is that I only find things related to functions and they are not useful to me...
Thank you very much for everything.
![Z1.jpg](https://www.mathworks.com/matlabcentral/answers/uploaded_files/269465/Z1.jpeg)
![Z2.jpg](https://www.mathworks.com/matlabcentral/answers/uploaded_files/269466/Z2.jpeg)
![Z3.jpg](https://www.mathworks.com/matlabcentral/answers/uploaded_files/269467/Z3.jpeg)
4 Comments
Mohammad Sami
on 2 Feb 2020
What if you just add the 3 weighted matrix and then use the minimum function
Z1 = load('Z1.mat');
Z2 = load('Z2.mat');
Z3 = load('Z3.mat');
w1 = 1;
w2 = 1;
w3 = 1;
Z = w1 * Z1.Z + w2 * Z2.Z + w3 * Z3.Z;
[,idx] = min(Z);
Accepted Answer
Thiago Henrique Gomes Lobato
on 2 Feb 2020
Could you explain a little more the problem you're having? In the end it really doesn't matter if your matrix are functions or not since you can define the matrix weighting as a function, as an example:
f = @(Z1,Z2,Z3)Z1*2+Z2*1+Z3*3;
But actually what you seems to want is the minimum of the matrix weighted sum, and if you already have the values, it is really as simple as sum them and calculate the min:
w1 = 1;
w2 = 2;
w3 = 3;
Zweighted = Z1*w1+Z2*w2+Z3*w3;
[MinVal,MinPos] = min(Zweighted)
6 Comments
More Answers (0)
See Also
Categories
Find more on Multiobjective Optimization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!