I need some help on this optimization problem.

4 Ansichten (letzte 30 Tage)
Dhaval Lodaya
Dhaval Lodaya am 8 Feb. 2016
Kommentiert: Torsten am 8 Feb. 2016
There are two arrays: I4_FE=[0.5 1.3 2.3 2.3 1.5 2 2.3 4.8 2.3 2 2.3 3.5 25 10 2 1 0.3 4 2.5 1.5 2 1 5.5 7.5 3.5 3 34 37 35 0.3 1.4 3.3 6.5 12 2 1 1.5]; I4_cost=[4 42 35 145 35 35 145 182 35 145 156 430 2393 520 95 80 35 160 133 174 235 425 281 19 193 500 2200 3385 6500 10000 41 85 239 572 1650 35 45];
Array I4_cost indicates cost and this needs to be minimized. Total of 'x' value or 'greater than x' value should be achieved from I4_FE array with minimum cost possible. For example: Each value in I4_FE indicates Fuel economy improvement and corresponding cost associated with implementing that technology is in arrayI4_cost. Now if I want Fuel economy to increase by value of >=10, I need to find out solution with minimum possible cost. This should also give index of array I4_FE or I4_cost used so that I can track down on technologies suggested.
How do I go about optimizing this problem?
Thanks

Akzeptierte Antwort

Torsten
Torsten am 8 Feb. 2016
min: I4_cost*d
s.c. I4_FE*d >= 10
d binary (0 or 1)
To determine d, use
Best wishes
Torsten.
  1 Kommentar
Torsten
Torsten am 8 Feb. 2016
You may want to search for "minimum knapsack problem".
Best wishes
Torsten.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Torsten
Torsten am 8 Feb. 2016
min(I4_cost(I4_FE>=10));
Best wishes
Torsten.
  1 Kommentar
Dhaval Lodaya
Dhaval Lodaya am 8 Feb. 2016
Torsten, This will give me minimum cost for any value greater than or equal to 10 in I4_FE. But if I take multiple values from I4_FE such as 0.5, 1, 1.5 which goes on to add to 10, the cost associated with this can be lesser than the value obtained from min(I4_cost(I4_FE>=10));
Thus I need to add set of values from I4_FE which results in optimum cost and meets the constraint as well.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by