例子来源,论文Planning and acting in partially observable stochastic domains
大意是,1. 假设每个时刻存在四种状态
(
s
1
,
s
2
,
s
3
,
s
4
)
(s_1,s_2,s_3,s_4)
(s1,s2,s3,s4)。其中,状态3是目标状态。2. 同时,每个时刻观测变量
O
O
O有两种情况,即当前未处于目标状态(但是不知道是1,2,4那种具体状态)和处于目标状态(3)。3. Agent的action有两种情况,即向左(West)和向右(Eest)。agent采取action有0.1的概率会失败,若失败则会向action反方向进行运动(例如当前agent采取向左的action,但是失败了,那么就会向右运动)。如果agent不能往某个方向移动,那么就留在原地(如,位于状态1采取向左移动的action,不会改变当前状态)。
假设agent初始置信状态(belief state)
t
=
0
t=0
t=0为随机位于非目标状态的任意其他状态,即
[
1
3
,
1
3
,
0
,
1
3
]
[\dfrac{1}{3},\dfrac{1}{3},0,\dfrac{1}{3}]
[31,31,0,31]。agent当前时刻采取了向右的action,且观测到agent未处于目标状态。那么新的belief state为:
- 处于状态1的概率:agent 在 t = 0 t=0 t=0时刻处于状态1且采取action失败,或者agent在 t = 0 t=0 t=0时刻处于状态2,且采取action失败: p 1 ( 1 ) = p 0 ( 1 ) ⋅ p A ( 0 ) + p 0 ( 2 ) ⋅ p A ( 0 ) = 1 3 ⋅ 0.1 + 1 3 ⋅ 0.1 = 0.2 3 p_1(1)=p_0(1)\cdot p_A(0)+p_0(2)\cdot p_A(0)=\dfrac13\cdot 0.1+\dfrac13\cdot0.1=\dfrac{0.2}{3} p1(1)=p0(1)⋅pA(0)+p0(2)⋅pA(0)=31⋅0.1+31⋅0.1=30.2
- 同理,处于状态2的概率: p 1 ( 2 ) = p 0 ( 1 ) ⋅ p A ( 1 ) + p 0 ( 3 ) ⋅ p A ( 0 ) = 1 3 ⋅ 0.9 + 0 ⋅ 0.1 = 0.9 3 p_1(2)=p_0(1)\cdot p_A(1)+p_0(3)\cdot p_A(0)=\dfrac13\cdot 0.9+0\cdot 0.1=\dfrac{0.9}{3} p1(2)=p0(1)⋅pA(1)+p0(3)⋅pA(0)=31⋅0.9+0⋅0.1=30.9
- 处于状态3的概率: p 1 ( 3 ) = p 0 ( 2 ) ⋅ p A ( 1 ) + p 0 ( 4 ) ⋅ p A ( 0 ) = 1 3 ⋅ 0.1 + 1 3 ⋅ 0.1 = 1 3 p_1(3)=p_0(2)\cdot p_A(1)+p_0(4)\cdot p_A(0)=\dfrac{1}{3}\cdot 0.1+\dfrac{1}{3}\cdot 0.1=\dfrac{1}{3} p1(3)=p0(2)⋅pA(1)+p0(4)⋅pA(0)=31⋅0.1+31⋅0.1=31
- 处于状态4的概率: p 1 ( 4 ) = p 0 ( 3 ) ⋅ p A ( 1 ) + p 0 ( 4 ) ⋅ p A ( 0 ) = 0.2 3 p_1(4)=p_0(3)\cdot p_A(1)+p_0(4)\cdot p_A(0)=\dfrac{0.2}{3} p1(4)=p0(3)⋅pA(1)+p0(4)⋅pA(0)=30.2
- 由于观测到 p 1 ( 3 ) = 0 p_1(3)=0 p1(3)=0,因此状态比值为 2 : 9 : 0 : 9 2:9:0:9 2:9:0:9,即belief state为 [ 0.1 , 0.45 , 0 , 0.45 ] [0.1,0.45,0,0.45] [0.1,0.45,0,0.45]
公式中
∑
s
∈
S
T
(
s
,
a
,
s
′
)
b
(
s
)
\sum_{s\in\mathcal{S}}T(s,a,s')b(s)
∑s∈ST(s,a,s′)b(s)含义是,已知agent
t
t
t时刻处于状态
s
s
s,采取动作
a
a
a,agent下一时刻
t
+
1
t+1
t+1处于状态
s
′
s'
s′的概率。
O
(
s
′
,
a
,
o
)
O(s',a,o)
O(s′,a,o)表示已知agent
t
+
1
t+1
t+1 时刻处于状态
s
′
s'
s′,
t
t
t时刻采取动作
a
a
a,
t
+
1
t+1
t+1时刻观察量为
o
o
o的概率。在例子中一个状态唯一确定一个观察值。例如,当agent处于状态
1
,
2
,
4
1,2,4
1,2,4时,观察到的一定时未处于目标状态,相反,当agent处于状态
3
3
3时,观察到的就一定属于目标状态。
但是实际中状态不一定唯一确定观察值。例如,一个人感染新冠病毒(状态),他可能表现出症状(观察值),例如发烧,呕吐等,也有可能没有表现出来。与很多其他因素相关。