<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>On the Use of Landmarks in LPG</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Francesco Benzi, Alfonso E. Gerevini, Alessandro Saetti, and Ivan Serina University of Brescia</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Domain-Independent planning is notoriously a very hard search problem. In the literature, several techniques for search control have been proposed in the context of various planning formalisms. In particular, Landmark techniques have been widely used in the planning community in order to guide the search process or to define heuristic functions. A Landmark can be defined as a logical expression, consisting of facts or actions, that certainly becomes true in any solution plan for that problem. In this work, we propose the use of Landmarks for the LPG planner, considering different design choices and analysing empirically its impact on the performance of the planner. Preliminary results show that these techniques can effectively improve the performance of LPG, obtaining results comparable with the state-of-the-art planner LAMA.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        In the last two decades a number of different techniques have been proposed in the
planning community in order to find a good quality solution plan for a given planning
problem using a reasonable amount of CPU time. In particular, planning through local
search and action graphs [
        <xref ref-type="bibr" rid="ref10 ref12 ref13 ref6 ref8">13, 10, 12, 6, 8</xref>
        ] has shown extremely good performances in
the context of fully-automated domain-independent planning. This approach is
implemented in the well-known LPG planner, which was awarded at two planning
competitions [
        <xref ref-type="bibr" rid="ref14 ref18">18, 14</xref>
        ] and has been widely used by the planning community, both as a reference
planner in many experimental studies comparing planner performance and as a
module incorporated into other reasoning systems or applications, e.g. [
        <xref ref-type="bibr" rid="ref16 ref17 ref19 ref20 ref24 ref26 ref5">5, 16, 17, 19, 20, 24,
26</xref>
        ]. Landmark techniques have been widely used in the planning community in order
to guide the search process or to define heuristic functions [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ]. A landmark is a fact
(a condition or property of the world state) or an action that certainly becomes true
in any solution plan for the input planning problem. Different kinds of landmarks and
orders between landmarks have been proposed and studied in literature. Finding all
possible landmarks and relative orders for a planning problem is computationally very
hard [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. This has made researchers conceive only approximate solutions [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], such as
methods that find only a subset of the landmarks and orders. Once landmarks have been
computed, there are different ways of using them. The two main families of methods
proposed in the literature consist in the use of landmarks to produce a heuristic
function and the use of landmarks to decompose the planning process in sub planning tasks
[
        <xref ref-type="bibr" rid="ref25">25</xref>
        ]. In this paper, we investigate the use of landmark techniques in the context of
planning through local search and action graphs, and we evaluate experimentally the impact
of their use on the performance of LPG. After a description of the search process in
LPG we give some basic definitions regarding landmarks and their computation. Then
we describe the use of landmarks in LPG, and we present the experimental analysis
we conducted with different options of our implementation of landmark techniques in
LPG. Finally we give conclusions and mention future work.
      </p>
    </sec>
    <sec id="sec-2">
      <title>Local Search in LPG</title>
      <p>
        Our framework is based on a local search in the context of the “planning through
planning graph analysis”, an approach introduced by Blum and Furst [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. The problem of
generating a plan is a search problem where the elements of the search space are
particular subgraphs of the planning graph representing partial plans. The local search method
of LPG for a planning graph G [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] of a given problem P is a process that, starting from
an initial subgraph G0 of G (a partial plan for P), transforms G0 into a solution of P
through the iterative application of some graph modifications that greedily improve the
quality of the current partial plan. Each modification is either an extension of the
subgraph to include a new action node of G, or a reduction of the subgraph to remove an
action node (and the relevant edges).
      </p>
      <p>Adding an action node to the subgraph corresponds to adding an action to the partial
plan represented by the subgraph (analogously to remove an action node). At any step
of the search process the set of actions that can be added or removed is determined by
the constraint violations that are present in the current subgraph of G. More precisely,
the search space is formed by the action subgraphs of the planning graph G, where an
action subgraph of G is defined in the following way:
Definition 1. An action subgraph A of a planning graph G is a subgraph of G such
that if a is an action node of G in A, then also the fact nodes of G corresponding to the
preconditions and positive effects of a are in A, together with the edges of G connecting
them to a.</p>
      <p>A solution subgraph (a final state of the search space) is defined in the following
way:
Definition 2. A solution subgraph of a planning graph G is an action subgraph As
containing the goal nodes of G and such that
– all the goal nodes and fact nodes corresponding to preconditions of actions in As
are supported;
– there is no mutually exclusive relation between action nodes.</p>
      <p>
        The first version of LPG [
        <xref ref-type="bibr" rid="ref10 ref11">10, 11</xref>
        ] was based on action graphs where each level may
contain an arbitrary number of action nodes, as in the usual definition of planning
graphs. The following versions of the system [
        <xref ref-type="bibr" rid="ref12 ref21 ref3 ref6 ref8 ref9">6, 12, 8, 3, 9, 21</xref>
        ] used a restricted class
of action graphs, called linear action graphs (or extensions of them in order to
support temporal and numeric information), combined with some additional data structures
supporting a more expressive action and plan representation according to the language
features of PDDL 2.1 and 2.2 [
        <xref ref-type="bibr" rid="ref2 ref4">4, 2</xref>
        ].
      </p>
      <p>Definition 3. A linear action graph (LA-graph) of G is an action graph of G in which
each level of actions contains at most one action node representing a domain action
and any number of “no-ops”.</p>
      <p>
        As shown in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], having only one action in each level of an LA-graph does not
prevent the generation of parallel (partially ordered) plans.
      </p>
      <p>The initial LA-graph contains only two special actions astart and aend, where aend
is the last action in any valid plan and its preconditions correspond to the goals of the
planning problem under consideration; similarly the initial facts represent the effects of
the special action astart, which is the first action in any valid plan. Each search step
identifies the neighborhood N (G) (successor states) of the current LA-graph G (search
state), which is a set of LA-graphs obtained from G by adding an action node to A or
removing an action node from A in an attempt to repair the earliest flawed level of G.1</p>
      <p>
        The elements in N (G) are evaluated using a heuristic evaluation function E [
        <xref ref-type="bibr" rid="ref6 ref8">6, 8</xref>
        ]
consisting of three weighed terms, estimating their additional search cost, execution
cost and temporal cost, i.e., the number of search steps required to repair the new flaws
introduced, their contribution to the plan quality and their contribution to the makespan
of the represented plan, respectively. An element of N (G) with the lowest combined
cost is then selected using a “noise parameter” randomizing the search to escape from
local minima [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>Landmark Techniques</title>
      <p>
        Although single fact (atomic formulae) landmarks are the most studied and used kind
of landmarks, also single action landmarks are receiving considerable attention
nowadays. More complex kinds of landmarks (i.e. conjunction of facts) are not used because
deriving them for a planning problem does not give any advantage, in terms of CPU
times: the benefits do not outweigh the efforts [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ].
      </p>
      <p>
        Let us concentrate on single fact landmarks. For a given planning problem, initial
and goal facts are, by definition, landmarks for that problem. Our commitment is the
computation of causal landmarks: facts that, for any solution plan, appear as a
precondition of an action in the plan [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]. Goal facts are returned too: we can see them as
preconditions of aend.
      </p>
      <p>
        If we want to use landmarks in a planning problem, we do not only need to know
which facts are landmarks, we also need to order the landmarks. This order is
fundamental to guide the creation of a solution plan: some facts must become true before
others in any solution plan. This is exactly why landmarks are really useful. The needed
information is thus a graph of landmarks, called Landmarks Graph (LG) or Landmarks
Generation Graph (LGG), where the nodes are the facts and the (directed) arcs are the
orders between facts [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. Depending on the convention used, arcs can go from goal
facts to initial facts or vice versa. Any cycle that is eventually generated must be
removed before planning starts [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. The presence of cycles is related, for example, to the
recurrence of the “arm free” fact in a “blocks world” planning domain, since “arm free”
switches between TRUE and FALSE many times in any solution plan. The use of the
information given by cycles in planning is still a research topic [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
1 LPG can use several flaw selection strategies that are described and experimentally evaluated
in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. The strategy preferring flaws at the earliest level of the graph tends to perform better
than the others, and so it is used as the default strategy in LPG. More details and a discussion
about this strategy are given in the aforementioned paper.
      </p>
      <p>
        Several different types of landmark orders are defined in literature [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]:
- Natural order: in every solution plan Landmark A appears before Landmark B. So
A is ordered before B.
      </p>
      <p>- Necessary order: in every solution plan, if B is true at a given step, A is true at the
previous step.</p>
      <p>- Greedy Necessary order: in every solution plan, if B is true for the first time in the
plan at a given step, then A is true at the previous step. For every successive step where
B is true, we know nothing about A.</p>
      <p>The previous 3 orders are mandatory, in the sense that they must be satisfied in every
solution plan. Instead the next 2 orders are only “suggested”: they may help obtain a
better solution plan, but it may be that the only way to compute a solution plan is to
violate them.</p>
      <p>- Reasonable order: landmark B is ordered after landmark A if, from a state in which
B is true, to make A true it is necessary to destroy B, but after that B will be needed
again to reach the goals. So this means that it is reasonable to make A true before B,
and not vice versa.</p>
      <p>- Obedient Reasonable order: if we decide to satisfy reasonable orders, i.e. treat
them as mandatory, new “reasonable” orders may arise. These are called obedient
reasonable orders.</p>
      <p>
        Regarding the computational complexity of the problem of finding landmarks and
relative orders, it has been proved that both the decision problems “Is the fact L a
landmark for the given planning problem?” and “Is there an order (of any kind) O between
two landmarks A and B of the given planning problem?” are PSPACE-Complete
problems [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. Since every method commonly used for finding Landmarks and orders has
polynomial time complexity, these methods are often incomplete or approximate.
      </p>
      <p>
        There are two families of methods to compute the Landmarks Graph of a given
problem. The first includes the method proposed by Hoffmann [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] and its evolutions
(for example LAMA). The second is the method proposed by Zhu &amp; Givan. The method
proposed by Hoffmann starts from the goal facts, which are landmarks by definition,
and for each of them it looks at the first appearance of that fact in the relaxed planning
graph. Then, the intersection of the preconditions of all the actions that support that
fact in the relaxed planning graph is computed. The facts resulting from the intersection
are landmarks, and these new landmarks are ordered before the previous fact landmark.
The method continues until no more Landmarks are generated or the initial facts are
reached.
      </p>
      <p>
        The method proposed by Zhu &amp; Givan [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ], instead, starts from the initial facts and
goes forward on the relaxed planning graph. The key elements of this method are labels
associated to facts and actions and represent the list of facts necessary to reach those
facts or actionss. The labels are propagated forward along the planning graph. The rule
is: for facts, compute the intersection of the content of all the labels that are applied
to the actions reaching that fact, then to the resulting list the fact itself must be added;
for actions, compute the union of the content of all the labels that are applied to the
facts preconditions of that action. Finally, the content of the labels applied to the goal
facts is the list of landmarks for the given planning problem. The advantage of Zhu &amp;
Givan’s method is that it computes all the (causal) landmarks. Furthermore, if not only
the facts but also the actions are propagated, we can compute the Action Landmarks for
the given planning problem. The disadvantage is that this method does not specify how
to order the computed landmarks. A naive way to order them is to look at the order of
appearance of the facts in the labels. However, many superfluous orders are produced in
this way. This excess of landmark ordering can in principle increase computation time,
however in practice this increase is very limited.
      </p>
    </sec>
    <sec id="sec-4">
      <title>Landmarks in LPG</title>
      <p>We implemented two methods for computing the Landmarks Graph. The first is the
method proposed by Hoffmann et al., for which we simply imported in LPG the code
written by the authors. The second is the method proposed by Zhu &amp; Givan, which we
implemented by ourselves through an extension of the existing LPG code.</p>
      <p>
        In the planning process, we used the Landmarks Graph as described in [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ]. They
proposed a method where the planning problem is divided into sub planning
problems, whose concatenated solution gives a global solution to the original problem. This
method works by controlling a base planner. During the planning process, when a
landmark is satisfied, it is removed (with its edges) from the Landmarks Graph (obviously
the Initial Facts are removed from the Landmark Graph at the first step of the planning
process). The set of nodes with no other nodes ordered before them is the frontier of
the current planning process and corresponds to the set of facts that the system would
currently make supported. At every planning step, the Landmarks in the frontier are
selected and given to the base planner as a new set of (sub)goal. Then the subplan
computed is added to the end of the current (incomplete) plan. When all the landmarks
in the graph have been processed, if a solution plan has not been already generated,
the base planner is run with the original goals of the problem and the resulting plan is
appended to the subplan computed for the processed landmarks. Differently from the
work of Hoffmann et al., we do not give the base planner a disjunction of landmarks
at every step; instead, we select a single landmark in the previously computed
disjunction. The selection is guided by an heuristic function provided by LPG, which is based
on the computation of a relaxed plan [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Different approaches have been implemented
and tested for the selection of a landmark in the frontier, specifically, (1) selection of
a random landmark, (2) selection of the landmark with a maximum heuristic value,
(3) with a minimum value, and (4) a variant of the third (minimum value) where we
prefer landmarks that do not destroy the portion of the relaxed plan needed to reach
another landmark in the disjunction. This is done in order to try to limit the
destructive interaction between landmarks. Quite interestingly this variant performs extremely
well in the logistics domains. This difference with respect to Hoffmann et al.’s method
was motivated by the fact that LPG does not work with disjunctive goals, and even if
we modified LPG to accept this kind of goals, in the end the planning process of LPG
would select a single fact anyway, or a conjunction of facts taken from the disjunctive
goal, to be reached. Similarly to Hoffmann et al., if during a planning step more than
a single landmark (the selected one) are reached, all of them are removed from the
Landmarks Graph.
      </p>
      <p>As previously said, we have implemented and tested three methods to control the
insertion of actions in the action graph. The first one allows the local search of LPG
to insert actions only at the end of the current partial plan; the second one also allows
to insert actions inside the partial plan, instead of only adding actions at the end of the
partial plan. The third one allows the local search to both insert and remove actions at
any point of the partial plan. This last variant is the most robust one because it allows
the search process also to remove previously inserted actions, but is characterised by
a larger search space that negatively influences the planner runtime, as observed in teh
experimental results section.</p>
      <p>Figure 1 gives the pseudo code of our implementation of the landmarks control loop
in LPG. In this implementation, we explicitly impose to LPG the next subgoal (chosen
among the landmarks in the LG) to be reached.</p>
      <p>Every run through the loop is a search step handling the creation of the subplan
needed to reach a landmark in the Landmarks Graph. First we update the Landmarks
Graph to remove those landmarks that have already been reached. Then we select a
landmark in the updated Landmarks Graph as the current subgoal. The control loop
terminates when all the goals of the problem have been reached: all landmarks that are
goals of the problem have been reached and removed from the Landmarks Graph. In this
implementation, we simply run the “LocalSearch” routine of LPG to reach the selected
landmark. The initial state for LocalSearch is always the initial state of the planning
problem. We do this because every call to LocalSearch uses the precomputed partial
plan, beginning from the initial state and reaching the previously selected landmark, as
a starting point for the local search.</p>
    </sec>
    <sec id="sec-5">
      <title>Experimental Analysis</title>
      <p>Tests were performed on an Intel(R) Xeon(R) CPU E5-2620 (with an effective 2.00
GHz rating) with 8 GB of RAM. Our tests have been conducted on a series of
problems mainly from IPC competitions. Problem domains tested are “Logistics” (IPC2),
Planner/Domain
LLPG ZhuGivan fs3
logistics IPC2
openstacks IPC5
storage IPC5
TPP IPC5
elevators IPC6
transport IPC6
elevators IPC7
transport IPC7
barman IPC7
nomystery IPC7
visitall IPC7
Total
LLPG ZhuGivan fs2
logistics IPC2
openstacks IPC5
storage IPC5
TPP IPC5
elevators IPC6
transport IPC6
elevators IPC7
transport IPC7
barman IPC7
nomystery IPC7
visitall IPC7
Total
LLPG ZhuGivan fs1
logistics IPC2
openstacks IPC5
storage IPC5
TPP IPC5
elevators IPC6
transport IPC6
elevators IPC7
transport IPC7
barman IPC7
nomystery IPC7
visitall IPC7
Total
LLPG ZhuGivan fs0
logistics IPC2
openstacks IPC5
storage IPC5
TPP IPC5
elevators IPC6
transport IPC6
elevators IPC7
transport IPC7
barman IPC7
nomystery IPC7
visitall IPC7
Total
100.0 % 83.45 (52.17) 602.683 (50.96)
80.0 % 261.59 (12.15) 105.208 (22.52)
96.6 % 118.09 (25.07) 231.034 (24.01)
83.3 % 124.51 (21.01) 125.960 (22.75)
100.0 % 3.03 (27.81) 744.833 (23.24)
83.3 % 266.73 (18.36) 3140.720 (19.61)
100.0 % 44.15 (17.66) 326.050 (17.02)
90.0 % 625.58 (13.36) 423.611 (15.19)
0 % 900.88 (1.00) 75.000 (0.39)
0 % 1800.00 (0.00) -1.0 (0.00)
25.0 % 13.24 (3.80) 365.200 (3.33)
75.8 % 430.51 (220.06) 565.296 (202.41)
“Transport” (IPC6 and IPC7), “Elevators” (IPC6 and IPC7), “Storage” (IPC5),
“Barman” (IPC7), “NoMystery” (IPC7), “Visitall” (IPC7), “Openstacks” (IPC5) and “TPP”
(IPC5).</p>
      <p>The results are shown in the tables and figures below. For each domain we show
runtime (speed) and plan quality results in two separate plots. For each plot, on the x
axis we have the different problems from that domain, on the y axis the results. For the
“speed” results we used a log10 scale.</p>
      <p>In the following comparison tests we will show the results of LPG without
landmarks (labelled: LPG) and LPG with landmarks (labelled: LLPG). We will use the
label “fs2” to indicate that the selection of a landmark in the disjunction is done using
our variant of the “select the one with the minimum heuristic value” rule. The label
“test” will indicate that if the landmarks control of LPG fails, the program will retry
again and again, until a solution plan is found or the time available expires. Also,
ex</p>
      <p>Comparative Results
% Sol. Time (score) Quality (score) LM
cept differently indicated, the control variant used is the default one: only adding new
actions at the end of the partial plan.</p>
      <p>In Table 1 we compare LPG with landmarks for all variants of the Landmarks Graph
frontier selection methods: selection of a random landmark (labelled: fs0); the
selection of the landmark with minimum heuristic value (labelled: fs1); our variant of fs1
designed to avoid destructive interaction between landmarks in the frontier (labelled:
fs2); and selection of the landmark with maximum heuristic value (labelled: fs3). The
results show that “fs1” is the best selection rule for quality and coverage results.
Concerning speed the best rule is “fs3”, however the advantage with respect to “fs1” is
small. Moreover, “fs2” is particularly effective in Logistics.</p>
      <p>In Figure 2 we show speed and quality plots for the comparison between the use
of Zhu &amp; Givan’s landmarks and the use of Hoffmann’s landmarks. As we can see,
landmarks computed by Hoffmann’s method give better coverage, better time results
and better quality results.
rules we implemented. The Speed plot shows better coverage and time results for the
“fs1” rule, while the Quality plot shows that our variant of “fs1”, labelled “fs2”, gives,
as expected, better quality results in Logistics.</p>
      <p>In Table 2 we compare LPG with landmarks in the two variants: using landmarks
computed by Hoffmann’s method and using landmarks computed using Zhu &amp; Givan’s
method. The last column contains the average number of Landmarks for every
domain (initial and goal Landmarks were not counted); here we can observe that the two
approaches produce a similar number of landmarks in the different domains.
Unfortunately in Transport and Visitall (Zhu&amp;Givan approach) the system cannot find new
landmarks. In general, the use of landmarks computed by Hoffmann’s method gives
better results; however the difference is usually small.</p>
      <p>Table 3 compares LPG with landmarks using three control variants: the one that
only adds new actions at the end of the current partial plan (labelled: control 2), the one
that can add new actions at any point of the current partial plan (labelled: control 1), and
the one that can add as well as remove actions at any point of the partial plan (labelled:
control 0). The results show that the best solution is “control 2”. However, “control 1”
gives best results in IPC5 “TPP” domain, and “control 0” in IPC7 “barman” domain.
LLPG ZhuGivan fs2 control 2
logistics IPC2
openstacks IPC5
storage IPC5
TPP IPC5
elevators IPC6
transport IPC6
elevators IPC7
transport IPC7
barman IPC7
nomystery IPC7
visitall IPC7
Total
LLPG ZhuGivan fs2 control 1
logistics IPC2
openstacks IPC5
storage IPC5
TPP IPC5
elevators IPC6
transport IPC6
elevators IPC7
transport IPC7
barman IPC7
nomystery IPC7
visitall IPC7
Total
LLPG ZhuGivan fs2 control 0
logistics IPC2
openstacks IPC5
storage IPC5
TPP IPC5
elevators IPC6
transport IPC6
elevators IPC7
transport IPC7
barman IPC7
nomystery IPC7
visitall IPC7
Total
100.0 % 67.41 (53.41) 520.067 (56.92)
90.0 % 49.31 (23.91) 121.407 (26.00)
93.3 % 126.02 (23.00) 242.893 (21.12)
76.6 % 124.01 (15.22) 116.304 (19.34)
100.0 % 14.05 (27.13) 658.800 (28.11)
93.3 % 308.57 (22.57) 3985.786 (21.68)
100.0 % 185.91 (19.00) 308.900 (19.00)
90.0 % 690.72 (15.92) 411.778 (17.00)
9.5 % 944.86 (1.80) 276.333 (2.07)
10.0 % 3.09 (1.00) 21.000 (0.91)
25.0 % 16.08 (2.06) 299.400 (4.00)
78.1 % 487.76 (212.33) 612.357 (225.15)</p>
      <p>The results for domain Elevators (IPC7) in Figure 4 are shown to compare different
control methods. As shown in the plots, “control 2” is the best solution, giving best
coverage, speed and quality.</p>
      <p>
        In Table 4 we compare LPG with landmarks (LLPG ZhuGivan fs2), LPG without
landmarks (LPG) and the state-of-the-art planner LAMA2011 [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]. The experimental
tests show that our planner gives the best speed and coverage, while LAMA gives the
best quality. However, in assessing the results we must take into consideration that
LAMA2011 in some domains (Elevators IPC6 and Transport IPC6) does not solve any
problem.
      </p>
      <p>The results for domain Logistics (IPC2) in Figure 5 compare LPG with and without
landmarks and LAMA2011. As we can see, only LPG (with and without Landmarks)
solved all the problems. If we consider speed, quality and coverage altogether, the best
planner is LPG with landmarks.</p>
      <p>Table 5 compares the performances of LLPG versus LPG in terms of delta values
of the coverage, the IPC Speed and the IPC Quality scores. The LM column reports the
average number of landmarks for every domain (initial and goal landmarks were not
counted), while the “# goals” column reports the average number of goals in the
different domains. We can see that a high number of landmarks is usually associated with
higher performances of LLPG w.r.t. LPG, see for example the logistics IPC2
domain (where on average we can find 224 landmarks + initial facts + the goal facts) and
the elevators IPC7 domain (where on average we can find 50 landmarks + initial
facts + the goal facts). Furthermore, we can also observe performance improvements
in the transport domains in which the LM value is equal to 0; this is related to the
LPG
logistics IPC2
openstacks IPC5
storage IPC5
TPP IPC5
elevators IPC6
transport IPC6
elevators IPC7
transport IPC7
barman IPC7
nomystery IPC7
visitall IPC7
Total
LLPG
logistics IPC2
openstacks IPC5
storage IPC5
TPP IPC5
elevators IPC6
transport IPC6
elevators IPC7
transport IPC7
barman IPC7
nomystery IPC7
visitall IPC7
Total
100.0 % 179.33 (46.27) 666.267 (43.03)
90.0 % 105.73 (17.38) 120.630 (24.98)
96.6 % 110.74 (26.54) 189.276 (17.91)
70.0 % 177.97 (17.44) 123.952 (13.50)
90.0 % 442.08 (14.18) 509.296 (23.64)
53.3 % 448.90 (12.13) 2055.062 (13.19)
50.0 % 1005.54 (2.90) 216.300 (7.69)
5.0 % 1018.84 (0.48) 246.000 (0.48)</p>
      <p>0 % 900.88 (1.00) 74.000 (0.43)
20.0 % 621.51 (1.13) 20.250 (3.00)
10.0 % .52 (1.00) 293.000 (0.64)
63.3 % 780.25 (147.17) 321.550 (155.10)
landmarks and they are effectively used by LPG with landmarks (LLPG).</p>
    </sec>
    <sec id="sec-6">
      <title>Conclusions</title>
      <p>In this paper, we have presented some new techniques for planning with landmarks that
have been implemented in LPG; the experimental results show significant
improvements in terms of both number of problems solved and CPU time. In particular, the
use of landmarks for dividing the planning problem into sub planning problems, whose
concatenated solution gives a global solution to the original problem, gives extremely
interesting results.</p>
      <p>As future work, we plan to extend LLPG in order to compute landmarks for
temporal and metric domains. Moreover, we plan to compute also Action Landmarks and use
them to effectively initialize the search process. Exploiting action landmarks seems to
be very natural and promising in the context of LPG. Finally, we are developing a new
idea about quasi-landmarks: facts that appear in almost every solution plan. We expect
quasi-landmarks to be useful in domains where the only landmarks that are computed by
the existing methods are the initial and goal facts. These domains include, for example,
the two domains Transport IPC6 and Transport IPC7 that we used in our experiments.</p>
      <p>LLPG vs LPG
Planner/Domain LM # goals 4 % Sol. 4 Time score 4 Quality score
logistics IPC2 224.6 69.5 + 0.0 % + 10.6 + 11.8
openstacks IPC5 91.3 31 + 6.6 % +6 + 1.9
storage IPC5 0.9 7.7 -3.3 % - 5.3 -4
TPP IPC5 14.1 8.7 + 26.6 % +1.3 +7
elevators IPC6 24.3 17 + 10.0 % +13.4 +1.7
transport IPC6 0 10.4 + 40.0 % +10.2 +8.6
elevators IPC7 49.8 37.6 + 50.0 % +13.4 +6.7
transport IPC7 0 18.8 + 80.0 % +11.2 +10.6
barman IPC7 13.6 9.3 0 % -0.7 0
nomystery IPC7 14.8 8.4 +5 % +1.3 +0.1
visitall IPC7 26 263 + 15.0 % +1.3 +3.4</p>
      <p>Total 459.4 481.4 + 17.4 % +62.6 +49.7</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Blum</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Furst</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Fast planning through planning graph analysis</article-title>
          .
          <source>Artificial Intelligence</source>
          <volume>90</volume>
          ,
          <fpage>281</fpage>
          -
          <lpage>300</lpage>
          (
          <year>1997</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Edelkamp</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hoffmann</surname>
          </string-name>
          , J.:
          <source>PDDL2</source>
          .
          <article-title>2: The language for the classic part of the 4th international planning competition</article-title>
          .
          <source>Technical Report 195</source>
          ,
          <string-name>
            <surname>Institut</surname>
            <given-names>fu</given-names>
          </string-name>
          ¨r Informatik, Freiburg, Germany (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Fox</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Long</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serina</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>Plan stability: Replanning versus plan repair</article-title>
          .
          <source>In: Proceedings of the 16th International Conference on Automated Planning and Scheduling</source>
          . AAAI Press, Cumbria, UK (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Fox</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Long</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <year>PDDL2</year>
          .
          <article-title>1: An extension to PDDL for expressing temporal planning domains</article-title>
          .
          <source>Journal of Artificial Intelligence Research (JAIR) 20</source>
          , pp.
          <fpage>61</fpage>
          -
          <lpage>124</lpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kuter</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nau</surname>
            , D.,
            <given-names>S.</given-names>
          </string-name>
          , A.,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Waisbrot</surname>
          </string-name>
          , N.:
          <article-title>Combining domain-independent planning and HTN planning: The Duet planner</article-title>
          .
          <source>In: Proceedings of the Eighteenth European Conference on Artificial Intelligence (ECAI-08)</source>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saetti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serina</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>Planning through stochastic local search and temporal action graphs</article-title>
          .
          <source>Journal of Artificial Intelligence Research (JAIR) 20</source>
          ,
          <fpage>239</fpage>
          -
          <lpage>290</lpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saetti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serina</surname>
            ,
            <given-names>I.:</given-names>
          </string-name>
          <article-title>An empirical analysis of some heuristic features for local search in LPG</article-title>
          .
          <source>In: Proceedings of the Fourteenth International Conference on Automated Planning and Scheduling (ICAPS-04)</source>
          . pp.
          <fpage>171</fpage>
          -
          <lpage>180</lpage>
          . AAAI Press, Menlo Park, CA, USA (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saetti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serina</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>An approach to temporal planning and scheduling in domains with predictable exogenous events</article-title>
          .
          <source>Journal of Artificial Intelligence Research (JAIR) 25</source>
          ,
          <fpage>187</fpage>
          -
          <lpage>231</lpage>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saetti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serina</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>An approach to efficient planning with numerical fluents and multi-criteria plan quality</article-title>
          .
          <source>Artificial Intelligence</source>
          <volume>172</volume>
          (
          <issue>8-9</issue>
          ),
          <fpage>899</fpage>
          -
          <lpage>944</lpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serina</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>LPG: A planner based on local search for planning graphs with action costs</article-title>
          .
          <source>In: Proceedings of the 6th International Conference on Artificial Intelligence Planning and Scheduling (AIPS-02)</source>
          . pp.
          <fpage>281</fpage>
          -
          <lpage>290</lpage>
          . AAAI Press/MIT Press (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serina</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>Planning as propositional CSP: from Walksat to local search for action graphs</article-title>
          .
          <source>CONSTRAINTS</source>
          <volume>8</volume>
          (
          <issue>4</issue>
          ) (
          <year>October 2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serina</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saetti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Spinoni</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Local search techniques for temporal planning in LPG</article-title>
          .
          <source>In: Proceedings of the 13th International Conference on Automated Planning &amp; Scheduling (ICAPS03)</source>
          . pp.
          <fpage>62</fpage>
          -
          <lpage>71</lpage>
          . AAAI Press (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serina</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>Fast plan adaptation through planning graphs: Local and systematic search techniques</article-title>
          .
          <source>In: Proceedings of the 5th International Conference on Artificial Intelligence Planning Systems</source>
          . AAAI Press, Breckenridge, CO (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Hoffmann</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Edelkamp</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>The deterministic part of IPC-4: An overview</article-title>
          .
          <source>Journal of Artificial Intelligence Research (JAIR) 24</source>
          ,
          <fpage>519</fpage>
          -
          <lpage>579</lpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Hoffmann</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Porteous</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sebastia</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Ordered landmarks in planning</article-title>
          .
          <source>J. Artif. Int. Res</source>
          .
          <volume>22</volume>
          (
          <issue>1</issue>
          ),
          <fpage>215</fpage>
          -
          <lpage>278</lpage>
          (
          <year>Nov 2004</year>
          ), http://dl.acm.org/citation.cfm?id=
          <volume>1622487</volume>
          .
          <fpage>1622495</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16. Jime˜nez,
          <string-name>
            <surname>S.</surname>
          </string-name>
          , Ferna˜ndez,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Borrajo</surname>
          </string-name>
          ,
          <string-name>
            <surname>D.</surname>
          </string-name>
          :
          <article-title>The PELA architecture: integrating planning and learning to improve execution</article-title>
          .
          <source>In: Proceedings of the Twenty-Third National Conference on Artificial Intelligence (AAAI-08)</source>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Kolobov</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mausam</surname>
            , Weld,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>S.</surname>
          </string-name>
          : Determinize, solve, and
          <article-title>generalize: Classical planning for MDP heuristics</article-title>
          . In: ICAPS-09 Workshop on Heuristics for Domain-independent
          <string-name>
            <surname>Planning</surname>
          </string-name>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Long</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fox</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>The 3rd International Planning Competition: Results and analysis</article-title>
          .
          <source>Journal of Artificial Intelligence Research (JAIR) 20</source>
          ,
          <fpage>1</fpage>
          -
          <lpage>59</lpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Morales</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Castillo</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fernandez-Olivares</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gonzalez-Ferrer</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Automatic generation of user adapted learning designs: An AI-planning proposal</article-title>
          .
          <source>In: Proceedings of the Fifth International Conference on Adaptive Hypermedia and Adaptive Web-Based Systems (AH08)</source>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Nguyen</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Do</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Kambhampati</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Srivasta</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.</surname>
          </string-name>
          :
          <article-title>Planning with partial preference models</article-title>
          .
          <source>In: Twenty-first International Joint Conference on Artificial Intelligence (IJCAI-09)</source>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Nguyen</surname>
            ,
            <given-names>T.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Do</surname>
            ,
            <given-names>M.B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serina</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Srivastava</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kambhampati</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Generating diverse plans to handle unknown and partially known user preferences</article-title>
          .
          <source>Artificial Intelligence</source>
          <volume>190</volume>
          ,
          <fpage>1</fpage>
          -
          <lpage>31</lpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Porteous</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sebastia</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hoffmann</surname>
          </string-name>
          , J.:
          <article-title>On the extraction, ordering and usage of landmarks in planning</article-title>
          .
          <source>In: European Conference of Planning (ECP'01)</source>
          . pp.
          <fpage>37</fpage>
          -
          <lpage>48</lpage>
          (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Richter</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Westphal</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>The LAMA planner: Guiding cost-based anytime planning with landmarks</article-title>
          .
          <source>CoRR abs/1401</source>
          .3839 (
          <year>2014</year>
          ), http://arxiv.org/abs/1401.3839
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Srivastava</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nguyen</surname>
            ,
            <given-names>T.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gerevini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kambhampati</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Do</surname>
            ,
            <given-names>M.B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serina</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>Domain independent approaches for finding diverse plans</article-title>
          .
          <source>In: Proceedings of the 20th International Joint Conference on Artificial Intelligence</source>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Vernhes</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Infantes</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vidal</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Problem splitting using heuristic search in landmark orderings</article-title>
          .
          <source>In: IJCAI'13</source>
          . pp.
          <issue>-1-1</issue>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Vrakas</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hatzi</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bassiliades</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Anagnostopoulos</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vlahavas</surname>
            ,
            <given-names>I.:</given-names>
          </string-name>
          <article-title>A visual programming tool for designing planning problems for semantic web service composition</article-title>
          .
          <source>In: Visual Languages for Interactive Computing: Definitions and Formalizations</source>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Zhu</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Givan</surname>
          </string-name>
          , R.:
          <article-title>Landmark Extraction via Planning Graph Propagation</article-title>
          .
          <source>In Printed Notes of ICAPS'03</source>
          Doctoral
          <string-name>
            <surname>Consortium</surname>
          </string-name>
          (
          <year>June 2003</year>
          ), trento, Italy
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>