Автор работы: Пользователь скрыл имя, 17 Ноября 2013 в 19:56, курсовая работа
Целью исследования операций является выявление наилучшего способа действия при решении той или иной задачи. Главная роль при этом отводится математическому моделированию. Для построения математической модели необходимо иметь строгое представление о цели функционирования исследуемой системы и располагать информацией об ограничениях, которые определяют область допустимых значений. Цель и ограничения должны быть представлены в виде функций. В моделях исследования операций переменные, от которых зависят ограничения и целевая функция, могут быть дискретными (чаще всего целочисленными) и континуальными (непрерывными).
Введение 5
1.Нормативные ссылки. 7
2.Детерминированные модели 8
3.Динамическое програмирование 10
3.1.Задачи динамического програмирования 10
3.2.Общая постановка задач динамического програмирования 13
3.3.Общая структура динамического програмирования 14
4.Статистические модели управления запасами 16
4.1.Классическая задача экономического размера заказа 16
4.2.Задача экономического размера заказа с разрывами цен 18
4.3.Многопродуктовая статистическая модель с ограниченной вместимостью склада. 21
5.Динамические задачи экономического размера заказа 24
5.1..Модель при отсутствии затрат на оформление заказа 24
5.2.Модель с затрвттами на оформление заказа 25
6. Решение задач 29
6.1 Математическое решение задач. 29
6.2 Реализация примера 1 31
Заключение 33
Список использованной литературы. 34
Содержание
Введение 5
1.Нормативные ссылки. 7
2.Детерминированные модели 8
3.Динамическое програмирование 10
3.1.Задачи динамического програмирования 10
3.2.Общая постановка задач динамического програмирования 13
3.3.Общая структура динамического програмирования 14
4.Статистические модели управления запасами 16
4.1.Классическая задача экономического размера заказа 16
4.2.Задача экономического размера заказа с разрывами цен 18
4.3.Многопродуктовая статистическая модель с ограниченной вместимостью склада. 21
5.Динамические задачи экономического размера заказа 24
5.1..Модель при отсутствии затрат на оформление заказа 24
5.2.Модель с затрвттами на оформление заказа 25
6. Решение задач 29
6.1 Математическое решение задач. 29
6.2 Реализация примера 1 31
Заключение 33
Список использованной литературы. 34
ВВЕДЕНИЕ
В наше время наука уделяет
все большое внимание вопросам организации
и управления, это приводит к необходимости
анализа сложных
Работа над данным курсовым проектом позволяет закрепить знания по предмету «Алгоритмы и структуры данных».
В курсовой работе рассматриваются детерминированные модели в динамическом программировании, задачи динамического программирования, постановка задач и их общая структура, статистические модели управления запасами, динамические задачи размера заказа.
1.Нормативные ссылки
В пояснительной записке
Библиографическое описание электронных ресурсов. Общие требования и правила составления.
2. Детерминированные модели
Детерминированные модели такого
типа исследуются аналитически, если они
достаточно просты, и с использованием
ЭВМ, если вместо одного уравнения в описании
модели фигурируют, например, системы
большого числа уравнений и искомые функции
зависят от большого числа переменных.
Имитационный эксперимент с помощью ЭВМ
состоит для таких моделей в численном
решении соответствующих уравнений. При
этом, как правило, требуется замена исходной
системы уравнений разностной системой
или применение другой дискретизации,
что вносит в общем случае дополнительную
погрешность, обусловленную выбором численного
метода. Характеризуются тем, что знание
их параметров в некотором интервале позволяет
полностью определить динамику этих моделей
вне этого интервала. Для стохастических
моделей знание параметров модели для
некоторого интервала времени позволяет
определить лишь вероятностные характеристики
этих моделей. Детерминированная модель может
применяться для описания объекта, если
факторы и отклик по своей природе являются
неслучайными величинами, погрешностями
измерения которых можно пренебречь. В
данном случае каждому набору значений
факторов соответствует одно или четко
определенное множество значений отклика. Детерминированные модели игнорируют
эти случайные изменения. Не позволяют одновременно определить
влияние нескольких факторов и не учитывают
взаимозаменяемости факторов в системе
обратных связей. Детерминированные модели бывают
периодическими и непериодическими. И
те и другие могут быть непрерывными во
времени или представлены в виде последовательности
дискретных импульсов. Эти сигналы описываются
либо с помощью интеграла Фурье, либо изображением
по Лапласу. Строятся на основе математических
закономерностей, описывающих физико-химические
процессы в объекте. Поведение системы
можно предсказать достаточно точно. Детерминированные модели строятся
на основе обобщенных уравнений материального
и теплового балансов, которые определяются
макрокинетикой процесса. Детерминированная модель позволяет
прогнозировать будущее оригинала при
наличии достаточной исходной информации
о прошлом объекта. Соответствует определенным
связям входных и выходных параметров
процесса. Стохастические модели используют
в случае неполной определенности связей
переменных параметров и показателей
качества отливок, но которые можно оценить
статистически. Детерминированн
Даны параметры α,β,γ Вычислить x = f(α,β,γ) Вычислить y = (α,β,γ) А
А Вычислить z = (α,β,γ) Выход
Рисунок 1 – Пример детерминированной модели
3. Динамическое программирование
3.1 Задача динамического программирования
Динамическое
программирование представляет собой
метод оптимизации многошаговых
процессов принятия решении, позволяющий
указать пути исследования целого класса
экстремальных задач.
Большинство методов исследования операций
связано в первую очередь с задачами вполне
определенного содержания. Классический
аппарат математики оказался малопригодным
для решения многих задач оптимизации,
включающих большое число переменных
и/или ограничений в виде неравенств. Несомненна
привлекательность идеи разбиения задачи
большой размерности на подзадачи меньшей
размерности, включающие всего по нескольких
переменных , и последующего решения общей
задачи по частям. Именно на этой идее
основан метод динамического программирования.
Динамическое программирование (ДП) представляет
собой математический метод, заслуга создания
и развития которого принадлежит прежде
всего Беллману. Метод можно использовать
для решения весьма широкого круга задач,
включая задачи распределения ресурсов,
замены и управления запасами, задачи
о загрузке. Характерным для динамического
программирования является подход к решению
задачи по этапам, с каждым из которых
ассоциирована одна управляемая переменная.
Набор рекуррентных вычислительных процедур,
связывающих различные этапы, обеспечивает
получение допустимого оптимального решения
задачи в целом при достижении последнего
этапа. Происхождение названия динамическое
программирование, вероятно, связано с использованием
методов ДП в задачах принятия решений
через фиксированные промежутки времени
(например, в задачах управления запасами).
Однако методы ДП успешно применяются
также для решения задач, в которых фактор
времени не учитывается. По этой причине
более удачным представляется термин
многоэтапное программирование, отражающий
пошаговый характер процесса решения
задачи. Фундаментальным принципом, положенным
в основу теории ДП, является принцип оптимальности.
По существу, он определяет порядок поэтапного
решения допускающей декомпозицию задачи
(это более приемлемый путь, чем непосредственное
решение задачи в исходной постановке)
с помощью рекуррентных вычислительных
процедур.
Динамическое программирование позволяет осуществлять оптимальное планирование управляемых процессов. Под «управляемыми» понимаются процессы, на ход которых мы можем в той или другой степени влиять. Пусть предполагается к осуществлению некоторое мероприятие или серия мероприятий («операция»), преследующая определенную цель. Спрашивается: как нужно организовать (спланировать) операцию для того, чтобы она была наиболее эффективной? Для того, чтобы поставленная задача приобрела количественный, математический характер, необходимо ввести в рассмотрение некоторый численный критерий W, которым мы будем характеризовать качество, успешность, эффективность операции. Критерий эффективности в каждом конкретном случаи выбирается исходя из целевой направленности операции и задачи исследования (какой элемент управления оптимизируется и для чего). Сформулируем общий принцип, лежащий в основе решения всех задач динамического программирования («принцип оптимальности»): «Каково бы ни было состояние системы S перед очередным шагом, надо выбрать управление на этом шаге так, чтобы выигрыш на данном шаге плюс оптимальный выигрыш на всех последующих шагах был максимальным». Динамическое программирование – это поэтапное планирование многошагового процесса, при котором на каждом этапе оптимизируется только один шаг. Управление на каждом шаге должно выбираться с учетом всех его последствий в будущем. При постановке задач динамического программирования следует руководствоваться следующими принципами:
налагаемые на них ограничения.
, если перед
этим система была в состоянии
S, т.е. записать «функцию
управление xi на i-ом шаге: оно переходит в новое состояние
3.2 Общая постановка задачи динамического программирования
Метод оказывается весьма эффективным при анализе задач с аддитивной целевой функцией
f(x1,x2,…,xn) = (1)
к которым относятся, в частности, задачи линейного и квадратичного программирования.
Необходимость принять решение возникает тогда, когда производятся те или иные целенаправленные действия. Если в какой-либо реальной задаче подобные ситуации возникают периодически, то образуется процесс принятия решений.
Предположим, что интересующий нас процесс можно разбить на N шагов, а действия, совершаемые на i-ом шаге, характеризуются совокупностью показателей . Состояние процесса к началу этого шага имеет характеристику в виде набора параметров . Обычно предпринимаемые действия не являются полностью произвольными, а зависят от состояния , которое возникло перед i-ым шагом. Очевидно, результирующее значение критерия Z, получаемое в конце процесса, будет определяться теми, которые были приняты. Возникает вопрос: Как выбрать x , чтобы величина Z приняла экстремальное значение? Ответ можно получить, рассматривая Z как функцию переменных и находя экстремум z одним из известных способов, однако этот путь не всегда прост. Появляется идея провести оптимизацию поэтапно, анализируя последовательно каждый шаг процесса в поисках наилучших вариантов его продолжения. Эта идея лежит в основе метода динамического программирования, реализующего принцип последовательной оптимизации. Следовательно, важным условием применимости рассматриваемого метода является возможность разбиения процесса принятия решений на ряд однотипных шагов или этапов, каждый из которых планируется отдельно, но с учетом результатов, полученных на других шагах. Динамическое программирование основывается на двух важных принципах- Принцип оптимальности и принцип вложения. Принцип оптимальности формулируется следующим образом: Каково бы ни было состояние системы в результате какого-то числа шагов, мы должны выбирать управление на ближайшем шаге так, чтобы оно, в совокупности с оптимальным управлением на всех последующих шагах, приводило к максимальному выигрышу на всех оставшихся шагах, включая данный.
Принцип вложения утверждает, что природа задачи, допускающей использование метода динамического программирования, не меняется при изменении количества шагов, т. е. форма такой задачи инвариантна относительно N. В этом смысле всякий конкретный процесс с заданным N оказывается как бы вложенным в семейство подобных ему процессов и может рассматриваться с более широких позиций.
Реализация названных принципов дает гарантию того, что, во-первых, решение, принимаемое на очередном шаге, окажется наилучшим с точки зрения всего процесса (а не "узких интересов" отдельного этапа) и, во-вторых, последовательность решений одношаговой, двух шаговой и т. п. задач приведет к решению исходной N-шаговой задачи.
Информация о работе Детерминированные модели динамического программирования