- •Исследование операций в транспортных системах
- •6.070101 «Транспортные технологии»
- •Содержание
- •Введение
- •Лекция 1 исторические предпосылки возникновения дисциплины «исследование операций». Основные термины. Отличительные особенности
- •1.1. История развития научного направления «исследование операций»
- •1.2 Назначение дисциплины
- •1.3. Базовая терминология
- •1.4.1. Системный подход
- •1.4.2. Использование комплексных научных коллективов
- •1.4. Отличительные особенности исо
- •Лекция 2 операционные проекты и постановка операционных задач
- •2.1. Разработка операционных моделей
- •2.2. Поиск приемлемого плана исследований
- •2.3. Операционные проекты
- •2.4. Классы операционных задач
- •2.5. Постановка задач и определение целей
- •2.5.1. Постановка задачи.
- •2.5.2. Определение целей
- •2.5.3. Классификация задач
- •Лекция 3 транспортная задача линейного программирования
- •3.1. Формулировка задачи
- •3.2.Нахождение опорного решения методом «северо-западного угла»
- •3.3. Нахождение опорного решения методом «минимального элемента»
- •Лекция 4 Алгоритм циклических преобразований опорного решения транспортной задачи
- •4.1. Описание алгоритма однократного замещения
- •4.2. Метод «северо-западного угла»
- •4.2.1. Алгоритм решения
- •4.3. Метод «потенциалов»
- •4.3.1. Алгоритм решения
- •Лекция 5 теория графов. Сетевое планирование
- •5.1. Основы теории графов
- •5.2. Особенности и постановка задач сетевого планирования
- •Лекция 6 Методика построения и оптимизации сетевых моделей
- •6.1. Алгоритм графоаналитического метода построения сетевых моделей
- •6.2. Методика оптимизации сетевых моделей
- •Лекция 7 вероятностные модели исследования операций. Дискретная случайная величина. Непрерывная случайная величина
- •7.1. Терминология
- •7.2. Принципы исследования систем с помощью вероятностных моделей
- •7.3. Дискретная случайная величина
- •7.4. Непрерывная случайная величина
- •Лекция 8 Моделирование систем массового обслуживания
- •8.1. Постановка задач
- •8.2. Классификация систем массового обслуживания
- •8.3. Исследование характеристик потоков
- •8.3.1. Входящий поток
- •8.3.2. Выходящий поток
- •8.4. Принципы реализации модели
- •Лекция 9 имитационные модели массового обслуживания
- •9.1. Постановка задачи
- •9.2. Разработка модели
- •9.3. Графоаналитическая модель имитации обслуживания.
- •Лекция 10 Динамическое программирование
- •10.1. Особенности применения динамического программирования
- •10.2. Алгоритм реализации метода
- •10.3. Методика решения задач на основе принципа оптимальности Беллмана
- •Лекция 11 Теория игр и принятие решений
- •11.1. Общее представление о теории игр
- •11.2. Стратегии. Нормальная форма игры
- •11.3. Ситуации равновесия
- •11.4. Антагонистические игры. Игры с нулевой суммой
- •11. 5. Нормальная форма
- •11.6. Теорема о минимаксе
- •11.7. Другие виды игр
- •Лекция 12 экспертные методы принятия решений
- •12.1. Общая информация о методах экспертных оценок
- •12.2. Общая схема экспертизы
- •12.3. Задача оценивания
- •12.4. Подготовка экспертизы
- •12.5. Методы обработки экспертной информации
- •12.5.1. Начальные операции
- •12.5.2. Классификация методов
- •Лекция 13 Основы прогнозирования
- •13.1. Общее описание алгоритма прогнозирования
- •13.2. Прогнозная экстраполяция
- •13.3. Выбор формы кривой (тренда)
- •Лекция 14 реализация принципов и методов исо в сфере транспорта
- •14.1. Оценка возможностей.
- •14.2. Определение эффективности решения
- •14.3. Характеристика задач исо, направленных на решение проблем транспорта
- •Список рекомендованной литературы Основная
- •Дополнительная
- •Информационные ресурсы
Лекция 10 Динамическое программирование
План
10.1. Особенности применения динамического программирования
10.2. Алгоритм реализации метода
10.3. Методика решения задач на основе принципа оптимальности Беллмана
10.1. Особенности применения динамического программирования
Одним из методов решения экстремальных задач, связанных с оптимизацией управления производственными процессами, в том числе на транспорте является динамическое программирование.
Динамическое программирование отличается тем, что не имеет однозначной математической формулировки. В процессе его использования приходится разделить методику вычислений на некоторые последовательные этапы, и после достижения границы очередного этапа снова ставить задачи для достижения новой полезности на новом этапе.
В общих схемах массового обслуживания и решения проблем на основе типичных моделей этот способ решения задач стоит особняком.
С помощью динамического программирования решаются задачи, связанные с процессами, которые можно разделить на некоторое число этапов (шагов). Оптимизация управления на каждом этапе в отдельности не обеспечивает ещё оптимизации процесса в целом.
10.2. Алгоритм реализации метода
Алгоритм реализации метода построен на разделение общей задачи на отдельные этапы.
Если число этапов и возможных решений на каждом этапе (управлений) ограничено, то оптимальное решение в целом (оптимальную стратегию) можно найти перебором всех возможных вариантов.
Однако во многих случаях такой путь неприемлем вследствие очень большого числа вариантов.
Динамическое программирование позволяет, не нарушая строгости решения, сократить число рассматриваемых вариантов.
Идея заключается в том, что отыскание экстремального значения функции многих переменных заменяется многократным отысканием экстремальных значений функции одного или небольшого числа переменных.
Для этого вычислительный процесс делится на этапы. Выбирают такое решение задачи, которое позволяет оптимизировать данный этап.
Однако такое решение должно учитывать не только условия этого этапа, но и весь последующий ход процесса, для чего необходимо представлять все решения задачи на последующих этапах.
Поскольку процесс заканчивается на последнем этапе, оптимальное решение не должно учитывать последующего хода. Если найти его для всех ситуаций, которые могут сложиться к началу последнего, то можно получить и конкурирующие решения, из которых можно выбрать наилучшее.
После предварительного выбора всех необходимых инструментов математическая формализация обеспечивает положительный эффект от всех вычислительных процедур.
10.3. Методика решения задач на основе принципа оптимальности Беллмана
Принцип оптимальности впервые сформулирован и доказан Беллманом: утверждается, что оптимальная стратегия, начиная с любого этапа, зависит не от предыдущей стратегии, а лишь от состояния системы на данном этапе и последующей стратегии, т. е. от решений на последующих этапах.
Для знакомства с методиками приведём примеры решения задач.
Рассмотрим пример геометрической интерпретации (рис.10.1) метода.
Рис. 10.1. Геометрическая интерпретация задачи
Смысл её состоит в следующем:
Вертикальным линиям соответствуют моменты времени, в которые рассматривают исследуемую задачу.
В начальный момент t0 = 0 процесс (система) находится в одном из возможных начальных состояний, множеству которых соответствует множество точек Аi .Начальное состояние может быть задано либо областью возможных состояний, либо одним конкретным значением, в нашем случае четырьмя А1 А2 А3 и А4 . Будем также считать, для простоты, что в каждый момент времени система находится так же в одном из четырех возможных состояний, которые показаны точками на соответствующих вертикалях.
Конечное состояние системы — одна из четырех точек В1 В2 В3 и В4
Система переводится из начального состояния в следующее с помощью функции перехода, которую еще называют управлением системы на данном этапе. Для каждого, из возможных состояний, существует своя функция перехода (или некоторое множество их), которая переводит систему в некоторое множество состояний в следующий момент времени.
Э
(10.1.)
Каждая допустимая стратегия выражается ломаной линией, соединяющей вертикаль t= 0 с вертикалью tn = Т. Состоит она из набора управлений на каждом этапе, т. е. ей можно сопоставить число:
(10.2.)
Оптимальной стратегии соответствует ломаная с наименьшим значением F.
Следовательно, исходную задачу можно сформулировать в следующем виде: требуется из всех допустимых ломаных, соединяющих вертикаль t0=0 c вертикалью tn = T выбрать такую, которой соответствует наименьшее значение F.
Решают задачу в таком порядке:
Для всех возможных состояний системы в начале последнего этапа х (n– 1) определяют оптимальное управление — выбирают функцию перехода в одно из конечных состояний с минимальным значением. Переходы, соответствующие минимальному значению Qn-1 для каждого состояния (n - 1), показаны на рис. 10.1 жирной линией. Таким образом, в какой бы точке не оказалась система в начале последнего этапа, всегда можно предложить оптимальную стратегию для перевода ее в конечное состояние, получить ряд условно-оптимальных решений. Условие оптимальности каждого такого решения - состояние системы в начале рассматриваемого периода.
Теперь для каждого состояния системы в начале предпоследнего этапа Х(n-2) можно определить условно-оптимальные стратегии для перевода в одно из конечных состояний уже по общему минимуму функций перехода на двух последних этапах: min
При этом значения Qn-1 уже известны в результате предыдущих вычислений. Затем аналогично определяют условно-оптимальные стратегии на трех последних этапах по условию min(Qn-2 + Qn-1), причем Qn-1 уже известна. Расчеты продолжают до тех пор, пока не будет пройден весь процесс в обратном направлении.
Каждая из полученных ломаных (жирная линия), соответствует условно-оптимальной стратегии для всего процесса. Поскольку множеству начальных состояний системы соответствует множество точек на вертикали, то каждой условно-оптимальной стратегии соответствует свое начальное состояние системы (точка, из которой она выходит). Таким образом, условно-оптимальная стратегия будет оптимальной, при условии, что начальное состояние системы находится в соответствующей точке. Каждая условно-оптимальная стратегия оценивается значением функции F:
(10.3.)
По нему можно выбрать начальное состояние системы и в зависимости от него окончательно определить оптимальную стратегию, т. е., пройдя процесс уже от начала к концу, установить на каждом этапе оптимальные решения.
Принцип оптимальности Беллмана в этой интерпретации задач и динамического программирования означает следующее: оптимальный путь из любой точки, отражающей состояние системы в какой-либо момент времени, не зависит от траектории, ведущей в эту точку. Поэтому для определения оптимального решения в целом необходимо всегда находить оптимальное продолжение процесса относительно состояния, достигнутого в результате решения на предшествующем этапе.
Контрольные вопросы
В каких задачах транспорта применяется динамическое программирование?
В чем суть динамического программирования?
Опишите особенности алгоритма реализации метода.
Что необходимо учитывать при отыскании оптимального решения с помощью рассматриваемого метода?
Сущность принципа оптимальности Беллмана.
Охарактеризуйте особенности геометрической интерпретации метода решения задач на основе принципа оптимальности Беллмана.
Поясните понятие «функция перехода».
