Автор: Пользователь скрыл имя, 10 Февраля 2012 в 13:23, курсовая работа
В данной работе сделана попытка реализовать оптимизацию планирования потребностей ресурсов точным методом динамического программирования.
Введение 5
1 Расчётная часть 6
1.1 Постановка задачи 6
1.2 Математическая модель 6
1.3 Описание метода нахождения решения задачи 7
2 Описательная часть 10
2.1 Описание алгоритма задачи 10
2.2 Описание программы MathCAD 13
2.3 Контрольный пример 15
2.4 Инструкции пользователя 20
Заключение 21
Список сокращений 22
Список используемой литературы 23
Приложение А 24
Содержание
Введение 5
1 Расчётная часть 6
1.1 Постановка задачи 6
1.2 Математическая модель 6
1.3 Описание метода нахождения решения задачи 7
2 Описательная часть 10
2.1 Описание алгоритма задачи 10
2.2 Описание программы MathCAD 13
2.3 Контрольный пример 15
2.4 Инструкции пользователя 20
Заключение 21
Список сокращений 22
Список используемой литературы 23
Приложение А 24
Введение
Научно-технический прогресс создает предпосылки для повышения качества управления за счет использования вычислительной техники, математических методов, теории управления, автоматизации управления. Все это нашло конкретную реализацию в автоматизированных системах управления. Управление заключается в сборе информации, ее переработке и выводе управляющей информации для изменения хода процесса.
Основным путем повышения качества управления является автоматизация управления производством, при которой данные задачи решаются средствами вычислительной техники.
Одной из задач управления предприятием является задача планирования потребностей ресурсов, обеспечивающего заданный спрос продукции при минимизации затрат на производство и хранение продукции. Это задача планирования потребностей ресурсов. Теория управления запасами позволяет определять уровни запасов материалов, полуфабрикатов, производственных мощностей и других ресурсов в зависимости от спроса на них.
Проблема планирования потребностей ресурсов является одной из наиболее важных в организационном правлении. Но, как правило, не существует типовых решений – условия на каждом предприятии или фирме уникальны и включают множество ограничений и различных особенностей. С этим связаны и проблемы, возникающие при разработке математической модели и определении оптимального плана потребностей ресурсов.
В данной работе сделана попытка реализовать оптимизацию планирования потребностей ресурсов точным методом динамического программирования.
Динамическое
программирование – это математический
метод поиска оптимального плана
управления, специально приспособленный
к многошаговым процессам. Динамическое
программирование определяет оптимальное
решение n-мерной задачи путем ее декомпозиции
на n этапов, каждый из которых представляет
подзадачу относительно одной переменной.
Вычислительное преимущество такого подхода
состоит в том, что мы занимаемся решением
одномерных оптимизационных подзадач
вместо одной большой n-мерной задачи.
Фундаментальным принципом динамического
программирования, составляющим основу
декомпозиции задачи, является оптимальность.
Так как природа каждого этапа решения
зависит от конкретной оптимизационной
задачи, динамическое программирование
не предлагает вычислительных алгоритмов
непосредственной для каждого этапа. Вычислительные
аспекты решения оптимизационных подзадач
на каждом этапе проектируются и реализуются
по отдельности.
1 Расчетная часть
1.1 Постановка задачи
Задача динамического программирования состоит в декомпозиции многоэтапной задачи на одномерные оптимизационные подзадачи. Решение подзадач позволит оптимизировать всю задачу. Постановка задачи может быть представлена в виде математической модели управления запасами с затратами на оформление заказа. В данном курсовом проекте для решения задачи будет применен точный метод динамического программирования.
Дана информация о количестве этапов, затраты на оформление заказа Ki, спрос Di и хранение продукции hi на каждом этапе i в виде таблицы, подобной таблице 1.
Таблица 1- примерный вид таблицы данных о задаче
Этап, i | Спрос, Di (единицы) | Затраты на оформление заказа, Ki (долл.) | Затраты на хранение продукции hi (долл.) | Затраты на закупку продукции csti (долл.) |
1 | D1 | K1 | h1 | cst1 |
2 | D2 | K2 | h2 | cst2 |
… | … | … | … | … |
N | Dn | Kn | hn | cstn |
Задача управления запасами сводится к вычислению такого управления (значений zi) системой S, при котором суммарные затраты, связанные с размещением заказов, закупкой и хранением продукции на протяжении N этапов, минимизируются.
1.2 Математическая модель
Дадим общее описание модели динамического программирования.
Рассматривается управляемая система, которая под влиянием управления переходит из начального состояния S1 в конечное состояние Sn. Предположим, что процесс управления системой можно разбить на N шагов. Пусть S1, S2, …, Sn, — состояния системы после первого, второго, …, п-го шага.
Состояние Sk системы после k-го шага (k = 1,2 …,n) характеризуется параметрами , , . Последовательное преобразование системы (по шагам) достигается с помощью некоторых мероприятий , , …, , которые составляют управление системой , где — управление на k-м шаге, переводящее систему из состояния Sk-1 в состояние Sk. Управление на k-ом шаге заключается в выборе значений определенных управляющих переменных
Предполагаем впредь, что состояние системы в конце k-го шага зависит только от предшествующего состояния системы Sk-1 и управления на данном шаге. Обозначим эту зависимость в виде .
Функции полагаем заданными.
Варьируя управление U, получим различную «эффективность» процесса, которую будем оценивать количественно целевой функцией f, зависящей от начального состояния системы и от выбранного управления U:
.
Показатель эффективности k-го шага процесса управления, который зависит от состояния в начале этого шага и управления , выбранного на этом шаге, обозначим через .
Задачу пошаговой оптимизации можно сформулировать так: определить совокупность допустимых управлений ,, …, , переводящих систему из начального состояния в конечное состояние и максимизирующих или минимизирующих показатель эффективности. Управление, при котором достигается экстремум целевой функции, называется оптимальным управлением.
Для решения задач с описанной моделью используется метод динамического программирования.
1.3 Описание метода решения задачи
Динамическое
программирование применяется при
оптимизации как
В
некоторых задачах, решаемых методом
ДП, процесс управления естественно
разбивается на шаги. Например, при
распределении на несколько лет
ресурсов деятельности предприятия
шагом естественно считать
Задача
управления запасами является частным
случаем задачи динамического
Метод динамического программирования состоит в том, что оптимальное управление строится постепенно, шаг за шагом. На каждом шаге оптимизируется управление только этого шага. Вместе с тем на каждом шаге управление выбирается с учетом последствий, так как управление, оптимизирующее целевую функцию только для данного шага, может привести к неоптимальному эффекту всего процесса. Управление на каждом шаге должно быть оптимальным с точки зрения процесса в целом. Оптимальное управление обладает таким свойством, что каково бы ни было начальное состояние на любом шаге и управление, выбранное на этом шаге, последующие управления должны выбираться оптимальными относительно состояния, к которому придет система в конце данного шага.
В рассматриваемой модели предполагается, что дефицит не допускается и затраты на оформление заказа учитываются всякий раз, когда начинается производство новой партии продукции.
Введем некоторые обозначения:
N – количество этапов в задаче;
при этом каждый i-й этап (i=1..N) характеризуется параметрами:
hi – стоимость хранения единицы продукции, переходящей из этапа i в этап i+1;
Di – величина спроса на продукцию на i-ом этапе;
Ki – затраты на оформление заказа на i-ом этапе;
xi– объем запаса на начало этапа i;
zi– объем заказа на i-ом этапе.
Тогда
функция производственных затрат для
этапа i будет описана формулой
Где - функция предельных производственных затрат при заданном значении .
Поскольку дефицит не допускается, задача управления запасами сводится к вычислению значений , минимизирующих суммарные затраты, связанные с размещением заказов, закупкой и хранением продукции на протяжении n этапов. Затраты на хранение на i-ом этапе для простоты предполагаются пропорциональными величине , которая представляет собой объем запаса, переходящего из этапа i в этап i+1.
Для
рекуррентного уравнения
Целевая функция – общие затраты на этапах 1,2, …, i при заданной величине запаса на конец этапа i. Требуется найти минимум целевой функции. Тогда рекуррентное уравнение алгоритма прямой прогонки будет записано следующим образом.
,
, .
2 Описательная часть
2.1 Описание алгоритма задачи
Разработанный в ходе работы над курсовым проектом алгоритм автоматизирует решение многоэтапных задач планирования потребностей ресурсов (с затратами на оформление заказа). Количество этапов задается пользователем, посредством заполнения исходной таблицы-условия inp. Поддерживаются дифференцированные относительно этапов затраты на хранение и закупку продукции. Учитывается начальный запас продукции.