<p>The question doesn't really make sense: <a href="https://en.wikipedia.org/wiki/Planning_Domain_Definition_Language" rel="nofollow noreferrer">PDDL</a> is a <em>description language</em> that is used to formulate a problem. This description then is the <em>input</em> to a <a href="https://en.wikipedia.org/wiki/Automated_planning_and_scheduling" rel="nofollow noreferrer">planner</a>; how the planner arrives at the intended solution is not related to the PDDL description.</p>

<p>There are <a href="https://en.wikipedia.org/wiki/Automated_planning_and_scheduling#Algorithms_for_planning" rel="nofollow noreferrer">a number of planning algorithms</a>, and you can implement any of them to make use of a PDDL description. The output of the solver is a plan, which is usually an ordered sequence of actions, and a tree or graph structure might be a good way of capturing this.</p>

CC BY-SA 4.0
2019-04-24T12:36:54.003Z
2019-04-24T12:36:54.003Z
Oliver Mason
<p>As far as I know, in PDDL, an environment is designed as well as the initial state described. When we describe the target state, the solver creates some sort of a graph. How is the graph built and what are the keys (keywords) in PDDL referring to?</p>
<p>I know that there are many flavours of PDDL, but let's go with the standard or the most common version of PDDL.</p>

<planning><pddl>
How does a PDDL solver find a solution for a given problem?
Bryan McGill
# How does a PDDL solver find a solution for a given problem?

(Asked by: username_0 on 2019-04-24)

As far as I know, in PDDL, an environment is designed as well as the initial state described. When we describe the target state, the solver creates some sort of a graph. How is the graph built and what are the keys (keywords) in PDDL referring to?

I know that there are many flavours of PDDL, but let's go with the standard or the most common version of PDDL.

**Tags:** planning, pddl


---

## 1 answers

### Answer by username_1 on 2019-04-24. Score: 3

The question doesn't really make sense: [PDDL](https://en.wikipedia.org/wiki/Planning_Domain_Definition_Language) is a *description language* that is used to formulate a problem. This description then is the *input* to a [planner](https://en.wikipedia.org/wiki/Automated_planning_and_scheduling); how the planner arrives at the intended solution is not related to the PDDL description.

There are [a number of planning algorithms](https://en.wikipedia.org/wiki/Automated_planning_and_scheduling#Algorithms_for_planning), and you can implement any of them to make use of a PDDL description. The output of the solver is a plan, which is usually an ordered sequence of actions, and a tree or graph structure might be a good way of capturing this.


---

