My research is in the area of Artificial Intelligence Planning. Given some initial state of the world, a plan says what to do, and when to do it, in order to achieve some goals. Research in AI planning explores how the process of finding a plan can be automated, using a planner. As the number of combinations of actions is large, planning systems must be able to make intelligent decisions in order to solve problems: exploration of all possible combinations of actions is computationally infeasible.

Tell me more...

I am particularly interested in planning for problems where time matters and/or where there are costs and rewards on actions. Sometimes, these are inter-related. Anyone who has bought a train ticket to London will know that the time of day matters: it affects the cost of the ticket, and the transport options available. We could find a plan by ignoring time, just making sure the legs of the journey are connected, but it wouldn't be a great plan: we might have to wait a long time for a connection, or pay a high fare. Thus, for automated planning to really be useful here, it has to take time (and costs) into account.

This phenomenon arises in all sorts of interesting problems. One project I am involved in is looking at Planning Surveillance Activities. For instance, if we are trying to locate people who have been stranded after flooding, and we have some information about where they were last seen, and in which direction they were heading, then this informs our plan of where to go and when, to maximise the likelihood of finding them. Of course, this is hard, but all the most interesting research problems are hard.

So what is a planner?

A planner is a piece of software. It takes a description of the current state of the world; the actions that could be taken; and the goals that need to be met. Using a combination of techniques, it then searches for a plan, by considering various sequences of actions. Most of my work is on developing anytime planners that try to find some plan quickly; then carry on searching to find a better one.


I have written several planners over the years. They are all freely available.


OPTIC is a temporal planner for use in problems where plan cost is determined by preferences or time-dependent goal-collection costs. Such problems arise in a range of interesting situations, from scheduling the delivery of perishable goods, to coordinating order-fulfillment activities in warehouses.

Find out more about OPTIC »


The award-winning planner POPF was inspired by the idea of searching forwards for a plan from the initial state, whilst minimising the number of ordering constraints added between the actions in the plan. This leads to plans that have greater scope for performing actions in parallel, and consequently, complete in less time.

Find out more about POPF »


COLIN was the first PDDL planner to support (linear) continuous numeric change. A common use for this capability is modelling numeric resource levels such as battery charged that are continuously changed by an action, and need to be managed carefully in order to produce a plan.

Find out more about COLIN »


See my profile on Google Scholar or the King's PURE system, though the former is more complete.

Professional Activities

Programme Committee Memberships

Event Organisation

Reviewer for

Invited Presentations