- •1. Понятие модели.
- •1.1. Модели и моделирование. Классификация моделей
- •В настоящее время для постижения истины существует 3 пути:
- •1.2. Классификация моделей
- •1.3. Адекватность моделей
- •2. Математические модели и методы их расчета
- •2.1. Математические модели.
- •2.1. Понятие операционного исследования
- •2.3. Этапы построения математических моделей
- •Можно выделить следующие основные этапы построения математической модели:
- •2.4 Математические оптимизационные модели.
- •2.4. Необходимые сведения из матричной алгебры
- •2.5. Системы линейных алгебраических уравнений
- •2.5. Модель Леонтьева многоотраслевой экономики (балансовый анализ).
- •3. Простейшие оптимизационные задачи.
- •3.1. Экстремумы функции одной переменной.
- •Экстремумы функции нескольких переменных.
- •4. Математические модели экономических задач.
- •4.1. Транспортная задача
- •4.2 Задача об использовании ресурсов.
- •4.3. Задача о диете.
- •4.4. Общая формулировка задачи линейного программирования
- •Стандартная задача линейного программирования.
- •Каноническая задача линейного программирования.
- •Общая задача линейного программирования.
- •5. Графический метод решения задач линейного программирования.
- •5.1. Выпуклые множества
- •5.2 Геометрический смысл решений систем неравенств.
- •5.3. Графический метод решения задач линейного программирования. Пример.
- •5.4. Геометрический метод решения задачи. Общий случай.
- •6.Симплекс-метод решения задачи линейного программирования.
- •6.1. Выпуклые многогранники.
- •6.2.Симплекс-метод. Пример.
- •6.3.Симплекс метод. Общий случай.
- •Симплекс-таблицы. Пример.
- •7.Двойственность в линейном программировании.
- •7.1. Двойственные задачи линейного программирования.
- •7.2. Теоремы двойственности..
- •7.3. Анализ чувствительности задачи линейного программирования..
- •Решение транспортной задачи.
- •7.1 Особенности транспортной задачи.
- •7.2. Опорный план транспортной задачи
- •7.3. Метод потенциалов.
- •8.Задачи нелинейного программирования.
- •8.1. Общая постановка задачи нелинейного программирования.
- •8.2. Задачи нелинейного программирования с линейной целевой функцией и нелинейными ограничениями.
- •8.3. Задачи нелинейного программирования с нелинейной целевой функцией и линейными ограничениями.
- •8.4. Метод множителей Лагранжа.
- •Элементы теории игр.
- •9.1.Основные понятия теории игр
- •8.3. Сведение матричной игры к задаче линейного программирования.
7.3. Метод потенциалов.
Сейчас мы рассмотрим метод пошагового улучшения плана поставок и получение оптимального плана. Рассмотрим сначала самую простую транспортную задачу.
(4)
f= (5).
Пусть опорный план имеет вид, приведенный в таблице
|
В Р1 |
В Р2 |
Мощности поставщиков |
|
Из М1 |
|
|
|
|
Из М2 |
|
|
|
|
Потребности |
|
|
|
|
При этом заполненными оказались n+m-1=3 ячейки, а ячейка (2-1) осталась свободной.
Метод потенциалов заключается в введении для каждого столбца и каждой строки чисел (потенциалов) так, что для заполненных клеток выполняются условия
.
При этом мы получает три уравнения (по числу заполненных клеток) и четыре неизвестных. Поэтому одной неизвестной можно дать произвольное значение. Положим . Тогда
В каком случае план перевозок будет оптимальным? Выразим базовые переменные (те, которым соответствуют заполненные клетки) через свободную переменную (которой соответствует свободная клетка) Получим
, , .
f= =
План поставок будет оптимальным, если
(6)
(тогда при =0 мы получим минимум f). Заметим также, что, если в (6) выполняется равенство, то оптимальное решение не будет единственным, так как в этом случае f будет принимать одинаковое значение для любых
Так как , то (6) можно записать в виде
или .
Таким образом, условия оптимальности полученного плана поставок :
для заполненных клеток, (7)
для свободных клеток. (8)
Данные условия оптимальности (7), (8) справедливы и для транспортных задач в общем случае ( причем, если для некоторой свободной клетки в (8) выполняется равенство, то оптимальное решение не будет единственным).
Рассмотрим, как можно улучшить опорный план поставок. Для этого рассмотрим опорный план поставок, полученный нами в предыдущем пункте методом «северо-западного угла».
|
В Р1 |
В Р2 |
В Р3 |
В Р4 |
Мощности поставщиков |
Потенциал |
Из М1
|
- |
+ |
|
|
40 |
0 |
Из М2
|
|
- |
|
+ |
60 |
-3 |
Из М3
|
+ |
|
|
- |
50 |
0 |
Потребности |
30 |
50 |
30 |
40 |
|
|
Потенциал |
4 |
5 |
4 |
5 |
|
|
Определим потенциалы строк и столбцов, полагая и пользуясь условиями (7).
, ,
Найдем следующие величины, которые мы будем называть оценками свободных клеток:
, ,
,
,
Условию оптимальности (8) не удовлетворяют клетки (1-3) и (3-1). Выбираем клетку (3-1), в которой оценка свободной клетки наибольшая, и будем изменять поставки. Изменения поставок будем производить по циклу. Циклом будем называть замкнутую ломаную, удовлетворяющую следующим свойствам:
Цикл начинается и заканчивается в выбранной нами свободной клетке;
Вершины ломаной лежат в заполненных клетках и в одной свободной клетке, а звенья ломаной расположены вдоль строк или столбцов таблицы;
Цикл начинается и заканчивается в выбранной нами свободной клетке и имеет четное число вершин.;
В каждой вершине цикла направление ломаной меняется на 900;
В вершине свободной клетки ставим знак + , что означает увеличение поставки, далее в соседних клетках ставим противоположные знаки (знак – означает уменьшение поставки).
Ищем в цикле вершину, имеющую знак минус, с минимальной поставкой. В нашем примере это будет ячейка (1-1) с поставкой 30. Эту поставку мы и будем перемещать по циклу (нельзя брать поставку больше и нельзя брать меньше). При этом клетка (1-1) станет свободной (это означает, что переменную х11 мы перевели в свободные переменные), а клетка (3-1) станет заполненной (это означает, что переменную х13 мы перевели в базисные переменные). При этом получим следующее распределение поставок:
|
В Р1 |
В Р2 |
В Р3 |
В Р4 |
Мощности поставщиков |
Потенциал |
Из М1 |
|
- |
+ |
|
40 |
0 |
Из М2 |
|
+ |
- |
|
60 |
-3 |
Из М3 |
|
|
|
|
50 |
0 |
Потребности |
30 |
50 |
30 |
40 |
|
|
Потенциал |
1 |
5 |
4 |
5 |
|
|
Определим значение цены перевозок для данного распределения поставок:
f=40 =400,
(напомним, что в предыдущем распределении было f= 410).
Выясним, будет ли данное распределение оптимальным.
Определим потенциалы строк и столбцов, полагая и пользуясь условиями (7).
, ,
Найдем оценки свободных клеток:
, , ,
,
Условию оптимальности (8) не удовлетворяет клетка (1-3). Строим замкнутый цикл и находим минимальную поставку, имеющую знак - , она будет равна 20. Перемещаем поставку по циклу. При этом получим следующее распределение поставок:
|
В Р1 |
В Р2 |
В Р3 |
В Р4 |
Мощности поставщиков |
Потенциал |
Из М1 |
|
|
|
|
40 |
0 |
Из М2 |
|
|
|
|
60 |
-3 |
Из М3
|
|
|
|
|
50 |
0 |
Потребности |
30 |
50 |
30 |
40 |
|
|
Потенциал |
1 |
5 |
3 |
5 |
|
|
Определим значение цены перевозок для данного распределения поставок:
f=20 =380.
Определим потенциалы строк и столбцов, полагая .
,
Найдем оценки свободных клеток:
, , ,
,
Таким образом, полученное нами распределение поставок оптимальное (так как , то данное оптимальное распределение не единственно).