Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Исследование операций и методы оптимизации. Элементы выпуклого и динамического программирования. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
06.09.2026
Размер:
1 Мб
Скачать
Министерство науки и высшего образования Российской Федерации
Федеральное государственное бюджетное образовательное учреждение
высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ПРОМЫШЛЕННЫХ ТЕХНОЛОГИЙ И ДИЗАЙНА»
Е. В. Гайлит
ЭЛЕМЕНТЫ ВЫПУКЛОГО И ДИНАМИЧЕСКОГО
ПРОГРАММИРОВАНИЯ
Утверждено Редакционно-издатнльским советом
университета в качестве учебного пособия
Санкт-Петербург
2020
УДК 519.857:330.45(075.8) ББК 22.185.47:65.050.03я73 Г14
Р е ц е н з е н т ы:
кандидат экономических наук, доцент Санкт-Петербургского
государственного университета промышленных технологий и дизайна
Д. К. Иванов;
кандидат технических наук, доцент кафедры «Санкт-Петербургский филиал
Российской таможенной академии им. В. Б. Бобкова»
Я. В. Павлова
Гайлит, Е. В.
Г14 Исследование операций и методы оптимизации. Элементы выпук- лого и динамического программирования: учеб. пособие / Е. В. Гайлит. – СПб.: ФГБОУВО СПбГУПТД, 2020. – 70 с.
ISBN 978-5-7937-1883-7
Цель пособия – предоставить учащимся более детально основные
разделы курса – выпуклое и динамическое программирование, помочь им в изучении приемов, приобретении и закреплении навыков моделиро-ва­ния реальных ситуаций, анализа моделей и решения практических задач.
Пособие включает необходимые теоретические сведения и форму-
лы, решения типовых задач и задачи для самостоятельного решения с от­ветами и указаниями.
Необходимость разработки данного учебного пособия обусловлена
внедрением в СПбГУПТД новой концепции организации учебного про­цесса, отвечающей ФГОС ВПО третьего поколения, предусматривающей увеличение объема самостоятельной работы студентов и обеспечение ин­дивидуальной траектории обучения.
Предназначено для поддержки курса «Математические модели и
методы исследования операций», который читается бакалаврам и студен­там, получающим второе высшее образование (направление обучения «Менеджмент»).
УДК 519.857:330.45(075.8)
ББК 22.185.47:65.050.03я73
ISBN 978-5-7937-1883-7 © ФГБОУВО СПбГУПТД, 2020
© Гайлит, Е. В., 2020
2
ОГЛАВЛЕНИЕ
Обозначения и сокращения ........................................................................................ 5
Общие обозначения ..................................................................................................... 5
Обозначения, принятые в динамическом программировании ............................... 6
Обозначения, принятые в теории оптимального управления................................. 7
Сокращения .................................................................................................................. 7
1. Введение ................................................................................................................... 8
1.1. Основные понятия ............................................................................................ 9
1.2. Этапы экономико-математического моделирования ................................. 10
1.3. Задача нелинейного программирования ...................................................... 11
Литература ................................................................................................................. 13
2. Выпуклое программирование .............................................................................. 13
2.1. Выпуклые множества ..................................................................................... 13
2.1.1. Определение и примеры выпуклых множеств .................................. 13
2.1.2. Теоремы отделимости для выпуклых множеств ............................... 14
2.1.3. Операции над множествами, сохраняющие выпуклость ................. 15
2.1.4. Многогранные множества ................................................................... 16
2.1.5. Конусы ................................................................................................... 17
2.2. Выпуклые и вогнутые функции .................................................................... 18
2.2.1. Предварительные сведения ................................................................. 18
2.2.2. Определение и основные свойства выпуклых
и вогнутых функций .................................................................................................. 19
2.2.3. Свойства дифференцируемых выпуклых и вогнутых функций ...... 21
2.3. Задача выпуклого программирования .......................................................... 22
2.3.1. Определение и основные свойства ..................................................... 22
2.3.2. Теорема Куна – Таккера ...................................................................... 24
2.3.3. Устойчивость ........................................................................................ 26
2.4. Интерпретации ................................................................................................ 29
2.4.1. Основная модель .................................................................................. 29
2.4.2. Допустимые планы, отсутствие отдачи от масштаба ....................... 30
2.4.3. Множители Лагранжа и условия Куна – Таккера ............................. 31
Литература ................................................................................................................. 33
3. Динамическое программирование ....................................................................... 34
3.1. Задача динамического программирования .................................................. 34
3.2. Уравнения Беллмана ...................................................................................... 36
3.3. Метод динамического программирования .................................................. 39
3.4. Статические распределительные задачи ...................................................... 41
3.4.1. Распределение ресурса ........................................................................ 41
3.4.2. Распределение производства товаров (услуг) ................................... 43
3.5. Задача о ранце ................................................................................................. 46
3.5.1. Основная модель .................................................................................. 46
3
3.5.2. Обратная задача о ранце ...................................................................... 47
3.5.3. Задача о выборе проектов .................................................................... 48
3.6. Распределение возобновляемого ресурса в динамике ................................ 50
3.6.1. Задача Вентцель ................................................................................... 50
3.6.2. Линейная модель .................................................................................. 53
3.6.3. Распределение между двумя технологическими способами ........... 54
Литература ................................................................................................................. 54
4. Оптимальное управление ..................................................................................... 54
4.1. Системы дифференциальных уравнений первого порядка ....................... 54
4.1.1. Основные понятия ............................................................................... 54
4.1.2. Решение линейной однородной автономной системы .................... 56
4.1.3. Частный случай: различные собственные числа ............................. 58
4.1.4. Решение задачи Коши для линейной системы ................................. 59
4.2. Постановка задачи оптимального управления ............................................ 60
4.2.1. Основные понятия ................................................................................ 60
4.2.2. Общая формулировка задачи оптимального управления ................ 61
4.2.3. Основные типы функционалов ........................................................... 62
4.2.4. Варианты ограничений вдоль траектории ......................................... 63
4.2.5. Варианты краевых условий ................................................................. 63
4.3. Принцип максимума для задач с закрепленными концами ....................... 63
4.3.1. Задача с фиксированным временем ................................................... 63
4.3.2. Задача с незакрепленным конечным моментом ................................ 65
О решении задач методом оптимизации ................................................................. 66
Решение аналитическое и решение численное ...................................................... 66
Обоснование оптимальности процесса ................................................................... 67
Литература ................................................................................................................. 68
ЗАКЛЮЧЕНИЕ ......................................................................................................... 69
БИБЛИОГРАФИЧЕСКИЙ СПИСОК ...................................................................... 70
4
Обозначения и сокращения
nm,
nm,
m,1
n,1
Общие обозначения
S* – множество желательных состояний моделируемого объекта, если S –
множество его возможных состояний.
X(a) – множество допустимых решений, то есть множество управлений,
возможных (доступных, реализуемых) при состоянии a внешней среды.
aA – a есть элемент множества A, a принадлежит A. {a1,…,an,…} – множество, состоящее из элементов, указанных в фигурных
скобках.
{aA | P(a)} – множество всех элементов множества A, удовлетворяющих
условию P(a).
(a1,…,an) – упорядоченный набор объектов произвольной природы.
A B – множество A является подмножеством множества B. A B – множество A является собственным подмножеством множества B. A B – объединение множеств A и B. A B – пересечение множеств A и B. A \ B – разность множеств A и B. AB – декартово произведение множеств A и B. A + B – прямая сумма (сумма по Минковскому) множеств A и B.
N – натуральный ряд, N = {0,1,…}.
= {m,…,n}, если m n; если m > n, то
= ; здесь m и nцелые
числа.
R – множество всех действительных чисел. [x] – целая часть числа xR, наибольшее целое число, не превосходящее x. ]x[ – минимальное целое число, не меньшее, чем xR.
R+ = {xR | x ≥ 0}.
sup{A} – точная верхняя граница множества A R. inf{A} – точная нижняя граница множества A R.
K – поле комплексных чисел. Kn – пространство векторов размерности n над полем комплексных чисел. Re(z) и Im(z) – действительная и мнимая части комплексного числа z.
mn
R
множество всех матриц размерности m п с элементами из R.
(aij | i
, j
) – матрица из R
mn
.
(aij | P(i, j)) – матрица, составленная из строк и столбцов матрицы A =
= (aij)R
mn
, номера i и j которых удовлетворяют условию P.
[A]i, [A]j – строка с номером i и столбец с номером j, соответственно, мат-
рицы A.
En – единичная матрица в R
nn
.
A–1 – обратная матрица для матрицы A.
5
AT – результат транспонирования матрицы A.
n
R
0|)(|lim
0||
x
x
)(x
x
f
j
)(x
hf
),( yxF
x
det(A) – определитель матрицы AR Rn – евклидово пространство размерности n, Rn = R
nn
.
n1
, R1 = R. 0n – нуль-вектор в Rn. 1n – вектор в Rn, каждая координата которого равна единице.
= {xRn | x ≥ 0n} – положительный ортант пространства Rn.
[a, b], где a и b принадлежат Rn – отрезок в Rn с концами a и b. (a, b) = [a, b] \ {a, b} – множество внутренних точек отрезка [a, b]. a, bскалярное произведение векторов a и b из Rn.
|x| для xRn – евклидова метрика в Rn; если xRn, то |x| = x, x
1/2
. B(x0, r) – замкнутый шар в Rn с центром x0Rn и радиусом rR+. int M – внутренность множества M.
M – граница множества M. M * – сопряженный конус для множества M  Rn. f : Rn Rm – описание отображения, вектор-функции от n переменных,
принимающей значения из Rm (функция из Rn в Rm).
f(M) = {f(x) | xM} – образ множества M  Rn при отображении f : Rn Rm. f –1(M) = {xRn | f(x)M} – прообраз множества M Rm при отображении
f : Rn → Rm.
f(x) → max при условии xX – запись задачи оптимизации: найти хотя бы
один элемент xX такой, что f(x) ≥ f(x') для всех x'X. Здесь X – произвольное, вообще говоря, множество допустимых решений. Предполагается, что функция
f определена на X.
o(x) при xRn – бесконечно малая более высокого порядка, чем |x|; o(x) =
= (|x|)|x|, причем
.
частная производная функции f : Rn R по xj в точке xRn.
, где f : Rn → R, hRn и |h| = 1 – производная функции f по направле-
нию h в точке xRn.
f '(x) – градиент функции f : Rn → R в точке x. f ''(x) – гессиан функции f : Rn → R в точке x.
градиент по x функции F: RnRm → R в точке (x, y).
L(x, y) – функция Лагранжа.
Обозначения, принятые в динамическом программировании
sk = k(s Xk(s
k–1
объекта управления s
, xk) – фазовое уравнение (уравнение перехода).
k–1
) – множество допустимых управлений на шаге k при состоянии
в начале этого шага.
k–1
6
Sk – множество состояний, в которых может находиться объект управле-
nk,
)(
*
sZ
k
nk,
)(x
dx
df
)(
1
xf
)(xf
n
ния в конце шага k.
Pn(s0, Sn) – задача поиска управления, которое с наибольшим эффектом за n
шагов переводит объект из состояния s0 в одно из состояний sSn.
Qk(s) – задача P
n–k+1
(s, Sn).
x(k, s) – условно оптимальное управление для шагов с номерами i Zk(s, xk) – максимальный эффект, достижимый на шагах k,…,n, если шаг k
начинается в состоянии s и на этом шаге применяется управление xk.
.
условный максимум для шагов с номерами i
.
Обозначения, принятые в теории оптимального управления
f '(x) =
= (
, …,
)Tпроизводная вектор-функции f(x) = (f1(x),
…, fn(x))T из R в Rn в точке xR.
ψ0, ψ(t) = (ψ1(t), …, ψn(t)) – сопряженные (или двойственные) переменные. H(x(t), u(t), t, ψ(t), ψ0) Функция Гамильтона (Гамильтона – Понтрягина),
или гамильтониан.
Сокращения
ДП – динамическое программирование. ЗВП – задача выпуклого программирования. ЗЛП – задача линейного программирования. ЛЗР – линейная задача о ранце. ЛПР – лицо, принимающее решения. ОЗР – обратная задача о ранце. УДН – условия дополняющей нежесткости. УПП – условия первого порядка.
7
1. Введение
Многие практические задачи хозяйственной деятельности и ряд важных
вопросов экономической теории связаны с определением наилучшего, опти­мального варианта решения. Таковы, например, задачи выбора оптимальной производственной программы предприятия, транспортные задачи рационально­го распределения грузопотоков или целый комплекс проблем, связанных с оп­тимальным планированием народного хозяйства. Для решения задач такого ро­да созданы и интенсивно разрабатываются в настоящее время математические методы.
Теория оптимального управления является непосредственной математиче-
ской базой для постановки и исследования ряда практических и теоретических вопросов экономической науки. Экономические приложения теории оптимиза­ции в литературе называются задачами рационального ведения хозяйства. Тео­рия оптимального управления изучает методы, которые используются для ис­следования динамических задач рационального ведения хозяйства. Кроме того, необходимо заметить, что наиболее важные и интересные методы прикладной математики, полученные во второй половине ХХ века, относятся именно к тео­рии оптимального управления. Этими важными результатами являются дина­мическое программирование и принцип максимума Понтрягина в частности.
Основной целью пособия является более подробное изучение разделовдис-
циплины «Исследование операций» и получение знаний, необходимых при иссле­довании динамических моделей экономики для получения оптимальных решений.
В курсе излагаются и обсуждаются основные результаты динамического и
выпуклого программирования. Рассматриваются вопросы существования реше­ний в линейном и нелинейном случаях. Большое внимание уделено доказатель­ству принципа максимума Понтрягина – центрального результата теории – в не­линейном случае. Также изучаются различные примеры, как линейные, так и не­линейные, демонстрирующие типичные и нестандартные приёмы их решения.
В результате изучения курса студент должен знать математический ин-
струментарий выпуклого и динамического программирования, включая необ­ходимые теоретико-множественные понятия, определения максимума и мини­мума, инфинума и супремума, теорему о достаточных условиях оптимальности для непрерывных и многошаговых процессов, обобщенную теорему о нахож­дении решения в форме минимизирующей последовательности. Из теоремы о достаточных условиях оптимальности студент должен уметь выводить необхо­димые условия оптимальности в форме Лагранжа – Понтрягина и необходимые и достаточные условия оптимальности в форме Гамильтона – Якоби – Беллмана для непрерывных и многошаговых процессов. Студент должен уметь ставить и решать соответствующие прикладные экономические задачи.
Пособие будет полезным студентам, аспирантам и специалистам, ориенти-
рованным на деятельность в области прикладной математики и экономики.
8
1.1. Основные понятия
1
2
Моделирование — это исследование объекта посредством изучения его
модели. Модель объекта — искусственная или естественная система, которая
находится в объективном соответствии с исследуемым объектом, способна за­мещать его в интересующих исследователя отношениях и в результате исследо­вания дает информацию о моделируемом объекте1. В экономических исследо­ваниях, как правило, невозможно провести натурный эксперимент или найти материальный аналог исследуемого объекта. Поэтому используют идеальные модели, то есть умозрительные подобия реальных систем, процессов, явлений. Идеальная модель может быть интуитивной или знаковой.
Интуитивная модель — это неформализованная совокупность индивиду-
альных или групповых представлений об объекте. Даже решение, принятое без осознанного использования какой-либо модели, обосновано, как правило, мыс- ленным экспериментом с некоторой интуитивной моделью.
Знаковая модель описывается выражениями некоторого формального языка
с указанием правил их преобразования и интерпретации. Интерпретация уста- навливает соответствие между моделью и реальностью, образом и прообразом.
Математическая модель — это знаковая модель, которая описана на язы-
ке математики и может быть исследована средствами математики. Такая модель использует формализации постулируемых свойств моделируемого объекта в качестве исходных предположений. Она сопоставляет элементам объекта, ха­рактеристикам внешней среды и связям между ними некоторые абстракции (па- раметры, переменные, функции и пр.) и связывающие их математические со­отношения. Результаты анализа математической модели соответствуют реаль­ности в той же степени, в какой реалистичны исходные предположения. Про­блема адекватности модели сводится, следовательно, к обоснованию исход­ных предположений, которые должны быть скорректированы, если выводы из модели не согласуются с наблюдаемыми свойствами объекта. Для уточнения предположений модели применяют обычно статистические и эконометрические методы.
«Математики делают то, что можно, так, как нужно, экономисты … ― то,
что нужно, так, как можно»2. Экономико-математические модели позволяют «подключать» обширный математический аппарат к анализу теоретических и прикладных проблем экономики. Кроме того, они предоставляют экономистам удобный и компактный язык для изложения гипотез, обоснований, результатов. Примеры экономико-математических моделей: модели потребительского выбо­ра, модели фирмы, модели рынков (конкурентного, монополистического, оли-
Формулировка Ляпунова А. А., см.: Новик И. Б., О философских вопросах кибернетического моделиро-
вания. М., Знание, 1964.
Юдин Д. Б., Юдин А. Д. Экстремальные модели в экономике. М.: Экономика, 1979. С. 9.
9
гополистического, финансового, рынка факторов производства и др.), разнооб-
1
2
разные модели принятия решений.
Математическая модель проще объекта, так как отражает только те его
свойства, которые существенны для цели исследования. Правильность выделе­ния существенных характеристик объекта проверяется в процессе работы с мо­делью. Поэтому в ходе исследования может возникнуть необходимость уточне­ния модели, изменения набора учтенных в ней факторов.
В теоретической и прикладной экономике математические модели исполь-
зуют для объяснения наблюдаемых явлений, обоснования рациональных реше­ний, предсказания будущего развития процессов. В зависимости от цели иссле­дования, с одной стороны, для одного объекта могут быть построены модели, различающиеся степенью детализации или набором отражаемых свойств объек­та. С другой стороны, если модель подобна объекту во многих отношениях, то ее удается использовать для достижения различных исследовательских целей.
1.2. Этапы экономико-математического моделирования
На первом этапе исследователь наблюдает объект и выявляет проблему,
описывает (на естественном языке) объект, проблему и цель исследования. Нужно выделить существенные (по отношению к проблеме) свойства объекта, изучить его структуру (элементы и связи между ними) и внешнюю среду. Сле­дует сформулировать известные факты и правдоподобные гипотезы, связанные с поведением объекта, в частности, ― с его реакцией на изменения внешних условий.
Второй этап ― формализация описаний, выполненных на первом этапе,
конструирование модели. Элементами экономико-математической модели яв­ляются показатели (параметры, переменные), соотношения между ними и формулировка цели исследования на языке модели. «Основной задачей эконо­мики является рациональное ведение хозяйства, то есть распределение ограни­ченных ресурсов для достижения поставленных целей»1. Поэтому наиболее употребительны оптимизационные модели. Желательно, конечно, использовать простую или хорошо исследованную модель при условии, что она адекватна объекту. Разработчик модели должен пройти «узкой тропой между Западнями Переупрощения и Болотом Переусложнения»2.
На третьем этапе происходит исследование модели как «заменителя» ре-
ального объекта. Простейшая форма такого исследования ― модельный экспе-
римент, в ходе которого изучают реакцию модели на различные значения вход- ных параметров. Прикладные исследования чаще всего нацелены на поиск управляющих воздействий (решений), которые приводят объект в желательное
Интриллигатор М. Математические методы оптимизации и экономическая теория. М.: Айрис-пресс,
2002. С. 14. Беллман Р. Динамическое программирование. М.: Изд-во иностранной л-ры, 1960. С. 11.
10
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]