Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Демин / Билеты ТПР.docx
Скачиваний:
16
Добавлен:
18.04.2022
Размер:
12.46 Mб
Скачать

Для задачи на максимум

  • Смотрим на коэффициенты в функции F(x). Если есть положительные, значит решение не оптимально. Переменную с наименьшим коэффициентом необходимо вывести из базиса.

  • Подставим в систему ограничений выводимую переменную как 0 и найдем значения оставшейся переменной. Выберем минимальное или то, на которое нет ограничений.

  • Затем введем базис переменную, соответствующую ограничению, которое мы выбрали на предыдущем шаге.

  • Пересчитаем систему ограничений, выразив выводимую и вводимую переменные. Пересчитаем так же F(x). выпишем X(1) .

  • Если в F(x) присутствуют не отрицательные коэффициенты, изменим базис снова, повторив вышеописанные действия.

  • Когда наконец получена F(x), где все коэффициенты отрицательны – мы получили оптимальное решение. X* = X(n)

Для задачи на минимум

Все аналогично, однако при задаче на минимум в оптимальном решении в F(x) все коэффициенты должны быть положительными,

12. Симплекс-таблицы в симплекс-методе для задач на максимум и минимум.

Для решения ЗЛП при помощи симплекс-таблицы необходимо в начале представить ЗЛП в каноническом виде, затем выбрать допустимый базис и свободные переменные и начертить таблицу:

  • В столбце б названы переменные базиса.

  • В столбце Сб – их коэффициенты в F(x).

  • В столбце Xб значения из системы ограничений.

Далее идут столбцы переменных.

  • Столбцы переменных базиса являются столбцами единичной матрицы (хоть впоследствии они и не будут идти по порядку)

  • Столбцы свободных переменных в начале заполняются в соответствии со значениями матрицы A (коэффициенты из системы ограничений)

После заполнения таблицы следует подсчитать дельты:

  • 0 вычисляется как сумма произведений Xб на Сб

  • Дельты для свободных переменных вычисляются

    • В задачах на максимум

как сумма произведений Xj на Сб - Cj

    • В задачах на минимум

как Cj - сумма произведений Xj на Сб

Если хотя бы одна дельта отрицательна – решение не оптимально.

  • Находим переменную, дельта которой отрицательна и наибольшая по модулю.

  • Считаем ограничения для этой переменной.

Ограничения сичтаются по следующим правилам:

    • Если ail и бi имеют разные знаки, то ставится –

    • Если ail = 0 или бi = 0 то ставится –

    • В противном случае ограничение вычисляется по формуле бi/ ail

  • Выбираем переменную, у которой минимальное ограничение. Её необходимо вывести из базиса.

Строка выводимой переменной и столбец вводимой в базис переменной называются разрешающими.

На их пересечении находится разрешающий элемент.

Строим следующую симплекс-таблицу:

  • Столбцы не меняют свой порядок, как и строки. Однако, в разрешающей строке из прошлой таблицы переменная должна измениться на ту, что мы ввели в базис.

  • Значения в этой строке переписываются равными значениям из предыдущей таблицы той же строки, но делятся на разрешающий элемент.

  • Строки и столбцы, в пересечении с которыми в разрешающих строке и столбце предыдущей таблицы стоял 0, переписываются без изменений (кроме дельт).

  • В столбец новой базисной переменной должен быть аналогичен столбцу старой.

  • Дельты базисных переменных все также должны равняться 0.

  • Наконец, столбец Сб необходимо обновить, если необходимо.

  • Все остальные значения таблицы подсчитываются по формуле:

a(t+1)ij = a(t)ij – (a(t)il* a(t)kj)/( a(t)kl) (те старое значение клетки минус перемноженные пересечения с разрешающими, деленные на разрешающий элемент)

После заполнения очередной таблицы необходимо посчитать дельты и проверить на наличие отрицательных. Если они есть – необходимо повторить с шага про подсчет ограничений. Если нет – решение оптимально.

Соседние файлы в папке Демин