UMCP

To try out UMCP, follow these instructions:
  1. Download umcp.tar.Z and uncompress it on your favorite UNIX workstation.

  2. 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/")
    
    
  3. 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.

  4. Launch Lisp

  5. Load the UMCP bootstrapping functions.
    USER(1): (load "load-umcp.lisp")
    

  6. Compile the system:
    USER(2): (compile-umcp)
    

  7. Switch to the UMCP package:
    USER(3): (in-package 'umcp)
    UMCP(4):
    

  8. 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.