Path planning for automated guided vehicle systems with time constraints using timed Petri nets

Automated guided vehicles (AGVs) are extensively used in many applications such as intelligent transportation, logistics, and industrial factories. In this paper, we address the path planning problem for an AGV system (i.e. a team of identical AGVs) with logic and time constraints using Petri nets. We propose a method to model an AGV system and its static environment by timed Petri nets. Combining the structural characteristics of Petri nets and integer linear programming technique, a path planning method is developed to ensure that all task regions are visited by AGVs in time and forbidden regions are always avoided. Finally, simulation studies are presented to show the effectiveness of the proposed path planning methodology.


Introduction
With the rapid development of Industrial 4.0, automated guided vehicles (AGVs) have been extensively employed to handle complicated tasks efficiently. The path planning problem of AGV systems has been an active research topic in recent decades. Related works involve single AGV target reachability and multiple AGV obstacle avoidance. 1,2 The problem aims to optimize several criteria such as travel distance and energy consumption under certain requirements: deadlock prevention, obstacle avoidance, and multi-task agents. [3][4][5][6][7][8] An AGV system can be regarded as a discrete event system (DES) where the environment of the system is divided into several regions (or zones), and the vehicle movement from one region to another can be regarded as a discrete event. [9][10][11][12] Petri nets (PNs) are a graphbased mathematical tool and are widely applied for modeling, [13][14][15][16][17][18] control, [19][20][21][22][23][24][25][26][27][28][29] and scheduling [30][31][32][33] of DES, including AGV systems, manufacturing systems, and transportation systems. By assuming that some regions have a limited capacity, a deadlock prevention strategy is developed for robot planning in order to avoid collisions. 2 Hsieh and Kang 34 present a method to convert an AGV system into a control-based PN model and develop a control design method for avoiding collisions. Costelha and Lima propose a generalized stochastic PN model to address the robot task planning. 4 Petri net modeling for robotic assembly and trajectory planning is studied in McCarragher. 7 In the work of Kloetzer and Mahulea, 35 the running environment of an AGV system is partitioned into several regions where each region and the connection between two regions are represented by a place and a transition of PNs, respectively. Then, an online supervising procedure updates the paths whenever an AGV deviates from the planned trajectory. Mahulea and Kloetzer 36 propose an approach to find the shortest path of an AGV system with Boolean constraints. By modeling the environment as a state machine and transforming the Boolean constraints into a set of linear constraints, an integer linear programming problem (ILPP) is developed to find an optimal trajectoriy for an AGV system such that the total travel distance is minimized. In order to cooperatively finish some complex tasks, the types of AGVs are assumed to be different in a system. 37 Then, the task allocation problem for AGV systems is studied by using colored PNs. Recently, Luo et al. 9 develop an optimal PN controller for AGV systems in order to avoid collisions under the condition that some events are indistinguishable and uncontrollable due to the limited sensors and actuators.
In real-world systems, tasks usually have time constraints. Therefore, it is important to take the time information into consideration when dealing with the path planning problem for AGV systems. However, there are few works dealing with path planning for AGV systems with time constraints in the framework of DESs. Tanaka and Araki tackle the single machine scheduling problem and present an exact algorithm to find an optimal path. 38 Fanti 39 describe an AGV system using a colored timed PN and develop a control method to avoid collisions and deadlocks. Time windows are assigned to vehicles for the control at urban intersections in order to improve the throughput. 40 The robot rescue problem with time constraints is studied in Geng et al. 1 and a particle swarm optimization method is developed to obtain the best transition sequence. A real-time robot path planning algorithm is developed to minimize the total distance in a dynamic environment. 41 In this paper, we address the path planning for AGV systems with logic and time constraints using PNs. The tasks to be accomplished contain logic constraints on some regions along the trajectories and on the final states. In addition, we assume that some of the task regions should be visited in a predefined time window. We show that an AGV system and its static environment can be modeled by timed Petri nets (TPNs). Furthermore, an optimal path planning approach for AGV systems with time constraints is developed by solving an ILPP. Simulation studies show that the developed method is more accurate than the previous one. For the collision avoidance problem of AGV systems, it has been extensively studied in the literature (some recently published studies can be found in Refs. 9,42 and is not the main focus of this paper. This paper is structured in six sections. The basic concepts of PNs and the modeling framework are introduced in Section ''Preliminary''. In Section ''Problem statement'', the problem under consideration is formulated. In Section ''Path planning for AGV systems using PNs'', we develop an ILPP for path planning for AGV systems with time constraints. Simulation studies are exposed in Section ''Simulation results''. Conclusions and future works are finally drawn in Section ''Conclusion''.

Petri net
A Petri net is a four-tuple N = (P, T, Pre, Post), where P is a set of n places; T is a set of m transitions; Pre : P3T ! N and Post : P3T ! N are the pre-and post-incidence functions that specify the arcs from places to transitions and transitions to places, respectively, where N = f0, 1, 2, . . .g denotes the set of nonnegative integers. Pre (Post) can be tabulated in a rectangular array and represented by an n3m matrix indexed by P and T. The incidence matrix of N is defined as C = Post À Pre 2 Z n3m , where Z denotes the set of integers.
A marking is a mapping M : P ! N that assigns to each place of a PN a nonnegative integer of tokens. The marking of place p is denoted by M(p). A Petri net system hN, M 0 i is a net N with an initial marking M 0 . A transition t is enabled at M if M5Pre( Á , t), denoted by M½ti. An enable transition t may fire yielding a new marking M 0 with where Pre( Á , t) (resp. C( Á , t)) denotes the column of the matrix Pre (resp. C) associated with transition t.
Marking M 00 is said to be reachable from M 0 if there exist a sequence of transitions s = t 0 t 1 . . . t n and markings M 1 , M 2 , . . ., and M n such that M 0 ½t 0 iM 1 ½t 1 i M 2 . . . M n ½t n iM 00 holds, that is, where s = ½s(t 1 ), . . . , s(t m ) T 2 N m is the firing count vector whose i-th component represents the number of times that transition t i appears in sequence s. The set of markings reachable from M 0 in hN, M 0 i is called the reachability set of the PN system hN, M 0 i, denoted by R(N, M 0 ). Note that equation (2) is a necessary condition for the reachability of a marking. The markings satisfying equation (2) that are not reachable are said to be spurious. Due to the existence of spurious markings, it is not easy to check if a marking M is reachable. A state machine is a PN such that each transition has at most one input and at most one output place. A PN system hN, M 0 i is said to be live if from every marking M 2 R(N, M 0 ) there exists a firing sequence containing all transitions. It is well known that for a live state machine, condition (2) becomes necessary and sufficient, that is, the markings satisfying equation (2) are unique and reachable. [43][44][45] Timed Petri net model for AGV systems Inspired by the work in Mahulea and Kloetzer 36 that models an AGV system by a Petri net, we develop a method to model an AGV system with a timed Petri net by taking the timing information into consideration.
Definition 1 A timed Petri net (TPN) is a pair N d = (N, u), where: N = (P, T, Pre, Post) is a PN, u : T ! R 50 is a firing delay function that assigns to each transition a non-negative real number, where R 50 denotes the set of nonnegative real numbers.
A TPN (N, u) is said to be a timed state machine (TSM) if net N is a state machine. A TSM system is a triple G = hN, u, M 0 i, where hN, ui is a TSM and M 0 is an initial marking.
The environment of an AGV system that is known and static is partitioned into n regions labeled with p 1 , p 2 , . . . , and p n . We denote the set of regions by P = fp 1 , . . . , p n g. Each region p i is modeled by a place p i and an event in which a vehicle moves from region p i to its adjacent region p j is modeled by a transition t i, j . The number of AGVs currently located in region p i can be modeled by the number of tokens in place p i . We associate each transition t i, j with a deterministic duration u(t i, j ) to represent the AGV movement time from p i to p j . Algorithm 1 returns a TSM system G = hN, u, M 0 i for an AGV system and a vector w 2 R m 50 that contains the average distance for traveling between two adjacent regions.

Path requirement: Logic and time constraints
Among all the regions of an AGV system, we are interested in a set of regions that should be visited or avoided, denoted by P I (where P I P). In particular, we consider two types of interest regions: task regions that should be visited and forbidden regions that should be always avoided. The path requirement for an AGV system under consideration consists of logic and time constraints for the AGVs' trajectories and the final states. Therefore, we divide the set of interest regions P I into three disjoint subsets P t , P f , and P a such that P I = P t [ P f [ P a , where P t , P f , and P a denote the sets of task regions that should be visited along the trajectory, task regions that should be visited at the final state, and forbidden regions that should be always avoided, respectively.
For each interest region p 2 P I , we define a state function D(p) as follows: where D(p) = J if region p should be visited along the trajectory; D(p) = F if region p should be visited at the final state; D(p) = A if region p should be always avoided.
In addition, we assume that the time constraint associated with a task region p i is a predefined time window ½e i , l i , where e i and l i represent the earliest (global) time instant and the latest (global) time instant that region p i should be visited, respectively. If a region has no time constraint, its time window is assumed to be ½0, + '. Given an AGV system and an environment with n regions labeled with p 1 , p 2 , . . . , p n , a path requirement that contains logic and time constraints is a sequence u = (p j 1 , D(p j 1 ), ½e j 1 , l j 1 ), (p j 2 , D(p j 2 ), ½e j 2 , l j 2 ), . . . , (p j k , D(p j k ), ½e j k , l j k ) (To simplify the notation, in the rest of the paper we omit the time window ½0, + ' in u for all interest regions that have no time constraints), where p j i 2 P I is an interest region, D(p j i ) is a state function as defined in equation (3), and ½e j i , l j i is a predefined time constraint for region p j i .
For example, considering the following path requirement for an AGV system it requires that region p 1 (resp., p 2 ) should be visited along the trajectory (resp., at the final state) without time constraint, region p 3 should be visited along the trajectory in the time window ½2, 5, and region p 4 should be always avoided.

Problem statement
In this paper, we deal with the path planning problem for AGV systems with logic and time constraints. In particular, we consider a team of k identical AGVs moving in a known and static environment with n regions. Given a path requirement u that contains logic Alogrithm 1. Construct a TSM system for an AGV system.
Input: Environment with a set of n regions P = fp 1 , . . . , p n g and the initial position of AGVs Output: A TSM system G = hN, u, M 0 i and a vector w 2 R m 50 1: Let P = fp 1 , p 2 , . . . , p n g, T = f, Pre = 0, Post = 0, u = 0, M 0 = 0, and w = 0. 2: Associate each region p i with a place p i from set P. 3: for p i 2 P do 4: for p j 2 P, j 6 ¼ i do 5: if p i and p j are adjacent (i.e. regions p i and p j are adjacent) then 6: u(t i, j ) = average time traveled by an AGV from p i to p j ; 9: w(t i, j )= average distance traveled by an AGV from p i to p j . 10: end if 11: end for 12: end for 13: for p i 2 P do 14: M 0 (p i ) = number of AGVs initially located in region p i ; 15: end for and time constraints discussed in Section ''Path planning for AGV systems using PNs'', we aim to find an optimal trajectory of the AGV system such that all task regions are visited by AGVs in time and forbidden regions are always avoided, while the total travel distance is minimized. In this paper, we assume that any region could be visited multiple times by AGVs, except for the forbidden regions. 1,9,36 On the other hand, in order to finish some complex tasks, multiple types of AGVs may be needed. 37 This problem is also a challenge issue of path planning and will be investigated in our future work.
It is worth mentioning that an optimal solution for the path planning for AGV systems with logic constraints using PNs was developed in Mahulea and Kloetzer. 36 Nevertheless, the time constraints for AGV system are not discussed in Mahulea and Kloetzer. 36 Path planning for AGV systems using PNs In this section, we first introduce the method developed in Mahulea and Kloetzer 36 to transform the logic constraint into a set of linear constraints. Since the path requirement for AGV systems considered in this paper is different from the one in Mahulea and Kloetzer, 36 we propose some methods to transform the logic and time constraints into a set of linear constraints. Finally, we develop an ILPP to obtain an optimal trajectory for an AGV system such that the total travel distance is minimized.

Transformation of logic constraint
Logic constraint on the trajectory: 36 In the following, we denote the maximum number of steps for AGVs to complete the tasks by h. The trajectory of an AGV system can be represented by a finite sequence of markings M 0 , M 1 , . . . , M h of the TSM system G such that: where s i = ½s i (t 1 ), . . . , s i (t m ) T 2 N m is the firing count vector at the i-th step. The final constraint of equation (4) enforces that between markings M iÀ1 and M i each token moves at most through one transition, that is, the team of AGVs advances maximum one region at each step.
For each interest region p j 2 P I , we define an ncomponent vector v p j = ½v p j (p 1 ), . . . , v p j (p n ) with all its elements be zero except the j-th element which is equal to one, that is, 0, else: ( Therefore, a task region p j is visited at marking M iff v p j Á M51 holds.
Since the trajectory of an AGV system is represented by the sequence of h markings M 1 , M 2 , . . . , M h obtained by firing a series of transitions from the initial marking M 0 , the logic constraint on the trajectory should be considered for all the markings, that is, M 1 , . . . , M h . The following constraint guarantees that an AGV will visit region p j 2 P t as required in u along the trajectory: where k is the total number of AGVs.
Logic constraint on the final state: 36 The final state of an AGV system can be represented by the final marking M h , where h is the maximal number of steps for AGVs to complete the tasks. Therefore, The following constraint guarantees that an AGV will visit region p j 2 P f as required in u at the final state:

Transformation of logic constraint under considered path requirement
Considering the path planning problem for the AGV system discussed in Section ''Problem statement'', we assume that a task region p j should be visited by at least one AGV along the trajectory (if p j 2 P t ) or at the final state (if p j 2 P f ). For each AGV q (q = 1, . . . , k), we denote by M q, i = ½M q, i (p 1 ) . . . , M q, i (p n ) T the marking of AGV q at the i-th step (i = 1, . . . , h), where M q, i (p j ) = 1 if robot q is located in region p j at the i-th step and M q, i (p j ) = 0 otherwise.
Logic constraint on the trajectory under considered path requirement. For any task region p j 2 P t that should be visited by an AGV along the trajectory, the following logic constraint should be satisfied: As one can observe, constraint (7) is a logic ''or'' constraint. In the following proposition, we show how to transform constraint (7) into a set of linear constraints. Proposition 1. The logic constraint on the trajectory (7) can be transformed into a set of linear constraints as follows: where H 2 R 50 is a constant satisfying Proof: Constraints (8b) and (8c) impose that at least one variable z should be zero. By assuming that z j (r) = 0 (r 2 f1, . . . , kg), constraint (8a) can be simplified as follows: According to equation (5), it guarantees that AGV r will visit the task region p j along the trajectory. For any other variable z j (q) = 1 (q 6 ¼ r), we have the following condition: Since H is a large enough number as defined in equation (9), condition (11) becomes redundant and imposes no constraint on the trajectory of AGV q (q 6 ¼ r). Therefore, the logic constraint on the trajectory (7) is implemented by Proposition 1.
Logic constraint on the final state under the considered path requirement. For any task region p j 2 P f that should be visited by an AGV at the final step h (i.e., the final marking M h ), the following logic constraint should be satisfied: Similarly, we can transform the logic constraint (12) on the final state into a set of linear constraints by the following proposition. Proposition 2. The logic constraint (12) on the final state can be transformed into a set of linear constraints as follows: where H 2 R 50 is a constant satisfying Proof: This proof is analogous to the proof of Proposition 1. Constraints (13b) and (13c) impose that at least one variable z j should be zero. If z j (r) = 0 (r 2 f1, . . . , kg) holds, condition (13a) can be simplified as v p j Á M r, h = 1, which implies that AGV r will finally be located in region p j . Otherwise, condition (13b) becomes redundant since H is a large enough number as defined in equation (14). Therefore, the logic constraint on the final state (12) is implemented by Proposition 2.
Logic constraint on avoidance. It is easy to verify that the logic constraint on a forbidden region p j 2 P a that should be avoided by AGVs can be implemented by the following constraint: Transformation of time constraint In this subsection, we propose a method to transform the time constraint of an AGV system into a set of linear constraints. For any task region p j 2 P t [ P f with a predefined time window ½e p j , l p j , at least one AGV should visit p j along the trajectory (if p j 2 P t ) or at the final state (if p j 2 P f ) in the time window ½e p j , l p j . In other words, place p j of the TSM system obtained by Algorithm 1 should be marked in the predefined time window at least once. In the following, we denote by t q, i the time instant when an AGV q visits a region at the i-th step, where q 2 f1, . . . , kg and i 2 f1, . . . , hg. Time constraint on the trajectory: For any task region p j 2 P t that should be visited along the trajectory with time constraint ½e p j , l p j , the following condition should be satisfied: 9q 2 f1, . . . , kg, 9i 2 f1, . . . , hg, M q, i (p j ) = 1, t q, i 2 ½e p j , l p j , 8p j 2 P t : We can transform the time constraint on the trajectory (16) into a set of linear constraints by the following proposition.
Proposition 3. The time constraint on the trajectory (16) can be transformed into a set of linear constraints as follows: where u = ½u(t 1 ), . . . , u(t m ) is the firing delay vector that represents the movement time between adjacent regions, s q, i = ½s q, i (t 1 ), . . . , s q, i (t m ) T 2 N m is the firing count vector of AGV q at the i-th step, and ½e p j , l p j is a prescribed time window for task region p j . Parameter H 2 R 50 is a constant satisfying Proof: According to Proposition 1, constraint (17a) imposes that region p j will be visited by at least one AGV along the trajectory. Constraint (17b) represents the time instant when an AGV q visits a region at each step.
For any AGV r that does not appear in the region p j , that is, z j (r) = 1 and M r, i (p j ) = 0 (i = 1, . . . , h), constraint (17c) can be simplified as follows: Since H is a large enough number as defined in equation (18), condition (19) becomes redundant and imposes no time constraint for the AGV r.
If region p j is visited by an AGV q at the i-th step, that is, z j (q) = 0 and M q, i (p j ) = 1, then constraint (17c) is simplified as follows: Since o j (q) is a binary variable, there exist two possible situations: Situation 1) if o j (q) = 0 holds, condition (20) can be simplified as follows: e p j À t q, i 40, 8p j 2 P t t q, i À l p j 40, 8p j 2 P t 8 < : which guarantees that the time instant when the region p j is visited by an AGV q at the i-th step will satisfy the prescribed time constraint; Situation 2) if o j (q) = 0 holds, condition (20) is equivalent to (19) that is redundant. It means that AGV q will visit the region p j without a specified time constraint. The final constraint of (17c) ensures that at least one AGV will visit region p j in the time window ½e p j , l p j . Therefore, the time constraint on the trajectory (16) is implemented by Proposition 3. Time constraint on the final state: For any task region p j 2 P f that should be visited at the final state with time constraint ½e p j , l p j , the following condition should be satisfied: Similarly, we can transform the time constraint (22) on the final state into a set of linear constraints by the following proposition.
Proposition 4. The time constraint on the final state (22) can be transformed into a set of linear constraints as follows: (a) t q, 0 = 0, i = 1, . . . , h, where H 2 R 50 is a constant satisfying H. maxfjv pj Á M q, h À1j, jt q, h Àe pj j, jt q, h Àl pj jg: Proof: According to Proposition 2, constraint (23a) imposes that region p j 2 P f will be visited by at least one AGV at the final state. Constraint (23b) represents the time instant when an AGV q visits a region at each step. By Proposition 3, constraint (23c) enforces that at least one AGV will visit the region p j at the final step h in the time window ½e p j , l p j . Therefore, the time constraint on the final state (22) is implemented by Proposition 4.

Path Planning for AGV systems with an ILPP
Combining above results, we present an ILPP to solve the path planning problem for an AGV system with time constraints as follows: where H 2 R 50 is a constant satisfying Note that parameter h in (25) is a predesigned number that represents the maximum number of steps for AGVs to complete the tasks, which is lower than or equal to the total number of transitions, that is, h4m. The objective function in (25) accounts for the total travel distance of all AGVs in the system. Constraint (25a) from (4) enforces the correctness of the firing count vector. Note that constraint (25a-3) imposes that an AGV can advance maximum one region at each step. Constraints (25b) (resp., (25c)), (25d), (25f), and (25g) jointly impose the logic and time constraints on the trajectory (resp., on the final state) for the task regions. Constraint (25e) imposes the avoidance requirement for the forbidden regions. The optimal solution s q, i (q = 1, . . . , k, i = 1, . . . , h) of ILPP (25) represents the sequence of the firing count vector of the TSM system G that corresponds to the trajectory of each AGV.
Computational complexity. The optimization problem (25) is a standard ILPP whose computational complexity is well known as NP-hard. However, it can be efficiently solved by some off-the-shelf tools such as LINGO, MATLAB, and CPLEX. The computational burden of an ILPP is usually characterized by the number of variables and constraints. Problem (25) has 3kh + 2k(jP t j + jP f j) variables and 2kh + (3kh + 3k + 2) Á (jP t j + jP f j) + jP a j + 2k constraints in total, where jP t j, jP f j, and jP a j denote the numbers of regions that should be visited along the trajectory, regions that should be visited at the final state, and regions that should be always avoided, respectively.

Simulation results
In this section, the illustration of the developed approach for the path planning problem of AGV systems with time constraints is made on an example that is taken from Mahulea and Kloetzer. 36 The environment of the system is partitioned by using a constrained triangular decomposition 46 and has 30 regions as shown in Figure 1, that is, P = fp 1 , p 2 , . . . , p 30 g. There are three AGVs (i.e. k = 3) moving in the environment whose initial positions are marked by circles in Figure 1, that is, regions p 5 (green circle), p 16 (blue circle), and p 17 (yellow circle) each contain one AGV. By Algorithm 1, we obtain a TSM system G that consists of 86 transitions and 30 places, as depicted in Figure 2. For exemplification purposes, we consider unitary distance vector w = 1 and unitary firing delay vector u = 1. The firing delays of transitions are omitted in Figure 2 for the sake of brevity and readability.
Consider a set of interest regions as follows: P t ={p 8 , p 10 , p 21 , p 22 , p 23 }, P f ={p 7 , p 12 , p 29 }, and P a = fp 1 g, it implies that regions p 10 , p 8 ,p 21 , p 22 , and p 23 should be visited along the trajectory, region p 1 should be avoided (red region in Figure 1), and regions p 7 , p 12 , and p 29 should be occupied at the final state, that is, AGVs will stop in these regions. We assume that regions p 10 , p 12 , and p 21 must be visited in the time windows ½1, 2, ½1, 3, and ½2, 4, respectively. Therefore, the path requirement of the AGV system can be represented as follows: The developed approach is implemented by MATLAB with the ILPP toolbox YALMIP 47 and Optimal Solver Gurobi on a Windows operating system with i5-7500 CPU 3.40 GHz and 4 GB memory. By solving ILPP (25) with a maximum number of steps h = 16 (in approximately 0.82 s), we obtain a series of firing sequences that can be translated into the trajectories of the AGVs, as depicted in Figure 1. Regions p 7 , p 8 , and p 10 are visited by the green AGV, region p 12 is visited by the blue AGV, and regions p 21 , p 22 , p 23 , and p 29 are visited by the yellow AGV.  In addition, the approach developed in Mahulea and Kloetzer 36 is implemented by ignoring the time constraints for task regions p 10 , p 12 , and p 21 , that is, task regions p 10 , p 12 , p 21 can be visited at any time. The obtained trajectories of the AGVs are shown in Figure 3. Regions p 7 and p 8 are visited by the yellow AGV, regions p 10 and p 12 are visited by the green AGV, and regions p 21 , p 22 , p 23 , and p 29 are visited by the blue AGV.
yellow AGV: p 17 , p 8 , p 7 blue AGV: p 16 , p 28 , p 20 , p 22 , p 20 , p 21 , p 24 , p 23 , p 24 , p 25 , p 29 green AGV: p 5 , p 11 , p 10 , p 11 , p 12 In Table 1, we compare the visiting time of the task regions obtained by the proposed approach and that developed in Mahulea and Kloetzer. 36 The method developed in Mahulea and Kloetzer 36 aims to find the optimal trajectories of AGVs such that all the task regions are visited (without specifying the visiting time), while the total travel distance is minimized. Therefore, the time constraints considered in this paper cannot be implemented by the method developed in Mahulea and Kloetzer,36 which means that the visiting time of the task regions may fall into the time window (e.g. region p 10 in Table 1), less than the lower bound, or beyond the upper bound (e.g. region p 12 and p 21 in Table 1).

Conclusion
This paper deals with the path planning problem for AGV systems with logic and time constraints using PNs. We propose an analytical approach to ensure that task regions are visited by AGVs in time and forbidden regions are avoided. We propose a method to model an AGV system and its static environment by timed Petri nets. Combining the structural characteristics of Petri nets and integer linear programming technique, a path planning method is developed to obtain the optimal trajectories of AGVs such that the total travel distance is minimzed. Simulation studies are presented to show that our developed method is more accurate than the previous method.
It should be noticed that all the AGVs are assumed to be identical, that is, a single type of AGVs is considered. From a practical point of view, multiple types of AGVs may be needed to cooperatively finish some complex tasks. Our future work focuses on the path planning problem with time constraints for AGV systems that contain multiple types of AGVs.
Author's Note Zhou He and Gongchang Ren are also affiliated with Shaanxi Key Laboratory of Complex System Control and Intelligent Information Processing, Xi'an University of Technology, Xi'an China.

Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.