- •1. Теоретическая часть
- •1.1 Определение и характеристика линейного программирования
- •1.2 Характеристика симплекс-метода как основного аппарата решения задач линейного программирования
- •1.3 Основные этапы, особенности и методы решения транспортной задачи
- •2. Практическая часть
- •2.1 Составление математической модели задачи планирования производства
- •2.2 Решение задачи планирования производства геометрическим способом
- •2.3 Решение задачи планирования производства симплекс-методом
- •2.4 Решение задачи планирования производства с помощью табличного процессора ms Excel
- •2.5 Составление математической модели транспортной задачи
- •2.6 Нахождение опорного плана транспортной задачи методом северо-западного угла
- •2.7 Нахождение опорного плана транспортной задачи методом наименьшего элемента
- •2.8 Решение транспортной задачи методом потенциалов
- •2.9 Решение транспортной задачи при помощи табличного процессора Excel
- •Приложение 2
1.2 Характеристика симплекс-метода как основного аппарата решения задач линейного программирования
Симплекс-метод является основным в линейном программировании. Решение задачи начинается с рассмотрений одной из вершин многогранника условий. Если исследуемая вершина не соответствует максимуму (минимуму), то переходят к соседней, увеличивая значение функции цели при решении задачи на максимум и уменьшая при решении задачи на минимум. Таким образом, переход от одной вершины к другой улучшает значение функции цели. Так как число вершин многогранника ограничено, то за конечное число шагов гарантируется нахождение оптимального значения или установление того факта, что задача неразрешима.
Допустим,
предприятие предполагает выпускать
два вида продукции
и
,
для производства которых используется
сырьё трех видов.
Производство
обеспечено сырьем каждого вида в
количествах:
,
,
кг. На изготовление единицы изделия
требуется затратить сырья каждого вида
,
,
кг., соответственно, а для единицы изделия
-
,
,
кг. Прибыль от реализации единицы изделия
составляет
ден.ед., для единицы изделия
-
ден.ед. (табл.1.4.1).
Таблица 1.4.1
Вид сырья |
Продукция |
Ограничения по сырью |
|
|
А1 |
А2 |
|
1-й |
a11 |
a12 |
b1 |
2-й |
a21 |
a22 |
b2 |
3-й |
a31 |
a32 |
b3 |
Прибыль |
c1 |
c2 |
|
Составляем математическую модель:
(1.4.1)
Введем базисные переменные и преобразуем исходную задачу к виду:
(1.4.2)
Решим систему уравнений относительно базисных переменных x3, x4, x5.
Таблица 1.4.2
Итерация № 0
Базис |
|
Х1 |
Х2 |
Х3 |
Х4 |
Х5 |
Свободные члены |
Отношение |
Х3 |
C1 |
|
|
|
|
|
|
596/5 |
Х4 |
C2 |
|
|
|
|
|
|
264/3 |
Х5 |
C3 |
|
|
|
|
|
|
640/2 |
Z |
|
|
0 |
0 |
0 |
0 |
- |
|
При составлении исходной симплекс таблицы, коэффициенты при переменных функции Z записываются с противоположными знаками, а свободный член со своим знаком.
- вектор,
составленный из координат соответствующих
базисных переменных.
Текущий план не оптимален, так как в индексной строке находятся отрицательные коэффициенты.
Будем считать что Z2 наименьший элемент, а строку с наименьшим отношением свободного члена к соответствующему элементу выбранного столбца - строку Х4.
Ведущий
столбец Х2, так как (
- наименьшее отрицательное число.
За ведущую выберем строку 2, так как отношение свободного члена к соответствующему элементу выбранного столбца для 2 строки является наименьшим.
Разрешающий элемент .
Разделим элементы строки 2 на разрешающий элемент ( ).
От элементов строки 1 отнимаем соответствующие элементы строки 2, умноженные на .
От
элементов строки 3 отнимаем соответствующие
элементы строки 2, умноженные на
.
От
элементов строки Z
отнимаем соответствующие элементы
строки 3, умноженные на
.
Заменяем базисную переменную Х5 на Х1.
Количество итераций будет продолжаться до тех пор, пока в строке Z остаются отрицательные элементы.
Порядок работы с симплекс таблицей
Первая симплекс-таблица подвергается преобразованию, суть которого заключается в переходе к новому опорному решению.
Алгоритм перехода к следующей таблице такой:
просматривается последняя строка (индексная) таблицы и среди коэффициентов этой строки (исключая столбец свободных членов Y0) выбирается наименьшее отрицательное число при отыскании max, либо наибольшее положительное при задачи на min. Если такового нет, то исходное базисное решение является оптимальным и данная таблица является последней;
просматривается столбец таблицы, отвечающий выбранному отрицательному (положительному) коэффициенту в последней строке- ключевой столбец, и в этом столбце выбираются положительные коэффициенты. Если таковых нет, то целевая функция неограниченна на области допустимых значений переменных и задача решений не имеет;
среди выбранных коэффициентов столбца выбирается тот, для которого абсолютная величина отношения соответствующего свободного члена (находящегося в столбце свободных членов) к этому элементу минимальна. Этот коэффициент называется разрешающим, а строка в которой он находится ключевой;
в дальнейшем базисная переменная, отвечающая строке разрешающего элемента, должна быть переведена в разряд свободных, а свободная переменная, отвечающая столбцу разрешающего элемента, вводится в число базисных. Строится новая таблица, содержащая новые названия базисных переменных:
разделим каждый элемент ключевой строки (исключая столбец свободных членов) на разрешающий элемент и полученные значения запишем в строку с измененной базисной переменной новой симплекс таблицы.
строка разрешающего элемента делится на этот элемент и полученная строка записывается в новую таблицу на то же место.
в новой таблице все элементы ключевого столбца = 0, кроме разрезающего, он всегда равен 1.
столбец, у которого в ключевой строке имеется 0,в новой таблице будет таким же.
строка, у которой в ключевом столбце имеется 0,в новой таблице будет такой же.
в остальные клетки новой таблицы записывается результат преобразования элементов старой таблицы
В результате получают новую симплекс-таблицу, отвечающую новому базисному решению.
Следует просмотреть строку целевой функции (индексную), если в ней нет отрицательных значений (в задачи на нахождение максимального значения), либо положительных (в задачи на нахождение минимального значения) кроме стоящего на месте Y0 (свободного столбца), то значит, что оптимальное решение получено. В противном случае, переходим к новой симплекс таблице по выше описанному алгоритму. Рассмотрим порядок решения задачи с помощью симплекс-таблиц на примере.
