;; 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 block59) (on-top-of block59 block60) (on-top-of block60 block61) (on-top-of block61 block62) (on-top-of block62 block63) (on-top-of block63 block64) (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 table) (on-top-of block71 table) (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 block113) (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 block121) (on-top-of block121 block122) (on-top-of block122 block123) (on-top-of block123 table) (on-top-of block124 table) ) (:goal (and (on-top-of block0 block4) (on-top-of block4 block81) (on-top-of block81 block13) (on-top-of block13 block29) (on-top-of block29 block75) (on-top-of block75 block19) (on-top-of block19 block96) (on-top-of block96 block118) (on-top-of block118 block87) (on-top-of block87 block47) (on-top-of block47 block89) (on-top-of block89 block104) (on-top-of block104 block56) (on-top-of block56 block50) (on-top-of block50 block63) (on-top-of block63 block80) (on-top-of block80 block98) (on-top-of block98 block58) (on-top-of block58 block40) (on-top-of block40 block74) (on-top-of block74 block48) (on-top-of block48 block42) (on-top-of block42 block53) (on-top-of block53 block5) (on-top-of block5 block15) (on-top-of block15 block55) (on-top-of block55 block109) (on-top-of block109 block2) (on-top-of block2 block111) (on-top-of block111 block51) (on-top-of block51 block57) (on-top-of block57 block92) (on-top-of block92 block115) (on-top-of block115 block93) (on-top-of block93 block59) (on-top-of block59 block14) (on-top-of block14 block67) (on-top-of block67 block73) (on-top-of block73 block7) (on-top-of block7 block88) (on-top-of block88 block117) (on-top-of block117 block11) (on-top-of block11 block84) (on-top-of block84 block6) (on-top-of block6 block49) (on-top-of block49 block9) (on-top-of block9 block33) (on-top-of block33 block64) (on-top-of block64 block38) (on-top-of block38 block66) (on-top-of block66 block99) (on-top-of block99 block23) (on-top-of block23 block100) (on-top-of block100 block116) (on-top-of block116 block43) (on-top-of block43 block105) (on-top-of block105 block79) (on-top-of block79 block70) (on-top-of block70 block123) (on-top-of block123 block108) (on-top-of block108 block77) (on-top-of block77 block31) (on-top-of block31 block68) (on-top-of block68 block90) (on-top-of block90 block34) (on-top-of block34 block110) (on-top-of block110 block28) (on-top-of block28 block86) (on-top-of block86 block1) (on-top-of block1 block62) (on-top-of block62 block24) (on-top-of block24 block46) (on-top-of block46 block16) (on-top-of block16 block82) (on-top-of block82 block122) (on-top-of block122 block69) (on-top-of block69 block20) (on-top-of block20 block8) (on-top-of block8 block36) (on-top-of block36 block102) (on-top-of block102 block41) (on-top-of block41 table) (on-top-of block97 block120) (on-top-of block120 block114) (on-top-of block114 block10) (on-top-of block10 block65) (on-top-of block65 block112) (on-top-of block112 block45) (on-top-of block45 block113) (on-top-of block113 block18) (on-top-of block18 block61) (on-top-of block61 block72) (on-top-of block72 block95) (on-top-of block95 block91) (on-top-of block91 block30) (on-top-of block30 block27) (on-top-of block27 block25) (on-top-of block25 block17) (on-top-of block17 block60) (on-top-of block60 block22) (on-top-of block22 block37) (on-top-of block37 block32) (on-top-of block32 block44) (on-top-of block44 block26) (on-top-of block26 block76) (on-top-of block76 block35) (on-top-of block35 block103) (on-top-of block103 block121) (on-top-of block121 block52) (on-top-of block52 block83) (on-top-of block83 block107) (on-top-of block107 block39) (on-top-of block39 block21) (on-top-of block21 block54) (on-top-of block54 block101) (on-top-of block101 block94) (on-top-of block94 block78) (on-top-of block78 block3) (on-top-of block3 block85) (on-top-of block85 table) (on-top-of block119 block71) (on-top-of block71 block106) (on-top-of block106 block124) (on-top-of block124 block12) (on-top-of block12 table) ) ) (:goal-reward 500) )