
- •Введение
- •§1. Линейное программирование. Сущность линейного программирования
- •Алгоритм построения математической модели задачи линейного программирования.
- •Пстроение экономико - математических моделей задач линейного программирования
- •I. Постановка задачи об использовании ресурсов
- •2.Постановка задачи о составлении рациона (задача о диете, задача о смесях)
- •3. Постановка задачи об определении оптимального ассортимента.
- •3. Приведение задачи линейного программирования к каноническому виду.
- •§2. Геометрический метод решения задач линейного программирования
- •Алгоритм метода «перебора всех вершин»
- •§3. Симплексный метод решения задач Общая идея симплекс-метода
- •1. Запишем систему ограничений в форме уравнений, введя дополнительные переменные
- •2. Заполним первую симплексную таблицу:
- •3. Назовём первоначальное дбр (допустимое базисное решение):
- •4. Проверка на оптимальность.
- •5. Переход к следующему лучшему (не худшему) решению.
- •7. Просматриваем оценочную (последнюю) строку.
- •Критерий оптимальности решения
- •Алгоритм определения первоначального допустимого базисного решения.
- •Особые случаи решения задачи линейного программирования симплекс-методом
- •1. Отсутствие конечного оптимума.
- •2. Неединственность оптимального решения (альтернативный оптимум).
- •3. Вырожденное базисное решение.
- •§4.Транспортная задача
- •Основные понятия. Математическая модель транспортной задачи
- •Математическая модель задачи
- •Свойства системных ограничений
- •Методы определения исходного базисного решения
- •I. Метод «северо-западного угла»
- •II. Метод «наименьшей стоимости»
- •Критерий оптимальности. Метод потенциалов
- •Открытая модель транспортной задачи
- •Список используемой литературы
- •1. Агальцов в.П. Математические методы в программировании: учебник.-2-е изд., перераб. И доп. – м: ид «форум», 2010.-240 с.
II. Метод «наименьшей стоимости»
Суть метода заключается в том, что каждый раз заполняется клетка с наименьшей издержкой .
В таблице
выбирается клетка с наименьшей издержкой
.
Если
в этой клетке, то
и потребности потребителя
удовлетворены полностью, т.е. все
остальные клетки j-го
столбца вычеркиваются.
Если
то
и ресурсы поставщика
полностью израсходованы, т.е. все
остальные клетки i-ой
строки вычеркиваются.
Далее в таблице опять выбирается свободная и не вычеркнутая клетка с наименьшей издержкой . Она аналогично заполняется, но теперь еще с учетом системы ограничений задачи (т.е. сумма по строкам должна быть равна , сумма по столбцам − ).
Заполненных клеток должно быть . Если их меньше, то одновременно на некотором шаге были удовлетворены и поставщик и потребитель , и одновременно были вычеркнуты и i-ая строка и j-ый столбец. В этом случае дается нулевая (фиктивная) поставка в произвольную, но не вычеркнутую клетку соответствующего столбца или соответствующей строки, которые должны быть вычеркнутыми на этом шаге.
Пример 2.
|
50 |
40 |
60 |
70 |
60 |
3
|
1 40 |
4 20 |
2 0 |
70 |
5
|
2
|
3
|
1 70 |
90 |
2 50 |
4
|
5 40 |
3
|
Опорный план:
Заполненных
клеток оказалось 5:
исходное решение вырожденное, т.е. мы
должны были дать фиктивную поставку,
когда заполняли клетку
и были вычеркнуты одновременно и строка
и столбец.
Стоимость перевозок при этом плане:
Это меньше, чем по
методу «северо-западного
угла» (
).
Критерий оптимальности. Метод потенциалов
Для того чтобы
допустимое решение было оптимальным
необходимо и достаточно, чтобы существовала
совокупность
действительных чисел
,
которые удовлетворяли бы условиям:
для заполненных
клеток
для свободных
(вычеркнутых) клеток.
Числа называются потенциалами.
Оценить опорное
решение с помощью потенциалов можно
следующим образом: первоначально одному
из потенциалов
или
дается значение 0.
Затем находятся остальные потенциалы
из равенств
(по заполненным базисным клеткам).
Оценки свободных
клеток вычисляются по формуле:
Если все
,
то задача решена и исходное опорное
решение оптимальное. Если есть хотя бы
одна отрицательная оценка, то решение
можно улучшить, перейдя к другому
опорному решению. Новое опорное решение
нужно вновь оценить с помощью потенциалов.
Пример 3 (по методу «северо-западного угла»).
50
40
60
70
60
3 50
1 10
4
2
3
70
5
2 30
3 40
1
4
90
2
4
5 20
3 70
6
0
−2
−1
−3
Матрица оценок для данного решения имеет вид
.
Так как
,
то решение не оптимально. При переходе
к другому опорному решению необходимо
выполнить однократное замещение одной
из базисных переменных на свободную
переменную.
Нас не устраивает
оценка клетки
,
поэтому введем в базис свободную
переменную
.
Соответственно при этом клетка
должна быть заполненной. Пусть поставка
в ней будет
.
Тогда нарушается баланс в третьей строке
и первом столбце. Восстановить его
можно, уменьшив поставки
и
(поставку
не затрагиваем, так как нарушенный
баланс в четвертой строке восстановить
не удастся). Получим новые поставки
и
.
Далее нарушается баланс в первой строке
и третьем столбце. Для его восстановления
изменяем на
единиц поставки в клетках
и
,
а именно
.
Аналогично нарушается баланс во второй
строке и во втором столбце, который
может быть восстановлен путем изменения
поставки
.
Таким образом, добавляя поставку
к клеткам
,
получим другое решение задачи:
.
В таблице или отдельно вычерчивается контур, по которому распределяются поставки . Полученный контур является замкнутым многоугольником у которого:
1) все углы прямые;
2) четное число вершин;
3) в вершинах расположены заполненные клетки, кроме одной, которую решили заполнить числом ;
4) при движении по контуру вершины, в которых добавляется и вычитается поставка , чередуются.
В качестве
поставки
выбирается минимум среди поставок, из
которых E
вычиталось. В нашем случае
.
Тогда мы получим новое опорное решение,
которое вновь оценим
На следующем шаге будем иметь
50
40
60
70
60
3 20−E
1 40
4
2 +E
3
70
5
2
3 60
1 10
0
90
2 30+E
4
5
3 60−E
2
0
−2
3
1
В итоге получим
50
40
60
70
60
3
1 40
4
2 20
3
70
5
2
3 60
1 10
0
90
2 50
4
5
3 40
2
0
−2
3
1
Критерий
оптимальности выполнен:
.
Следовательно, минимальная стоимость перевозок будет