Для упрощения процесса вычислений при решении ЗЛП симплекс-методом можно использовать Microsoft Excel.
Найдем решение нашей задачи симплекс-методом с помощью Microsoft Excel.
Запустите Excel и подготовьте начальную симплекс таблицу по образцу:
Вычислим значение и запишем результат в ячейку D7. Известно, что значение в начальной симплекс таблице определяется по формуле:
Для вычисления скалярного произведения двух векторов используется функция
СУММПРОИЗВ(массив1, [массив2], [массив3],...),
В ячейку D7 вводится формула, вычисляющая значение :
=СУММПРОИЗВ(C4:C6;D4:D6)
Для вычисления оценок используется формула .
Выделите ячейку D7 и введите формулу:
=СУММПРОИЗВ(C4:C6;E4:E6)-E2
Аналогично вычислите значения других оценок.
Определим разрешающий столбец – столбец с наибольшей по модулю отрицательной оценкой и найдем отношение элементов столбца к положительным элементам выбранного столбца для определения разрешающей строки. Для этого выделите ячейку K4 и введите формулу:
=ЕСЛИ(F4>0;D4/F4;"-")
Скопируйте формулу на диапазон K4: K6
Таким образом, разрешающий столбец – столбец и разрешающая строка –
Создайте вторую симплекс-таблицу (скопируйте предыдущую и удалите все ненужно). Произведите замену в базисе вектора (разрешающий столбец) на вектор (разрешающая строка):
Выделите диапазон D12:I15 и укажите смените формат числовых данных на дробный
Вычислите новые элементы разрешающей строки: разделить элементы разрешающей строки на разрешающий элемент.
В ячейку D14 введите формулу
=D6/$F$6
Скопируйте формулу на диапазон E14: I14:
В ячейку D12 введите формулу: =D14*(-$F$4)+D4 Скопируйте формулу на диапазон E12:I12. В ячейку D13 введите формулу: =D14*(-$F$5)+D5 Скопируйте формулу на диапазон E13:I13. В ячейку D15 введите формулу: =D14*(-$F$5)+D5 Скопируйте формулу на диапазон E15:I15. |
Получим
Так как строка оценок содержит отрицательное число, и соответствующий столбец содержит положительные числа, то план можно улучшить.
Выбираем разрешающую строку и разрешающий столбец:
Строим новую симплекс-таблицу и заменяем вектор (разрешающая строка) на вектор (разрешающий столбец). Заполняем таблицу аналогично предыдущей итерации:
или
Так как строка оценок не содержит отрицательных значений, то полученный план оптимален и имеет вид:
при плане
Ответ: при плане