<!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 Tour Towards DPLL(MAPF) and Beyond</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>l Suryn</string-name>
          <email>pavel.surynek@fit.cvut.cz</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Faculty of Information Technology Czech Technical University in Prague Tha ́kurova 9</institution>
          ,
          <addr-line>160 00 Praha 6</addr-line>
          ,
          <country country="CZ">Czech Republic</country>
        </aff>
      </contrib-group>
      <fpage>74</fpage>
      <lpage>83</lpage>
      <abstract>
        <p>We discuss milestones on the tour towards DPLL(MAPF), a multiagent path finding (MAPF) solver fully integrated with the Davis-Putnam-Logemann-Loveland (DPLL) propositional satisfiability testing algorithm through satisfiability modulo theories (SMT). The task in MAPF is to navigate agents in an undirected graph in a non-colliding way so that each agent eventually reaches its unique goal vertex. At most one agent can reside in a vertex at a time. Agents can move instantaneously by traversing edges provided the movement does not result in a collision. Recently attempts to solve MAPF optimally w.r.t. the sumof-costs or the makespan based on the reduction of MAPF to propositional satisfiability (SAT) have appeared. The most successful methods rely on building the propositional encoding for the given MAPF instance lazily by a process inspired in the SMT paradigm. The integration of satisfiability testing by the SAT solver and the high-level construction of the encoding is however relatively loose in existing methods. Therefore the ultimate goal of research in this direction is to build the DPLL(MAPF) algorithm, a MAPF solver where the construction of the encoding is fully integrated with the underlying SAT solver. We discuss the current state-of-the-art in MAPF solving and what steps need to be done to get DPLL(MAPF). The advantages of DPLL(MAPF) in terms of its potential to be alternatively parametrized with MAPFR, a theory of continuous MAPF with geometric agents, are also discussed.</p>
      </abstract>
      <kwd-group>
        <kwd>multi agent path finding (MAPF)</kwd>
        <kwd>propositional satisfiability (SAT)</kwd>
        <kwd>Davis-Putnam-Logemann-Loveland (DPLL)</kwd>
        <kwd>satisfiability modulo theories(SMT)</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        In multi-agent path finding (MAPF) [
        <xref ref-type="bibr" rid="ref11 ref18 ref19 ref20 ref22 ref24 ref30">11,18,19,20,22,24,30</xref>
        ] the task is to navigate agents
from given starting positions to given individual goals. The standard version of the
problem takes place in undirected graph G = (V; E) where agents from set A =
fa1; a2; :::; akg are placed in vertices with at most one agent per vertex. The initial
configuration of agents in vertices of the graph can be written as 0 : A ! V and
similarly the goal configuration as + : A ! V . The task of navigating agents can be
expressed as a task of transforming the initial configuration of agents 0 : A ! V into
the goal configuration + : A ! V .
      </p>
      <p>
        Movements of agents are instantaneous and are possible across edges into neighbor
vertices assuming no other agent is entering the same target vertex. This formulation
Copyright c 2019 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
permits agents to enter vertices being simultaneously vacated by other agents. Trivial
case when a pair of agents swaps their positions across an edge is forbidden in the
standard formulation. We note that different versions of MAPF exist where for example
agents always move into vacant vertices [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ]. We usually denote the configuration of
agents at discrete time step t as t : A ! V . Non-conflicting movements transform
configuration t instantaneously into next configuration t+1. We do not consider what
happens between t and t + 1 in this discrete abstraction. Multiple agents can move at a
time hence the MAPF problem is inherently parallel.
      </p>
      <p>
        In order to reflect various aspects of real-life applications variants of MAPF have
been introduced such as those considering kinematic constraints [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], large agents [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ],
or deadlines [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] - see [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] for more variants.
1.1
      </p>
      <sec id="sec-1-1">
        <title>Lazy Construction of SAT Encodings</title>
        <p>
          This paper summarizes the development SMT-CBS [
          <xref ref-type="bibr" rid="ref28">28</xref>
          ], a novel optimal MAPF
algorithm that unifies two major approaches to solving MAPF optimally: a search-based
approach represented by conflict-based search (CBS) [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ] and a compilation-based
approach represented by reducing MAPF to propositional satisfiability (SAT) [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] in
the MDD-SAT algorithm [
          <xref ref-type="bibr" rid="ref29">29</xref>
          ]. The SMT-CBS algorithm rephrases ideas of CBS in the
terms of satisfiability modulo theories (SMT) [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] at the high-level. While at the
lowlevel it uses the SAT encoding from MDD-SAT.
        </p>
        <p>Unlike the original CBS that resolves conflicts between agents by branching the
search, SMT-CBS refines the propositional model with a disjunctive constraint to
resolve the conflict. SMT-CBS hence does not branch at the high-level but instead
incrementally extends the propositional model that is consulted with the external SAT solver
similarly as it has been done in MDD-SAT. In contrast to MDD-SAT where the
propositional model is fully constructed in a single-shot, the propositional model is being built
lazily in SMT-CBS as new conflicts appear.</p>
        <p>The hypothesis behind the design of SMT-CBS is that in many cases we do not need
to add all constraints to form the complete propositional model while still be able to
obtain a conflict-free solution. Intuitively we expect that such cases where the incomplete
propositional model will suffice are represented by sparsely occupied instances with
large environments. The expected benefit in contrast to MDD-SAT is that incomplete
model can be constructed and solved faster. On the other hand we expect that the
superior performance of MDD-SAT in environments densely populated with agents will be
preserved as SMT-CBS will quickly converge the model towards the complete one.
1.2</p>
      </sec>
      <sec id="sec-1-2">
        <title>Towards DPLL(MAPF) / CDCL(MAPF)</title>
        <p>
          SMT-CBS represents a milestone towards an optimal MAPF solver where the SAT
solver and the high-level construction of the propositional model are fully integrated,
an algorithm we denote DPLL(MAPF). DPLL(T) [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ] commonly denotes an algorithm
integrating the SAT solver [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] with a decision procedure for the conjunctive fragment
of some first-order theory T . Similarly as in SMT-CBS the SAT solver decides what
literals in a given formula should be set to TRUE in order to satisfy the formula.
Subsequently, the decision procedure for the conjunctive fragment checks if the suggested
truth value assignment is consistent with T . In our case, the theory is represented by
movement rules of MAPF and the formula encodes a question if there is a solution of
given MAPF of specified value of the objective.
        </p>
        <p>
          DPLL stands here for the standard search-based SAT solving procedure
(DavisPutnam-Logemann–Loveland) [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] but in fact we use its more modern variants known as
CDCL (Conflict-Driven Clause Learning) [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ], hence precisely our algorithm should be
denoted CDCL(MAPF) however we will keep the more common notation DPLL(MAPF)
used in the literature.
        </p>
        <p>The organization of the paper is as follows: We first introduce MAPF formally.
Then the combination of CBS and MDD-SAT, the recent optimal MAPF algorithm
SMT-CBS is recalled. On top of this we discuss the future perspective of DPLL(MAPF)
in more details.
2</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>Multi-Agent Path Finding Formally</title>
      <p>
        The Multi-agent path finding (MAPF) problem [
        <xref ref-type="bibr" rid="ref18 ref22">22,18</xref>
        ] consists of an undirected graph
G = (V; E) and a set of agents A = fa1; a2; :::; akg such that jAj jV j. Each agent
is placed in a vertex so that at most one agent resides in each vertex. The placement of
agents is denoted : A ! V . Next we are given initial configuration of agents 0 and
goal configuration +.
      </p>
      <p>At each time step an agent can either move to an adjacent vertex or wait in its current
vertex. The task is to find a sequence of move/wait actions for each agent ai, moving
it from 0(ai) to +(ai) such that agents do not conflict, i.e., do not occupy the same
vertex at the same time nor cross the same edge in opposite directions simultaneously.
The following definition formalizes the commonly used movement rule in MAPF. An
example of MAPF instance is shown in Figure 1.</p>
      <p>A a1
B</p>
      <p>α0
C</p>
      <p>D
a2 E
a3 F</p>
      <p>A
B</p>
      <p>C
a1
α1</p>
      <p>D
a2</p>
      <p>E
a3 F</p>
      <p>A
B a1
α2 = α+
C D
a2 a3</p>
      <p>E
F
Definition 1. Valid movement in MAPF. Configuration 0 results from
if the following conditions hold:
if and only
(i) (a) =</p>
      <p>edges);
(ii) for all a 2 A it holds (a) 6= 0(a) ) :(9b 2 A)( (b) = 0(a) ^ 0(b) =
(no two agents crosses an edge in opposite directions);
(iii) and for all a; a0 2 A it holds that a 6= a0 ) 0(a) 6=
vertex in the next configuration).</p>
      <p>0(a) or f (a); 0(a)g 2 E for all a 2 A (agents wait or move along
0(a0) (no two agents share a
(a))</p>
      <p>
        Solving MAPF is to find a sequence of configurations [ 0; 1; :::; ] such that i+1
results using valid movements from i for i = 1; 2; :::; 1, and = +. A feasible
solution of a solvable MAPF instance can be found in polynomial time [
        <xref ref-type="bibr" rid="ref11 ref32">32,11</xref>
        ];
precisely the worst case time complexity of most practical algorithms for finding feasible
solutions is O(jV j3) [
        <xref ref-type="bibr" rid="ref13 ref31">13,31</xref>
        ].
      </p>
      <p>
        We are often interested in optimal solutions. In case of the makespan [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ] we just
need to minimize in the aforementioned solution sequence. For introducing the
sumof-costs objective [
        <xref ref-type="bibr" rid="ref20 ref23 ref8">8,23,20</xref>
        ] we need more notation as follows:
Definition 2. Sum-of-costs objective is the summation, over all k agents, of the
number of time steps required to reach the goal vertex. Denoted , where = Pik=1 (path(ai))
and (path(ai)) is an individual path cost of agent ai connecting 0(ai) and +(ai)
calculated as the number of edge traversals and wait actions. 1
      </p>
      <p>
        We note that finding a solution that is optimal (minimal) with respect to either the
makespan or the sum-of-costs objective is NP-hard [
        <xref ref-type="bibr" rid="ref17 ref25">17,25</xref>
        ].
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Unifying Search-based and Compilation-based Approaches</title>
      <p>Before introducing SMT-CBS, a unification between the search-based and the
compilationbased approach we will briefly discuss both approaches themselves.
3.1</p>
      <sec id="sec-3-1">
        <title>Conflict-based Search</title>
        <p>CBS is a representative of search-based approach. CBS uses the idea of resolving
conflicts lazily; that is, a solution of MAPF instance is not searched against the complete
set of movement constraints that forbids collisions between agents but with respect
to initially empty set of collision forbidding constraints that gradually grows as new
conflicts appear. The advantage of CBS is that it can find a valid solution before all
constraints are added.</p>
        <p>The high-level of CBS searches a constraint tree (CT) using a priority queue in
breadth first manner. CT is a binary tree where each node N contains a set of collision
avoidance constraints N:constraints - a set of triples (ai; v; t) forbidding occurrence
of agent ai in vertex v at time step t, a solution N:paths - a set of k paths for individual
agents, and the total cost N: of the current solution.</p>
        <p>
          The low-level process in CBS associated with node N searches paths for individual
agents with respect to set of constraints N:constraints . For a given agent ai, this is
a standard single source shortest path search from 0(ai) to +(ai) that avoids a set
of vertices fv 2 V j(ai; v; t) 2 N:constraints g whenever working at time step t. For
details see [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ].
        </p>
        <p>CBS stores nodes of CT into priority queue OPEN sorted according to the ascending
costs of solutions. At each step CBS takes node N with the lowest cost from OPEN and
checks if N:paths represent paths that are valid with respect to MAPF movements
1 The notation path(ai) refers to path in the form of a sequence of vertices and edges connecting
0(ai) and +(ai) while assigns the cost to a given path.
Algorithm 1: CBS algorithm for MAPF solving
1 CBS (G = (V; E); A; 0; +)
2 R:constraints ;
3 R:paths fshortest path from 0(ai) to +(ai)ji = 1; 2; :::; kg
4 R: Pik=1 (N:paths(ai))
5 insert R into OPEN
6 while OPEN 6= ; do
7 N min(OPEN)
8 remove-Min(OPEN)
9 collisions validate(N:paths)
10 if collisions = ; then
11 return N:paths
rules - that is, N:paths are checked for collisions. If there is no collision, the algorithms
returns valid MAPF solution N:paths. Otherwise the search branches by creating a
new pair of nodes in CT - successors of N . Assume that a collision occurred between
agents ai and aj in vertex v at time step t. This collision can be avoided if either agent
ai or agent aj does not reside in v at timestep t. These two options correspond to
new successor nodes of N - N1 and N2 that inherit the set of conflicts from N as
follows: N1:con icts = N:con icts [ f(ai; v; t)g and N2:con icts = N:con icts [
f(aj ; v; t)g. N1:paths and N1:paths inherit paths from N:paths except those for agents
ai and aj respectively. Paths for ai and aj are recalculated with respect to extended sets
of conflicts N1:con icts and N2:con icts respectively and new costs for both agents
N1: and N2: are determined. After this, N1 and N2 are inserted into the priority queue
OPEN.</p>
        <p>
          The pseudo-code of CBS is listed as Algorithm 1. One of crucial steps occurs at line
16 where a new path for colliding agents ai and aj is constructed with respect to the
extended set of conflicts. N:paths(a) refers to path of agent a.
The major alternative to CBS is represented by compilation of MAPF to propositional
satisfiability (SAT) [
          <xref ref-type="bibr" rid="ref26 ref29">29,26</xref>
          ]. The idea follows SAT-based planning [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] where the
existence of a plan for a fixed number time steps is modeled as SAT. We similarly
construct propositional formula F ( ) such that it is satisfiable if and only if a solution of a
given MAPF of sum-of-costs exists. Moreover, the approach is constructive; that is,
F ( ) exactly reflects the MAPF instance and if satisfiable, solution of MAPF can be
reconstructed from satisfying assignment of the formula. We say F ( ) to be a complete
propositional model of MAPF.
        </p>
        <sec id="sec-3-1-1">
          <title>Definition 3. (complete propositional model). Propositional formula F ( ) is a com</title>
          <p>plete propositional model of MAPF if the following condition holds:
F ( ) is satisfiable ,</p>
          <p>has a solution of sum-of-costs .</p>
          <p>
            Being able to construct such formula F one can obtain optimal MAPF solution by
checking satisfiability of F ( 0), F ( 0 + 1), F ( 0 + 2),... until the first satisfiable F ( )
is met ( 0 is the lower bound for the sum-of-costs calculated as the sum of lengths of
shortest paths). This is possible due to monotonicity of MAPF solvability with respect
to increasing values of common cumulative objectives. Details of F are given in [
            <xref ref-type="bibr" rid="ref29">29</xref>
            ].
          </p>
          <p>
            The advantage of the SAT-based approach is that state-of-the-art SAT solvers can
be used for determining satisfiability of F ( ) [
            <xref ref-type="bibr" rid="ref3">3</xref>
            ].
4
          </p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Combining SMT and CBS</title>
      <p>A natural relaxation from the complete propositional model is an incomplete
propositional model where instead of the equivalence between solving MAPF and the formula
we require an implication only.</p>
      <sec id="sec-4-1">
        <title>Definition 4. (incomplete propositional model). Propositional formula H( ) is an</title>
        <p>incomplete propositional model of MAPF if the following condition holds:
H( ) is satisfiable (</p>
        <p>has a solution of sum-of-costs .</p>
        <p>
          A close look at CBS reveals that it operates similarly as problem solving in
satisfiability modulo theories (SMT) [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]. SMT divides satisfiability problem in some complex
theory T into an abstract propositional part that keeps the Boolean structure of the
decision problem and a simplified decision procedure DECIDET that decides fragment
of T restricted on conjunctive formulae. A general T -formula is transformed to a
propositional skeleton by replacing atoms with propositional variables. The SAT solver
then decides what variables should be assigned TRUE in order to satisfy the skeleton
- these variables tells what atoms hold in . DECIDET then checks if the conjunction
of atoms assigned TRUE is valid with respect to axioms of T . If so then satisfying
assignment is returned. Otherwise a conflict from DECIDET (often called a lemma) is
reported back and the skeleton is extended with a constraint forbidding the conflict.
        </p>
        <p>The above observation led us to the idea to rephrase CBS in terms of SMT. The
abstract propositional part working with the skeleton will be taken from MDD-SAT
provided that only constraints ensuring that assignments form valid paths interconnecting
starting positions with goals will be preserved. Other constraints for collision avoidance
will be omitted initially. This will result in an incomplete propositional model.</p>
        <p>The paths validation procedure will act as DECIDET and will report back the set
of conflicts found in the current solution. Hence axioms of T will be represented by the
movement rules of MAPF. We call the resulting algorithm SMT-CBS and it is shown in
pseudo-code as Algorithm 2.</p>
        <p>Algorithm 2: SMT-CBS algorithm for MAPF solving
= (G = (V; E); A; 0; +))</p>
        <p>;
fpath (ai) a shortest path from 0(ai) to +(ai)ji = 1; 2; :::; kg
1 SMT-CBS (
2 con icts
3 paths
4
5
6
7
8</p>
        <p>Pik=1 (paths(ai))
while TRUE do
(paths; con icts) SMT-CBS-Fixed(con icts; ; )
if paths 6= UNSAT then</p>
        <p>return paths
9</p>
        <p>The algorithm is divided into two procedures: SMT-CBS representing the main loop
and SMT-CBS-Fixed solving the input MAPF for fixed cost . The major difference
from the standard CBS is that there is no branching at the high-level. The high-level
SMT-CBS roughly correspond to the main loop of MDD-SAT. The set of conflicts is
iteratively collected during the entire execution of the algorithm. Procedure encode from
MDD-SAT is replaced with encode-Basic that produces encoding that ignores specific
movement rules (collisions between agents) but in contrast to encode it encodes
collected conflicts into H( ).</p>
        <p>The conflict resolution in the standard CBS implemented as high-level branching
is here represented by refinement of H( ) with disjunction (line 20). The presented
SMT-CBS can eventually build the same formula as MDD-SAT but this is done lazily
in SMT-CBS.
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>From SMT-CBS to DPLL(MAPF) and Beyond</title>
      <p>
        Although the performed experimental evaluation presented in [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ] shows that
SMTCBS significantly outperforms both the CBS algorithm and MDD-SAT we conjecture
that there is still room for improving the idea behind SMT-CBS. SMT-CBS as shown
in Algorithm 2 implements very basic variant of SMT-based problem solving. More
advanced SMT-based algorithms for deciding formulae in first order theories integrates
the SAT solver and DECIDET more tightly. DECIDET is invoked not only for the
fully assigned formulae (line 13 produces a full assignment) but also for partial
assignments. Such algorithms are usually denoted DPLL(T) [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ].
      </p>
      <p>Whenever the SAT-solving search loop in DPLL (or CDCL) assigns new
propositional variable, DECIDET is invoked to check if the extended partial assignment
is consistent with respect to T (or MAPF in our case). If so the main loop
continues with assigning the next variable. Otherwise DECIDET return a lemma
forbidding the current assignment, translated in MAPF terms this corresponds to a case when
DECIDEMAPF discovers a conflict and returns the conflict elimination constraint.</p>
      <p>
        DECIDET (DECIDEMAPF ) can do much more in the consistent case. The
procedure can derive new assignments that is to perform a form of MAPF constraint
propagation. Such propagation could work in tandem with the standard unit propagation
[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] integrated in the CDCL-based SAT solvers. Moreover DPLL(MAPF) algorithm can
be further parametrized with variable and value selection heuristics that can take into
account axioms of the MAPF theory.
      </p>
      <sec id="sec-5-1">
        <title>5.1 Implications for MAPF with Continuous Time and Geometric Agents</title>
        <p>
          Recently generalizations of MAPF considering continuous time and geometric agents
have appeared [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ]. The continuous variant denoted MAPFR assigns each vertex of the
underlying graph from the standard MAPF coordinates in the Euclidean space. Agents
are geometric objects such as circles, spheres, polygons etc. and can move along straight
lines connecting vertices of the underlying graph (agents cannot move outside these
predefined lines). For simplicity agents are assumed to have constant speeds but the
algorithmic concepts generalize for non-constant models too.
        </p>
        <p>
          Collisions between agents are defined as any overlap between their bodies. The
task is to find a collision free temporal plan. An adaptation of CBS algorithm denoted
CBSR for the continuous variant has been proposed [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ]. We rephrased CBSR in terms
of SMT similarly as it has been done with CBS. The resulting algorithm SMT-CBSR
[
          <xref ref-type="bibr" rid="ref27">27</xref>
          ] differs from SMT-CBS mostly in the aspect of decision variable generation. In
case of the standard MAPF, decision variables can be determined statically in advance
but this is not applicable in the continuous version since the continuity has potential to
spawn infinitely many decisions. Decision variables need to be generated dynamically
in response to discoveries of new conflicts in MAPFR.
        </p>
        <p>Naturally the future step in the development of SMT-CBSR is DPLL(MAPFR)
where also partial assignments will be checked for consistency.
6</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Discussion and Conclusion</title>
      <p>
        We recalled the new MAPF solving method called SMT-CBS that combines
searchbased CBS and SAT-based MDD-SAT through concepts from satisfiability modulo
theories (SMT). Although SMT-CBS represent state-of-the-art in optimal MAPF solving
as shown in [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ] we identified certain deficiencies of the algorithm. Namely the fact
that it checks for consistency with respect to MAPF rules only fully assigned
propositional encodings. We therefore theoretically suggest DPLL(MAPF), a new algorithm
that will also check for consistency partial assignments. We further suggest future work
in which DPLL(MAPF) will be generalized for MAPF with continuous time and
geometric agents, an analogous next step beyond the existing SMT-CBSR algorithm [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ].
      </p>
    </sec>
    <sec id="sec-7">
      <title>Acknowledgements</title>
      <p>This research has been supported by GACˇ R - the Czech Science Foundation, grant
registration number 19-17966S.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Andreychuk</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yakovlev</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Atzmon</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stern</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <article-title>: Multi-agent pathfinding (MAPF) with continuous time</article-title>
          . CoRR abs/
          <year>1901</year>
          .05506 (
          <year>2019</year>
          ), http://arxiv.org/abs/
          <year>1901</year>
          .05506
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Audemard</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lagniez</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Simon</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Improving glucose for incremental SAT solving with assumptions: Application to MUS extraction</article-title>
          .
          <source>In: SAT</source>
          . pp.
          <fpage>309</fpage>
          -
          <lpage>317</lpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Audemard</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Simon</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Predicting learnt clauses quality in modern SAT solvers</article-title>
          .
          <source>In: IJCAI</source>
          . pp.
          <fpage>399</fpage>
          -
          <lpage>404</lpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Biere</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Biere</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heule</surname>
            , M., van Maaren,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Walsh</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <source>Handbook of Satisfiability: Volume 185 Frontiers in Artificial Intelligence and Applications</source>
          . IOS Press (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Bofill</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          , Palah´ı,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Suy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Villaret</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.:</surname>
          </string-name>
          <article-title>Solving constraint satisfaction problems with SAT modulo theories</article-title>
          .
          <source>Constraints</source>
          <volume>17</volume>
          (
          <issue>3</issue>
          ),
          <fpage>273</fpage>
          -
          <lpage>303</lpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Davis</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Logemann</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Loveland</surname>
            ,
            <given-names>D.W.:</given-names>
          </string-name>
          <article-title>A machine program for theorem-proving</article-title>
          .
          <source>Commun. ACM</source>
          <volume>5</volume>
          (
          <issue>7</issue>
          ),
          <fpage>394</fpage>
          -
          <lpage>397</lpage>
          (
          <year>1962</year>
          ). https://doi.org/10.1145/368273.368557, https://doi.org/ 10.1145/368273.368557
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Dowling</surname>
            ,
            <given-names>W.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gallier</surname>
            ,
            <given-names>J.H.</given-names>
          </string-name>
          :
          <article-title>Linear-time algorithms for testing the satisfiability of propositional horn formulae</article-title>
          .
          <source>J. Log. Program</source>
          .
          <volume>1</volume>
          (
          <issue>3</issue>
          ),
          <fpage>267</fpage>
          -
          <lpage>284</lpage>
          (
          <year>1984</year>
          ). https://doi.org/10.1016/
          <fpage>0743</fpage>
          -
          <lpage>1066</lpage>
          (
          <issue>84</issue>
          )
          <fpage>90014</fpage>
          -
          <lpage>1</lpage>
          , https://doi.org/10.1016/
          <fpage>0743</fpage>
          -
          <lpage>1066</lpage>
          (
          <issue>84</issue>
          )
          <fpage>90014</fpage>
          -
          <lpage>1</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Dresner</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stone</surname>
            ,
            <given-names>P.:</given-names>
          </string-name>
          <article-title>A multiagent approach to autonomous intersection management</article-title>
          .
          <source>JAIR 31</source>
          ,
          <fpage>591</fpage>
          -
          <lpage>656</lpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9. Ho¨nig, W.,
          <string-name>
            <surname>Kumar</surname>
            ,
            <given-names>T.K.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cohen</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ma</surname>
          </string-name>
          , H.,
          <string-name>
            <surname>Xu</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ayanian</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Koenig</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Summary: Multi-agent path finding with kinematic constraints</article-title>
          .
          <source>In: Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence</source>
          ,
          <string-name>
            <surname>IJCAI</surname>
          </string-name>
          <year>2017</year>
          . pp.
          <fpage>4869</fpage>
          -
          <lpage>4873</lpage>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Kautz</surname>
            ,
            <given-names>H.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Selman</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Unifying sat-based and graph-based planning</article-title>
          .
          <source>In: Proceedings of the Sixteenth International Joint Conference on Artificial Intelligence</source>
          ,
          <string-name>
            <surname>IJCAI</surname>
          </string-name>
          <year>1999</year>
          . pp.
          <fpage>318</fpage>
          -
          <lpage>325</lpage>
          (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Kornhauser</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Miller</surname>
            ,
            <given-names>G.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Spirakis</surname>
            ,
            <given-names>P.G.</given-names>
          </string-name>
          :
          <article-title>Coordinating pebble motion on graphs, the diameter of permutation groups, and applications</article-title>
          . In: FOCS,
          <year>1984</year>
          . pp.
          <fpage>241</fpage>
          -
          <lpage>250</lpage>
          (
          <year>1984</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Surynek</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Felner</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ma</surname>
          </string-name>
          , H.,
          <string-name>
            <surname>Koenig</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>Multi-agent path finding for large agents</article-title>
          .
          <source>In: AAAI</source>
          . AAAI Press (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Luna</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bekris</surname>
            ,
            <given-names>K.E.</given-names>
          </string-name>
          :
          <article-title>Push and swap: Fast cooperative path-finding with completeness guarantees</article-title>
          .
          <source>In: IJCAI</source>
          . pp.
          <fpage>294</fpage>
          -
          <lpage>300</lpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Ma</surname>
          </string-name>
          , H.,
          <string-name>
            <surname>Koenig</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ayanian</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cohen</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          , Ho¨nig, W.,
          <string-name>
            <surname>Kumar</surname>
            ,
            <given-names>T.K.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Uras</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xu</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tovey</surname>
            ,
            <given-names>C.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sharon</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>Overview: Generalizations of multi-agent path finding to real-world scenarios</article-title>
          .
          <source>CoRR abs/1702</source>
          .05515 (
          <year>2017</year>
          ), http://arxiv.org/abs/1702.05515
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Ma</surname>
          </string-name>
          , H.,
          <string-name>
            <surname>Wagner</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Felner</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kumar</surname>
            ,
            <given-names>T.K.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Koenig</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>Multi-agent path finding with deadlines</article-title>
          .
          <source>In: Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence, IJCAI 2018, July 13-19</source>
          ,
          <year>2018</year>
          , Stockholm, Sweden. pp.
          <fpage>417</fpage>
          -
          <lpage>423</lpage>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Nieuwenhuis</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Oliveras</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tinelli</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Solving</surname>
            <given-names>SAT</given-names>
          </string-name>
          and
          <article-title>SAT modulo theories: From an abstract davis-putnam-logemann-loveland procedure to dpll(T)</article-title>
          .
          <source>J. ACM</source>
          <volume>53</volume>
          (
          <issue>6</issue>
          ),
          <fpage>937</fpage>
          -
          <lpage>977</lpage>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Ratner</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Warmuth</surname>
            ,
            <given-names>M.K.</given-names>
          </string-name>
          :
          <article-title>Finding a shortest solution for the N x N extension of the 15- puzzle is intractable</article-title>
          .
          <source>In: AAAI</source>
          . pp.
          <fpage>168</fpage>
          -
          <lpage>172</lpage>
          (
          <year>1986</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Ryan</surname>
            ,
            <given-names>M.R.K.</given-names>
          </string-name>
          :
          <article-title>Exploiting subgraph structure in multi-robot path planning</article-title>
          .
          <source>J. Artif. Intell. Res. (JAIR) 31</source>
          ,
          <fpage>497</fpage>
          -
          <lpage>542</lpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Sharon</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stern</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Felner</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sturtevant</surname>
          </string-name>
          , N.:
          <article-title>Conflict-based search for optimal multiagent pathfinding</article-title>
          .
          <source>Artif. Intell</source>
          .
          <volume>219</volume>
          ,
          <fpage>40</fpage>
          -
          <lpage>66</lpage>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Sharon</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stern</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Goldenberg</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Felner</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>The increasing cost tree search for optimal multi-agent pathfinding</article-title>
          .
          <source>Artif. Intell</source>
          .
          <volume>195</volume>
          ,
          <fpage>470</fpage>
          -
          <lpage>495</lpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Silva</surname>
            ,
            <given-names>J.P.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sakallah</surname>
            ,
            <given-names>K.A.</given-names>
          </string-name>
          :
          <article-title>GRASP: A search algorithm for propositional satisfiability</article-title>
          .
          <source>IEEE Trans. Computers</source>
          <volume>48</volume>
          (
          <issue>5</issue>
          ),
          <fpage>506</fpage>
          -
          <lpage>521</lpage>
          (
          <year>1999</year>
          ). https://doi.org/10.1109/12.769433, https: //doi.org/10.1109/12.769433
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Silver</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Cooperative pathfinding</article-title>
          .
          <source>In: AIIDE</source>
          . pp.
          <fpage>117</fpage>
          -
          <lpage>122</lpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Standley</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Finding optimal solutions to cooperative pathfinding problems</article-title>
          . In: AAAI. pp.
          <fpage>173</fpage>
          -
          <lpage>178</lpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Surynek</surname>
            ,
            <given-names>P.:</given-names>
          </string-name>
          <article-title>A novel approach to path planning for multiple robots in bi-connected graphs</article-title>
          .
          <source>In: ICRA 2009</source>
          . pp.
          <fpage>3613</fpage>
          -
          <lpage>3619</lpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Surynek</surname>
            ,
            <given-names>P.:</given-names>
          </string-name>
          <article-title>An optimization variant of multi-robot path planning is intractable</article-title>
          .
          <source>In: AAAI</source>
          <year>2010</year>
          . AAAI Press (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Surynek</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Time-expanded graph-based propositional encodings for makespan-optimal solving of cooperative path finding problems</article-title>
          . Ann. Math. Artif. Intell.
          <volume>81</volume>
          (
          <issue>3-4</issue>
          ),
          <fpage>329</fpage>
          -
          <lpage>375</lpage>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Surynek</surname>
            ,
            <given-names>P.:</given-names>
          </string-name>
          <article-title>Multi-agent path finding with continuous time viewed through satisfiability modulo theories (SMT)</article-title>
          . CoRR abs/
          <year>1903</year>
          .09820 (
          <year>2019</year>
          ), http://arxiv.org/abs/
          <year>1903</year>
          .09820
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Surynek</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Unifying search-based and compilation-based approaches to multi-agent path finding through satisfiability modulo theories</article-title>
          .
          <source>In: Proceedings of the 28th International Joint Conference on Artificial Intelligence</source>
          ,
          <string-name>
            <surname>IJCAI</surname>
          </string-name>
          <year>2019</year>
          . in press (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <surname>Surynek</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Felner</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stern</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Boyarski</surname>
          </string-name>
          , E.:
          <article-title>Efficient SAT approach to multi-agent path finding under the sum of costs objective</article-title>
          .
          <source>In: ECAI</source>
          . pp.
          <fpage>810</fpage>
          -
          <lpage>818</lpage>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Botea</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>MAPP: a scalable multi-agent path planning algorithm with tractability and completeness guarantees</article-title>
          .
          <source>JAIR 42</source>
          ,
          <fpage>55</fpage>
          -
          <lpage>90</lpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>de Wilde</surname>
          </string-name>
          , B.,
          <string-name>
            <surname>ter Mors</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Witteveen</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Push and rotate: a complete multi-agent pathfinding algorithm</article-title>
          .
          <source>JAIR 51</source>
          ,
          <fpage>443</fpage>
          -
          <lpage>492</lpage>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          32. Wilson, R.M.:
          <article-title>Graph puzzles, homotopy, and the alternating group</article-title>
          .
          <source>Journal of Combinatorial Theory, Series B</source>
          <volume>16</volume>
          (
          <issue>1</issue>
          ),
          <fpage>86</fpage>
          -
          <lpage>96</lpage>
          (
          <year>1974</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>