Я только что изучил симплексный метод решения линейных программ и пытаюсь понять, что представляет собой эта двойная проблема.
Я понимаю механизм решения двойной задачи - мне в этом не нужна помощь. Чего я не могу понять (даже прочитав об этом в Википедии ), так это фактического значения переменных y в двойственном .
Я хотел бы привести пример, все вместе с переменными значениями в первичной задаче и тем, что я понял из дуального, и попрошу любого достаточно любезного объяснить значения в двойственном:
Primal:
max z = 3*x1 + 5*x2
subject to:
x1 <= 4
2*x2 <= 12
3*x1 + 2*x2 <= 18
x1, x2 >= 0
В основной задаче x1 и x2 - это количества продуктов A и B , которые должны быть произведены. 3 и 5 - их цена продажи за единицу соответственно.Продукция выпускается на 3 станках, М1-М3 . Для производства первого продукта требуется час работы на M1 и 3 часа на M3 . Для создания второго требуется два часа работы как на M2 , так и на M3 . Машины M1, M2, M3 могут работать максимум 4, 12 и 18 часов соответственно. Наконец, я не могу произвести отрицательное количество любого из продуктов.
Теперь я поставил двойную задачу:
min z = 4*y1 + 12*y2 + 18*y3
subject to:
y1 + 3*y3 >= 3
y2 + 2*y3 >= 5
y1, y2, y3 >= 0
Теперь я думаю, что единственное, что я могу понять, это то, что ограничения означают: - за час работы на M1 и 3 часа на M3 я должен получить как минимум 3 денежные единицы. - за два часа работы на M2 и 2 часа на M3 мне должны заплатить не менее 5 денежных единиц
Но я просто не могу осмыслить значения переменных y1 и y2 . Когда я, наконец, выполняю минимизацию, результат в z такой же в первичном (хотя первичный в увеличении нижней границы результата, в то время как дуальный уменьшает верхнюю границу), но что дает цель? функция двойственной задачи состоит из?