Page 68 - Introduction to AI Robotics
P. 68
51
2.2 Attributes of the Hierarchical Paradigm
Again, Strips examines the preconditions. This time rk=R1 and rm=R2
can be matched with CONNECTS(dx, rk, rm), and all preconditions are
satisfied (that is, they evaluate to true). Strips puts the operator OP1 on the
plan stack and applies the operator to the world model, changing the state.
(Note that this is the equivalent of a “mental operation”; the robot doesn’t
actually physically go to the door, it just changes the state to imagine what
would happen if it did.)
To recall, the initial state of the world model was:
initial state:
INROOM(IT, R1)
INROOM(B1,R2)
CONNECTS(D1, R1, R2)
CONNECTS(D1, R2, R1)
STATUS(D1,OPEN)
Applying the operator OP1 means making the changes on the add-list and
delete-list. There is only a predicate on the add-list and none on the delete-
list. After adding NEXTTO(IT, D1), the state of the world is:
state after OP1:
INROOM(IT, R1)
INROOM(B1,R2)
CONNECTS(D1, R1, R2)
CONNECTS(D1, R2, R1)
STATUS(D1,OPEN)
NEXTTO(IT, D1)
Strips then returns control back to the previous call. It resumes where it
left off in evaluating the preconditions for OP2 with dx=D1, rm=R2 and
rk=R1, only now the world model has changed. Both STATUS(D1, OPEN)
and INROOM(IT, R1) are true, so all the preconditions for OP2 are satisfied.
Strips puts OP2 on its plan stack and changes the world model by applying
the add-list and delete-list predicates. This results in what the state of the
world will be when the plan executes:
state after OP2:
INROOM(IT, R2)
INROOM(B1,R2)