The body of this thesis is structured around the three key contributions outlined above, and according to the same order: (1) plan decomposition, (2) continuing plan quality optimisation, and (3) macro generation. The necessary background in the literature, empirical results with analysis, and related work to the above contributions are discussed separately in the relevant chapters.
We discuss the plan decomposition and macro generation separately in Chapters 2 and 6 respectively. Particularly Chapter 2 describes our novel block-structured plan deordering technique, showing how it is capable of decomposing a plan into encap- sulated subplans, and removes the inherent limitations of existing plan deordering techniques. Chapter 6 describes our new method BloMathat learns domain-specific macros from block decomposed plans, showing how it is able to capture longer macros representing high-level activities useful for improving planners’ efficiency and coverage.
The LNS-based continuing plan quality optimisation, being the biggest and the most important contribution of this thesis, is further divided into three parts: (1) LNS applied to plan optimisation, (2) windowing, and (3) on-line adaptation. These are discussed in Chapters 3, 4, and 5 respectively. Chapter 3 provides an overview
§1.4 Thesis Outline 11
of our plan quality optimisation system, BDPO2, followed by a discussion of the LNS part of BDPO2. This chapter also presents the experimental setups used to evaluate BDPO2 and the main empirical results. Chapter 4, as mentioned, presents a detailed discussion of the windowing strategies, showing how to extract candidate subplans from block decomposed plans, and rank those based on how likely they are to be improved. In Chapter 5, we describe how we can learn, over the course of local optimisation process, the relative success rate of different subplanners, window generation strategies, and ranking policies on the current problem, in order to adapt the system to the current problem.
Finally Chapter 7 concludes the thesis, describing how the contributions have identified, quantified, and addressed the challenges of plan decomposition, continu- ing plan quality optimisation, and macro generation. Also, it outlines ideas for future research.
Chapter2
Plan Decomposition
This chapter provides necessary background on classical planning and plan deorder- ing, followed by a detailed discussion of our contributions: (1) Block decomposed partially ordered plans (a new form of partially ordered plans), and (2) block de- ordering, the process of transforming a sequential or standard partially ordered plan into a block decomposed partially ordered plan. In describing block deordering, we show how decomposing a plan into meaningful non-interleaving subplans can re- lax the ordering constraints between these subplans, which allows deordering of a plan also in some cases where no deordering is possible by the conventional plan deordering techniques.
We structure this chapter as follows. Section 2.2 provides necessary background and existing techniques in the literature on plan decomposition. Sections 2.3 de- scribes the formation and validity of our proposed block decomposed partially or- dered plan, and how such plans differ from the standard partially ordered plans. Section 2.4 presents necessary conditions and their correctness under which adding blocks to a block decomposition admits the removal of basic ordering constraints. Section 2.5 describes our complete block deordering algorithm. The results of our experiments, run over a large collection of benchmark problems, are analyzed in Section 2.6 where we justify the importance of this plan decomposition.
This chapter describes work published as “Block-Structured Plan Deordering” [Siddiqui and Haslum, 2012]. However, the theory and practice of block deordering presented here is slightly different from the published account. To be specific, we introduce here the notion of threat protection ordering (described in Section 2.4) that contrasts the semantics of block decomposed partially ordered plans with the traditional partially ordered plans in a clearer way. Explicitly checking this ordering during the process of block deordering allows us to do further deordering in some cases. This thesis also explains in more details the correctness of the deordering rules.
2.1
Introduction
Plan decomposition, in general, divides a plan into subplans. A meaningful de- composition of a plan can facilitate post-plan generation tasks, such as scheduling
the plan for improved efficiency or robustness, or breaking it into subplans for dis- tributed execution, etc. We are interested in decomposing a plan into subplans that are more coherent and exhibit little interference with other parts of the plan. We find such a decomposition useful for relaxing the ordering constraints between the subplans, which in turn helps to formulate subplans suitable for local optimisation and macro generation – the two other topics of this thesis. However, coherent sub- plans are not easy to extract from a, typically sequential, input plan, because of having unnecessary ordering constraints among the plan steps. Therefore, a key step is removing unnecessary ordering constraints from the input plan. This process is called plan deordering. The importance of deordering is clearly seen in our experi- ment (described in Section 3.9) on plan quality optimisations, where the input plans were already of high quality. In that experiment, the total quality improvements (measured by the average IPC quality score) found by our plan improvement system BDPO2 without performing any deordering is 28.7% less than that found by BDPO2 using our plan deordering technique.
The standard notion of a valid partially ordered plan requires all unordered steps in the plan to be non-interfering (i.e., for two subsequences of the plan to be un- ordered, every interleaving of steps from the two must form a valid execution). This limits the amount of deordering that can be done, in some cases to the extent that no deordering of a sequential plan is possible. (An example of this situation is shown in Figure 2.3 on page 22.) To remedy this, we have introduced block deordering [Sid- diqui and Haslum, 2012], which creates a hierarchical decomposition of the plan into non-interleaving blocks and deorders these blocks. This makes it possible to deorder plans further, including in some cases where conventional, “step-wise”, deordering is not possible. (Again, an example can be found in Figure 2.3 on page 22.)