
- •Раздел 5. Основы теории игр
- •Раздел 1. Структура оптимизационной модели. Классификация моделей.
- •Раздел 2. Линейное программирование
- •Характеристика линейной оптимизационной модели. Примеры задач линейного программирования и графический метод их решения.
- •2 .2. Симплекс-метод
- •2.3. Теория двойственности в линейном программировании
- •Раздел 3. Нелинейное программирование.
- •3.1.Общая характеристика нелинейной оптимизационной модели.
- •3.2.Способы решения задач нелинейного программирования.
- •Раздел 4. Динамическое программирование.
- •4.1. Общая характеристика метода динамического программирования.
- •4.2. Задача транспортировки груза по сети дорог.
- •4.3.Задача распределения ресурсов.
- •4.4. Задача определения оптимальной политики замены оборудования.
- •Раздел 5. Основы теории игр.
- •5.1.Основные понятия теории игр. Парные матричные игры с нулевой суммой.
- •5.2. Методы решения матричных игр.
- •5.3. Статистические игры.
- •6. Основы теории управления запасами.
- •6.1.Основные понятия теории управления запасами.
- •6.2. Детерминированные модели управления запасами.
- •6.3. Стохастические модели управления запасами.
- •Раздел 7. Основы теории систем массового обслуживания.
- •7.1. Основные понятия теории систем массового обслуживания.
- •7.2. Основные характеристики функционирования смо с отказами.
- •7.3. Основные характеристики функционирования смо с очередью.
- •Нелинейное программирование
Раздел 4. Динамическое программирование.
4.1. Общая характеристика метода динамического программирования.
В данном разделе рассматриваются детерминированные модели, в рамках которых используется особый подход к принятию оптимального решения. Суть его заключается в разбиении процесса принятия решений на отдельные шаги. Выделение шагов в одних ситуациях базируется на хронологической последовательности, а в других - на логической. Познакомимся с некоторыми основными понятиями метода.
Имеется некоторая управляемая физическая система, в которой происходят процессы, поддающиеся разделению на условные этапы (шаги). На каждом шаге состояние системы характеризуется определенными параметрами. Задача динамического программирования состоит в выборе из множества допустимых решений (управлений) такого, которое переводит систему из начального состояния в конечное, обеспечивая целевой функции экстремум.
В решении задач
динамического программирования будем
использовать следующие обозначения:
-
множество состояний, в которых система
может находиться перед
-м
шагом;
-
множество конечных состояний;
-
множество состояний в конце
-го шага;
-
множество управлений, которые могут
быть выбраны на
-м шаге и под воздействием каждого из
которых система переходит в одно из
состояний множества
;
- условно-оптимальное значение целевой
функции на интервалах от
-го
до N-го
включительно при условии, что перед
-м шагом система находилась в одном из
состояний множества
и было выбрано одно из управлений
множества
;
- значение целевой функции на
-м шаге.
Процедурой метода предусмотрено два способа перемещения в пространстве состояний системы: 1) условная оптимизация – перемещение в обратном направлении ( от последнего шага к первому); 2) безусловная оптимизация – перемещение в прямом направлении ( от первого шага к последнему). Сначала реализуется условная оптимизация, которая позволяет получить экстремальное значение целевой функции. Затем – безусловная оптимизация, в ходе которой мы получаем вектор оптимальных управлений.
В основе условной
оптимизации лежит принцип оптимальности
Р. Беллмана, который звучит так: каково
бы ни было состояние системы в результате
осуществления
шагов, управление на
-м
шаге должно выбираться так, чтобы оно
в совокупности с управлениями на всех
последующих шагах, с
-го
до N-го
включительно, доставляло экстремум
целевой функции.
Рассмотрим применение метода на примерах типичных задач.
4.2. Задача транспортировки груза по сети дорог.
Пусть физической управляемой системой является транспортное средство с грузом. Груз необходимо доставить из начального пункта движения в конечный, для чего можно выбрать разные маршруты в имеющейся сети дорог. На каждом участке сети определен транспортный тариф на перемещение единицы груза. Требуется доставить груз в конечный пункт, выбрав маршрут с минимальной стоимостью транспортировки.
На рисунке 10 изображена сеть дорог, по которой должен перемещаться транспорт с грузом. Над ребрами сети указаны тарифы.
Рис. 10. Схема дорожной сети.
В рассматриваемой задаче используется хронологический принцип выделения шагов, что объясняется физическим смыслом ситуации. Для выделения щагов воспользуемся следующим подходом. Разобьем все пункты сети на группы. К группе 0 отнесем п.1; к группе 1 – пункты, в которые можно попасть непосредственно из п.1; к группе 2 – пункты, в которые можно попасть непосредственно из любого пункта группы 1 и т. д. (см. таблицу 10).
Табл. 10. Группировка пунктов дорожной сети.
Группа 0 |
Группа 1 |
Группа 2 |
Группа 3 |
Группа 4 |
п.1 |
п.2 п.3 |
п.4 п.5 п.6 |
п.7 п.8 п.9 |
п.10 |
Шагом процесса будем считать перевод транспорта из пунктов предшествующей группы в пункты последующей группы. В результате в данной задаче можно выделить 4 шага, которые показаны на рисунке 10.
Множество
состояний системы
перед
-м
шагом представляет собой местонахождение
транспорта с грузом в пунктах предшествующей
группы. Совокупность управлений
на
-м
шаге состоит в выборе дорог, по которым
можно направлять груз из данной группы
пунктов в последующую. Множество
состояний
- нахождение груза в пунктах группы,
достигнутой в результате реализации
-го
шага. Элементы множества
– затраты на перевозку единицы груза
из данного пункта в выбранный соседний.
Множество
-
минимальная стоимость транспортировки
( условно-оптимальное значение целевой
функции) на шагах от
-го
до N-го.
Поиск решения начинается с условной оптимизации, в ходе которой процесс анализируется в обратном порядке – от 4-го шага к 1-му. Решение удобно оформлять с помощью таблиц. Каждая таблица отражает элементы обозначенных ранее множеств и завершается выбором условно-оптимальных значений целевой функции.
Таблица 11 содержит анализ 4-го шага.
Табл. 11. Анализ 4-го шага.
|
|
|
|
п.7 п.8 п.9 |
(7,10) (8,10) (9,10) |
п.10 п.10 п.10 |
3 9 6 |
Перейдем к
анализу третьего шага. Из рисунка видно,
что множество
включает нахождение груза либо в п.4,
либо в п.5, либо в п.6. Множество
включает выбор дорог, ведущих из п.п.4,
5, 6 в п.п. 7, 8, 9. Для п.4 это дороги (4,7) или
(4,8); для п.5 – (5,7) или (5,8) или (5,9); для п.6 –
(6,8). Множество значений
состоит из тарифов на перевозку единицы
груза по соответствующей дороге.
Условно-оптимальное управление на третьем шаге для каждого из возможных состояний найдем следующим образом. Рассмотрим любое из состояний множества . Для перевода системы в состояние множества существуют следующие возможности:
- из п.4 - (4,7) или (4,8);
- из п.5 - (5;7) или (5,8) или (5,9);
- из п.6 - (6,8).
Используя результаты условной оптимизации 4-го шага, получаем:
F3 (x2, u3) = min (7+3; 5+9) = 10,
(4,7) (4,8)
F3(x2, u3) = min (2+3; 4+9; 8+6) = 5,
(5,7) (5,8)(5,9)
F3(x2, u3) = min (2+9) =11.
(6,8)
Оформим данные рассуждения в виде таблицы анализа 3-го шага (табл. 12).
Таблица 12. Анализ 3-го шага.
|
|
|
|
|
|
|
п.4 |
(4,7) (4,8) |
п.7 п.8 |
7 5 |
3 9 |
10 14 |
10 - |
п.5 |
(5,7) (5,8) (5,9) |
п.7 п.8 п.9 |
2 4 8 |
3 9 6 |
5 13 14 |
5 - - |
п.6 |
(6,8) |
п.8 |
2 |
9 |
11 |
11 |
Отразим результат анализа 2-го шага в виде таблицы (табл. 13), опустив комментарии. Заметим, что иногда для достижения компактности записи в таблицах используется сокращенное символическое обозначение некоторых показателей.
Таблица 13. Анализ 2-го шага.
|
|
|
|
|
|
|
п.2 |
(2,4) (2,5) |
п.4 п.5 |
4 7 |
10 5 |
14 12 |
- 12 |
п.3 |
(3,4) (3,5) (3,6) |
п.4 п.5 п.6 |
3 1 7 |
10 5 11 |
13 6 18 |
- 6 - |
Заключительный этап условной оптимизации - анализ 1-го шага отражен в таблице 14. Итог условной оптимизации – экстремальное значение целевой функции. В данном случае это минимальная стоимость транспортировки груза, которая составляет 11 денежных единиц.
Таблица 14. Анализ 1-го шага.
|
|
|
|
|
|
|
п.1 |
(1,2) (1,3) |
п.2 п.3 |
2 5 |
12 6 |
14 11 |
- 11 |
Итак,
минимальная стоимость транспортировки
определена. Теперь с помощью безусловной
оптимизации пройдем процесс в прямом
направлении – от 1-го шага к 4-му, путем
рассмотрения тех же самых таблиц в
обозначенном порядке. Это позволит нам
определить вектор оптимальных управлений,
или оптимальный маршрут. В выборе
компонентов вектора оптимальных
управлений следует ориентироваться на
условно- оптимальное значение целевой
функции и решение, принятое на
предшествующем шаге. Так, в таблице 14
определяется по минимальному значению
В таблице 13
выбирается на основе управления на
1-ом шаге и условно-оптимального значения
целевой функции. В последующих таблицах
– аналогично. Таким образом,
.