;; original name logistics.a ;; extended version of logistics_facts7h ;; #actions 54 #states 10^11 ;; ;; note: by going to a non-typed representation ;; of the problems, the instances become (somewhat) ;; harder to solve. ;; (larger propositional representation) ;; ;; Added metric values (Wolf). (define (problem log004) (:domain logistics-metric) (:length (:parallel 11)) (:domain-variables ;; Define all the connections in the city graph (?dist[la-airport,la-airport] 0) (?dist[bos-airport,bos-airport] 0) (?dist[pgh-airport,pgh-airport] 0) (?dist[pgh-airport,la-airport] 2500) (?dist[pgh-airport,bos-airport] 800) (?dist[la-airport,bos-airport] 3000) (?dist[la-airport,pgh-airport] 2500) (?dist[bos-airport,pgh-airport] 800) (?dist[bos-airport,la-airport] 3000) ;; Amount of fuel the vehicles can carry (max). ;; Note that airplane1 _cannot_ make the east coast - west coast runs. (?capacity[airplane1] 400) (?capacity[airplane2] 2000) (?capacity[pgh-truck] 100) (?capacity[bos-truck] 100) (?capacity[la-truck] 100) ;; How much fuel does one leg of a truck's trip take? (?truck_trip 20) ;; How much fuel (minimum) does one leg of an airplane trip take? ;; (Simulates takeoff/landing) (?airplane_trip 50) ;; Miles per gallon of fuel for the plane. (?plane_mpg 3) - float ;; Initial fuel levels. (?fuel[airplane1] 100) (?fuel[airplane2] 100) (?fuel[pgh-truck] 20) (?fuel[bos-truck] 20) (?fuel[la-truck] 20) - fluent) (:objects package1 package2 package3 package4 package5 package6 package7 package8 - OBJ airplane1 airplane2 - AIRPLANE pgh bos la - CITY pgh-truck bos-truck la-truck - TRUCK pgh-po bos-po la-po pgh-central bos-central la-central - LOCATION pgh-airport bos-airport la-airport - AIRPORT ) (:init (in-city pgh-po pgh) (in-city pgh-airport pgh) (in-city pgh-central pgh) (in-city bos-po bos) (in-city bos-airport bos) (in-city bos-central bos) (in-city la-po la) (in-city la-airport la) (in-city la-central la) ;; Vehicles can refuel at these locations. ;; Might be interesting to make one (some) of the airports ;; non-depots. (depot bos-airport) (depot pgh-airport) (depot la-airport) (at package1 pgh-po) (at package2 pgh-po) (at package3 pgh-po) (at package4 pgh-po) (at package5 bos-po) (at package6 bos-po) (at package7 bos-po) (at package8 la-po) (at airplane1 pgh-airport) (at airplane2 pgh-airport) (at bos-truck bos-po) (at pgh-truck pgh-po) (at la-truck la-po) ) (:goal (and (at package1 bos-po) (at package2 bos-airport) (at package3 la-po) (at package4 la-airport) (at package5 pgh-po) (at package6 pgh-airport) (at package7 pgh-po) (at package8 pgh-po) )) )