- Download umcp.tar.Z and uncompress it on your
favorite UNIX workstation.
- You can uncompress it by doing:
% uncompress umcp.tar.Z
which will leave umcp.tar.
- Then you can "untar" it by doing:
% tar xvf umcp.tar
This will create a umcp directory and associated subdirectories.
- Modify the load-umcp.lisp file so that the *umcp-load-dir* global
gets set appropriately, based on where you installed your planner.
For example:
(defparameter *umcp-load-dir* "~/planners/umcp/")
- Use an editor to look at 541-robot.lisp (at the bottom) and locate
(defun test-shakey ()
(clear-initial-state)
(initial-shakey-world)
;; additional facts for this problem.
(initially-true
(open-door door1-2)
(box-inroom box1 room1)
(box-inroom box2 room1)
(box-inroom box3 room1)
(robot-inroom room1)
)
(setf goal
(create-tn (after (box-inroom box1 room2) n1)
(n1 box-inroom box1 room2)))
)
This is the function we are going to call when running this
planner.
- Launch Lisp
- Load the UMCP bootstrapping functions.
USER(1): (load "load-umcp.lisp")
- Compile the system:
USER(2): (compile-umcp)
- Switch to the UMCP package:
USER(3): (in-package 'umcp)
UMCP(4):
- Load the sample Shakey domain from 541-robot.lisp and run the test
code:
UMCP(4): (load "541-robot.lisp")
UMCP(5): (test-shakey)
UMCP(6): (search-for-plan goal)
Have a look at the results.