;; Generated by blocksworld generator ;; http://www.cs.rutgers.edu/~jasmuth/blocksworld.tar.gz ;; by John Asmuth (jasmuth@cs.rutgers.edu) (define (domain blocks-domain) (:requirements :adl :probabilistic-effects :fluents :rewards) (:types block table) (:constants table - table) (:predicates (holding ?block - block) (on-top-of ?block - block ?obj) ) (:action pick-up-block-from :parameters (?top - block ?bottom) :precondition (and (not (= ?top ?bottom)) (forall (?b - block) (not (holding ?b))) (on-top-of ?top ?bottom) (forall (?b - block) (not (on-top-of ?b ?top)))) :effect (and (decrease (reward) 1) (probabilistic 0.75 (and (holding ?top) (not (on-top-of ?top ?bottom))) 0.25 (when (not (= ?bottom table)) (and (not (on-top-of ?top ?bottom)) (on-top-of ?top table)))) ) ) (:action put-down-block-on :parameters (?top - block ?bottom) :precondition (and (not (= ?top ?bottom)) (holding ?top) (or (= ?bottom table) (forall (?b - block) (not (on-top-of ?b ?bottom))))) :effect (not (holding ?top)) (probabilistic 0.75 (on-top-of ?top ?bottom) 0.25 (on-top-of ?top table)) ) ) (define (problem blocks-problem) (:domain blocks-domain) (:objects block0 block1 block2 block3 block4 block5 block6 block7 block8 block9 block10 block11 block12 block13 block14 block15 block16 block17 block18 block19 block20 block21 block22 block23 block24 block25 block26 block27 block28 block29 block30 block31 block32 block33 block34 block35 block36 block37 block38 block39 block40 block41 block42 block43 block44 block45 block46 block47 block48 block49 block50 block51 block52 block53 block54 block55 block56 block57 block58 block59 block60 block61 block62 block63 block64 block65 block66 block67 block68 block69 block70 block71 block72 block73 block74 block75 block76 block77 block78 block79 block80 block81 block82 block83 block84 block85 block86 block87 block88 block89 block90 block91 block92 block93 block94 block95 block96 block97 block98 block99 block100 block101 block102 block103 block104 block105 block106 block107 block108 block109 block110 block111 block112 block113 block114 block115 block116 block117 block118 block119 block120 block121 block122 block123 block124 - block) (:init (on-top-of block0 block1) (on-top-of block1 block2) (on-top-of block2 block3) (on-top-of block3 block4) (on-top-of block4 block5) (on-top-of block5 block6) (on-top-of block6 block7) (on-top-of block7 block8) (on-top-of block8 block9) (on-top-of block9 block10) (on-top-of block10 block11) (on-top-of block11 block12) (on-top-of block12 block13) (on-top-of block13 block14) (on-top-of block14 block15) (on-top-of block15 block16) (on-top-of block16 block17) (on-top-of block17 block18) (on-top-of block18 block19) (on-top-of block19 block20) (on-top-of block20 block21) (on-top-of block21 block22) (on-top-of block22 block23) (on-top-of block23 block24) (on-top-of block24 block25) (on-top-of block25 block26) (on-top-of block26 block27) (on-top-of block27 block28) (on-top-of block28 block29) (on-top-of block29 block30) (on-top-of block30 block31) (on-top-of block31 block32) (on-top-of block32 block33) (on-top-of block33 block34) (on-top-of block34 block35) (on-top-of block35 block36) (on-top-of block36 block37) (on-top-of block37 block38) (on-top-of block38 block39) (on-top-of block39 block40) (on-top-of block40 block41) (on-top-of block41 block42) (on-top-of block42 block43) (on-top-of block43 block44) (on-top-of block44 block45) (on-top-of block45 block46) (on-top-of block46 block47) (on-top-of block47 block48) (on-top-of block48 block49) (on-top-of block49 block50) (on-top-of block50 block51) (on-top-of block51 block52) (on-top-of block52 block53) (on-top-of block53 block54) (on-top-of block54 block55) (on-top-of block55 block56) (on-top-of block56 block57) (on-top-of block57 block58) (on-top-of block58 table) (on-top-of block59 block60) (on-top-of block60 block61) (on-top-of block61 block62) (on-top-of block62 block63) (on-top-of block63 table) (on-top-of block64 block65) (on-top-of block65 block66) (on-top-of block66 block67) (on-top-of block67 block68) (on-top-of block68 block69) (on-top-of block69 block70) (on-top-of block70 block71) (on-top-of block71 block72) (on-top-of block72 block73) (on-top-of block73 block74) (on-top-of block74 block75) (on-top-of block75 block76) (on-top-of block76 block77) (on-top-of block77 block78) (on-top-of block78 block79) (on-top-of block79 block80) (on-top-of block80 block81) (on-top-of block81 block82) (on-top-of block82 block83) (on-top-of block83 block84) (on-top-of block84 block85) (on-top-of block85 block86) (on-top-of block86 block87) (on-top-of block87 block88) (on-top-of block88 block89) (on-top-of block89 block90) (on-top-of block90 block91) (on-top-of block91 block92) (on-top-of block92 block93) (on-top-of block93 block94) (on-top-of block94 block95) (on-top-of block95 block96) (on-top-of block96 block97) (on-top-of block97 block98) (on-top-of block98 block99) (on-top-of block99 block100) (on-top-of block100 block101) (on-top-of block101 block102) (on-top-of block102 block103) (on-top-of block103 block104) (on-top-of block104 block105) (on-top-of block105 block106) (on-top-of block106 block107) (on-top-of block107 block108) (on-top-of block108 block109) (on-top-of block109 block110) (on-top-of block110 block111) (on-top-of block111 block112) (on-top-of block112 table) (on-top-of block113 block114) (on-top-of block114 block115) (on-top-of block115 block116) (on-top-of block116 block117) (on-top-of block117 block118) (on-top-of block118 block119) (on-top-of block119 block120) (on-top-of block120 table) (on-top-of block121 table) (on-top-of block122 table) (on-top-of block123 table) (on-top-of block124 table) ) (:goal (and (on-top-of block0 block101) (on-top-of block101 block3) (on-top-of block3 block54) (on-top-of block54 block58) (on-top-of block58 block14) (on-top-of block14 block18) (on-top-of block18 block6) (on-top-of block6 block8) (on-top-of block8 block123) (on-top-of block123 block47) (on-top-of block47 block32) (on-top-of block32 block42) (on-top-of block42 block119) (on-top-of block119 block103) (on-top-of block103 block60) (on-top-of block60 block37) (on-top-of block37 block4) (on-top-of block4 block27) (on-top-of block27 block28) (on-top-of block28 block68) (on-top-of block68 block30) (on-top-of block30 block105) (on-top-of block105 block94) (on-top-of block94 block108) (on-top-of block108 block19) (on-top-of block19 block55) (on-top-of block55 block91) (on-top-of block91 block57) (on-top-of block57 block93) (on-top-of block93 block78) (on-top-of block78 block23) (on-top-of block23 block110) (on-top-of block110 block81) (on-top-of block81 block69) (on-top-of block69 block90) (on-top-of block90 block84) (on-top-of block84 block50) (on-top-of block50 block17) (on-top-of block17 block41) (on-top-of block41 block22) (on-top-of block22 block79) (on-top-of block79 block98) (on-top-of block98 block12) (on-top-of block12 block86) (on-top-of block86 block124) (on-top-of block124 block73) (on-top-of block73 block16) (on-top-of block16 block117) (on-top-of block117 block59) (on-top-of block59 block122) (on-top-of block122 block102) (on-top-of block102 block31) (on-top-of block31 block82) (on-top-of block82 block115) (on-top-of block115 block96) (on-top-of block96 block33) (on-top-of block33 block67) (on-top-of block67 block121) (on-top-of block121 table) (on-top-of block7 block114) (on-top-of block114 block26) (on-top-of block26 block100) (on-top-of block100 table) (on-top-of block20 block107) (on-top-of block107 block75) (on-top-of block75 block40) (on-top-of block40 block76) (on-top-of block76 block62) (on-top-of block62 block99) (on-top-of block99 block2) (on-top-of block2 block70) (on-top-of block70 block38) (on-top-of block38 block64) (on-top-of block64 block88) (on-top-of block88 block83) (on-top-of block83 block11) (on-top-of block11 block120) (on-top-of block120 block72) (on-top-of block72 block43) (on-top-of block43 block13) (on-top-of block13 block77) (on-top-of block77 block1) (on-top-of block1 block35) (on-top-of block35 block66) (on-top-of block66 block45) (on-top-of block45 block51) (on-top-of block51 block39) (on-top-of block39 block52) (on-top-of block52 block46) (on-top-of block46 block53) (on-top-of block53 block85) (on-top-of block85 block48) (on-top-of block48 block92) (on-top-of block92 block118) (on-top-of block118 block63) (on-top-of block63 table) (on-top-of block106 table) (on-top-of block104 block97) (on-top-of block97 table) (on-top-of block109 block116) (on-top-of block116 block74) (on-top-of block74 block29) (on-top-of block29 block5) (on-top-of block5 block10) (on-top-of block10 block15) (on-top-of block15 block25) (on-top-of block25 block112) (on-top-of block112 block95) (on-top-of block95 block24) (on-top-of block24 block61) (on-top-of block61 block36) (on-top-of block36 table) (on-top-of block49 block113) (on-top-of block113 block80) (on-top-of block80 block65) (on-top-of block65 block111) (on-top-of block111 block71) (on-top-of block71 table) (on-top-of block87 block9) (on-top-of block9 block44) (on-top-of block44 block56) (on-top-of block56 block89) (on-top-of block89 block21) (on-top-of block21 block34) (on-top-of block34 table) ) ) (:goal-reward 500) )