Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Математические методы и модели в экономике.doc
Скачиваний:
110
Добавлен:
08.03.2016
Размер:
8.1 Mб
Скачать

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

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

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

Пример 2.8.4. Задача садовника.

Предположим, что каждый год почва может находиться в одном из трех состояний: хорошем (1), удовлетворительном (2) или плохом (3). Пусть k=1 и 2 – две возможные стратегии поведения садовника: не удобрять или удобрять. Оптимальное поведение садовника определяется такой стратегией, при которой он получает наибольший ожидаемый доход через N лет. Обозначим рij(k) – вероятность перехода почвы из состояния i в состояние j при применении садовником стратегии k.

Пусть 0.2 0.5 0.3 0.3 0.6 0.1

ij(1)}= 0 0.5 0.5 , {рij(2)}= 0.1 0.6 0.3

0 0 1 0.05 0.4 0.55

Поясним суть приведенных данных:

Если садовник не применяет удобрения (k=1), то при хорошем состоянии почвы (строка 1) вероятность ее перехода в хорошее состояние – 0.2, в удовлетворительное – 0.5 и в плохое – 0.3. При плохом состоянии (строка 3) с вероятностью 1 почва остается плохой.

Если садовник применяет удобрения (k=2), то при хорошем состоянии почвы (строка 1) вероятность ее перехода в хорошее состояние – 0.3, в удовлетворительное – 0.6 и в плохое – 0.1. При плохом состоянии (строка 3) с вероятностью 0.05 почва станет хорошей, с вероятностью 0.4 удовлетворительной и с вероятностью 0.55 останется плохой.

Обозначим rij(k) – доход (или убыток), который получит садовник за одногодичный период, если почва перейдет из состояния i в состояние j при применении садовником стратегии k.

Пусть 7 6 3 6 5 – 1

{rij(1)}= 0 5 1 , {rij(2)}= 7 4 0 .

0 0 –1 6 3 –2

Поясним суть приведенных данных:

Если садовник не применяет удобрения (k=1), то при переходе из хорошего состояния почвы (строка 1) в хорошее доход составит 7 единиц, в удовлетворительное – 6 и в плохое – 3. При переходе из плохого состояния (строка 3, вспомним, что в этом случае с вероятностью 1 почва остается плохой) доход составит –1 (убыток).

Если садовник применяет удобрения (k=2), то при переходе из хорошего состояния почвы (строка 1) в хорошее доход составит 6, в удовлетворительное – 5 и в плохое – убыток в размере 1 (не в коня корм). При переходе из плохого состояния (строка 3) в хорошее доход составит 6, в удовлетворительное – 3 и в плохое – убыток 2.

Обозначим vi(k) – ожидаемый доход, обусловленный одним переходом из состояния i при стратегии k, тогда

vi(k)=∑jpij(k)rij(k).

Если удобрения не применяются (k=1), тогда

v1(1)=0.27+0.56+0.33=5.3,

v2(1)=00+0.55+0.51=3,

v3(1)=00+00+1 (–1)= –1.

При использовании удобрений (k=2) имеем

v1(2)=0.36+0.65+0.1 (–1)=4.7,

v2(2)=0.17+0.64+0.30=3.1,

v3(2)=0.056+0.43+0.55 (–2)=0.4.

Как и прежде будем анализировать плановый период с конца, обозначим fn(i) – оптимальный ожидаемый доход за n лет до конца периода, тогда рекуррентные соотношения примут вид:

f1(i)=maxk{vi(k)},

fn(i)=maxk{vi(k)+∑jpij(k)fn-1(j)}, n=2,3,…,N. (2.8.4)

Проведем вычисления при N=4. Результаты поместим в таблицы 2.8.4 – 2.8.7.

n=1 Таблица. 2.8.4

i

vi(k)

Оптимальное решение

k=1

k=2

f1(i)

k*

1

5.3

4.7

5.3

1

2

3

3.1

3.1

2

3

–1

0.4

0.4

2

n=2 Таблица. 2.8.5

i

vi(k)+pi1(k)f1(1)+pi2(k)f1(2)+pi3(k)f1(3)

Оптимальное решение

k=1

k=2

f2(i)

k*

1

5.3+.25.3+.53.1+.3.4= =8.03

4.7+.35.3+.63.1+.1.4=

=8.19

8.19

2

2

3+05.3+.53.1+.5.4= =4.75

3.1+.15.3+.63.1+.3.4=

=5.61

5.61

2

3

–1+05.3+03.1+10.4=

= –0.6

.4+.055.3+.43.1+.55.4=

=2.13

2.13

2

n=3 Таблица. 2.8.6

i

vi(k)+pi1(k)f2(1)+pi2(k)f2(2)+pi3(k)f2(3)

Оптимальное

решение

k=1

k=2

f3(i)

k*

1

5.3+.28.19+.55.6+.32.13=

=10.38

4.7+.38.19+.65.61+.12.13= =10.74

10.74

2

2

3+08.19+.55.61+.52.13=

=6.87

3.1+.18.19+.65.61+.32.13= =7.92

7.92

2

3

–1+08.19+05.61+12.13=

= 1.13

.4+.058.19+.45.6+.552.13= =4.23

4.23

2

n=4 Таблица. 2.8.7

i

vi(k)+pi1(k)f3(1)+pi2(k)f3(2)+pi3(k)f3(3)

Оптим.

решение

k=1

k=2

f4(i)

k*

1

5.3+.210.74+.57.92+.34.23= =12.68

4.7+.310.74+.67.92+.14.23= =13.097

13.10

2

2

3+010.74+.57.92+.54.23=

=9.075

3.1+.110.74+.67.92+.34.23= =10.195

10.19

2

3

–1+010.74+07.92+14.23=

= 3.23

.4+.0510.74+.47.92+.554.23

=6.4315

6.43

2

Из оптимального решения следует, что в 1-й,2-й и 3-й годы садовник должен применять удобрения (k*=2) при любом состоянии почвы, а в 4-й год (n=1) садовнику следует применять удобрения только при условии, что состояние почвы удовлетворительное или плохое. Суммарный ожидаемый доход за четыре года составит f4(1)=13.10 при хорошем состоянии почвы в первый год, f4(2)= 10.19 при удовлетворительном состоянии и f4(3)=6.43 при плохом состоянии.

Приведенный выше метод решения задачи называют еще методом итераций по стратегиям.

Задачу садовника можно обобщить в двух отношениях. Во-первых, переходные вероятности и значения дохода не обязательно одни и те же в любой год; в этом случае они являются функциями n-го этапа: pij(k,n) и rij(k,n). Во-вторых, можно использовать коэффициент дисконтирования ожидаемых доходов, вследствие чего значения fN(i) будут представлять собой приведенные величины ожидаемых доходов по всем этапам. Если α – годовой коэффициент дисконтирования, вычисляемый по формуле α=1/(1+t), где t – годовая норма процента, то рекуррентное соотношение (4.9.4) преобразуется к виду:

fn(i)=maxk{ vi(k)+α∑jpij(k)fn-1(j)}, n=2,3,…,N. (2.8.5)

Упражнение. Решите задачу садовника при коэффициенте дисконтирования α=0.6. (ответ приводится в таблице 2.8.8).

Таблица. 2.8.8

i

n=1

n=2

n=3

n=4

f1(i)

k*

f2(i)

k*

f3(i)

k*

f4(i)

k*

1

5.3

1

6.94

1

7.77

1

8.26

1

2

3.1

2

4.61

2

5.43

2

5.92

2

3

0.4

2

1.44

2

2.19

2

2.66

2

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

Для определения оптимальной долгосрочной стратегии применяют два метода. Первый метод основан на переборе всех возможных стационарных стратегий управления и может быть использован при их малом числе. Второй метод (итераций по стратегиям) более эффективен в том смысле, что определяет оптимальную стратегию за малое число итераций. Идея метода заключается в использовании соотношения (2.8.4) при n → ∞.

Итак, задача стохастического динамического программирования включает в себя матрицу переходных вероятностей системы из состояния i в момент времени tn-1 в состояние j в момент tn. Матрица переходных вероятностей совместно с исходными вероятностями состояний полностью определяет марковскую цепь. Можно задачу стохастического динамического программирования (Марковскую задачу принятия решений) сформулировать как задачу линейного программирования (см. тему 2.2), однако в вычислительном отношении метод итераций по стратегиям более эффективен. Для задач с К альтернативами решений на каждом шаге и N состояниями соответствующая модель линейного программирования включает (N+1) ограничений и NК переменных.