Как добавить ограничения в линейное программирование на переменные не из целевой функции в Matlab

Я пытаюсь решить проблему, используя линейную оптимизацию на Matlab

 sum=zeros(5,1);
 for i=1:5
    min 2x1+3x2-5x3
    s.t.
      x1 <= 4;
      x2+3x3 <= 2;
      sum(1:i) >= 3

    sol=linprog(fill them)
    sum(i) = sum(i)+sol(2)-sol(3)
 end

Как я могу представить сумму (i) в матрицах, которые мы используем в функции linprog?


person blackiris    schedule 07.09.2013    source источник


Ответы (1)


Тот факт, что x4 и x5 не появляются явно в целевой функции, не обязательно означает, что они не существуют.
Подумайте об этой целевой функции.

min 2*x1 + 3*x2 - 5*x3 + 0*x4 + 0*x5

Теперь у вас есть линейная программа с 5 переменными.

Итог: просто добавьте два нуля к вашей целевой функции, и все готово.

person Shai    schedule 07.09.2013