Restore pddl

This commit is contained in:
Roman Andrianov 2022-09-05 13:28:39 +00:00 committed by Igor Brylyov
parent 0e79ec0ca0
commit b34c00a9b9
2 changed files with 54 additions and 2 deletions

View file

@ -6,12 +6,16 @@
printer workspace - zone
part
arm
assembly
)
(:predicates
(part_at ?p - part ?z - zone)
(printer_ready ?pr - printer)
(arm_available ?a - arm)
(part_at ?p - part ?z - zone)
(printer_ready ?p - printer)
(part_of ?part - part ?whole - assembly)
(assembly_order ?prev ?next - assembly)
(assembled ?whole - assembly ?z - zone)
)
(:functions)
@ -23,6 +27,7 @@
(at start(printer_ready ?pr))
)
:effect (and
(at start (not (printer_ready ?pr)))
(at end(part_at ?p ?pr))
)
)
@ -41,4 +46,22 @@
(at end (printer_ready ?pr))
)
)
(:durative-action assemble
:parameters (?p - part ?prev ?next - assembly ?w - workspace ?arm - arm)
:duration (= ?duration 5)
:condition (and
(at start (assembled ?prev ?w))
(at start (part-at ?p ?w))
(at start (part-of ?p ?next))
(at start (arm-available ?arm))
(at start (assembly-order ?prev ?next))
)
:effect (and
(at start (not (arm-available ?arm)))
(at end (not (part-at ?p ?w)))
(at end (arm-available ?arm))
(at end (assembled ?next ?w))
)
)
);; end Domain ;;;;;;;;;;;;;;;;;;;;;;;;

View file

@ -0,0 +1,29 @@
(define (problem p1)
(:domain robossembler)
(:objects
;; information from Scene
rasmt - arm
printer1 printer2 - printer
workspace1 - workspace
;; information from CAD
part1 part2 - part
subasm0 subasm1 subasm2 - assembly
)
(:init
;; information from Scene
(printer-ready printer1)
(printer-ready printer2)
(arm-available rasmt)
;; information from CAD
(assembled subasm0 workspace1)
(part-of part1 subasm1)
(part-of part2 subasm2)
(assembly-order subasm0 subasm1)
(assembly-order subasm1 subasm2)
)
(:goal (and
;; information from CAD
(assembled subasm2 workspace1)
)
)
)