Декабрь 26

Игры с природой

В игре с природой участвуют два игрока: один из них, обозначим его через А, – лицо, принимающее решение; другой, обозначим его через П, – природа. Игрок А действует осознанно, стремясь принять наиболее выгодное для себя решение, а природа П, в отличие от него , принимает то или иное свое состояние неопределенным образом, не противодействуя злонамеренно игроку А, не преследуя конкретной цели и абсолютно безразлично к результату игры, т.е. природа П, являясь игроком в игре, не является ни противником, ни союзником игрока А.

Пусть игрок А обладает m возможными стратегиями А1,…,Аm, а природа П может находиться в одном из n своих состояний П1,…,Пn. Предполагается обычно, что игрок А в состоянии оценить результаты выбора им каждой из своих стратегий Аi, i=1,…,m, при каждом состоянии природы Пj, j=1,…,n, количественно выражающиеся действительными числами аij.

Эти числа, называемые выигрышами игрока А, можно записать в виде матрицы:

library(knitr)
mtx<-matrix(c(2,1,2,
            3,5,6,
            1,4,2,
            4,3,1.5),ncol=4)
rownames(mtx)<-paste0("A~",1:nrow(mtx),"~")
colnames(mtx)<-paste0("П~",1:ncol(mtx),"~")
kable(mtx)
П1 П2 П3 П4
A1 2 3 1 4.0
A2 1 5 4 3.0
A3 2 6 2 1.5

Чистые стратегии

Критерий Байеса

Имеется вектор весов W, описывающий состояния природы.

(w<-c(0.5,0.1,0.2,0.2))
## [1] 0.5 0.1 0.2 0.2
sum(w)
## [1] 1

Тогда произведение B=A*W дает

B<-mtx %*% w
colnames(B)<-"П~B~"
kable(B)
ПB
A1 2.3
A2 2.4
A3 2.3

Оптимальная стратегия есть максимум

max(B)
## [1] 2.4

Таким образом, выигрывает стратегия A2.

Критерий Байеса-Лапласа

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

(w<-c(0.25,0.25,0.25,0.25))
## [1] 0.25 0.25 0.25 0.25
BL<-mtx %*% w
colnames(BL)<-"П~B~"
kable(BL)
ПB
A1 2.500
A2 3.250
A3 2.875

Оптимальная стратегия есть максимум

max(BL)
## [1] 3.25

Таким образом, выигрывает стратегия A2.

Критерий Вальда

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

V<-as.matrix(apply(mtx,1,min))
colnames(V)<-"П~W~"
kable(V)
ПW
A1 1.0
A2 1.0
A3 1.5
max(V)
## [1] 1.5

Таким образом, по критерию Вальда лучшей является третья стратегия.

Критерий Ходжа-Лемана

Имеется матрица, состоящая из оценки стратегий по критериям Байеса и Вальда

kable(HL<-cbind(B,V))
ПB ПW
A1 2.3 1.0
A2 2.4 1.0
A3 2.3 1.5

И имеется коэффициент l,описывающий степень доверия к состоянию природы. Обратный коэффициент, равен 1-l описывает степень пессимизма.

(w<-c(0.75,0.25))
## [1] 0.75 0.25
kable(HLM<-HL %*% w,col.names = "КХЛ")
КХЛ
A1 1.975
A2 2.050
A3 2.100

Оптимальной стратегией по критерию Ходжа-Лемана является стратегия А3 с наибольшим показателем эффективности:

max(HLM)
## [1] 2.1

Максимаксный критерий

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

M<-as.matrix(apply(mtx,1,max))
colnames(M)<-"П~M~"
kable(M)
ПM
A1 4
A2 5
A3 6
max(M)
## [1] 6

Оптимальной стратегией по максимаксному критерию является стратегия А3 с наибольшим показателем эффективности 6.

Критерий пессимизма-оптимизма Гурвица

Имеется матрица, состоящая из оценки стратегий по критериям Вальда и Максимакса. Критерий Гурвица устанавливает баланс между случаями крайнего пессимизма и крайнего оптимизма путем взвешивания обоих способов поведения соответствующими весами (1 — y) и y, где 0<y<1. Значение y от 0 до 1 может определяться в зависимости от склонности лица, принимающего решение, к пессимизму или к оптимизму. При отсутствии ярко выраженной склонности y = 0,5 представляется наиболее разумной.

kable(HV<-cbind(V,M))
ПW ПM
A1 1.0 4
A2 1.0 5
A3 1.5 6
(w<-c(0.5,0.5))
## [1] 0.5 0.5
kable(HVM<-HV %*% w,col.names = "КГ")
КГ
A1 2.50
A2 3.00
A3 3.75
max(HVM)
## [1] 3.75

Оптимальной стратегией по максимаксному критерию является стратегия А3 с наибольшим показателем эффективности 3.75.

Критериц Сэвиджа (критерий сожаления)

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

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

Строим матрицу потерь

mtx1<- matrix(rep(apply(mtx,2,max),nrow(mtx)),byrow=T,ncol=ncol(mtx))-mtx
kable(mtx1)
П1 П2 П3 П4
A1 0 3 3 0.0
A2 1 1 0 1.0
A3 0 0 2 2.5

Находим максимальный риски (сожаление)

S<-as.matrix(apply(mtx1,1,max))
colnames(S)<-"П~S~"
kable(S)
ПS
A1 3.0
A2 1.0
A3 2.5

Находим минимальный риск. Оптимальной стратегией по максимаксному критерию является стратегия А2 с наименьшим риском:

min(S)
## [1] 1

Метки:

Опубликовано 26.12.2016 Тушавин В.А. в категории "Изучаем R и RStudio", "Используем свободное ПО", "Прикладные методы оптимизации