Double Summation expression in Objective Function
13 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
pradeep kumar
el 5 de Sept. de 2018
Comentada: Mary Fenelon
el 5 de Sept. de 2018
Hi Experts, I have a Parameter matrix, C of size 2x2. It looks like this.
C= [2 4; 6 8]
I have a decision variable, X of size 2x2. It looks like this
[ X('S1', 'D1') X('S1', 'D2') ]
[ X('S2', 'D1') X('S2', 'D2') ]
I want to formulate my Objective Function as a series of double expression (Please refer the attachment),
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/195186/image.jpeg)
Which shall look like the following after the expansion.
Z = 2*X('S1', 'D1') + 4*X('S1', 'D2') + 6*X('S2', 'D1') + 8*X('S2', 'D2')
I try the following.
Z = sum(C.*X,1);
But it creates An optimizationExpression of size 1x3, which is not desired.
What am I doing wrong? Is there any easier way to do so without using for loop. I have just started learning "Problem-Based Optimization" in MATLAB today. Any help will be greatly appreciated.
0 comentarios
Respuesta aceptada
Mary Fenelon
el 5 de Sept. de 2018
Was it a 1x3 OptimizationExpression or 1x2?
In any case, you need to sum over both dimensions to get a single OptimizationExpression
Z = sum(sum(C.*X))
Más respuestas (0)
Ver también
Categorías
Más información sobre Solver Outputs and Iterative Display en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!