finding simultaneously maximum values of three vectors (optimal point)

Hi Everyone.
I'm looking for a way to find an optimal operation point for a system. I have three vectors each as imporatant operating values of the system. Vectors A, B and C. Their dimension are lets say 1X16. Now I am looking for a Point at wich the vectors A, B and C have simultaneously their greatest Values. So I am not looking for the maximum of A, B and C individually, but together they should be as high as possible. This is the optimal operating point of the system.
I have attached the picture of the plots of A B and C as a function of lets say time or distance or anything else. While A ab B increase with lets say time C decreases. At the beginning the increase in A and B are high and it gets lower with the time. C behaves other way around.
There should be an optimal point regarding the time in wich A B and C are high enough. Do have any idea of how to solve such a problem in matlab?
I hope I could describe this problem in a half way decent way!
Thanks and best regards!

2 commentaires

You have to define what optimal point means? What is your criterion?
Hi
I hope you could see the plots. The criterion are the Values of A B and C as the function of x-axes (for exmaple the time). A is for exmaple the Power of fan unit [W] , B the efficency unit [-] and C the overall heat coefficient unit [W/m²K]. A B and C have totally differenz scales and units. But as you can see there is a point from wich the increase in A and B and the decrease in C is not as much as it was before. I am looking for the point of time (x-axes) at wich A B and C are as high as possible.

Connectez-vous pour commenter.

Réponses (2)

Define a criterion
J=w1*A+w2*B+w3*C
out=max(J)
% w1, w2 and w3 are chosen to make your three signals closer.

12 commentaires

Thank you very much.
But I do not really understand how to relate the three signals to eachother with w1, w2, w3. They have totally differenz scales and units. A is for exmaple the Power of fan unit [W] , B the efficency unit [-] and C the overall heat coefficient unit [W/m²K]
I hope you could see the plots. The criterion are the Values of A B and C as the function of x-axes (for exmaple the time). As you can see in the plots there is a point from wich the increase in A and B and the decrease in C is not as much as it was before. I am looking for the point of time (x-axes) at wich A B and C are as high as possible.
I hope I can explain my problem well.
thank you very much!
A, B and C are not the criterion, they are your signals. you can choose w1, w2, and w3 to make A,B and C the same scale, or make any signal with greater scale or lower, that's what I meant by criterion, you can also add to your criterion J the signal D
J=w1*A+w2*B+w3*C+w4./D % (since you are looking for the minimum of D, we suppose all A,B,C, and D all positive)
out=max(J) % J is your criterion
do you have any idea of how to find w1, w2, w3?
I really want to have the highest value in A B and C. Since C behaves different that A and B there should be an optmium time (x axes) in which A, B and C are high enough. I call this point the optmimu operation time.
You avoid using weight, if you want weight to be equal, by normalizing your signals
AA=(A-min(A))/(max(A)-min(A))
BB=(B-min(B))/(max(B)-min(B))
CC=(C-min(C))/(max(C)-min(C))
DD=(D-min(D))/(max(D)-min(D))
[out,index]=max(AA+BB+CC+1./D)
What does that achieve?
Azzi Abdelmalek
Azzi Abdelmalek le 17 Jan 2014
Modifié(e) : Azzi Abdelmalek le 17 Jan 2014
Making the 4 signals the same scale. And sorry, there is no sum
Thank you! But do you asume that my vectors are of dimension e.g. 2X16? first colum the time (x-axes) and the second value of the system parameter? because I am actually only interested in the time (x-axes).
I think we are overcomplicating things.
t = 1:10;
s1 = rand(10,1);
your_idx = find(s1 == max(s1));
your_time = t(your_idx);
Babak, just work with second column, for each signal, the time is the same for your 4 signals (is it right?)
AA=(A-min(A))/(max(A)-min(A))
BB=(B-min(B))/(max(B)-min(B))
CC=(C-min(C))/(max(C)-min(C))
DD=(D-min(D))/(max(D)-min(D))
[out,index]=max(AA+BB+CC+1./D)
time_max=t(index)% t is your vector time
yes and what if the x axes is not the time and something else? for example a distance?
--> [out,index]=max(AA+BB+CC+1./D) did you mean: [out,index]=max(AA+BB+CC+1./DD)?
and what if DD has the value of 0 due to normalizing? All the vectors AA, BB, CC and DD have values between 1 and 0.
Thanks!
Hi everyone. What do you think about this if I want D to have a Minimum?
AA=(A-min(A))/(max(A)-min(A))
BB=(B-min(B))/(max(B)-min(B))
CC=(C-min(C))/(max(C)-min(C))
DD=(1/D-min(1/D))/(max(1/D)-min(1/D))
out=max(AA+BB+CC+DD)

Connectez-vous pour commenter.

max(A+B+C)

6 commentaires

Babak commented
Thank you very much for your answer but somehow there is a problem with that. Because there can not be a certain value for this. A B and C have totaly different units. lets say A is the power, B is the reynolds number and C is the latent heat. for instance. I am actually looking for the point of time at wich A B and C have their maximal value
now I have another question:
What if there would be a vector D and I wanted the maximum of A, B and c and simultaneously the minimum of D?
Thank you very much for your answer but somehow there is a problem with that. Because there can not be a certain value for this. A B and C have totaly different units. lets say A is the power, B is the reynolds number and C is the latent heat. for instance. I am actually looking for the point of time at wich A B and C have their maximal value
now I have another question:
What if there would be a vector D and I wanted the maximum of A, B and c and simultaneously the minimum of D?
max([A;B;C],2)
thank you but what does this actually do?
it works even if A B and C have totally differenz units? And what about the vector of time (x-axes)? The value of A, B and C are dependent of the values of time. And I want to look for the time at which the vectors have theire optimum value. maximum of the vectors.
It gives you the maximum value for A,B, and C. I would recommend you to read the documentation. And as Azzi said, if you want to optimize some system, you need to place weights on every variable. How you place those weights is generally arbitrary. My original answer placed equal weight in all values.
thank you. do you have any keywords to look for in the documentary? I never thought this could be such a big problem to solve. I actually don't want to optimize the system but only find the optimum of the time (x-axes) in wich the system should be operated.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Manual Performance Optimization dans Centre d'aide et File Exchange

Question posée :

le 17 Jan 2014

Commenté :

le 18 Jan 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by