;;; This domain has been generated with the fileworld generator ;;; ;;; Created by Dave Weissman (dnweissman@yahoo.com) ;;; (define (domain file-world) (:requirements :disjunctive-preconditions :negative-preconditions :conditional-effects :rewards :probabilistic-effects :universal-preconditions) (:predicates (has-type ?p) (goes-in ?p ?f) (filed ?p) (haveF0) (haveF1) (haveF2) (haveF3) (haveF4) (haveF5) (haveF6) (haveF7) (haveF8) (haveF9) ) (:constants F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 ) (:action get-type :parameters (?p) :precondition (and (not (has-type ?p))) :effect (and (has-type ?p) (probabilistic 0.1 (goes-in ?p F0) 0.1 (goes-in ?p F1) 0.1 (goes-in ?p F2) 0.1 (goes-in ?p F3) 0.1 (goes-in ?p F4) 0.1 (goes-in ?p F5) 0.1 (goes-in ?p F6) 0.1 (goes-in ?p F7) 0.1 (goes-in ?p F8) 0.1 (goes-in ?p F9) )) ) (:action get-folder-F0 :precondition (and (not (haveF0)) (not (haveF1)) (not (haveF2)) (not (haveF3)) (not (haveF4)) (not (haveF5)) (not (haveF6)) (not (haveF7)) (not (haveF8)) (not (haveF9)) ) :effect (haveF0) ) (:action get-folder-F1 :precondition (and (not (haveF0)) (not (haveF1)) (not (haveF2)) (not (haveF3)) (not (haveF4)) (not (haveF5)) (not (haveF6)) (not (haveF7)) (not (haveF8)) (not (haveF9)) ) :effect (haveF1) ) (:action get-folder-F2 :precondition (and (not (haveF0)) (not (haveF1)) (not (haveF2)) (not (haveF3)) (not (haveF4)) (not (haveF5)) (not (haveF6)) (not (haveF7)) (not (haveF8)) (not (haveF9)) ) :effect (haveF2) ) (:action get-folder-F3 :precondition (and (not (haveF0)) (not (haveF1)) (not (haveF2)) (not (haveF3)) (not (haveF4)) (not (haveF5)) (not (haveF6)) (not (haveF7)) (not (haveF8)) (not (haveF9)) ) :effect (haveF3) ) (:action get-folder-F4 :precondition (and (not (haveF0)) (not (haveF1)) (not (haveF2)) (not (haveF3)) (not (haveF4)) (not (haveF5)) (not (haveF6)) (not (haveF7)) (not (haveF8)) (not (haveF9)) ) :effect (haveF4) ) (:action get-folder-F5 :precondition (and (not (haveF0)) (not (haveF1)) (not (haveF2)) (not (haveF3)) (not (haveF4)) (not (haveF5)) (not (haveF6)) (not (haveF7)) (not (haveF8)) (not (haveF9)) ) :effect (haveF5) ) (:action get-folder-F6 :precondition (and (not (haveF0)) (not (haveF1)) (not (haveF2)) (not (haveF3)) (not (haveF4)) (not (haveF5)) (not (haveF6)) (not (haveF7)) (not (haveF8)) (not (haveF9)) ) :effect (haveF6) ) (:action get-folder-F7 :precondition (and (not (haveF0)) (not (haveF1)) (not (haveF2)) (not (haveF3)) (not (haveF4)) (not (haveF5)) (not (haveF6)) (not (haveF7)) (not (haveF8)) (not (haveF9)) ) :effect (haveF7) ) (:action get-folder-F8 :precondition (and (not (haveF0)) (not (haveF1)) (not (haveF2)) (not (haveF3)) (not (haveF4)) (not (haveF5)) (not (haveF6)) (not (haveF7)) (not (haveF8)) (not (haveF9)) ) :effect (haveF8) ) (:action get-folder-F9 :precondition (and (not (haveF0)) (not (haveF1)) (not (haveF2)) (not (haveF3)) (not (haveF4)) (not (haveF5)) (not (haveF6)) (not (haveF7)) (not (haveF8)) (not (haveF9)) ) :effect (haveF9) ) (:action file-F0 :parameters (?p) :precondition (and (haveF0) (has-type ?p) (goes-in ?p F0)) :effect (filed ?p) ) (:action file-F1 :parameters (?p) :precondition (and (haveF1) (has-type ?p) (goes-in ?p F1)) :effect (filed ?p) ) (:action file-F2 :parameters (?p) :precondition (and (haveF2) (has-type ?p) (goes-in ?p F2)) :effect (filed ?p) ) (:action file-F3 :parameters (?p) :precondition (and (haveF3) (has-type ?p) (goes-in ?p F3)) :effect (filed ?p) ) (:action file-F4 :parameters (?p) :precondition (and (haveF4) (has-type ?p) (goes-in ?p F4)) :effect (filed ?p) ) (:action file-F5 :parameters (?p) :precondition (and (haveF5) (has-type ?p) (goes-in ?p F5)) :effect (filed ?p) ) (:action file-F6 :parameters (?p) :precondition (and (haveF6) (has-type ?p) (goes-in ?p F6)) :effect (filed ?p) ) (:action file-F7 :parameters (?p) :precondition (and (haveF7) (has-type ?p) (goes-in ?p F7)) :effect (filed ?p) ) (:action file-F8 :parameters (?p) :precondition (and (haveF8) (has-type ?p) (goes-in ?p F8)) :effect (filed ?p) ) (:action file-F9 :parameters (?p) :precondition (and (haveF9) (has-type ?p) (goes-in ?p F9)) :effect (filed ?p) ) (:action return-F0 :precondition (haveF0) :effect (not (haveF0)) ) (:action return-F1 :precondition (haveF1) :effect (not (haveF1)) ) (:action return-F2 :precondition (haveF2) :effect (not (haveF2)) ) (:action return-F3 :precondition (haveF3) :effect (not (haveF3)) ) (:action return-F4 :precondition (haveF4) :effect (not (haveF4)) ) (:action return-F5 :precondition (haveF5) :effect (not (haveF5)) ) (:action return-F6 :precondition (haveF6) :effect (not (haveF6)) ) (:action return-F7 :precondition (haveF7) :effect (not (haveF7)) ) (:action return-F8 :precondition (haveF8) :effect (not (haveF8)) ) (:action return-F9 :precondition (haveF9) :effect (not (haveF9)) ) ) (define (problem file-prob) (:domain file-world) (:objects p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16 p17 p18 p19 p20 p21 p22 p23 p24 p25 p26 p27 p28 p29 p30 p31 p32 p33 p34 p35 p36 p37 p38 p39 p40 p41 p42 p43 p44 p45 p46 p47 p48 p49 ) (:goal (and (filed p0) (filed p1) (filed p2) (filed p3) (filed p4) (filed p5) (filed p6) (filed p7) (filed p8) (filed p9) (filed p10) (filed p11) (filed p12) (filed p13) (filed p14) (filed p15) (filed p16) (filed p17) (filed p18) (filed p19) (filed p20) (filed p21) (filed p22) (filed p23) (filed p24) (filed p25) (filed p26) (filed p27) (filed p28) (filed p29) (filed p30) (filed p31) (filed p32) (filed p33) (filed p34) (filed p35) (filed p36) (filed p37) (filed p38) (filed p39) (filed p40) (filed p41) (filed p42) (filed p43) (filed p44) (filed p45) (filed p46) (filed p47) (filed p48) (filed p49) )) (:goal-reward 500) (:metric maximize (reward)) )