Case Study: UCPOP
0*. If P is order inconsistent, FAIL.
1. If no open conditions and no unsafe lPCs, SUCCESS.
2. Generate new plans using either 2’ or 2’’
Add the plans to the search queue
2’. Remove an open condition c@s in P.
2.1. For each step s’ in P that gives c, make a new plan
P’ = P + (s’ < s) + IPC s’-c-s
2.2. For each action A in the domain that gives c, make a new
plan P’ = P + sn:A + (sn <s) + IPC sn-c-s.
2.2.1. For each precondition c’ of A, add
c’@sn to the list of open conditions of P’.
2.2.2. For each IPC s’-p-s’’, if sn deletes p, add
[s’-p-s’’; sn] to the list of unsafe IPCs of P’.
2’’. Remove an unsafe IPC [s’-p-s’’; s’’’] from P.
Make two plans: P’ = P + s’’’< s’ P’’ = P + s’’ < s’’’
3. Non-deterministically select one of the plans P I from
the search queue and Call Refine(P i)