3. Linear Programs and Mixed Integer Programs
5.3. General Transition Cost Partitioning
It is easy to see that transition cost partitioning makes admissible heuristics additive by interpreting transition cost functions as operator cost functions of the disambiguated taskΠD. An alternative direct proof of this is shown by Keller et al. (2016).
Proposition 5.2. LetΠ be a planning task, let h1, . . . , hn be admissible heuristics for
Π, and let P =hcost1, . . . , costni be a non-negative transition cost partitioning for Π.
ThenhP(h1, . . . , hn, s) =
Pn
i=1hi(s, costi) is an admissible heuristic estimate for s.
Analogously to hOCP+and hOCP, we define an optimal transition cost partitioning and
the corresponding heuristic.
Definition 5.6 (optimal non-negative transition cost partitioning). LetΠ be a planning task with transitionsT and let h1, . . . , hnbe admissible heuristics forΠ. LetPT+be the
set of all non-negative transition cost partitionings. A partitioningP∗ ∈ PT+ isoptimal in states if
P∗ ∈ arg max
P ∈PT+
hP(h1, . . . , hn, s).
Theoptimal non-negative transition cost partitioning heuristic hTCP+forh1, . . . , hnis
the function
hTCP+{h
i|1≤i≤n}(s) = max
P ∈PT+
hP(h1, . . . , hn, s).
Revisiting the example in Figure 5.5, we can now see that the transition cost par- titioning shown next to the operators has a heuristic value of 1 in both abstractions. As in the figure, we use XY to represent the state {pos-T 7→ X, pos-P 7→ Y }. The transition cost partitioning assigns1 to AB −−−−→ BB in the first abstraction and todrive-A-B AA−−−−→ BA in the second abstraction, while all other transitions have a cost of 0.drive-A-B
Every operator cost function cost can be seen as a transition cost function cost0 with cost0(s −→ so 0) = cost(o), so each operator cost partitioning is a transition cost parti-
tioning. Therefore, hTCP+dominates hOCP+. The example in Figure 5.5 shows that this dominance can be strict.
5.3. General Transition Cost Partitioning
We have seen that non-negative operator cost partitioning can be generalized in two dif- ferent ways. Allowing cost functions to take negative values makes it possible to raise operator costs above their original costs in abstractions where they matter most. By par- titioning transition costs instead of operator costs, we can distribute the costs differently in different contexts in which an operator can be applied. These two generalizations are orthogonal to each other and are easy to combine.
5. Extensions to Cost Partitioning
Definition 5.7 (general transition cost partitioning). LetΠ be a planning task with tran- sitionsT and cost function cost. A general transition cost partitioning for Π is a tuple hcost1, . . . , costni where costi :T → R for 1 ≤ i ≤ n and
n X i=1 costi(s o − → s0
)≤ cost(o) for all s−→ so 0
∈ T .
As before, we can show that such partitionings make admissible heuristics additive: Proposition 5.3. Let Π be a planning task, let h1, . . . , hnbe admissible heuristics for
Π, and let P =hcost1, . . . , costni be a general transition cost partitioning for Π. Then
hP(h1, . . . , hn, s) =
Pn
i=1hi(s, costi) is an admissible heuristic estimate for s.
The proof is a direct extension of the proof for Theorem 5.1 to transition cost func- tions. We do not repeat it here as it adds nothing new, but it is contained in the paper by Keller et al. (2016). The heuristic hTCPcan now be defined in the obvious way:
Definition 5.8 (optimal general transition cost partitioning). Let Π be a planning task with transitionsT and let h1, . . . , hnbe admissible heuristics forΠ. LetPT be the set
of all general transition cost partitionings. A partitioningP∗ ∈ PT isoptimal in state
s if
P∗ ∈ arg max
P ∈PT
hP(h1, . . . , hn, s).
Theoptimal general transition cost partitioning heuristic hTCPforh
1, . . . , hnis the func- tion hTCP{h i|1≤i≤n}(s) = maxP ∈P T hP(h1, . . . , hn, s).
We already know that hOCP+ ≤ hOCP, that hOCP+ ≤ hTCP+, and that both dominance
relations are strict. The examples in Figures 5.1 and 5.5 also show that hOCP and hTCP+ are incomparable. Every general operator cost function and every non-negative transi- tion cost function is a general transition cost function, so hOCP ≤ hTCPand hTCP+≤ hTCP
hold as well. But are these dominance relations also strict?
Figure 5.6 shows an example of a general transition cost partitioning that yields a higher heuristic value than both hOCPand hTCP+, showing that the dominance is indeed
strict in both cases. In the first abstraction, the initial state is also a goal state, so its heuristic value cannot exceed 0 under any cost function. The heuristic value of the second abstraction is determined by the cost of transition BT −−−−→ AT . Withoutdrive-B-A assigning a negative cost to this transition in the first abstraction, its cost in the second abstraction cannot exceed 1, thus hTCP+(s
I) = 0 + 1. The overall heuristic value can
be increased by assigning a higher cost to this transition in the second abstraction, compensated by a negative cost in the first abstraction. However, since the operator drive-B-A induces a self-loop in the first abstraction, its cost should not be negative in all contexts. Otherwise, there would be a negative cost cycle which would make
5.3. General Transition Cost Partitioning AB AT AA BB BT BA drive-A-B /0 drive-B-A/0 drive-A-B /1 drive-B-A/−1 drive-A-B /0 drive-B-A/0 lo ad-A /0 unlo ad-A/0 lo ad-B /1 unlo ad-B /0 1 2 AB AT AA BB BT BA drive-A-B /0 drive-B-A/0 drive-A-B /0 drive-B-A/2 drive-A-B /0 drive-B-A/0 lo ad-A /0 unlo ad-A/0 lo ad-B /0 unlo ad-B /0 1 2
Figure 5.6: General transition cost partitioning over two abstractions of the example task. In the example hOCP(s
I) and hTCP+(sI) are 1 but hTCP(sI) is 2.
the heuristic value of the first abstraction −∞. Therefore, hOCP(sI) = 0 + 1. With
the general transition cost partitioning shown in the figure, the cost of drive-B-A can be decreased only in the context of state BT in the first abstraction and raised in the second. The resulting heuristic value is hTCP(sI) = 0 + 2.