Skip to main content
. Author manuscript; available in PMC: 2009 Sep 22.
Published in final edited form as: J Artif Intell Res. 2008 Jul 1;32(2):663–704.

Algorithm 3.6.

UpdateAncestors: Updates the bounds of the ancestors of all ancestors of an OR-Node

1: Function UpdateAncestors(b′)
Inputs: b′: An OR-Node for which we want to update all its ancestors.
Static: bc: The current belief state of the agent.
  T: An AND-OR tree representing the current search tree.
  L: A lower bound on V *.
  U: An upper bound on V *.
2: while b′ ≠ bc do
3:  Set (b, a) so that action a in belief b is parent node of belief node b
4: LT (b, a) ← RB(b, a) + γ Σz Z Pr(z|b, a)LT (τ(b, a, z))
5: UT (b, a) ← RB(b, a) + γ Σz Z Pr(z|b, a)UT (τ(b, a, z))
6: zb,aTargmaxzZHT(b,a,z)HT(τ(b,a,z))
7: HT(b,a)HT(b,a,zb,aT)HT(τ(b,a,zb,aT))
8: bT(b,a)bT(τ(b,a,zb,aT))
9: LT (b) ← maxa′ ∈ A LT (b, a′)
10: UT (b) ← maxa′ ∈ A UT (b, a′)
11: abTargmaxaAHT(b,a)HT(b,a)
12: HT(b)HT(b,abT)HT(b,abT)
13: bT(b)bT(b,abT)
14: b′ ← b
15: end while