In this thesis we study automated planning, a branch of artificial intelligence, which deals with the construction of plans. A plan is typically an action sequence that achieves some specific goal. In particular, we study unsolvable planning instances, i.e. when there is no plan. Historically, this topic has been neglected by the planning community, and up to recently the International Planning Competition only evaluated planners on solvable planning instances. For many applications we can know, for instance by design, that there is a solution, but this cannot be a general assumption. One example is penetration testing in computer security, where a system is considered safe if there is no plan for intrusion. Other examples are resource bounded planning instances that have insufficient resources to achieve the goal.The main theme of this thesis is to use variable projection to prove unsolvability of planning instances. We implement and evaluate two planners: the first checks variable projections with the goal of finding an unsolvable projection, and the second builds a pattern collection to provide dead-end detection. In addition to comparing these planners to existing planners, we also utilise a large computer cluster to statistically assess whether they can be optimised further. On the benchmarks of planning instances that we used, it turns out that further improvement is likely to come from supplementary techniques rather than further optimisation. We pursue this and enhanced variable projections with mutexes, which yields a very competitive planner. We also inspect whether unsolvable variable projections tend to be composed of variables that play different roles, i.e. they are not 'similar'. We devise a variable similarity measure to rate how similar two variables are, and statistically analyse this. The measure can differentiate between unsolvable and solvable planning instances quite well, and is integrated into our planners. We also define a binary version of the measure, namely, that two variables are isomorphic if they behave in exactly the same way in some optimal solution (extremely similar). With the help of isomorphic variables we identify a computationally tractable class of planning instances that meet certain restrictions. There are several special cases of this class that are of practical interest, and this result encompass them.
This work has been supported by the Theoretical Computer Science Laboratory, Department of Computer and Information Science, Linköping University, and in part by CUGS (the National Graduate School in Computer Science, Sweden).i
Populärvetenskaplig sammanfattningI den här avhandlingen studerar vi automatisk planering, vilket är ett nyckelområde inom artificiell intelligens. Planering är att tänka innan man handlar för att uppnå ett specificerat mål. Motsatsen till detta är att enbart handla reaktivt på vad som sker ögonblickligen. Planering använder sig av kunskap om världen för att konstruera en plan för vad som behöver göras, och i vilken ordning. Normalt tar vi...