[Top] [NuPDDL]
   
Here is some example of nondeterministic action effects.

In this example, a "slippery" movement of a robot is modeled: afet moving east, depending on where the robot is, the target location may not be perfectly determined.

  (:action move_robot_right
     :precondition (or (= (robot_position) SW_room )
                       (= (robot_position) store   ))
     :effect (and
               (when (= (robot_position) SW_room ) (assign (robot_position) dep))
               (when (= (robot_position) store     )
                     (oneof
                        (assign (robot_position) NE_room )
                        (assign (robot_position) lab     )))))
 

In this example, a different "slippery" movement of a robot is modeled: after moving east, the y coordinate of a robot is random.

   (:action move_east
     :parameters ()
     :precondition (=  (robot_x) west)
     :effect       (and
                      (assign (robot_x) east)
                      (unknown (robot_y))))