Optimization function with a summation

3 visualizzazioni (ultimi 30 giorni)
Ricardo López
Ricardo López il 10 Gen 2021
Commentato: Matt J il 10 Gen 2021
Good afternoon,
I have the following code:
C_H = [C_H1 C_H2 C_H3 C_H4 C_H5];
PV = reshape(PV_SAM,[52560,1]);
j = 144;
fun =zeros(144,5);
b = zeros(144,5);
for i=1:j
fun(i,:) = (C_H(i,:) - b(i).*PV(i));
end
f_sum = sum(fun,'all');
Does anyone know how to optimize the variable b so the value of f_sum is minimum?
Thank you
  4 Commenti
Ricardo López
Ricardo López il 10 Gen 2021
And the sum of all of them should be 1
Matt J
Matt J il 10 Gen 2021
C_H does not affect the optimization at all and PV only has one column, so giving b 5 columns is only creating extra redundant variables.

Accedi per commentare.

Risposte (1)

Matt J
Matt J il 10 Gen 2021
The solution is simply,
b = zeros(144,5);
b(PV(1:j)>0,:)=1;
  2 Commenti
Ricardo López
Ricardo López il 10 Gen 2021
The sum of all of them should be one and the solution that this is giving is just 1 for all 5 columns.
Matt J
Matt J il 10 Gen 2021
Modificato: Matt J il 10 Gen 2021
[~,i]=max( PV(1:j));
b = zeros(144,5);
b(i,1)=1;

Accedi per commentare.

Categorie

Scopri di più su Get Started with Optimization Toolbox in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by