Эконометрика теория игр в экономике. Учебное пособие
.pdf
Задание для рубежного контроля знаний по модулю 2
|
В1 |
B2 |
В3 |
|
А1 |
5; |
0 |
50; –20 |
–25; 33 |
|
|
|
|
|
A2 |
1; 19 |
–12; 45 |
0, –7 |
|
А3 |
10; |
14 |
–1; –4 |
–10; 40 |
|
|
|
|
|
а) Решить игру при условии, что оба игрока реализуют стра-
тегию осторожного игрока (4 балла).
в) Решить игру при условии, что оба игрока реализуют стра-
тегию угрозы (4 балла).
61
Модуль III. Определение оптимальнойпоследовательности стратегических…ходов
Комплексная цель модуля: формирование знаний в области методологии динамического программирования и выработка навыков решения многошаговых (многоэтапных) задач.
3.1.Сведение одношаговых управленческих задач
киграм с поледовательностью…ходов. Концетуальные положениядинамического программирования
Динамическое программирование (динамическое планирование) – это раздел математического программирования, который изучает совокупность приёмов и методов, позволяющих находить оптимальные решения, основанные на вычислении последствий каждого из них и выработке оптимальной стратегии для последующих решений. Термин «динамическое программирование» не столько определяет особый тип задач, сколько характеризует методику нахождения решения отдельного класса управленческих задач, предполагающих этапность решения. Динамическое программирование обычно придерживается и реализует два подхода к решению задач:
• Восходящее динамическое программирование: все подзадачи, которые впоследствии понадобятся для решения исходной задачи просчитываются заранее и затем используются для построения решения исходной задачи.
• Нисходящее динамическое программирование: задача разбивается на подзадачи меньшего размера, они решаются и затем комбинируются для решения исходной задачи.
В общем случае задача динамического программирования формулируется следующим образом. Имеет место некоторая поддающаяся управлению систем S, находящаяся в некотором начальном состоянии x(0). Посредством определённых воздействий и операций u = (u1, u2, … un) указанная система переходит из начального состояния x(0) в конечное x(n). В результате реализации k-го шага обеспечивает-
62
3.1. Сведение одношаговых управленческих задач к играм с поледовательностью…
ся определённый результат (доход, издержки, доля рынка, рентабельность), оцениваемый функцией W(x(k–1); uk), зависящий от текущего состояния системы x(k–1) и выбранного управленияuk . Этот критерий W(x(k–1); uk) позволяет оценить качество каждого из реализуемых управленческих решений. Причём состояние x(k–1), в которое перешла система S, зависит от состояния x(k–1) и реализованного управленческого решенияuk и не зависит от того, каким образом система S перешла в состояние x(k–1) (условиеотсутствияпоследей-
ствий). Иными словами, процесс управления должен быть без обратнойсвязи,т.е.управлениенаданномшагенедолжнооказывать влияния на предшествующие шаги. Решение задачи сводится к выбору «цепочки» управленческих воздействий u* = (u1*, u2*, …, un*), в результате реализации которых система S за n шагов переходит из начального состояния x(0) в конечное x(n) и при этом функция дохода W(u) принимает наибольшее значение
W(u) = Σn W(x(k – 1); uk),
k = 1
где u = (u1, u2, …, un).
Формирование такой «цепочки» осуществляется пошагово, в несколько этапов. То есть решение исходной задачи сводится к решениюнесколькихлокальныхзадач(подзадач)оптимизации,носвязан-
ных рекуррентно – условие аддитивности целевой функции задачи оптимизации.Рекуррентность означает то, что оптимальное решение одной подзадачи используется в качестве исходных данных для следующей. Наилучшее на каждом шаге решение называется условно оптимальным управленческим решением. Решив последнюю подзадачу, мы получим оптимальное решение исходной задачи20.
Таким образом, в результате мы получаем вычислительную схему, которая предполагает формирование и решение нескольких взаимосвязанных задач с малым числом переменных, а не одну – смножествомпеременных.Врезультатепроцессвычисленияпредставляется не таким объемным. Но следует отметить, что для этого необходимо соблюдение двух условий.
20 Электронный учебник «Экономико-математические методы» // http:// www.math.mrsu.ru/text/method/index.htm.
63
Модуль III. Определение оптимальной последовательности стратегических
1.Условие отсутствия последействий. Будущие результаты не предполагают использование предыстории того положения системы, при котором принимается решение.
2.Условие аддитивности целевой функции задачи оптимизации. Критерий оптимальности устроен так, что оптимальные решения отдельных шагов создают общее оптимальное решение.
Метод динамического программирования основан на примене-
нии принципа оптимальности Беллмана: каким бы ни было со-
стояние системы перед очередным шагом, необходимо выбирать управление на этом шаге так, чтобы доход на данном шаге вместе
соптимальным доходом на всех последующих шагах был максимальным21.
Впоследствии Е. С. Вентцель изменил формулировку основного принципа оптимальности динамического программирования, которая немного отличается от формулировки предложенной Р. Беллманом: каково бы ни было состояние S системы в результате какого-либо числа шагов, на ближайшем шаге нужно выбирать управление так, чтобы оно в совокупности с оптимальным управлением на всех последующих шагах приводило к оптимальному выигрышу на всех оставшихся шагах, включая данный22. Но при этом концептуальная суть не изменилась: каково бы не было состояние системы перед очередным шагом, управление на этом этапе выбирается так, чтобы выигрыш на данном шаге плюс оптимальный выигрыш на всех последующих шагах был максимальным.
Принцип оптимальности имеет конструктивный характер и непосредственно указывает процедуру нахождения оптимального решения. Из принципа оптимальности следует: оптимальную стратегию управления можно получить, если сначала найти оптимальную стратегию управления на n-ом шаге, затем на двух последних шагах, затем на трёх последних шагах и т. д., вплоть до первого шага.
Способ выполнения рекуррентных вычислений зависит от того, какпроизводитсядекомпозиция(разложениенаподзадачи)исходной задачи. В частности, подзадачи обычно связаны между собой общими ограничениями.
21Беллман Р., Энджел Э. Динамическое программирование и уравнения
вчастных производных // пер с англ. С. П. Чеботарёва. М.: Мир, 1974.
22Вентцель В. С. Исследование операций. М.: «Знание», 1976. С. 43.
64
3.2. Пошаговый процесс принятия решений. Основное функциональное…
Можно выделить два класса экономических задач, к которым методы динамического программирования наиболее применимы.
1.Задачи альтернативного распределения ресурсов по ряду направлений во времени.
2.Задачи планирования выпуска с учётом изменения потребности в продукте во времени.
3.2.Пошаговый процесс принятия решений. Основное функциональное…уравнение Беллмана
Как отмечалось выше, основным принципом, на котором базируется оптимизация многошагового процесса, а также особенности вычислительного метода динамического программирования, является принцип оптимальности, сформулированный американским математиком Ричардом Эрнс).
Метод динамического программирования состоит в том, что оптимальное управление строится постепенно. На каждом шаге оптимизируется управление только этого шага. Вместе с тем на каждом шаге управление выбирается с учётом последствий, так как управление, оптимизирующее целевую функцию только для данного шага, может привести к неоптимальному эффекту всего процесса. Управление на каждом шаге должно быть оптимальным с точки зрения процесса в целом – условно-оптимальным (условный максимум).
Так,еслисистемав началеk-гошаганаходитсяв состоянииx(k–1) и мы выбираем произвольное управление uk, то она придет в новое
состояние x(k) = W(x(k – 1); uk) и последующие управления uk + , uk + ,
1 2
…, un должны выбираться оптимальными относительно состояния x(k). Последнее означает, что в этих управлениях максимизирует-
ся величина Σn W(x(i – 1); u1). Показатель эффективности на после-
i = k – 1
дующих до конца процесса шагах k + 1, …, n обозначим через Wk =
= Σn W(x(i – 1); u1).
Выбрав оптимальное управление u* = (u*k + 1; u*k + 2; …; u*n) на оставшихся n–k + 1 шагах, получим величину W*k = max Wk, которая зависит только от xk–1, т. е.
W*k(x(i – 1)) = max W(x(k – 1), uk) = W(x(k – 1), u*k). uk
65
Модуль III. Определение оптимальной последовательности стратегических
Назовем величину W*k (x(k–1); uk) условным максимумом на k-ом шаге. Если мы теперь выберем на k-м шаге некоторое произвольное управление uk, то система придет в состояние x(k). Согласно принципу оптимальности, необходимо выбирать управление uk так, чтобы оно в совокупности с оптимальным управлением на последующих шагах (начиная с (k + 1)-го) приводило бы к общему показателю эффективности на n–k + 1 шагах, начиная с k-го и до конца. Это положение в аналитической форме можно записать в виде следующего соотношения:
W * |
(x(k −2) ) = max{W * |
(x(k −3) ,u |
k −2 |
) +W |
(x |
k −1 |
)}, |
|||||
|
k −1 |
|
uk |
k −2 |
|
k −1 |
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
W * (x |
) = max{W * |
(x |
,u |
k −1 |
)+W (x |
|
)},k = n −1,n −2,...,1, (25) |
|||||
k k −1 |
|
k −1 |
k −2 |
|
k k −1 |
|
|
|
|
|
||
|
|
uk |
|
|
|
|
|
|
|
|
|
|
получившего название основного рекуррентного уравнения дина-
мического программирования, или основного функционального уравнения Беллмана. Функцию W*k = (x(k–1); uk) называют функцией Беллмана или функцией выигрыша. Она максимизирует на каждом шаге процесса выработки управляющих воздействий.
Из уравнения (25) может быть получена функция выигрыша
W* |
(x(n–2)), если известно конечное значение функции W* (x(n–1)). |
|
n–1 |
|
n |
Аналогично можно получить W* |
(x(n–3)), если известно W* (x(n–2)) |
|
|
n–2 |
n–1 |
и т. д., пока не будет определена величина W*(x(0)), представляю- |
||
щая по определению максимальное значение1 показателя эффек- |
||
тивности процесса в целом:
W*(x(0)) = max W(x(0); u).
1
В результате последовательного решения п частных задач на условный максимум определяют две последовательности функций: {W*k (x(k–1))} – условные максимумы и соответствующие им {u*k (x(k))} – условные оптимальные управляющие действия. В рассмотренных рекуррентных соотношениях предписывают начинать вычисления с последнего этапа и затем передвигаться назад до этапа 1. Такой метод вычислений известен как алгоритм обратной прогонки23.
23 Лежнев А. В. Динамическое программирование в экономических задачах. М.: Бином. Лаборатория знаний, 2010. С. 48.
66
3.3.Примеры динамических игр. Рекуррентность в управлении
Врезультате решения уравнений получим последовательности
W*(x(0)), W*(x(1)), W*(x(2))… W*(x(n–1)) и u*(x(1)), u*(x(2)), u*(x(3))… u* |
|||||||
1 |
2 |
3 |
n |
1 |
2 |
3 |
n–1 |
(x(n–1)). |
|
|
|
|
|
|
|
|
Далее определим безусловное оптимальное управление по це- |
||||||
почке: |
|
|
|
|
|
|
|
|
x(n) → u*→ x(n–1) → u* |
→ x(n–2) → u* |
→ … → x(1) → u*→ x(0). |
|
|||
|
n |
n–1 |
n–2 |
|
|
1 |
|
Если расчеты осуществляются в естественном порядке следования этапов, то такой метод вычислений известен как алгоритм прямой прогонки.
3.3. Примеры динамических игр. Рекуррентность в управлении
Пример 3.1. Задача о распределении. Фирме, включающей че-
тыре предприятия, выделяется инвестиционный кредит в сумме 200 млн ден. ед. для реконструкции и модернизации производства с целью увеличения выпуска продукции. Значения дополнительного дохода gi(xi)(i = 1,4), получаемого на предприятия в зависимости от выделенной суммы xi (кратная 50 млн ден. ед.), приведены в табл. 6.
Таблица 6
Значения дополнительного дохода
Выделенные |
|
Увеличение дохода, тыс. ден. ед. (gi) |
|
||||
средства |
Предприятие |
Предприятие |
Предприятие |
Предприятие |
|||
x, тыс. ден. |
|||||||
1 |
|
2 |
3 |
|
4 |
||
ед. |
|
|
|||||
|
|
|
|
|
|
||
50 |
250 |
|
300 |
360 |
|
280 |
|
100 |
600 |
|
700 |
640 |
|
560 |
|
150 |
1000 |
|
900 |
950 |
|
1100 |
|
200 |
1400 |
|
1220 |
1300 |
|
1420 |
|
Составить план распределения выделенного кредита между предприятиями так, чтобы доход фирмы был максимальным.
Решение.
Предположим, что все имеющиеся средства выделяются на реконструкцию и модернизацию одного предприятия. Очевидно, что наибольшую отдачу инвестиции в размере 200 тыс. ден. ед. полу-
67
Модуль III. Определение оптимальной последовательности стратегических
чат в случае, если вложить их в Предприятие 4 (1420 тыс. ден. ед.). Однако возможно распределение этой суммы между всеми предприятиями. Например, Предприятие 2 обеспечивает наибольшую отдачу, по сравнению с другими, суммы 100 тыс. ден. ед. Что если осуществить модернизацию всех предприятий посредством размещения общей суммы кредита по частям?
Пусть fi(x) – дополнительный доход, получаемый фирмой при распределение суммы x (0 ≤ x ≤ 200 тыс. ден. ед.) между i предприятиями. Очевидно, f4(200) – характеризует рост дохода при распределении суммы 200 тыс. ден. ед. между 4-мя предприятиями. Необходимо максимизировать значение этой функции. В соответствии с основным рекуррентным уравнением Беллмана:
f4 |
(200) = max |
[g4 (x) + f3 (200 − x)] |
|
0≤x≤200 |
|
Максимум дохода, получаемого при распределении кредита между 4-м предприятием и остальными. При условии, что мы уже распределили некоторую сумму между 3-мя остальными предпри-
ятиями ранее. |
|
В общем случае: fn (c) = max(gn (x) + fn−1 (c − x)) , |
(26) |
0≤x≤c |
|
где С – распределяемая сумма инвестиций.
Если третьему предприятию выделена сумма x, то дополнительный доход от их реализации на данном предприятии составит g2(x). Необходимо максимизировать его при условии, что оставшаяся от с = 200 тыс. ден. ед. была эффективно распределена между Предприятием 1 и Предприятием 2:
f3 (200) = max (g3 (x) + f2 (200 − x)) . Значение f (c) можно вычис-
0≤x≤200 3
лить, если известны значения f2(c), и т. д. Задача – найти значения функции (26) для всех допустимых комбинаций с и x.
Рассмотрим возможные распределения кратных сумм, последовательно включая в рассмотрение предприятия. Очевидно, что для первого предприятия получение суммы 50 тыс. ден. ед. даст: f1(50) = g1(50) = 250,
f1(100) = g1(100) = 600, f1(150) = g1(150) = 1000, f1(200) = g1(200) = 1400,
68
3.3. Примеры динамических игр. Рекуррентность в управлении
поскольку каждому значению x отвечает вполне определённое (единственное) значение g1(x) дополнительного дохода.
Если распределять сумму в 50 тыс. ден. ед. между первым и вторым предприятием, то эту сумму мы можем отдать только одному из них. Следовательно:
f2(50) = max [g2(x) + f1(50 – x)] = max [g2(x) + g1(50 –x)] = |
|
0≤x≤50 |
0≤x≤50 |
= max [g2(0) + g1(50 ); g2(50) + g1(0 )] = max [0 + 250 ; 300 + 0] = |
|
0≤x≤50 |
0≤x≤50 |
= 300 (тыс. ден. ед.)
Найдём «наилучшее» с точки зрения прироста дохода распределение 100 тыс. ден. ед. между первым и вторым предприятием. В силу кратности капиталовложений для 3-х предприятий этой суммы уже не достаточно:
f (100) = max [g (x) + f (100 – x)] =
2 0≤x≤100 2 1
= max [g (0) + g (100); g (50) + g (50); g (50) + g (0)] =
0≤x≤100 2 1 2 1 2 1
= max [0 + 600; 300 + 250; 700 + 0] = 700 (тыс. ден. ед.)
0≤x≤100
Рассмотрим распределение 150 тыс. ден. ед. Размер этой суммы позволяет включить в рассмотрение уже 3 предприятия (объём капиталовложений позволяет выделить каждому – по 50 тыс. ден. ед.):
f (150) = max [g (x) + f (150 – x)] =
3 0≤x≤100 3 2
= max [g (0) + f (150); g (50) + f (100); g (100) + f (50); g (150) + f (0)] =
0≤x≤150 3 2 3 2 3 2 3 2
= max [0 + 1000; 360 + 700; 640 + 300; 950 + 0] =
0≤x≤150
= 1060 (тыс. ден. ед.)
Для упрощения и для большей наглядности записи оформим решение в виде табл. 7.
Таблица 7
Алгоритм решения задачи распределения капиталовложений
x |
f1(x) = g1(x) |
g2 |
f2 |
g3 |
f3 |
g4 |
f4 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
50 |
250 |
300 |
300 |
360 |
360 |
280 |
360 |
100 |
600 |
700 |
700 |
640 |
700 |
560 |
700 |
150 |
1000 |
900 |
1000 |
950 |
1060 |
1100 |
1100 |
200 |
1400 |
1220 |
1400 |
1300 |
1400 |
1420 |
1460 |
69
Модуль III. Определение оптимальной последовательности стратегических
Таким образом, из таблицы видно, что наибольший возможный рост дохода от увеличения объёма выпуска в следствие инвестиций составляет 1460 тыс. ден. ед. В результате обратной прогонки получаем:
f4(200) |
= max [g4(150) + f3(50)] = 1100 + 360 (тыс. ден. ед.) |
|
0≤x≤200 |
f3(150) |
= max [g3(50) + f3(0)] = 36 + 0 (тыс. ден. ед.), |
|
0≤x≤150 |
т.е.150тыс.ден.ед.необходимовложитьвПредприятие4и50млн ден. ед. – в Предприятие 3.
Пример3.2.Задачаозаменеоборудования.Важной практической задачейявляетсяопределениеоптимальныхсроковзаменыстарых станков, производственных зданий, агрегатов, машин и т. д., другими словами – старого оборудования на новое. Критерием оптимальности при определении сроков замены может служить либо прибыль от эксплуатации оборудования, которую следует максимизировать, либо суммарные затраты на эксплуатацию, подлежащие минимизации.
При этой замене учитываются:
–производительность используемого оборудования;
–затраты, связанные с содержанием и ремонтом;
–стоимость приобретаемого и заменяемого оборудования.
К началу текущего пятилетнего периода на предприятии установлено новое оборудование. Зависимость производительности этого оборудования от времени его использования, а также зависимость затрат на содержание и ремонт оборудования при различном времени его использовании заданы в табл. 8.
Таблица 8
Производственная мощность оборудования и затраты на его содержание
|
|
Время t, в течение которого |
|
|||||
|
используется оборудование, годы |
|||||||
|
0 |
|
1 |
2 |
3 |
4 |
|
5 |
Годовой выпуск продукции R(t) |
|
|
|
|
|
|
|
|
в стоимостном выражении, тыс. |
80 |
|
75 |
65 |
60 |
60 |
|
55 |
ден. ед. |
|
|
|
|
|
|
|
|
Ежегодные затраты Z(t) связан- |
|
|
|
|
|
|
|
|
ные с содержанием и ремонтом |
20 |
|
25 |
30 |
35 |
45 |
|
55 |
оборудования, тыс. ден. ед. |
|
|
|
|
|
|
|
|
70
