Wat is PDDL?
Een standaard schrijftaal om planningsproblemen voor AI-systemen te beschrijven: wat is de beginsituatie, wat mag je doen, en wat wil je bereiken?

Wat is PDDL eigenlijk?
Stel je voor dat je een verhuizing plant. Je hebt dozen, kamers, een busje en helpers. Je weet waar alles nu staat, wat je mag doen (dozen tillen, busje laden), en wat je doel is (alles in het nieuwe huis). PDDL is een soort universele taal om dit soort problemen op te schrijven — maar dan voor computers.
PDDL staat voor Planning Domain Definition Language. Het is een standaard manier om planningsproblemen te beschrijven voor AI-systemen. Je schrijft in PDDL:
De beginsituatie (initial state): dozen staan in kamer A, busje is leeg
De acties die mogelijk zijn: pak doos, zet doos in busje, rijd naar locatie B
Het doel (goal): alle dozen staan in het nieuwe huis
Een AI-planner leest dit bestand en bedenkt automatisch de beste volgorde van acties om van begin naar eind te komen. PDDL zorgt ervoor dat planners van verschillende makers hetzelfde probleem kunnen begrijpen — net zoals HTML ervoor zorgt dat elke browser een website kan weergeven.
Hoe werkt het eigenlijk?
PDDL bestaat uit twee delen: het domein en het probleem.
Het domein beschrijft de algemene regels van jouw wereld. Bij een verhuizing: wat betekent het om een doos te pakken? Je hebt lege handen nodig, de doos moet ergens staan, en na de actie heb je de doos vast. Dit schrijf je op als een actie met precondities (wat moet waar zijn voordat je het mag doen) en effecten (wat verandert erna).
Het probleem beschrijft één specifieke situatie: deze drie dozen, dit busje, deze twee locaties, dit doel. Hetzelfde domein kun je hergebruiken voor duizend verschillende verhuizingen.
Een planner zoekt dan automatisch naar een reeks acties die van de beginsituatie naar het doel leidt. Sommige planners werken vooruit (wat kan ik nu doen?), andere werken achteruit (wat moet er gebeurd zijn om mijn doel te bereiken?).
Een voorbeeld uit de praktijk
Logistieke bedrijven gebruiken PDDL-achtige systemen om routes te plannen: welke vrachtwagen pakt welke pakketjes op, in welke volgorde, om alles op tijd af te leveren? De beginsituatie is de huidige voorraad en locaties, de acties zijn laden/lossen/rijden, het doel is dat elk pakket op zijn bestemming aankomt.
In robotica gebruik je PDDL om een robot taken te laten uitvoeren. Stel: een magazijnrobot moet drie producten verzamelen. Het domein beschrijft acties als 'rijd naar schap', 'pak product', 'leg in mand'. Het probleem beschrijft welke producten waar staan en waar ze naartoe moeten. De planner bedenkt de efficiëntste route.
In games gebruiken ontwikkelaars PDDL-varianten voor slimme NPC's (non-player characters) die dynamisch reageren. In plaats van vooraf geschreven scripts, plant de AI zelf hoe een karakter zijn doel bereikt — bijvoorbeeld een bewaker die een indringer achtervolgt en ondertussen versterking oproept.
Waar kom je het tegen?
PDDL wordt vooral gebruikt in onderzoek en gespecialiseerde toepassingen:
Fast Downward — een veel gebruikte open-source planner uit academisch onderzoek
LAMA — een andere krachtige planner die goed werkt voor grote problemen
ROS (Robot Operating System) — heeft modules die PDDL-planners integreren voor robotbesturing
STRIPS — de voorloper van PDDL, nog steeds een term die je tegenkomt in planningstechnieken
Daarnaast zie je PDDL-achtige systemen (vaak verpakt in eigen formaten) terug in logistieke software, warehouse management en sommige AI-assistenten die meerdere stappen moeten coördineren.
Waarom zou jij hier iets aan hebben?
Als je te maken hebt met complexe processen waar veel variabelen bij komen kijken — denk aan productie, logistiek, resource planning — dan kan PDDL-achtige planning helpen. In plaats van alles handmatig uit te dokteren, beschrijf je de regels één keer, en de AI bedenkt telkens opnieuw de beste aanpak voor een nieuwe situatie.
Ook als je interesse hebt in hoe AI beslissingen neemt: PDDL laat mooi zien dat intelligentie niet altijd neurale netwerken hoeft te betekenen. Soms is het gewoon slim zoeken door mogelijkheden — met een duidelijke taal om het probleem te beschrijven. Als je ooit een complexe puzzel hebt opgelost door systematisch mogelijkheden af te gaan, begrijp je al hoe een PDDL-planner denkt.
Veelgestelde vragen over PDDL
De drie meest gestelde vragen over dit onderwerp, kort beantwoord.
Wat is PDDL?
Een standaard schrijftaal om planningsproblemen voor AI-systemen te beschrijven: wat is de beginsituatie, wat mag je doen, en wat wil je bereiken?
Waarom is PDDL belangrijk?
Stel je voor dat je een verhuizing plant. Je hebt dozen, kamers, een busje en helpers. Je weet waar alles nu staat, wat je mag doen (dozen tillen, busje laden), en wat je doel is (alles in het nieuwe huis). PDDL is een soort universele taal om dit soort problemen op te schrijven — maar dan voor computers.
Hoe wordt PDDL toegepast?
PDDL staat voor Planning Domain Definition Language. Het is een standaard manier om planningsproblemen te beschrijven voor AI-systemen. Je schrijft in PDDL: