Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 211 и 212 для машиностроения.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
579.07 Кб
Скачать

Симплекс – метод. Этапы поиска решений

Для использования симплекс - метода, задачу линейного программирования необходимо привести к стандартному виду: найти , доставляющие минимум целевой функции

при условиях:

Здесь значок означает «все».

C формальной точки зрения нет необходимости строго различать задачи поиска минимума или максимума целевой функции. Одна задача сводится к другой изменением знака на противоположный. Все должны быть положительными, в противном случае соответствующее уравнение умножается на (-1).

Рассмотрим этапы поиска решений симплекс – методом на следующем примере.

Пример. Модель раскроя листовых материалов. Выбор наилучшего варианта.

Имеется некоторый материал в виде стандартных листов, которые необходимо раскроить для получения не менее 80шт. деталей типа 1 и не менее 40шт. деталей типа 2. Известны четыре способа раскроя листа, каждый из которых дает результат, представленный в таблице 6.1.

Таблица 6.1 Исходные данные для решения задачи

Способы раскроя листа

1

2

3

4

Результат

3 детали типа 1;

1 деталь типа 2

2 детали типа 1;

6 деталей типа 2

1 деталь типа 1;

9 деталей типа 2

0 деталей типа 1;

13 деталей типа 2

Требуется так провести операцию изготовления деталей, чтобы общий расход листов оказался минимальным.

Пусть – количество листов, раскраиваемых j – м способом ( ). Тогда целевая функция, будет иметь следующий вид:

Здесь – это общий суммарный расход листов.

Формулировка задачи. Найти , доставляющие минимум приведенной выше целевой функции при следующих ограничениях:

(6.10)

(6.11)

(6.12)

Ограничение (6.10) обеспечивает заданное число деталей типа 1, ограничение (6.11) – заданное число деталей типа 2. Ограничение (6.12) необходимо, т.к. количество листов не может быть отрицательным.

Для того, чтобы для решения данной задачи применить симплекс метод, необходимо систему ( 6.10) – (6.12) привести к стандартному виду:

(6.13)

(6.14)

(6.15)

Очевидно следующее решение системы (6.13) – (6.15): .

Это решение называется базисным. Оно неприемлемо, т.к. и отрицательны. Следовательно, систему (6.13) – (6.15) необходимо преобразовать и решать ее в два этапа.

1 этап. Вспомогательный.

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

Преобразуем систему ( 6.13) – (6.15) в систему ( 6.16) – (6.18):

(6.16)

(6.17)

(6.18)

Ставим вспомогательную задачу. Необходимо найти , доставляющие минимум следующей целевой функции: . Здесь легко находятся исходное допустимое базисное решение:

.

После этого начинается реализация симплекс – алгоритма для решения вспомогательной задачи. Работа при этом осуществляется c системой (6.16) – (6.18).

  1. Выражаются базисные переменные и через свободные переменные

.

  1. Определяется целевая функция:

.

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

Теорема. Допустимое базисное решение является оптимальным, если коэффициенты при свободных переменных в выражении для целевой функции неотрицательны.

Для текущего базисного решения , т.к. .

  1. В выражении для целевой функции находится переменная, имеющая наибольший по модулю отрицательный коэффициент, она вводится в базис для получения нового базисного решения.

Для этого анализируются зависимости текущих базисных переменных (здесь и ), от вводимой в базис переменной (здесь , т.к. она имеет коэффициент «-13») при условии, что свободные переменные равны нулю ( ): . Очевидно, что можно увеличить самое большее до 40/13, при этом

,

т.е. получим новое базисное решение:

.

Снова выполняем симплекс алгоритм:

  1. Опять выражаем базисные переменные через свободные:

  1. .

  2. Минимум не достигнут (текущее базисное решение не оптимально), т.к. выражение для целевой функции содержит переменные с отрицательными коэффициентами. , т.к , т.е. значение целевой функции уменьшилось по сравнению с предыдущим.

  3. Вводим в базис , т.к. эта переменная в выражении для целевой функции имеет коэффициент «-3». , т.к. . , т.к. (см. уравнение (6.17), принимая во внимание, что ). Здесь ,т.е. можно увеличить до 80/3 (до 40 нельзя, т.к. при этом ). Следовательно, , т.е. получили новое базисное решение: .

Это базисное решение на данном этапе является оптимальным (выражение для целевой функции не содержит отрицательных коэффициентов). При этом

.

Целевую функцию уменьшить нельзя, т.к. .

Переменные , т.е. они перешли в разряд свободных переменных и могут быть отброшены. Окончательное базисное решение является оптимальным для вспомогательного этапа 1 и допустимым для системы (6.13) – (6.15).

2 этап. Работаем с системой (6.13) – (6.15). Имея допустимое базисное решение , полученное в результате минимизации на этапе 1, оценим его для исходной задачи с целевой функцией . Тем самым начинается повторное использование симплекс - алгоритма, но уже для исходной задачи.

  1. С помощью системы (6.13) – (6.15) получим:

  1. (приводится без вывода).

  2. Данное базисное решение не оптимально, т.к. переменная имеет отрицательный коэффициент.

  3. . Вводим в базис переменную x2.

; (выражение для приводится без вывода).

, можно увеличить самое большее до 40/16=5/2, при этом

т.е. получили новое базисное решение: .

Снова выполняем симплекс – алгоритм:

1,2. Выражаем через свободные переменные .

(приводится без вывода).

3. В выражении для целевой функции все коэффициенты при переменных положительны. Т.е. текущее базисное решение является оптимальным, значит . Т.е. наилучший вариант технологии состоит в применении только первого и второго способов раскроя листов, причем первым способом необходимо раскроить 25 листов, а вторым 2,5 листа, тогда наименьший общий суммарный расход листов составит 27,5 шт. Количество получаемых деталей при этом будет: деталь типа 1 –

,

деталь типа 2 –

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]