A Heuristic Search Based Algorithm for Motion Planning with Temporal Goals
Total Page:16
File Type:pdf, Size:1020Kb
T* : A Heuristic Search Based Algorithm for Motion Planning with Temporal Goals Danish Khalidi1, Dhaval Gujarathi2 and Indranil Saha3 Abstract— Motion planning is one of the core problems to A number of algorithms exist for solving Linear Temporal solve for developing any application involving an autonomous logic (LTL) motion planning problems in different settings. mobile robot. The fundamental motion planning problem in- For an exhaustive review on this topics, the readers are volves generating a trajectory for a robot for point-to-point navigation while avoiding obstacles. Heuristic-based search directed to the survey by Plaku and Karaman [18]. In case of algorithms like A* have been shown to be efficient in solving robots with continuous state space, we resort to algorithms such planning problems. Recently, there has been an increased that do not focus on optimality of the path, rather they focus interest in specifying complex motion plans using temporal on reducing the computation time to find a path. For example, logic. In the state-of-the-art algorithm, the temporal logic sampling based LTL motion planning algorithms compute a motion planning problem is reduced to a graph search problem and Dijkstra’s shortest path algorithm is used to compute the trajectory in continuous state space efficiently, but without optimal trajectory satisfying the specification. any guarantee on optimality (e.g [19], [20], [21]). On the The A* algorithm when used with an appropriate heuristic other hand, the LTL motion planning problem where the for the distance from the destination can generate an optimal dynamics of the robot is given in the form of a discrete transi- path in a graph more efficiently than Dijkstra’s shortest path tion system can be solved to find an optimal trajectory for the algorithm. The primary challenge for using A* algorithm in temporal logic path planning is that there is no notion of a robot by employing graph search algorithms (e.g. [22], [9]). single destination state for the robot. We present a novel motion In this paper, we focus on the class of LTL motion planning planning algorithm T* that uses the A* search procedure problems where a robot has discrete dynamics and seek to opportunistically to generate an optimal trajectory satisfying design a computationally efficient algorithm to generate an a temporal logic query. Our experimental results demonstrate optimal trajectory for the robot. that T* achieves an order of magnitude improvement over the state-of-the-art algorithm to solve many temporal logic motion Traditionally, the LTL motion planning problem for the planning problems in 2-D as well as 3-D workspaces. robots with discrete dynamics is reduced to the problem of finding the shortest path in a weighted graph and Dijkstra’s I. INTRODUCTION shortest path algorithm is employed to generate an optimal trajectory satisfying an LTL query [22]. However, for a large Motion planning is one of the core problems in robotics workspaces and a complex LTL specification, this approach where we design algorithms to enable an autonomous robot is merely scalable. Heuristics based search algorithms such as to carry out a real-world complex task successfully [1]. A* [23] have been successfully used in solving point to point A basic motion planning task consists of point-to-point motion planning problems and is proven to be significantly navigation while avoiding obstacles and satisfying some user- faster than Dijkstra’s shortest path algorithm. The A* algo- given constraints. To solve this problem, there exist many rithm when used with an appropriate heuristic for distance methods among which graph search algorithms like A* [2] from the destination node can generate an optimal path in and sampling based motion planning techniques such as a graph efficiently. A* algorithm have not been utilized in rapidly exploring random trees [3] are two prominent ones. temporal logic path planning as there is no notion of a single Recently, there has been an increased interest in specifying destination state in LTL motion planning. We, for the first complex motion plans using temporal logic (e.g. [4], [5], arXiv:1809.05817v3 [cs.RO] 2 Oct 2019 time, attempt to incorporate the A* search algorithm in LTL [6], [7], [8], [9], [10]). Using temporal logic [11], one path planning to generate an optimal trajectory satisfying an can specify requirements that involve temporal relationship LTL query efficiently. between different operations performed by robots. Such We have applied our algorithm to solving various LTL requirements arise in many robotic applications, including motion planning problems in 2-D and 3-D workspaces and persistent surveillance [9], assembly planning [12], evacua- compared the results with that of the algorithm presented tion [13], search and rescue [14], localization [15], object in [22]. Our experimental results demonstrate that T* in transportation [16], and formation control [17]. many cases achieves an order of magnitude better computa- tion time than that of the traditional approach to solve LTL 1 Danish Khalidi is with NetApp India. This work was carried motion planning problems. out when Danish was an M.Tech student in the Department of Com- puter Science and Engineering, Indian Institute of Technology Kanpur. [email protected] 2 Dhaval Gujarathi is with SAP India. This work was carried out II. PRELIMINARIES when Dhaval was an M.Tech student in the Department of Com- puter Science and Engineering, Indian Institute of Technology Kanpur. The inputs to our algorithm consists of the robot [email protected] 2 Indranil Saha is with Department of Computer Science and Engineering, workspace W, the set of robot actions Act, and a Linear Indian Institute of Technology Kanpur. [email protected] Temporal Logic Query Φ. A. Workspace, Robot Actions and Trajectory In this work, we assume that the robot operates in a two- dimensional (2-D) or a three dimensional (3-D) workspace W which we represent as a grid map. The grid divides the workspace into square shaped cells. Each of these cells denote a state in the workspace W which is referenced by its coordinates. Some cells in the grid could be marked as obstacles and in any case the robot is not allowed to visit such states. We capture the motion of a robot using a set of Actions Act. The robot changes its state in the workspace by per- forming the actions in Act. An action act 2 Act is associated (a) Transition system T with proposi- (b) Büchi automaton B for with a cost which captures the energy consumption or time tions P1;P2 and P3 query: (3p1 ^ 3p2 ^ :p3) delay to execute it. A robot can move to satisfy a given Fig. 1. Transition System and Büchi Automaton specification by executing a sequence of actions in Act. The sequence of states followed by the robot is called the trajectory of the robot. The cost of a trajectory is defined as formula ξ, if the first state of σ satisfies ξ. The logical the sum of costs of the actions that are utilized to realize the operators conjunction ^ and negation : have their usual trajectory. meaning. For an LTL formula φ, Xφ is true in a state if φ is satisfied at the next step. The formula φ1 U φ2 denotes B. Transition System that φ1 must remain true until φ2 becomes true at some point We can model the motion of the robot in the workspace in future. The other LTL operators that can be derived are Always 3 Eventually φ W as a weighted transition system. A weighted transition ( ) and ( ). The formula denotes that φ system for a robot with the set of actions Act is defined as the formula must be satisfied all the time in the future. 3φ φ T := (S ; s ;E ; Π ;L ; w ; O ) where, (i) S is the set The formula denotes that the formula has to hold T 0 T T T T T T :P of states/vertices, (ii) s 2 S is the initial state of the robot, sometime in the future. We have denoted negation as 0 T !P and conjunction as & in Figures. (iii) ET ⊆ ST ×ST is the set of transitions/edges, (s1; s2) 2 act ET iff s1; s2 2 ST and s1 −−! s2, where act 2 Act, (iv) ΠT D. Büchi Automaton ΠT is the set of atomic propositions, (v) LT : ST ! 2 is a For any LTL formulae Φ over a set of propositions map which provides the set of atomic propositions satisfied ΠT , we can construct a Büchi automaton with input al- at a state in S , and (vi) w : E ! is a weight ΠT T T T N>0 phabet ΠB = 2 . We can define a Büchi automaton as function. (vii) O : set of obstacle cells in W T B := (QB; q0; ΠB; δB;Qf ), where, (i) QB is a finite set of We can think of a weighted transition system T as a ΠT states, (ii) q0 2 QB is the initial state, (iii) ΠB = 2 is weighted directed graph GT with ST vertices,ET edges and the set of input symbols accepted by the automaton, (iv) w weight function. Whenever we use some graph algorithm T δB ⊆ QB × ΠB × QB is a transition relation, and (v) on a transition system T, we mean to apply it over G . T Qf ⊆ QB is a set of final states. An accepting state in Example 2.1: Throughout this paper, we will use the the Büchi automaton is the one that needs to occur infinitely workspace W shown in Figure 1(a) for the illustrative often on an infinite length string consisting of symbols from example. We build transition system T over W where Π = T ΠB to get accepted by the automaton.