The best way to code this optimization problem
Mostrar comentarios más antiguos
I have a large optimization problem (a small part of this problem is given below)
max 
s.t 
Note that I have
equality constraints
I need to code this in Matlab in an eficient way for a large-scale problem
2 comentarios
Hank
el 13 de Nov. de 2019
Can you share what you've tried?
mohamed Faraj
el 14 de Nov. de 2019
Respuestas (2)
It should be very straightforward using the problem-based solvers in the Optimization Toolbox,
1 comentario
mohamed Faraj
el 14 de Nov. de 2019
I have matlab 2013b
Because the array sizes are fairly small here, the easiest thing might be to use my func2mat submission to express all your summations as matrix multiplications.
For example, a summation of a 4x1x12x12 array along its 3rd dimension can be represented by a matrix A obtained as follows,
z0=rand(4,1,12,12);
A=func2mat(@(z)sum(z,3) , z0);
To convince yourself of the equivalence, you can do
calc1=sum(z0,3);
calc2=A*z0(:);
>> norm(calc2(:)-calc1(:))
ans =
0
Categorías
Más información sobre Linear Programming and Mixed-Integer Linear Programming en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!