Помощь в написании студенческих работ
Антистрессовый сервис

Классификация математических моделей, используемых в экономике и менеджменте

КурсоваяПомощь в написанииУзнать стоимостьмоей работы

Назовем величину условным максимумом. Если теперь мы выберем на k-м шаге некоторое произвольное управление, то система придет в состояние. Согласно принципу оптимальности, какое бы мы не выбрали, на последующих шагах управление должно выбрать так, чтобы показатель эффективности Zk+1 достигал максимального значения, равного. Остается выбрать управление. Его нельзя выбирать из условия локальной… Читать ещё >

Классификация математических моделей, используемых в экономике и менеджменте (реферат, курсовая, диплом, контрольная)

Курсовая работа Классификация математических моделей, используемых в экономике и менеджменте

  • Содержание
  • Введение
  • 1. Математические модели в экономике и менеджменте
    • 1.1 Классификация экономико-математических моделей
  • 2. Оптимизационное моделирование
    • 2.1 Линейное программирование
      • 2.1.1 Линейное программирование как инструмент математического моделирования экономики
      • 2.1.2 Примеры моделей линейного программирования
    • 2.2 Динамическое программирование
      • 2.2.1 Модель динамического программирования
      • 2.2.2 Принцип оптимальности и уравнение Беллмана
      • 2.2.3 Общее описание процесса моделирования и построения вычислительной схемы динамического программирования
      • 2.2.4 Оптимальное распределение ресурсов
      • 2.2.5 Оптимальное управление запасами
      • 2.2.6 Задача о замене
  • Заключение

Современная математика характеризуется интенсивным проникновением в другие науки, во многом этот процесс происходит благодаря разделению математики на ряд самостоятельных областей. Математика стала для многих отраслей знаний не только орудием количественного расчёта, но также методом точного исследования и средством предельно чёткой формулировки понятий и проблем. Без современной математики с её развитым логическим и вычислительным аппаратом был бы не возможен прогресс в различных областях человеческой деятельности.

Экономика как наука об объективных причинах функционирования и развития общества пользуется разнообразными количественными характеристиками, а поэтому вобрала в себя большое число математических методов.

Актуальность данной темы состоит в том, что в современной экономике используются оптимизационные методы, которые составляют основу математического программирования, теории игр, сетевого планирования, теории массового обслуживания и других прикладных наук.

Изучение экономических приложений математических дисциплин, составляющих основу актуальной экономической математики, позволяет приобрести некоторые навыки решения экономических задач и расширить знания в этой области.

Целью данной работы является изучение некоторых оптимизационных методов, применяемых при решении экономической задач.

1. Математические модели в экономике и менеджменте

Математические модели в экономике. Широкое использование математических моделей является важным направлением совершенствования экономического анализа. Конкретизация данных или представление их в виде математической модели помогает выбрать наименее трудоёмкий путь решения, повышает эффективность анализа.

Все экономические задачи, решаемые с применением линейного программирования отличаются альтернативностью решения и определенными ограничивающими условиями. Решить такую задачу — значит выбрать из всех допустимо возможных (альтернативных) вариантов лучший, оптимальный. Важность и ценность использования в экономике метода линейного программирования состоят в том, что оптимальный вариант выбирается из достаточно значительного количества альтернативных вариантов.

Самыми существенными моментами при постановке и решении экономических задачах в виде математической модели являются:

· адекватность экономико-математической модели действительности;

· анализ закономерностей, соответствующих данному процессу;

· определение методов, с помощью которых можно решить задачу;

· анализ полученных результатов или подведение итога.

Под экономическим анализом понимается прежде всего факторный анализ.

Пусть y=f (xi) — некоторая функция, характеризующая изменение показателя или процесса; x1, x2,…, xn — факторы, от которых зависит функция y=f (xi). Задана функциональная детерминированная связь показателя y с набором факторов. Пусть показатель y изменился за анализируемый период. Требуется определить, какой частью численное приращение функции y=f (x1, x2,…, xn) обязано приращению каждого фактора.

Можно выделить в экономическом анализе — анализ влияния производительности труда и численности работающих на объем произведенной продукции; анализ влияния величины прибыли основных производственных фондов и нормируемых оборотных средств на уровень рентабельности; анализ влияния заемных средств на маневренность и независимость предприятия и т. п.

В экономическом анализе, кроме задач, сводящихся к разбиению его на составляющие части, существует группа задач, где требуется функционально увязать ряд экономических характеристик, т. е. построить функцию, содержащую в себе основное качество всех рассматриваемых экономических показателей.

В этом случае ставится обратная задачатак называемая задача обратного факторного анализа.

Пусть имеется набор показателей x1, x2,…, xn, характеризующих некоторый экономический процесс F. Каждый из показателей характеризует этот процесс. Требуется построить функцию f (xi) изменения процесса F, содержащую основные характеристики всех показателей x1, x2,…, xn

Главный момент в экономическом анализе — определение критерия, по которому будут сравниваться различные варианты решения.

Математические модели в менеджменте. Во всех сферах человеческой деятельности большую роль играет принятие решений. Для постановки задачи принятия решения необходимо выполнить два условия:

· наличие выбора;

· выбор варианта по определенному принципу.

Известны два принципа выбора решения: волевой и критериальный.

Волевой выбор, наиболее часто используемый, применяют при отсутствии формализованных моделей как единственно возможный.

Критериальный выбор заключается в принятии некоторого критерия и сравнении возможных вариантов по этому критерию, Вариант, для которого принятый критерий принимает наилучшее решение, называют оптимальным, а задачу принятия наилучшего решения — задачей оптимизации.

Критерий оптимизации называют целевой функцией.

Любую задачу, решение которой сводится к нахождению максимума или минимума целевой функции, называют экстремальной задачей.

Задачи менеджмента связаны с нахождением условного экстремума целевой функции при известных ограничениях, накладываемых на ее переменные.

В качестве целевой функции при решении различных оптимизационных задач принимают количество или стоимость выпускаемой продукции, затрат на производство, сумму прибыли и т. п. Ограничения обычно касаются людских материальных, денежных ресурсов.

Оптимизационные задачи менеджмента, различные по своему содержанию и реализуемые с использованием стандартных программных продуктов, соответствуют тому или иному классу экономико-математических моделей.

Рассмотрим классификацию некоторых основных задач оптимизации, реализуемых менеджментом на производстве.

Классификация задач оптимизации по функции управления:

Функция управления

Задачи оптимизации

Класс экономико-математических моделей

Техническая и организационная подготовка производства

Моделирование состава изделий;

Оптимизация состава марок, шихты, смесей;

Оптимизация раскроя листового материала, проката;

Оптимизация распределения ресурсов в сетевых моделях комплексов работ;

Оптимизация планировок предприятий, производств и оборудования;

Оптимизация маршрута изготовления изделий;

Оптимизация технологий и технологических режимов.

Теория графов Целочисленное программирование Дискретное программирование Линейное программирование Сетевое планирование и управление Имитационное моделирование Динамическое программирование Нелинейное программирование

Технико-экономическое планирование

Построение сводного плана и прогнозирование показателей развития предприятия;

Оптимизация портфеля заказов и производственной программы;

Оптимизация распределения производственной программы по плановым периодам.

Матричные балансовые модели «Затраты-выпуск»

Корреляционно;

регрессионный анализ Экстраполяция тенденций Линейное программирование

Оперативное управление основным производством

Оптимизация календарно-плановых нормативов;

Календарные задачи;

Оптимизация стандарт-планов;

Оптимизация краткосрочных планов производств.

Нелинейное программирование Имитационное моделирование Линейное программирование Целочисленное программирование

Сочетание различных элементов модели приводит к различным классам задач оптимизации:

Исходные данные

Переменные

Зависимости

Задача

Детерминированные

Непрерывные

Линейные

Линейного программирования

Целочисленные

Линейные

Целочисленного программирования

Непрерывные, целочисленные

Нелинейные

Нелинейного программирования

Случайные

Непрерывные

Линейные

Стохастического программирования

1.1 Классификация экономико-математических моделей

Существует значительное разнообразие видов, типов экономико-математических моделей, необходимых для использования в управлении экономическими объектами и процессами. Экономико-математические модели подразделяются на макроэкономические и микроэкономические в зависимости от уровня моделируемого объекта управления, динамические, которые характеризуют изменения объекта управления во времени, и статические, которые описывают взаимосвязи между разными параметрами, показателями объекта именно в то время. Дискретные модели отображают состояние объекта управления в отдельные, фиксированные моменты времени. Имитационными называют экономико-математические модели, используемые с целью имитации управляемых экономических объектов и процессов с применением средств информационной и вычислительной техники. По типу математического аппарата, применяемого в моделях, выделяются экономико-статистические, модели линейного и нелинейного программирования, матричные модели, сетевые модели.

Факторные модели. В группу экономико-математических факторных моделей входят модели, которые с одной стороны включают экономические факторы, от которых зависит состояние управляемого экономического объекта, а с другой — зависимые от этих факторов параметры состояния объекта. Если факторы известны, то модель позволяет определить искомые параметры. Факторные модели чаще всего предоставлены простыми в математическом отношении линейными или статическими функциями, которые характеризуют связь между факторами и зависимыми от них параметрами экономического объекта.

Балансовые модели. Балансовые модели как статистические, так и динамические широко применяются в экономико-математическом моделировании. В основе создания этих моделей лежит балансовый метод — метод взаимного сопоставления материальных, трудовых и финансовых ресурсов и потребностей в них. Описывая экономическую систему в целом, под её балансовой моделью понимают систему уравнений, каждое из которых выражает потребность баланса между изготовленными отдельными экономическими объектами количества продукции и совокупной потребностью в этой продукции. При таком подходе экономическая система состоит из экономических объектов, каждый из которых выпускает некоторый продукт. Если вместо понятия «продукт» ввести понятие «ресурс», то под балансовой моделью необходимо понимать систему уравнений, которые удовлетворяют требования между определенным ресурсом и его использованием.

Наиболее важные виды балансовых моделей:

· Материальные, трудовые и финансовые балансы для экономики в целом и отдельных ее отраслей;

· Межотраслевые балансы;

· Матричные балансы предприятий и фирм.

Оптимизационные модели. Большой класс экономико-математических моделей образуют оптимизационные модели, которые позволяют выбрать из всех решений наилучший оптимальный вариант. В математическом содержании оптимальность понимается как достижение экстремума критерия оптимальности, называемой также целевой функцией. Оптимизационные модели чаще всего используются в задачах нахождения лучшего способа использования экономических ресурсов, что позволяет достичь максимального целевого эффекта. Математическое программирование образовалось на основе решения задачи про оптимальный раскрой листов фанеры, что обеспечивает наиболее полное использование материала. Поставив такую задачу, известный российский математик и экономист академик Л. В. Канторович был признан достойным Нобелевской премии в экономике.

2. Оптимизационное моделирование

2.1 Линейное программирование

2.1.1 Линейное программирование как инструмент математического моделирования экономики

Исследование свойств общей системы линейных неравенств ведется с XIX в., а первая оптимизационная задача с линейной целевой функцией и линейными ограничениями была сформулирована в З0-е годы XX в. Одним из первых зарубежных ученых, заложивших основы линейного программирования, является Джон фон Нейман, широко известный математик и физик, доказавший основную теорему о матричных играх. Среди отечественных ученых большой вклад в теорию линейной оптимизации внесли лауреат Нобелевской премии Л. В. Канторович, Н. Н. Моисеев, Е. Г. Гольштейн, Д. Б. Юдин и многие другие.

Линейное программирование традиционно считается одним из разделов исследования операций, который изучает методы нахождения условного экстремума функций многих переменных.

В классическом математическом анализе исследуется общая постановка задачи определения условного экстремума, однако в связи с развитием промышленного производства, транспорта, агропромышленного комплекса, банковского сектора традиционных результатов математического анализа оказалось недостаточно. Потребности практики и развитие вычислительной техники привели к необходимости определения оптимальных решений при анализе сложных экономических систем. Главным инструментом для решения таких задач является математическое моделирование, т. е. формализованное описание изучаемого процесса и исследование его с помощью математического аппарата.

Искусство математического моделирования состоит в том, чтобы учесть как можно более широкий спектр факторов, влияющих на поведение объекта, используя при этом по возможности несложные соотношения. Именно в связи с этим процесс моделирования часто носит многоэтапный характер. Сначала строится относительно простая модель, затем проводится ее исследование, позволяющее понять, какие из интегрирующих свойств объекта не улавливаются данной формальной схемой, после чего за счет усложнения модели обеспечивается большая ее адекватность реальности. При этом во многих случаях первым приближением к действительности является модель, в которой все зависимости между переменными, характеризующими состояние объекта, являются линейными. Практика показывает, что значительное количество экономических процессов достаточно полно описывается линейными моделями, а следовательно, линейное программирование как аппарат, позволяющий отыскивать условный экстремум на множестве, заданном линейными уравнениями и неравенствами, играет важную роль при анализе этих процессов.

2.1.2 Примеры моделей линейного программирования

Ниже будут рассмотрены несколько ситуаций, исследование которых возможно с применением средств линейного программирования. Так как основным показателем в этих ситуациях является экономический— стоимость, то соответствующие модели являются экономико-математическими.

Задача о раскрое материалов. На обработку поступает материал одного образца в количестве d единиц. Требуется изготовить из него к разных комплектующих изделий в количествах, пропорциональных числам а1,…, ак. Каждая единица материала может быть раскроена n различными способами, при этом использование i-го способа (i=1,…, n) дает bij, единиц j-го изделия (j = 1,…, k).

Требуется найти план раскроя, обеспечивающий максимальное число комплектов.

Экономико-математическая модель этой задачи может быть сформулирована следующим образом. Обозначим xi— число единиц материалов, раскраиваемых i-м способом, и x — число изготавливаемых комплектов изделий.

Учитывая, что общее количество материала равно сумме его единиц, раскраиваемых различными способами, получим:

(1)

Условие комплектности выразится уравнениями:

(j=1,…, k)(2)

Очевидно, что

xi0 (i=1,…, n)(3)

Целью является определить такое решение Х= (x1,…, xn), удовлетворяющее ограничениям (1)-(3), при котором функция F = x принимает максимальное значение. Проиллюстрируем рассмотренную задачу следующим примером Для изготовления брусьев длиной 1,5 м, 3 м и 5 м в соотношении 2:1:3 на распил поступают 200 бревен длиной 6 м. Определить план распила, обеспечивающий максимальное число комплектов. Чтобы сформулировать соответствующую оптимизационную задачу линейного программирования, определим все возможные способы распила бревен, указав соответствующее число получаемых при этом брусьев (табл. 1).

Таблица 1

Способ распила i

Число получаемых брусьев различной длины

1,5

3,0

5,0

;

;

;

;

;

;

;

Обозначим через xi— число бревен, распиленных i-м способом (i = 1.2, 3, 4); х —число комплектов брусьев.

С учетом того, что все бревна должны быть распилены, а число брусьев каждого размера должно удовлетворять условию комплектности, оптимизационная экономико-математическая модель примет следующий вид

х > max

при ограничениях:

x1+x2+x3+x4=200

4x1+2x2=2x

x2+2x3=x

x4=2x

xi0 (i=1,2,3,4)

Задача выбора оптимальной производственной программы предприятия. Пусть предприятие может выпускать n различных видов продукции. Для выпуска этих видов продукции предприятие использует М видов материально-сырьевых ресурсов и N видов оборудования. Необходимо определить объемы производства предприятия (т.е. его производственную программу) на заданном интервале планирования [0, Т], чтобы максимизировать валовую прибыль предприятия.

Далее будем полагать, что валовая прибыль есть выручка, полученная от реализации продукции за вычетом условно-постоянных и переменных затрат. Иными словами, необходимо максимизировать целевую функцию вида:

(4)

где ai — цена реализации продукции вида i;

bi — переменные затраты на выпуск одной единицы продукции вида i;

Zp — условно постоянные затраты, которые будем предполагать независимыми от вектора х = (x1,…, xn).

При этом должны быть выполнены ограничения на объемы используемых материально-сырьевых ресурсов и время использования оборудования на интервале [0,T].

Обозначим через Lj (j = l,…, M) объем запасов материально-сырьевых ресурсов вида j, а через фk (k = 1,…, N) — время, в течение которого может быть использовано оборудование вида k. Известно потребление материально-сырьевых ресурсов вида j на выпуск одной единицы продукции вида i, которое обозначим через lij (i = 1,…, n; j = 1,…, М). Известно также tik — время загрузки одной единицы оборудования вида k изготовления одной единицы продукции вида i (i = 1,…, n; k = 1,…, N). Через mk обозначим количество единиц оборудования вида k (k=l,…, N).

При введенных обозначениях ограничения на объем потребляемых материально-сырьевых ресурсов могут быть заданы таким образом:

(j=1,…, M)(5)

Ограничения на производственные мощности задаются следующими неравенствами

k=1,…, N (6)

Кроме того, переменные

xi?0 i=1,…, n (7)

Таким образом, задача выбора производственной программы, максимизирующей прибыль, заключается в выборе такого плана выпуск х = (х1…, хn), который удовлетворял бы ограничениям (5)-(7) и максимизировал бы функцию (4).

В некоторых случаях предприятие должно поставить заранее оговоренные объемы продукции Vt другим хозяйствующим субъектам и тогда в рассматриваемой модели вместо ограничения (1.7) может быть включено ограничение вида:

xt> Vt i= 1, …, n.

Задача о диете. Рассмотрим задачу составления душевого рациона питания минимальной стоимости, которое бы содержало определенные питательные вещества в необходимых объемах. Будем предполагать, что имеется известный перечень продуктов из n наименований (хлеб, сахар, масло, молоко, мясо и т. д.), которые мы будем обозначать буквами F1,…, Fn. Кроме того, рассматриваются такие характеристики продуктов (питательные вещества), как белки, жиры, витамины, минеральные вещества и другие. Обозначим эти компоненты буквами N1,…, Nm. Предположим, что для каждого продукта Fi известно (i = 1,…, n) количественное содержание в одной единице продукта указанных выше компонент. В этом случае можно составить таблицу, содержащую характеристику продуктов:

F1, F2,…Fj…Fn

_____________

N1a11a12…a1j…a1N

N2a21a22…a2j…a2N

Niai1ai2…aij…aiN

Nmam1am2…amj…amN

Элементы этой таблицы образуют матрицу, имеющую m строк и n столбцов. Обозначим ее через A и назовем матрицей питательности. Предположим, что мы составили рацион х = (х1, x2,…, хn) на некоторый период (например, месяц). Иными словами, мы планируем каждому человеку на месяц х, единиц (килограммов) продукта F1, x2 единиц продукта F2 и т. д. Нетрудно вычислить, какое количество витаминов, жиров, белков и прочих питательных веществ получит человек за этот период. Например, компонента N1 присутствует в этом рационе в количестве

a11x1+ a12x2+…+ a1nxn

поскольку согласно условию в x1 единицах продукта F1 согласно матрице питательности содержится a11x1 единиц компоненты N1; к этому количеству добавляется порция а12x2 вещества N1 из х2 единиц продукта F2 и т. д. Аналогично можно определить и количество всех остальных веществ Ni в составляемом рационе (х1,…, хn).

Допустим, что имеются определенные физиологические требования, касающиеся необходимого количества питательных веществ в Ni (i/ = 1,…, N) в планируемый срок. Пусть эти требования заданы вектором b = (b1…, bn), i-я компонента которого bi указывает минимально необходимое содержание компонента Ni в рационе. Это означает, что коэффициенты xi вектора х должны удовлетворять следующей системе ограничений:

a11x1+ a12x2+…+ a1nxn?b1

a21x1+ a22x2+…+ a2nxn?b2 (8)

am1x1+ am2x2+…+ amnxn?bm

Кроме того, из содержательного смысла задачи очевидно, что все переменные х1,…, хn неотрицательны и поэтому к ограничениям (8) добавляются еще неравенства

x1?0; x2?0;… xn?0; (9)

Учитывая, что в большинстве случаев ограничениям (8) и (9) удовлетворяет бесконечно много рационов, выберем тот из них, стоимость которого минимальна.

Пусть цены на продукты F1,…, Fn равны соответственно с1,…, cn

Следовательно, стоимость всего рациона х = (х1…, хn) может быть записана в виде

c1x1+ c2x2+…+ cnxn>min (10)

Окончательно формулировка задачи о диете заключается в том, чтобы среди всех векторов х = (x1,…, хn) удовлетворяющих ограничениям (8) и (9) выбрать такой, для которого целевая функция (10) принимает минимальное значение.

Транспортная задача. Имеется m пунктов S1,…, Sm производства однородного продукта (угля, цемента, нефти и т. п.), при этом объем производства в пункте Si равен ai единиц. Произведенный продукт потребляется в пунктах Q1…Qn и потребность в нем в пункте Qj составляет kj единиц (j = 1,…, n). Требуется составить план перевозок из пунктов Si (i = 1,…, m) в пункты Qj(j = 1,…, n), чтобы удовлетворить потребности в продукте bj, минимизировав транспортные расходы.

Пусть стоимость перевозок одной единицы продукта из пункта Si в пункт Qi равна cij. Будем далее предполагать, что при перевозке хij единиц продукта из Si в Qj транспортные расходы равны cijxij.

Назовем планом перевозок набор чисел хij ci = 1,…, m; j = 1,…, n, удовлетворяющий ограничениям:

xij?0, i=1,2,…, m; j=1,…, n (11)

Содержательный смысл уравнений (11) состоит в том, что из пункта Si при плане хij вывозится во все пункты Qj объем, который должен быть равен запасу ai. В пункт Qj поступает из всех пунктов Si суммарное количество продукта, которое в точности должно быть равно потребности bj.

При плане перевозок (хij) транспортные расходы составят величину

(12)

Окончательное формирование транспортной задачи таково: среди всех наборов чисел (хij), удовлетворяющих ограничениям (11), найти набор, минимизирующий (12).

2.2 Динамическое программирование

2.2.1 Модель динамического программирования

Динамическое программирование — метод оптимизации, приспособленный к операциям, в которых процесс принятия решений может быть разбит на отдельные этапы (шаги). Такие операции называют многошаговыми.

В основе метода динамического программирования лежит принцип оптимальности, сформулированный Беллманом. Этот принцип и идея включения конкретной задачи оптимизации в семейство аналогичных многошаговых задач приводят к рекуррентным соотношениям — функциональным уравнениям — относительно оптимального значения целевой функции. Их решение позволяет последовательно получить оптимальное управление для исходной задачи оптимизации.

Дадим общее описание модели динамического программирования.

Рассматривается управляемая система, которая под влиянием управления переходит из начального состояния в конечное состояние. Предположим, что процесс управления системой можно разбить на n шагов. Пусть,…, — состояния системы после первого, второго,…, n-го шага. Схематически это показано на рис. 1.

Состояние системы после k-го шага (k=1,2,…, n) характеризуется параметрами, которые называют фазовыми координатами. Состояние можно изобразить точкой s-мерного пространства, называемого фазовым пространством. Последовательное преобразование системы (по шагам) достигается с помощью некоторых мероприятий, которые составляют управление системой U=,

где — управление на k-м шаге, переводящее систему из состояния в состояние (рис.1). Управление на k-м шаге заключается в выборе значений определенных управляющих переменных .

Предполагаем впредь, что состояние системы в конце k-го шага зависит только от предшествующего состояния системы и управления на данном шаге (рис.1). Такое свойство получило название отсутствия последствия. Обозначим эту зависимость в виде

(1.1)

Равенства (1.1) получили название уравнений состояний. Функции полагаем заданными.

Варьируя управления U, получим различную «эффективность» процесса, которую будем оценивать количественно целевой функцией Z, зависящей от начального состояния системы и от выбранного управления U:

(1.2)

Показатель эффективности k-го шага процесса управления, который зависит от состояния вначале этого шага и управления, выбранного на этом шаге, обозначим через (рис. 1). В рассматриваемой задаче пошаговой оптимизации целевая функция (1.2) должна быть аддитивной, т. е.

(1.3)

Обычно условиями процесса на управление на каждом шаге накладываются некоторые ограничения. Управления, удовлетворяющие этим ограничениям, называются допустимыми.

Задачу пошаговой оптимизации можно сформулировать так: определить совокупность допустимых управлений, переводящих систему из начального состояния в конечное состояние и максимизирующих (минимизирующих) показатель эффективности (1.3).

Для единообразия формулировок (но не вычислительных процедур!) в дальнейшем будем говорить только о задаче максимизации, имея в виду, что если необходимо минимизировать Z, то заменив Z на Z'=-Z перейдем к максимизации Z'.

Начальное состояние и конечное состояние могут быть заданы однозначно или могут быть указаны множество начальных состояний и множество конечных состояний так, что. В последнем случае в задаче пошаговой оптимизации требуется определить совокупность допустимых управлений, переводящих систему из начального состояния в конечное и максимизирующих целевую функцию (1.3). Управление, при котором достигается максимум целевой функции (1.3) называется оптимальным управлением и обозначается через U*=.

Если переменные управления принимают дискретные значения, то модель ДП называется дискретной. Если же указанные переменные изменяются непрерывно, то модель ДП называется непрерывной. В зависимости от числа параметров состояний (s) и числа управляющих переменных на каждом шаге ® различают одномерные и многомерные модели ДП. Число шагов в задаче может быть либо конечным, либо бесконечным.

ДП применяется при оптимизации как детерминированных, так и стохастических процессов.

В некоторых задачах, решаемых методом ДП, процесс управления естественно разбивается на шаги. Например, при распределении на несколько лет ресурсов деятельности предприятия шагом естественно считать временной период; при распределении средств между n предприятиями номером шага естественно шага номер очередного предприятия. В других задачах разбиение на шаги вводится искусственно. Например, непрерывный управляемый процесс можно рассматривать как дискретный, условно разбив его на некоторые временные отрезки — шаги. Исходя из условий каждой конкретной задачи, длину шага выбирают таким образом, чтобы на каждом шаге получить простую задачу оптимизации и обеспечить требуемую точность вычислений.

2.2.2 Принцип оптимальности и уравнение Беллмана

Метод динамического программирования состоит в том, что оптимальное управление строится постепенно, шаг за шагом. На каждом шаге оптимизируется управление только этого шага. Вместе с тем на каждом шаге управление выбирается с учетом последствий, так как управление, оптимизирующее целевую функцию только для данного шага, может привести к неоптимальному эффекту всего процесса. Управление на каждом шаге должно быть оптимальным с точки зрения процесса в целом.

Иллюстрацией к сказанному выше может служить задача о выборе кратчайшего пути для перехода их точки A в точку В, если маршрут должен пройти через некоторые пункты. На рис. 2 эти пункты обозначены кружками, а соединяющие их дороги — отрезками, рядом с которыми проставлены соответствующие расстояния.

С точки зрения интересов оптимизации только каждого ближайшего шага — выбора кратчайшего пути из данной точки в соседнюю — следует двигаться по маршруту, проходящему через точки А, А1, А3, А2, А4, В. Длина этого маршрута равна 34. Такой путь из, А в В не является кратчайшим. Например, маршрут, проходящий через точки А, А3, А4, В имеет меньшую длину, равную 25. Решив эту задачу, мы убедимся, что второй путь также не является оптимальным.

Приведенный пример многошаговой операции показывает, что управление в каждом шаге надо выбирать с учетом его последствий на предстоящих шагах. Это основное правило ДП, сформулированное Р. Беллманом называется принципом оптимальности.

Оптимальное управление обладает таким свойством, что каково бы ни было начальное состояние на любом шаге и управление, выбранное на этом шаге, последующие управления должны выбираться оптимальными относительно состояния, к которому придет система в конце данного шага.

Использование этого принципа гарантирует, что управление, выбранное на любом шаге, является не локально лучшим, а лучшим с точки зрения процесса в целом.

Так, если система в начале k-го шага находится в состоянии и мы выбираем произвольное управление, то система придет в новое состояние, и дальнейшие управления должны выбираться оптимальными относительно состояния. Последнее означает, что при этих управлениях максимизируется показатель эффективности на последующих до конца процесса шагах k+1,…, n, т. е. величина Показатель, характеризующий суммарную эффективность от данного k-го до последнего n-го шага, будем обозначать через Zk, т. е. Задача оптимизации процесса, начиная с k-го до последнего n-го шага (рис.3), похожа на исходную при начальном состоянии системы, управлении и показателе эффективности (аналогично (2)). Выбрав оптимальное управление Uk* на оставшихся n-k+1 шагах, получим величину, которая зависит только от, т. е.

(2.1)

Назовем величину условным максимумом. Если теперь мы выберем на k-м шаге некоторое произвольное управление, то система придет в состояние. Согласно принципу оптимальности, какое бы мы не выбрали, на последующих шагах управление должно выбрать так, чтобы показатель эффективности Zk+1 достигал максимального значения, равного. Остается выбрать управление. Его нельзя выбирать из условия локальной максимизации показателя эффективности на данном k-м шаге, лишь бы получить. Такой подход был бы недальновидным, поскольку от выбора зависит новое состояние, а от последнего — максимально возможная эффективность, которая может быть достигнута в дальнейшем, т. е. величина. Поэтому необходимо выбирать управление так, чтобы оно в совокупности с оптимальным управлением на последующих шагах (начиная с (k+1) — го) приводило бы к общему максимуму показателя эффективности на n-k+1 шагах, начиная с k-го до конца. Это положение в аналитической форме можно записать в виде следующего соотношения:

(2.2)

Получившего название основного функционального уравнения ДП, или уравнения Беллмана.

Из уравнения (5) может быть получена функция, если известна функция; аналогично можно получить, если найдена, и т. д., пока не будет определена величина, представляющая по определению максимальное значение показателя эффективности процесса в целом:

Соотношения (5) для определения последовательности функций через (k=n, n-1,…, 1) получили название основных рекуррентных уравнений Беллмана.

Решая уравнения (2.2) для определения условного максимума показателя эффективности за n-k+1 шагов, начиная с k-го шага, определяем соответствующее оптимальное управление, при котором этот максимум достигается. Это управление также зависит от. Будем обозначать такое управление через и называть условным оптимальным управлением на k-м шаге.

Основное значение уравнения (2.2, в котором реализована идея динамического программирования, заключается в том, что решение исходной задачи определения максимума функции (1.2) n переменных сводится к решению последовательности n задач, задаваемых соотношениями (2.2), каждое из которых является задачей максимизации функции одной переменной. Эти задачи оказываются взаимосвязанными, так как в соотношении (2.2) при определении учитывается найденная при решении предыдущей задачи функция .

2.2.3 Общее описание процесса моделирования и построения вычислительной схемы динамического программирования

Общая задача оптимизации, чтобы ее можно было описать моделью ДП должна удовлетворять следующим условиям :

Задача может интерпретироваться как n-шаговый процесс управления, а показатель эффективности процесса может быть представлен в аддитивной форме, т. е. как сумма показателей эффективности на каждом шаге.

Структура задачи инвариантна относительно числа шагов п, т. е. должна быть определена для любого n и не зависеть от этого числа.

На каждом шаге состояние системы определяется конечным числом s параметров состояния и управляется конечным числом r переменных управления, причем s и r не зависят от числа шагов п.

Выбор управления на k-м шаге не влияет на предшествующие шаги, а состояние в начале этого шага есть функция только предшествующего состояния и выбранного на нем управления (отсутствие последействия).

Построение модели ДП сводится к следующим основным моментам:

1) выбирают способ деления процесса на шаги;

2) вводят параметры состояния и переменные управления на каждом шаге процесса;

3) записывают уравнение состояния

(3.1)

4) вводят показатели эффективности на k-м шаге и суммарный показатель — целевую функцию

(3.2)

5) вводят в рассмотрение условные максимумы показателя эффективности от k-гo шага (включительно) до конца процесса и условные оптимальныеуправления на k-м шаге

из ограничений задачи определяют для каждого шага множества Dk допустимых управлений на этом шаге;

записывают основные для вычислительной схемы ДП функциональные уравнения Беллмана

(3.3)

(3.4)

Несмотря на единообразие в общем построении модели ДП, приведенном выше, вычислительная схема строится в зависимости от размерности задачи, характера модели (дискретной или непрерывной), вида функций (3.1), (3.2) и других характеристик модели. При всем разнообразии вычислительных схем ДП можно отметить в них некоторые общие черты.

Решение уравнений (3.3) проводят последовательно, начиная с (3.4). Этот этап получил название условной оптимизации.

В результате последовательного решения п частных задач на условный максимум определяют две последовательности функций: —условные максимумы и соответствующие им —условные оптимальные управления.

Указанные последовательности функций в дискретных задачах получают в табличной форме, а в непрерывных моделях их можно получить аналитически.

После выполнения первого этапа (условной оптимизации) приступают ко второму этапу — безусловной оптимизации.

а) Если начальное состояние задано ,

то непосредственно определяют максимум целевой

функции

(3.5)

а затем — искомое безусловное оптимальное управление по цепочке

(3.6)

В этой цепочке переход, указанный сплошной линией, проводят по последовательности, а пунктирной — с помощью уравнений состояний.

б) Если задано множество начальных состояний,

, то дополнительно решают еще одну задачу на максимум:

(3.7)

откуда находят, а затем, как и в п. а), по цепочке (3.6) —безусловное оптимальное управление.

Иногда на этапе условной оптимизации вычислительный процесс удобно строить в направлении, обратном описанному выше, т. е. от 1-го шага к л-му. Этот способ получил название прямого хода вычислений в отличие от вышеизложенного, который называется обратным ходом. Уравнения состояний для прямого хода удобно записывать в виде

(3.8)

Они могут быть получены решением уравнений (1.1) относительно. Введем в рассмотрение условные максимумы показателя эффективности за k шагов, от 1-го до k-го включительно — величины. Повторив рассуждения п. 2.2.2., придем к следующей форме уравнений Беллмана:

(3.9)

(3.10)

В результате решения этих уравнений получим последовательности

(3.11)

Этап безусловной оптимизации не отличается принципиально от аналогичного этапа в обратном ходе вычислений:, если задано, или

(3.12)

если указано множество возможных конечных состояний. Далее, определяем безусловное оптимальное управление по цепочке

(3.13)

2.2.4 Оптимальное распределение ресурсов

Класс задач, рассматриваемый в данной главе, имеет многочисленные практические приложения.

В общем виде эти задачи могут быть описаны следующим образом. Имеется некоторое количество ресурсов, под которыми можно понимать денежные средства, материальные ресурсы (например, сырье, полуфабрикаты, трудовые ресурсы, различные виды оборудования и т. п.). Эти ресурсы необходимо распределить между различными объектами их использования по отдельным промежуткам планового периода или по различным промежутками по различным объектам так, чтобы получить максимальную суммарную эффективность от выбранного способа распределения. Показателем эффективности может служить, например, прибыль, товарная продукция, фондоотдача (задачи максимизации) или суммарные затраты, себестоимость, время выполнения данного объема работ и т. п. (задачи минимизации).

Вообще говоря, подавляющее число задач математического программирования вписывается в общую постановку задачи оптимального распределения ресурсов. Естественно, что при рассмотрении моделей и вычислительных схем решения подобных задач методом ДП необходимо конкретизировать общую форму задачи распределения ресурсов.

В дальнейшем будем предполагать, что условия, необходимые для построения модели ДП, в задаче выполняются. Опишем типичную задачу распределения ресурсов в общем виде.

Задача 1. Имеется начальное количество средств, которое необходимо распределить в течение п лет между s предприятиями. Средства (k=1, 2,…, n; i=1,…, s), выделенные в k-м году i-му предприятию, приносят доход в размере и к концу года возвращаются в количестве. В последующем распреелении доход может либо участвовать (частично или полностью), либо не участвовать.

Требуется определить такой способ распределения ресурсов (количество средств, выделяемых каждому предприятию в каждом плановом году), чтобы суммарный доход от s предприятий за п лет был максимальным.

Следовательно, в качестве показателя эффективности процесса распределения ресурсов за п лет принимается суммарный доход, полученный от s предприятий:

(4.1)

Количество ресурсов в начале k-го года будем характеризовать величиной (параметр состояния). Управление на k-м шаге состоит в выборе переменных обозначающих ресурсы, выделяемые в k-м году i-му предприятию.

Если предположить, что доход в дальнейшем распределении не участвует, то уравнение состояния процесса имеет вид

(4.2)

Если же некоторая часть дохода участвует в дальнейшем распределении в каком-нибудь году, то к правой части равенства (4.2) прибавляется соответствующая величина.

Требуется определить ns неотрицательных переменных, удовлетворяющих условиям (4.2) и максимизирующих функцию (4.1).

Вычислительная процедура ДП начинается с введения функции, обозначающей доход, полученный за п—k+1 лет, начиная с k-го года до конца рассматриваемого периода, при оптимальном распределении средств между s предприятиями, если в k-м году распределялось средств. Функции для k=1, 2, …n-1 удовлетворяют функциональным уравнениям (2.2), которые запишутся в виде:

(4.3)

При k=n согласно (2.2) получаем

(4.4)

Далее необходимо последовательно решить уравнения (4.4) и (4.3) для всех возможных (k = n—1, п—2, 1). Каждое из этих уравнений представляет собой задачу на оптимизацию функции, зависящей от s переменных. Таким образом, задача с ns переменными сведена к последовательности п задач, каждая из которых содержит s переменных. В этой общей постановке задача по-прежнему сложна (из-за многомерности) и упростить ее, рассматривая как ns-шаговую задачу, в данном случае нельзя. В самом деле, попробуем это сделать. Пронумеруем шаги по номерам предприятий сначала в 1-м году, затем во 2-м и т. д.:

и будем пользоваться одним параметром для характристики остатка средств.

В течение k-го года состояние ' к началу любого шага s (k-1)_+i (i=1,2,…, s) определится по предыдущему состоянию с помощью простого уравнения. Однако по истечении года, т. е. к началу следующего года, к наличным средствам необходимо будет добавить средств и, следовательно, состояние в начале (ks+1)-гo шага будет зависеть не только от предшествующего ks-гo состояния, но и от всех s состояний и управлений за прошлый год. В результате мы получим процесс с последействием. Чтобы исключить последействие, приходится вводить несколько параметров состояний; задача на каждом шаге остается по-прежнему сложной из-за многомерности.

Задача 2. Планируется деятельность двух предприятий (s=2) в течение п лет. Начальные средства составляют. Средства х, вложенные в предприятие I, приносят к концу года доход f1(x) и возвращаются в размере аналогично, средства х, вложенные в предприятие II, дают доход f2(x) и возвращаются в размере. По истечении года все оставшиеся средства заново перераспределяются между предприятиями I и II, новых средств не поступает и доход в производство не вкладывается.

Требуется найти оптимальный способ распределения имеющихся средств.

Будем рассматривать процесс распределения средств как n-шаговый, в котором номер шага соответствует номеру года. Управляемая система — два предприятия с вложенными в них средствами. Система характеризуется одним параметром состояния —количеством средств, которые следует перераспределить в начале k-гo года. Переменных управления на каждом шаге две: — количество средств, выделенных соответственно предприятию I и II. Так как средства ежегодно перераспределяются полностью, то). Для каждого шага задача становится одномерной. Обозначим через, тогда

Показатель эффективности k-гo шага равен. Это — доход, полученный от двух предприятий в течение k-гo года.

Показатель эффективности задачи — доход, полученный от двух предприятий в течение п лет — составляет

(4.5)

Уравнение состояния выражает остаток средств после k-гo шага и имеет вид

(4.6)

Пусть —условный оптимальный доход, полученный от распределения средств между двумя предприятиями за n—k+1 лет, начиная с k-гo года до конца рассматриваемого периода. Запишем рекуррентные соотношения для этих функций:

(4.7)

где — определяется из уравнения состояния (4.6).

При дискретном вложении ресурсов может возникнуть вопрос о выборе шага Дх в изменении переменных управления. Этот шаг может быть задан или определяется исходя из требуемой точности вычислений и точности исходных данных. В общем случае эта задача сложна, требует интерполирования по таблицам на предыдущих шагах вычисления. Иногда предварительный анализ уравнения состояния позволяет выбрать подходящий шаг Дх, а также установить предельные значения, для которых на каждом шаге нужно выполнить табулирование.

Рассмотрим двумерную задачу, аналогичную предыдущей, в которой строится дискретная модель ДП процесса распределения ресурсов.

Задача 3. Составить оптимальный план ежегодного распределения средств между двумя предприятиями в течение трехлетнего планового периода при следующихусловиях:

1) начальная сумма составляет 400;

2) вложенные средства в размере х приносят на предприятии I доход f1(x) и возвращаются в размере 60% от х, а на предприятии II — соответственно f2(x) и 20%;

3) ежегодно распределяются все наличные средства, получаемые из возвращенных средств:

4) функции f1(x) и f2(x)заданы в табл. 1:

Модель динамического программирования данной задачи аналогична модели, составленной в задаче 1.

Процесс управления является трехшаговым. Параметр — средства, подлежащие распределению в k-м году (k=l, 2, 3). Переменная управления — средства, вложенные в предприятие I в k-м году. Средства, вложенные в предприятие II в k-м году, составляют Следовательно, процесс управления на k-м шаге зависит от одного параметра (модель одномерная). Уравнение состояния запишется в виде

(4.8)

А функциональные уравнения в виде

(4.9)

(4.10)

Попытаемся определить максимально возможные значения, для которых необходимо проводить табулирование на k-м шаге (k=l, 2, 3). При =400 из уравнения (4.8) определяем максимально возможное значение имеем = 0,6*400=2400 (все средства вкладываются в предприятие I). Аналогично, для получаем предельное значение 0,6*240 = 144. Пусть интервал изменения совпадает с табличным, т. е. Дх =50. Составим таблицу суммарной прибыли на данном шаге:

Это облегчит дальнейшие расчеты. Так как-то клетки, расположенные по диагонали таблицы, отвечают одному и тому же значению, указанному в 1-й строке (в 1-м столбце) табл. 2. Во 2-й строке таблицы записаны значения f1(x), а во 2-м столбце — значения f2(у)взятые из табл. 1. Значения в остальных клетках таблицы получены сложением чисел f1(x) и f2(у), стоящих во 2-й строке и во 2-м столбце и соответствующих столбцу и строке, на пересечении которых находится данная клетка. Например, для =150 получаем ряд чисел: 20 —для х = 0, у=150; 18 —для х=50, у=100; 18— для х—100, у=50; 15 — для х= 150, у=0.

Проведем условную оптимизацию по обычной схеме. 3-й шаг. Основное уравнение (4.9)

Как указывалось выше,. Просмотрим числа на диагоналях, соответствующих =0; 50; 100; 150 и на каждой диагонали выберем наибольшее. Это и есть В 1-й строке находим соответствующее условное оптимальное управление. Данные оптимизации на 3-м шаге поместим в основную таблицу (табл. 4). В ней введен столбец Дх, который в дальнейшем используется при интерполяции.

Оптимизация 2-го шага проведена в табл. 5 согласно уравнению вида (4.10):

При этом может быть получен максимальный доход, равный Zmax=99,l. Прямой подсчет дохода по табл. 2 для найденного оптимального управления дает 97,2. Расхождение в результатах на 1,9 (около 2%) объясняется ошибкой линейной интерполяции.

Мы рассмотрели несколько вариантов задачи оптимального распределения ресурсов. Существуют другие варианты этой задачи, особенности которых учитываются соответствующей динамической моделью.

2.2.5 Оптимальное управление запасами

Класс задач, в которых рассматривается оптимальное управление Запасами, является наиболее характерным для динамического программирования. Это обусловлено тем, что в задачах управления запасами процесс естественно разворачивается во времени, причем управление как раз и заключается в том, что решение на данном промежутке времени принимается с учетом того состояния, к которому пришла система за предшествующие периоды времени. Кроме того, эти задачи связаны, как правило, с дискретным характером переменных и, следовательно, решаются довольно сложно другими методами. Наконец, весьма важным обстоятельством является то, что форма зависимостей задачи для каждого периода времени является довольно простой (часто — линейной), что облегчает решение частной задачи оптимизации на каждом шаге, в то время как единовременное решение общей задачи с большим числом переменных (для многих промежутков времени и кусочно-линейной или нелинейной целевой функцией для всего процесса) является достаточно сложным.

Проблема управления запасами является одной из важнейших областей практического приложения экономико-математических методов, в том числе методов математического программирования. Мы ограничимся анализом некоторых простейших задач с целью иллюстрации их решения методами динамического программирования.

При формулировке задач управления запасами используют такие понятия.

Запасы — это любые денежные или материальные ценности, которые периодически пополняются (производятся, доставляются и т. д.) и некоторое время сохраняются с целью расходования их в последующие промежутки времени. Уровень запасов в любой момент времени определяется начальным уровнем запасов плюс пополнение и минус расход за промежуток времени от начального момента до данного.

Показать весь текст
Заполнить форму текущей работой