Up
Go up to Question 1

Solution

  1. You can get the complete axiomatization in delrob_strips_wet.pl.

    The relevant parts are:

    % wet(Obj,B) is the action of wetting the Obj with the water in bucket B
    preconditions(wet(Obj,B),
        bucket(B) & autonomous(Ag) & full(B) & carrying(Ag,B) & 
        at(Obj,Loc) & at(Ag,Loc)).
    addlist(wet(Obj,B),[is_wet(Obj)]).
    deletelist(wet(Obj,B),[full(B)]).
    
    % fill(B) is the action of filling bucket B
    preconditions(fill(B),
       bucket(B) & autonomous(Ag) & carrying(Ag,B) & at(Ag,o111)).
    addlist(fill(B),[full(B)]).
    deletelist(fill(B),[]).
    
    primitive(full(_)).
    primitive(is_wet(_)).
    
    bucket(b1) <= true.
    
    holds(sitting_at(b1,storage),init).
    
  2. The shortest plan is for rob to go to the storage and pick up both the parcel and the bucket then go to room o111, fill the bucket then immediately wet the parcel. This has one fewer steps than the plan found. It won't find this as moving the parcel isn't considered at all when trying to find either goal.

    Note that the regression planner can find this plan.


David Poole

Up