*3.1. MAPP Problem Definition*

In this problem, we have *m* agents indexed by the set *I* = {1, ... , *m*}. Let the free configuration space of agent *<sup>j</sup>* be represented by the directed graph *<sup>G</sup><sup>j</sup>* <sup>=</sup> {*V<sup>j</sup>* , *E<sup>j</sup>* }. For any agent *<sup>j</sup>*, graph *<sup>G</sup><sup>j</sup>* is the same. The joint configuration space, which describes the set of all possible states of the multi-agent system, is defined as the *tensor product* of the graphs of all individual agents: *<sup>G</sup>* <sup>=</sup> *<sup>G</sup>*<sup>1</sup> ×···× *<sup>G</sup>m*. *G* consists of a *joint vertex* set *V* and a *joint edge* set *E*. As an example, in a 2-D joint configuration space given by the agents *j* and *k*, the two 2-D joint vertexes *vp* = (*v j <sup>p</sup>*, *v<sup>k</sup> <sup>p</sup>*) and *vq* = (*v j <sup>q</sup>*, *v<sup>k</sup> <sup>q</sup>*) is connected by the joint edge (*e j pq*,*e<sup>k</sup> pq*). Note that *v j <sup>p</sup>* <sup>∈</sup> *<sup>V</sup><sup>j</sup>* and *<sup>e</sup> j pq* <sup>∈</sup> *<sup>E</sup><sup>j</sup>* . Let *π<sup>j</sup>* (*v j <sup>p</sup>*, *v j <sup>q</sup>*) denote a sequence of joint vertexes, called a *path* in *G<sup>j</sup>* from *v j <sup>p</sup>* to *v j <sup>q</sup>*. The cost of a path *π*(*vp*, *vq*) in *G* is defined as

$$\mathcal{g}(\pi(v\_{p\prime}v\_q)) = \sum\_{j=1}^{m} \mathcal{g}(\pi^j(v\_{p\prime}^j v\_q^j)),\tag{1}$$

where *g*(*π*) is the sum of all edge costs involved in the joint path *π*.

The goal of MAPP is to find a collision-free path, which is optimal with respect to minimal cost, from the source configuration *vs* = *v*<sup>1</sup> *<sup>s</sup>* ×···× *<sup>v</sup><sup>m</sup> <sup>s</sup>* to the destination configuration *vd* = *v*<sup>1</sup> *<sup>d</sup>* ×···× *<sup>v</sup><sup>m</sup> d* . To determine the collision between agents, a collision function *ψ*(*vp*) is defined to return the set of conflicting agents at *vp*.

Most fundamental MAPP approaches use hard collisions, where no intersection is allowed between any two agents in terms of the occupation of any *resource*, such as a workspace. This implies that the capacity of each resource can support only one agent at a time (i.e., a collision happens immediately once agents intersect at any resource). Suppose we have a set of resources *A* = {*A*1, ... , *AL*} requested by each agent in the multi-agent system, where *Ai* is defined as the set of resource of type *i* on all edges and vertexes in *G*. *Ai* is a continuous set because only continuous resources are considered in the paper. A traditional hard-collision constrained MAPP problem is formulated as follows:

$$\begin{aligned} \min\_{\pi} \ g \left( \pi \left( v\_{\nu} v\_{d} \right) \right) \\ \text{s.t.} \\ \bigcup\_{\forall i \neq j \in I} \left( A\_{k} (v\_{p}^{i}) \cap A\_{k} (v\_{p}^{j}) \right) = \bigcirc, \forall A\_{k} \in A\_{\prime} \; \forall v\_{p} \in \pi, \end{aligned} \tag{2}$$

where *Ak*(*v j <sup>p</sup>*) denotes the subset of resource *Ak* occupied by the agent *j* at the joint vertex *vp*. One state-of-the-art solver to this problem is M\*, which uses the sub-dimensional expansion strategy to dynamically increase the dimensionality of the search space in regions featuring some agent collisions. M\* enables a relatively cheaper graph search under the strict hard-collision constraint.
