Contributors: Adam Green,
PDDL 1.2 (Ghallab et al., 1998) formed the basis of the 1998 AIPS Competition. PDDL 1.2 is based largely on concepts set out for STRIPS, a sort of precursor languages which used a similar design pattern for describing problems through the use of predicates and actions.
Problems in PDDL are defined in two parts, a domain and a problem file. The following sections divide respectively, representing constituent parts of the domain and the problem.
(define (domain construction) (:extends building) (:requirements :strips :typing) (:types site material - object bricks cables windows - material ) (:constants mainsite - site) ;(:domain-variables ) ;deprecated (:predicates (walls-built ?s - site) (windows-fitted ?s - site) (foundations-set ?s - site) (cables-installed ?s - site) (site-built ?s - site) (on-site ?m - material ?s - site) (material-used ?m - material) ) (:timeless (foundations-set mainsite)) ;(:safety ;(forall ; (?s - site) (walls-built ?s))) ;deprecated (:action BUILD-WALL :parameters (?s - site ?b - bricks) :precondition (and (on-site ?b ?s) (foundations-set ?s) (not (walls-built ?s)) (not (material-used ?b)) ) :effect (and (walls-built ?s) (material-used ?b) ) ; :expansion ;deprecated ) (:axiom :vars (?s - site) :context (and (walls-built ?s) (windows-fitted ?s) (cables-installed ?s) ) :implies (site-built ?s) ) ;Actions omitted for brevity )
(define (problem buildingahouse) (:domain construction) ;(:situation <situation_name>) ;deprecated (:objects s1 - site b - bricks w - windows c - cables ) (:init (on-site b s1) (on-site c s1) (on-site w s1) ) (:goal (and (walls-built ?s1) (cables-installed ?s1) (windows-fitted ?s1) ) ) )
- Ghallab, M., Knoblock, C., Wilkins, D., Barrett, A., Christianson, D., Friedman, M., Kwok, C., Golden, K., Penberthy, S., Smith, D., Sun, Y., & Weld, D. (1998). PDDL - The Planning Domain Definition Language.