Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции - ЭММ.doc
Скачиваний:
4
Добавлен:
24.09.2019
Размер:
174.08 Кб
Скачать

Платежная матрица. Верхняя и нижняя цена игры

Пусть игрок А обладает стратегией А1, А2, …Аn, игрок В – В1, В2, … Вn. Матрица P = (aij) содержит aij – означающие выигрыш игрока А, если игрок А применит стратегию Аi, а игрок В – стратегию Вj.

Наименьший выигрыш игрока А при выборе им стратегии Аi обозначим как αi. αi = min ai.

В1

В2

В3

αi = 5

αi = 7

αi = 6

Из чисел α выберем макисмум:

α = max {5,6,7} = 7 – нижняя цена игры или гарантированный выигрыш игрока А независимо от стратегии игрока В

А1

5

6

8

А2

9

7

8

А3

7

6

6

Наибольший проигрыш игрока В при выборе им стратегии Вj обозначим как βj.

βj = min max ai. βj = min {9,8,7} = 7 – верхняя цена игры или гарантированный максимальный проигрыш игрока В

Игры, в которых α = β называют играми с седловой точкой, соответствующие этой точке стратегии являются оптимальными. В приведенном примере для игрока А – стратегия А2 (ai = 7), а для игрока В – стратегия В2.

Решение игр смешанных стратегий

Если α не равно β, игра не имеет решения в чистых стратегиях. Оптимальное решение можно получить чередуя случайным образом чистые стратегии.

Смешанной стратегией игрока А (Sa) называется вектор - применение чистой стратегии с вероятностями р1,р2… рm.

Смешанной стратегией игрока B (Sb) называется вектор - применение чистой стратегии с вероятностями q1,q2… qn

а11 а12 … а1n

P = а21 а22 … а2n

аm1 аm2 … аmn

Средний выигрыш игрока А (или средний проигрыш игрока В) при оптимальной стратегии – цене игры.

p1*a11 + p2*a21 + ... pm*am1 = v

p1*a12 + p2*a22 + ... pm*am2 = v

p1*a1n + p2*a2n + ... pm*amn = v

p1 + p2 + ... pm = 1

q1*a11 + q2*a21 + ... qm*am1 = v

q1*a12 + q2*a22 + ... qm*am2 = v

q1*a1n + q2*a2n + ... qm*amn = v

q1 + q2 + ... qm = 1

ПРИМЕР:

5 3

P = 2 4 ; α = max {3,2} = 3; β = min {5,4} = 4; β ≠ α

5*p1 + 2*p2 = v 5*p1 + 2*p2 – 3*p1 – 4*p2 = 0 2*p1 – 2*p2 = 0 p1 = p2 =1/2

3*p1 + 4*p2 = v p1 + p2 = 1 p1 + p2 = 1 v = 3*1/2 + 4*1/2 = 7/2 = 3 1/2

p1 + p2 = 1

Sa = (1/2 ; ½); 3 < 3 ½ < 4

5*q1 + 3*q2 = v 5*q1 + 3*q2 – 2*q1 – 4*q2 = 0 3*q1 – q2 = 0 4*q1=1$ q1 = 1/4

2*q1 + 4*q2 = v q1 + q2 = 1 q1 + q2 = 1 q2 = 1 – 1/4 = 3/4

p1 + p2 = 1 v = 2*1/4 + 4*3/4 = 3 1/2

Sa = (1/2 ; ½); 3 < 3 ½ < 4

ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ

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

В моделях ДП процесс решения можно разложить на шаги.

Пусть процесс разбивается на n шагов, при этом система переходит из начального состояния (S0) в конечное состояние (Sn):

х1 х2 xn-1 xn

S0  S1  …  Sn-1  Sn xk, k = 1,n

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

Z = f (So, x) – эта функция является суммой от функции эффективности на каждом шаге.

Zk = fk (Sk, xk); Z = Zk

Принцип оптимальности

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

Уравнение Беллмана

Z* (Sk-1) = max {fk (Sk-1. [n) + Z*r+1 (Sn)}

Задача о рюкзаке: имеется рюкзак, который может вместить вес W; имеется набор из m предметов весом wi, стоимостью ci i=1,n. Цель – получить набор предметов, помещающихся в рюкзак, так чтоб их суммарная стоимость была максимальной. Задача решается по шагам.

Шаг 1. Заполнить рюкзак весом 0,1,2, … w. Функция f означает стоимость помещенных в рюкзак предметов весом S: f (S) + max {Ci + f (S – Wi)}

wi

ci

4

10

0

5

15

3

7

20

0

f (0) = f (1) = f (2) = f (3)

f (4) = max

10 + f (0)

= 10

f (5) = max

1 0 + f (0)

15 + f (1)

= max {10,15} = 15

f (6) = max

1 0 + f (2)

15 + f (1)

= max {10,15} = 15

f (7) = max

1 0 + f (3)

15 + f (2)

20 + f (0)

= max {10,15,20} = 20

f (8) = max

1 0 + f (4)

15 + f (3)

20 + f (1)

= max {15,20,20} = 20

f (9) = max

1 0 + f (5)

15 + f (4)

20 + f (2)

= max {15,20,25} = 25

f (10) = max

1 0 + f (6)

15 + f (5)

20 + f (3)

= max {20,25,30} = 30

f (11) = max

1 0 + f (7)

15 + f (6)

2 0 + f (4)

= max {30,30,30} = 30

f (12) = max

10 + f (8)

15 + f (7)

20 + f (5)

= max {30,35,35} = 35

f (13) = max

1 0 + f (9)

15 + f (8)

20 + f (6)

= max {35,35,35} = 35

f (14) = max

1 0 + f (10)

15 + f (9)

20 + f (7)

= max {40,40,40} = 40

f (15) = max

1 0 + f (11)

15 + f (10)

20 + f (8)

= max {40,40,45} = 45

Оптимальное решение: взять 3 предмета 2-го вида общей стоимостью 45,

а предметы 1-го и 3-го видов вообще не брать