Path Planning of Multi-Type Robot Systems with Time Windows Based on Timed Colored Petri Nets

: Mobile robots are extensively used to complete repetitive operations in industrial areas such as intelligent transportation, logistics, and manufacturing systems. This paper addresses the path planning problem of multi-type robot systems with time windows based on timed colored Petri nets. The tasks to be completed are divided into three different types: common, exclusive and collaborative. An analytical approach to plan a group of different types of mobile robots is developed to ensure that some speciﬁc robots will visit task regions within given time windows. First, a multi-type robot system and its environment are modeled by a timed colored Petri net. Then, some methods are developed to convert the task requirements that contain logic constraints and time windows into linear constraints. Based on integer linear programming techniques, a planning approach is proposed to minimize the total cost (i.e., total travel distance) of the system. Finally, simulation studies are investigated to show the effectiveness of the developed approach.


Introduction
With the increase in complexity and diversity of tasks, a single robot may not satisfy the task requirement in some industrial applications, which has led to the creation of multirobot systems (MRSs) [1]. The main challenge for such systems is to coordinate the control and planning of multiple robots so that tasks are effectively finished. A large number of studies in the literature have been proposed to choose the optimum path trajectories for multiple robots to reach some task regions under certain requirements such as shortest travel distance, time windows, and obstacle avoidance [2][3][4][5][6][7].
The collaboration of multiple robots was a critical issue that has garnered much attention in recent decades. An improved particle swarm algorithm has been developed to deal with the collaborative navigation of MRSs [8]. To tackle the problem of collaborative coverage of multiple robots in complicated environments, a novel multi-robot persistent coverage strategy was proposed in [9] to take into account the environmental complexity and the differences in robot path lengths. If robots have different priorities and there are both static and dynamic obstacles in the workspace, a navigation strategy with priorities was presented [10]. To complete some collaborative tasks within time constraints, the distributed planning of robots was researched in [11,12] to ensure that enough robots are present at the task destinations within the given time constraints. In [13], an integer linear programming method was proposed for optimizing the path trajectories of warehouse robots so that pickup and delivery points are reached within given time windows. The path planning of MRSs with complex tasks has also drawn a great deal of attention in the literature [14][15][16][17][18][19] in recent decades, where the tasks were expressed by Boolean formulae or linear temporal logic.
In an MRS, the system's environment was divided into zones, and the movement of any robot from one zone to another was treated as a discrete event [20][21][22][23]. Petri nets(PNs) are an efficient tool to model, analyze, and control discrete event systems [24][25][26][27][28][29][30][31], such as robotics and intelligent transportation. PN can effectively avoid the state explosion problem as the number of robots increases. In [32], an MRS was modeled by a PN and an integer linear programming problem (ILPP) was provided to find the shortest path on the condition that the types of robots are identical (i.e., only one type). Owing to the restricted sensors and actuators, an optimal PN controller for MRSs was devised [20] to minimize crashes when some events were indistinguishable and uncontrollable. The problem of path planning for MRSs with logic and time constraints was discussed using timed Petri nets [22], and an ILPP was established to determine the optimum paths of robots so that the task zones were visited by a robot within a given time window and the forbidden regions were always avoided.
To finish some complex tasks cooperatively, multiple types of robots with different functions were required [33]. For instance, in many practical systems such as logistical and manufacturing systems, not all the tasks can be completed by all robots, i.e., some tasks may need specific types of robots to complete [34]. Moreover, the time factors of tasks are also crucial in real-word applications. A multi-type robot system (MTRS) is a system that consists of multi-types and multi-quantities of robots. Therefore, path planning and task allocation are the key issues for multi-type robot systems that have received much attention in recent years. It requires to achieve a trade-off between the coordination of the robots to finish the tasks and the total cost of the system. This paper advances this research by developing an optimal path planning algorithm for multi-type robot systems with time windows.

Related Works
During the past few years, there have been numerous works focusing on the task allocation and path planning problem of MTRSs. Heuristic algorithms were applied to find near optimal solutions in real time [35,36]. In [37], an improved particle swarm optimization algorithm was used to search for the combination of robots and tasks, and the greedy algorithm was used to sort the task execution order and calculate the cost of the task execution strategy. Taking the resources required for tasks into consideration, a novel coordinated task allocation approach based on cross-entropy was presented in [38]. A comparative study between optimization-based and market-based approaches for the task allocation problem of MTRSs was discussed in [39]. In [40], an optimal task allocation solution was developed based on the mixed integer linear programming techniques. In [33], a high-level PN model called colored Petri net (CPN) [41,42] was used to model the MTRSs, where each token was associated with a color that represents the type of the robot. Then, a mixed integer linear programming problem (MILPP) was proposed to obtain the optimal sequences and paths for operating the tasks. A Petri net toolbox for multi-robot planning under uncertainty was developed in [43] to deal with multi-robot coordination problems and obtain robust, efficient, and predictable strategies.
In this paper, the path planning problem for MTRSs with time windows is discussed by using timed colored Petri nets (TCPNs). Compared with general Petri nets, colored Petri nets allow a lot of folding techniques in order to reduce the complexity of the system model. This paper focuses on a scenario in which a group of different types of mobile robots performs in a known environment that contains several tasks. We assume that there are three types of tasks in the working environment: common (performed by any type of robot), exclusive (performed by only a certain type of robot), and collaborative (requires multi-types of robots to work cooperatively). The problem consists in finding an optimal trajectory for each robot such that all task regions are reached by one or more specified robot types within a given time window and the forbidden regions are avoided.
The main contributions of this paper are as follows:

1.
We extend the previous works on the path planning of MTRSs (i.e., multi-type and multi-quantity of robots) by introducing time windows. In addition, the tasks to be finished are divided into three different types: common, exclusive, and collaborative.

2.
An analytical approach based on integer linear programming techniques is developed so that both the time windows and the logic requirements imposed on the tasks are satisfied.

3.
Simulation results are developed to show the effectiveness of the developed methodology.
The rest of the paper is structured as follows: The basic concepts of TCPNs and the modeling framework are given in Section 3. In Section 4, the path problem of MTRSs with time windows is formally formulated. In Section 5, we develop an MILPP to solve the path planning problem. Simulation studies for the developed approach are given in Section 6. Conclusions and future work are in Section 7.

Preliminary
In this section, the basic concepts of the TCPNs used in this paper are introduced. It should be noticed that the definitions of TCPNs used in this paper are slightly modified versions of [41] in order to simplify the definitions. More details can be found in [44][45][46].

Colored Petri Nets
Definition 1. Let S be a set. A multiset [45] α over S is defined by a mapping α : S → N = {0, 1, 2, . . .} and is represented as where s ∈ S is an element of set S and α(s) denotes the number of occurrences of the element s in the set S.
A Colored Petri Net (CPN) is a quintuple N = (P, T, Co, Pre, Post), where P is a set of n places; T is the a of m transitions; Cl is a set of colors; Co : P ∪ T → Cl is a function that associates a set of colors from Cl to each element in P ∪ T. For each p i ∈ P, Co(p i ) = {a i,1 , a i,2 , . . . , a i,u i } ⊆ Cl is the set of possible token colors in p i , and u i denotes the total number of possible token colors in p i . Analogously, for each t j ∈ T, Co(t j ) = {b j,1 , b j,2 , . . . , b j,v j } ⊆ Cl is the set of possible occurrence colors of t j , and v j denotes the total number of possible occurrence colors of t j .
Matrices Pre, Post ∈ N n×m are the preand post-incidence matrix. Each element Pre(p i , t j ) is mapped from the set of occurrence colors of t j to a non-negative multiset over the set of colors of p i , i.e., Pre(p i , t j ) : Co(t j ) → N(Co(p i )), for i = 1, . . . , n and j = 1, . . . , m. We use Pre(p i , t j ) to represent a matrix of u i × v j non-negative integers, where Pre(p i , t j )(h, k) denotes the weight of the arc from place p i with respect to color a i,h to transition t j with respect to color b j,k . The mapping for Post(p i , t j ) can be analogously defined. The incidence matrix C is an n × m matrix, where C(p i , t j ) : Co(t j ) → Z(Co(p i )), i = 1, . . . , n, j = 1, . . . , m, and C(p i , The marking M(p i ) of place p i ∈ P is a non-negative multiset over Co(p i ). The mapping M(p i ) : Co(p i ) → N is associated with each possible token color in p i , which is a non-negative integer representing the number of tokens of that color contained in place p i , and A colored Petri net system N, M is a colored Petri net N with a marking M.
A transition t j ∈ T is enabled at a marking M with respect to color b j,k if for each p i ∈ P it holds M(p i )(h) ≥ Pre(p i , t j )(h, k) (h = 1, . . . , u i ), and an enabled transition t j may fire yielding a new marking M , denoted by from M is a sequence of transitions, each one firing with respect to a given color such that Marking M is said to be reachable in N, M if there exists a firing sequence σ such that M[σ M , and it holds that is a multiset that indicates the firing times of transition t j with respect to each of its colors.

Timed Colored Petri Net for the Multi-Type Robot Systems
A timed Colored Petri net (TCPN) is a pair (N, θ) [44], where: We denote by G = N, θ, M 0 a TCPN system, where M 0 is an initial marking. In the following, it is assumed that the moving environment R = {r 1 , r 2 , . . . , r n } of an MTRS is divided into a set of n triangular regions that connect to each other via several predefined line segments [47]. Each type of robot can move freely inside any triangular region except the forbidden one. We model the MTRS and its working environment by a TCPN according to Algorithm 1. To illustrate the construction of a TCPN better, a simple MTRS is discussed in the following example. Figure 1. Its moving environment is divided into ten triangular regions, i.e., R = {r 1 , . . . , r 10 }. Two robots with different functions are initially deployed in regions r 3 (represented by blue circle C 1 ) and r 5 (represented by red circle C 2 ), respectively, i.e., K = 2.

Example 1. Let us consider the MTRS in
The TCPN system of the MTRS is shown in Figure 2. It consists of 10 places, P = {p 1 , . . . , p 10 }, each of which represents a region, and 26 transitions, T = {t 1 , . . . , t 26 }, each of which represents the movement of a robot from one region to an adjacent one. The description of transitions and places is presented in Table 1.

Algorithm 1: Construct the TCPN model for the multi-type robot system
Require: The working environment with K robots and n regions R = {r 1 , r 2 , . . . , r n } Ensure: A TCPN system G = N, θ, M 0 and a distance vector w 1: Let P = {p 1 , . . . , p n }, T = φ, Pre = 0, Post = 0, θ = 0, M 0 = 0, w = 0, m = 0 2: Associate each region r i with a place p i in the place set P, i.e., each place p i ∈ P represents a region r i ∈ R; 3: for each p i ∈ P do 4: for each p j ∈ P, j = i do 5: if p i and p j are adjacent, i.e., region r i and region r j are adjacent then 6: θ(t m )(k) equals the average time for a C k type of robot moving from region r i to region r j , k = 1, . . . , K; 9: w(t m )(k) equals the average distance for a C k type of robot moving from region r i to region r j , k = 1, . . . , K; 10: where I k denotes a K × K identity matrix; 11: end if 12: end for 13: end for 14: for p i ∈ P do 15: M 0 (p i )(h) = The number of robots with color a i,h initially located in region r i ;  Region r 6 t 6 Moving to r 6 from r 8 t 19 Moving to r 10 from r 7 p 7 Region r 7 t 7 Moving to r 7 from r 8 t 20 Moving to r 7 from r 10 p 8 Region r 8 t 8 Moving to r 8 from r 7 t 21 Moving to r 9 from r 2 p 9 Region r 9 t 9 Moving to r 2 from r 3 t 22 Moving to r 2 from r 9 p 10 Region r 10 t 10 Moving to r 3 from r 2 t 23 Moving to r 10 from r 9 t 11 Moving to r 5 from r 1 t 24 Moving to r 9 from r 10 t 12 Moving to r 1 from r 5 t 25 Moving to r 10 from r 4 t 13 Moving to r 4 from r 8 t 26 Moving to r 4 from r 10 The possible color sets of each place p i ∈ P (i = 1, . . . , 10) and each transition t j ∈ T (j = 1, . . . , 26) are Co(p i ) = {C 1 , C 2 } and Co(t j ) = {C 1 , C 2 }, respectively. The initial marking M 0 = [M 0 (p 1 ), . . . , M 0 (p 10 )] T of the TCPN system is a column vector that contains ten subvectors, where M 0 ( Each element in subvector M 0 (p i ) denotes the number of two different robots in region r i . The incidence matrix C of the TCPN system is a 10 × 26 matrix, where C(p i , t j ) is a 2 × 2 matrix, for i = 1, . . . , 10 and j = 1, . . . , 26. For instance, the sixth row of C indicates that the input (resp., output) transitions of place p 6 are t 3 and t 6 (resp., t 4 and t 5 ).

Problem Statement
In this paper, we assumed that there were three type of tasks in the working environment for the MTRSs: common (performed by any type of robot), exclusive (performed by only a certain type of robot), and collaborative (requires multi-types of robots to work cooperatively). We were interested in a variety of regions of the moving environment R I ⊆ R, particularly set R I , which contains four disjoint subsets R E k , R S k , R U , and R A such that where • R E k : set of exclusive task regions for C k type of robot; • R S k : set of collaborative task regions for C k type of robot; • R U : set of public task regions that can be visited by any type of robot; • R A : set of forbidden regions that all robots should always avoid.
For every interest region r ∈ R I , a state function ∆(r) is defined as follows: where • ∆(r) = E k means that the exclusive task in region r can only be performed by C k type of robot; • ∆(r) = S k means that the task in region r should be cooperatively performed by C k type of robot and other types of robots, i.e., two or more robots are required to visit region r; • ∆(r) = U means that the task in region r can be performed by any type of robot; • ∆(r) = A means that region r should be always avoided.
Furthermore, we assumed that each task region r i was associated with a time window [e i , l i ] to indicate the earliest and the latest (global) time instant for visiting the task region r i . Note that [0, +∞] was used to indicate that no time constraint was attached to a task region.
Given an MTRS and its moving environment R = {r 1 , r 2 , . . . , r n } with n regions, a task requirement for an MTRS that contains logic requirement and time windows is the sequence. (To simplify the notation, we ignore the time window [0, +∞] in ϕ in the remainder of the paper for all regions of interest with no time constraints.) where r i j ∈ R I is an interest region; ∆(r i j ) is a state function defined in Equation (1), and [e i j , l i j ] is a given time window corresponding to region r i j .

Example 2.
The following task requirement for the MTRS depicted in Figure 1, [2,5]), (r 8 , S 1 ), (r 8 , S 2 ), (r 10 , U, [20,30]), (r 7 , A), requires that the task in region r 1 can only be performed by a C 1 robot in the time window [2,5]; the task in region r 8 should be performed by two types of robot, i.e., C 1 and C 2 ; the task in region r 10 can be performed by any type of robot in time window [20,30]; and all robots should avoid region r 7 . Note that the task in region r 8 does not have a time window constraint.

Problem 1.
In this paper, we considered an MTRS that contained K different types of mobile robots moving in a static surrounding R = {r 1 , r 2 , . . . , r n }. For a given task requirement ϕ that contains logic constraints and time windows as defined in Equation (2), the goal of this paper was to find optimal trajectories for all robots to meet the task requirement, while the total travel distance of the MTRS was minimized.

Path Planning for MTRSs Based on TCPNs
In this section, some methods were presented to convert the logic constraints and time windows for each type of task into linear constraints. Based on the linear transformations, an analytical approach was developed so that both the time windows and the logic requirement imposed on the tasks were fulfilled while minimizing the total cost, i.e., total travel distance.

Preprocessing of the Forbidden Regions
Any forbidden region r q ∈ R A should not be visited by robots at any state (i.e., marking). This can be done by removing the places that correspond to the forbidden regions and their input and output arcs from the TCPN model. In Algorithm 2, the place p q corresponding to forbidden region r q was removed from the TCPN system along with its corresponding row information from Pre, Post, and M 0 . In addition, all the input and output transitions of p q and the column information from Pre and Post were removed. As a consequence, the forbidden regions were excluded from the planned trajectories. Note that t · i and · t i denote the output places and input places of transition t i , respectively.

Algorithm 2: Preprocessing of the forbidden regions
Require: A TCPN system G = N, θ, M 0 , where N = (P, T, Co, Pre, Post); Ensure: A simplified TCPN system G = N, θ, M 0 that does not contain forbidden regions 1: for each forbidden region r q ∈ R A do 2: remove the row corresponding to the place p q from Pre, Post, and M 0 , respectively, where p q ∈ P is the place that represents region r q ; 3: P := P\{p q }; % remove place p q from the set P

4:
for each t i ∈ T

5:
if t · i = p q or · t i = p q , then 6: remove the column corresponding to transition t i from Pre, Post, w, and θ, respectively; % remove the paths related to the forbidden region r q 7: T := T\{t i };% remove the input transition or output transition of p q from the set T

Transformation of Logic Constraints and Time Windows for Exclusive Tasks and Collaborative Tasks
In the rest of the paper, we denote the total number of tasks to be completed by |task|. Each marking M of the TCPN represents the intermediate positions of all robots. According to Algorithm 1, each task can be represented by a reachable marking of the TCPN. In another word, completing the tasks of the MTRSs corresponds to some specific markings of the TCPN. Therefore, there are at most |task| intermediate markings for the TCPN to finish all tasks, i.e.: where σ j = [σ j (t 1 ), σ j (t 2 ), . . . , σ j (t m )] T is the firing count vector from M j−1 to M j . In other words, vector σ j represents all the movements of the MTRS from state M j−1 to state M j . The exclusive tasks refer to those that can only be completed by a specific type of robot in exclusive regions. Only a C k robot can visit an exclusive task region r q ∈ R E k . To fulfill this logic requirement, the following constraint should be satisfied: where H ∈ R ≥0 is a large enough number.
Proof. If z q,k,j = 1 holds, then constraint (5a) can be simplified as follows: Since H is a large enough number and M j (p q )(k) is a non-negative integer, constraint (6) becomes redundant. On the other hand, when z q,k,j = 0 holds, constraint (5a) can be simplified as follows: which is equivalent to M j (p q )(k) ≥ 1. This condition indicates that the exclusive task region r q ∈ R E k is visited by a C k robot at marking M j . Since z q,k,j ∈ {0, 1} is a binary variable, constraint (5b) guarantees that at least one variable z q,k,j (j = 1, . . . , |task|) is equal to zero. As a consequence, the exclusive task region r q will be visited by a C k robot at marking M j at least once.
For the time window [e q , l q ] imposed on an exclusive task region r q ∈ R E k , it can be converted into a linear constraint as follows: where θ = [θ(t 1 ), . . . , θ(t m )] denotes the firing delay vector, and σ j = [σ j (t 1 ), . . . , σ j (t m )] T denotes the firing count vector of all types of robots from M j−1 to M j . Parameter τ k,j ∈ R ≥0 represents the time instant when a C k robot arrives at marking M j .
Proof. According to Equation (5), condition (8a) ensures the logic requirement for the exclusive tasks. If a C k robot visits the exclusive task region r q at any marking M j (j = 1, . . . , |task|), i.e., z q,k,j = 0 and M j (p q )(k) = 1, the third and fourth constraints of (8b) can be simplified as follows: As a consequence, it ensures that the time instant when a C k robot visits the region r q at marking M j will satisfy the prescribed time window constraint.
On the other hand, if the robot does not visit the exclusive task region r q at any marking M j (j = 1, . . . , |task|), i.e., M j (p q )(k) = 0, then the third and fourth constraint of (8b) can be simplified as follows: Since H is a large enough number and z q,k,j ∈ {0, 1}, the above condition becomes redundant for a C k robot.
The collaborative tasks refer to those that should be cooperatively completed by different types of robots. For a collaborative task region r q ∈ R S k , region r q should be visited by different types of robots. This can be analogously achieved by imposing constraints (5) and (8) separately to each required type of robot.

Transformation of Logic Constraints and Time Windows for Public Tasks
Public tasks refer to those that can be completed by any type of robot, i.e., for a public task region r q ∈ R U , region r q should be visited by any type of robot. For each public region r q ∈ R U , we defined a vector v q,k = [v q,k (p 1 )(1), v q,k (p 1 )(2), . . . , v q,k (p 1 )(u 1 ), . . . , v q,k (p n )(u n )], (k=1,. . . ,|K|) whose elements are zeros except for the q-th elements that are equal to one, i.e., Therefore, the constraint imposed on a public task region r q ∈ R U can be converted into the following linear constraints: where H ∈ R ≥0 is a large enough number.
Proof. Constraints (9b) and (9c) conjointly ensure that at least one variable z q,k,j is equal to zero. When z q,k,j = 0 holds for any robot C k (k = 1, . . . , K) at any marking M j (j = 1, . . . , |task|), so the constraint (9a) can be simplified as follows: which guarantees that the public task region r q ∈ R U will be visited by a C k robot at marking M j .
On the other hand, when z q,k,j = 1 holds for any type of robot C k (k = 1, . . . , K) at any marking M j (j = 1, . . . , |task|), i.e., the public task region r q ∈ R U is not visited by a C k robot at marking M j , constraint (9a) can be simplified as follows: Since H is a large enough number, this condition becomes redundant for a C k robot.
In the rest of this paper, we use o q,k,j = 0 (resp. o q,k,j = 1) to indicate that the public task region r q is visited by a C k robot at marking M j within (resp. outside) the predefined time window. The time window [e q , l q ] imposed on a public task region r q ∈ R U can be converted into a linear constraint as follows. (10) where θ = [θ(t 1 ), θ(t 2 ), . . . , θ(t m )] and σ j = [σ j (t 1 ), . . . , σ j (t m )] T . Parameter τ k,j ∈ R ≥0 represents the time instant when a C k robot arrives at marking M j .
Proof. According to Equation (9), condition (10a) ensures the logic requirement for the public tasks. For a C k robot that visits the public task region r q at any marking M j (j = 1, . . . , |task|), we have z q,k,j = 0 and M j (p q )(k) = 1. Therefore, the constraint (10c) can be reduced to: Since variable o q,k,j is binary, we have the following two situations: (1) if o q,k,j = 0 holds, condition (11) can be reduced to: which consequently ensures that the time instant when the public task region r q is visited by a C k robot at marking M j satisfies the predefined time window [e q , l q ]; (2) if o q,k,j = 1 holds, condition (11) can be reduced to: which becomes redundant. As a consequence, a C k robot will visit the public task region r q without any specified time constraint. The first and second constraints of (10c) ensure that at least one robot will visit the public task region r q within the time window [e q , l q ]. For a C k robot that does not visit the public task region r q at any marking M j (j = 1, . . . , |task|), i.e., M j (p q )(k) = 0, the constraint (10c) can be reduced to: which is a redundant constraint and imposes no time constraint for a C k robot.

Path Planning of the MTRSs by an MILPP
Combining the linear transformations for the exclusive, collaborative, and the public task regions, i.e., Equations (4), (8), and (10), Problem 1 can be solved by the following MILPP: (15) Note that w = [w(t 1 ), . . . , w(t m )] is a vector that contains the travel distance between each adjacent region. The objective function of (15) represents the total travel distance for all robots from initial to final position. Condition (15a) represents all the states of the MTRSs from initial to final position. Condition (15b) ensures the logic requirements and time windows for the exclusive and collaborative tasks. Condition (15c) ensures the logic requirements and time windows for the public tasks. The optimal solution σ j (j = 1, . . . , |task|) of MILPP (15) denotes the firing count vector of the TCPN system that corresponds to the movement strategy of each type of robot. Therefore, the path of each type of robot k that contains a sequence of regions, denoted by path k , can be iteratively constructed by using Algorithm 3.
The overall CPU time for the developed approach is 23 seconds. In addition, we also gave the visiting time of each task region in Table 2 and the Gantt chart of the obtained paths in Figure 5. As one can see, both the logic requirements and the time windows were satisfied by the proposed approach.  In order to better test the efficiency of the developed approach, we used Robot Motion Toolbox [48] to randomly generate some examples with different numbers of robots and regions. In Table 3, the number of regions, the number of robots, the number of task regions and the CPU time for each tested case are presented. Case 1 is the MTRS in Figure 3. As one can observe, the CPU time grows significantly as the number of regions and robots increases, since the number of constraints and variables of MILPP (15) increasse as the the number of regions and robots increases. However, our developed approach can always provide an optimal solution.

Conclusions
This paper addressed the path planning of multi-type robot systems with time windows using TCPNs. To deal with complex tasks that need specific types of robots to complete, the tasks of the systems were classified into three different types, i.e., common, exclusive, and collaborative. Combining the state equations of TCPNs, some approaches to convert the logic constraints and time windows imposed on the different types of tasks into a set of linear constraints was developed. Then, an efficient path planning method was proposed so that regions containing different types of tasks were visited by a specified type of robot in a predefined time window. Simulation studies illustrated the effectiveness of this approach. TCPN can effectively avoid the state explosion problem as the number of robots increases. The developed approach can be used in application areas where tasks may need specific types of robots to complete. It should be noticed that the collision avoidance problem is not addressed in this paper. Our future research aims to study the path planning of MTRSs with high-level specifications such as Boolean specifications or linear temporal logic, which can be used for patrolling path planning and path planning with multi-task selections.