Fast, Composable Rescue Mission Planning for UAVs using Metric Temporal Logic

Fast, Composable Rescue Mission Planning for UAVs using Metric Temporal Logic


We present a hybrid compositional approach for real-time mission planning for multi-rotor unmanned aerial vehicles (UAVs) in a time critical search and rescue scenario. Starting with a known environment, we specify the mission using Metric Temporal Logic (MTL) and use a hybrid dynamical model to capture the various modes of UAV operation. We then divide the mission into several sub-tasks by exploiting the invariant nature of safety and timing constraints along the way, and the different modes (i.e., dynamics) of the UAV. For each sub-task, we translate the MTL specifications into linear constraints and solve the associated optimal control problem for desired path, using a Mixed Integer Linear Program (MILP) solver. The complete path for the mission is constructed recursively by composing the individual optimal sub-paths. We show by simulations that the resulting suboptimal trajectories satisfy the mission specifications, and the proposed approach leads to significant reduction in computational complexity of the problem, making it possible to implement in real-time. Our proposed method ensures the safety of UAVs at all times and guarantees finite time mission completion. It is also shown that our approach scales up nicely for a large number of UAVs.


footnoteinfo]The research reported in this paper was partially supported by the US Office of Naval Research (ONR) Grant No. N00014-17-1-2622.

]Usman A. Fiaz    ]John S. Baras

lying robots, mission planning and decision making, safety, trajectory and path planning, optimal control of hybrid systems

1 Introduction

Multi-rotor Unmanned Aerial Vehicles (UAVs) in general and quadrotors in particular, find enormous applications in several key areas of research in academia as well as industry. These include but are not limited to search and rescue and disaster relief (Waharte and Trigoni (2010); Gholami et al. (2019)), autonomous aerial grasping and transport (Hoareau et al. (2017); Fiaz et al. (2017)), and aerial coverage and surveillance (Mozaffari et al. (2016); Fiaz (2017)). The motivation for this expanding zeal towards multi-rotor UAVs is twofold. First, these are highly inexpensive robots which can be extensively used as testbeds for much of the ongoing research in aerial robotics. Secondly, these are extremely agile robots, capable of much higher maneuverability in comparison with the other UAV classes, namely fixed-wing and helicopter style UAVs. This salient feature also edges them as a feasible platform to operate in congested environments, such as crowded city skies and constrained indoor workspaces.

The enormous impact of quadrotors in autonomous search and rescue becomes evident especially during natural disasters, where it is impossible for humans and terrestrial robots to access highly cluttered spaces to rescue people from life threatening situations. In such scenarios, these agile multi-rotor UAVs come to our rescue. They can either locate and grab a target themselves or can serve as a guide for other robots as well as humans to help evacuate a target. However, the need to evacuate the targets within limited, finite time cannot be more emphasized. Excess of the existing motion planning literature only guarantees successful collision avoidance for all times or successful and safe completion of the mission eventually i.e., without any guarantees on its finite time completion. However, time critical rescue missions require both safety and finite time completion guarantees. Although some recent works ensure finite time and safe mission completion for multi-agent systems, they are computationally complex and hence cannot be implemented in real-time. In addition they use simple dynamical models for the robots, which limit their maneuverability in practice.

In this paper, we propose a hybrid, compositional, optimization based method for real-time mission planning for quadrotors in a time critical search and rescue scenario. Starting with a known environment, we specify the mission using Metric Temporal Logic (MTL) and use a hybrid dynamical model to capture the various modes of UAV operation. We then divide the mission into several sub-tasks, by exploiting the invariant nature of safety and timing constraints along the way, and the different modes (i.e., dynamics) of the UAV. For each sub-task, we translate the MTL specifications into linear constraints, and solve the associated optimal control problem for desired path, using a Mixed Integer Linear Program (MILP) solver. The complete path for the mission is constructed recursively by composing the individual optimal sub-paths. We show by simulations that the resulting suboptimal trajectories satisfy the mission specifications, and the proposed approach leads to significant reduction in computational complexity of the problem, making it possible to implement in real-time.

Our proposed method ensures the safety of UAVs at all times and guarantees finite time mission completion. It is also shown that our approach scales up nicely for a large number of UAVs under some realistic assumptions on the environment. Following are the main contributions of this paper:

  • A hybrid optimization based framework for rescue mission planning for UAVs using MTL specifications under the assumption of known environment, and using a rich hybrid dynamical model for the UAVs.

  • Decomposition of complex MTL specifications into simpler MTL formulae and their translation into linear constraints.

  • Fast (i.e., real-time) and recursive computation of safe, composable, suboptimal trajectories for UAVs with finite time guarantees.

  • Limitations and scalability results for the proposed approach for large number of UAVs in a constrained environment.

The rest of the paper is organized as following. In Section 2, we provide a brief survey of the existing literature in relevant areas. Section 3 describes the essential notation and preliminaries on system dynamics, MTL specifications, and the workspace. In Section 4, we define the hybrid dynamical model for UAVs and describe some of its modes. In Section 5, we formulate the optimal control problem and detail our solution approach. Section 6 covers the results drawn from simulations. In Section 7, we summarize and analyze the outcomes of this work briefly, before concluding with some future prospects.

2 Related Work

Given any high level task, it is a standard practice in classic motion planning literature (Latombe (1991); LaValle (2006)), to look for a set of trajectories, which the robot can follow, while satisfying the desired task specifications. This gives rise to the notion of optimal path planning, which considers an optimal path in the sense of optimizing some suitable cost function and finding a control law, to go from one position to another while satisfying some constraints (Choset (2005)). Traditionally, methods such as potential functions (Xi et al. (2005)) have been used for multi-robot mission planning. However, they tend to fail in situations where the mission involves some finite time constraints or dynamic specifications. Aerial surveying of areas and time-critical search and rescue are two common examples of such tasks.

Temporal logic (Baier et al. (2008)) seems to address this problem, since it enables us to specify complex dynamic tasks in compact mathematical form. A bulk of modern motion planning literature is based on Linear Temporal Logic (LTL) (Goerzen et al. (2010)), which is useful for specifying tasks such as visiting certain objectives periodically, surveying areas, ensuring stability and safety etc. (Plaku and Karaman (2016); Kantaros and Zavlanos (2018)). However, from a control theory perspective, LTL only accounts for timing in the infinte horizon sense i.e., it can only guarantee something will eventually happen and is not rich enough to describe finite time constraints. In addition, the traditional LTL formulation such as in (Kress-Gazit et al. (2009)), assumes a static environment, which does not admit incorporating dynamic task specifications.

On the other hand, Metric Temporal Logic (MTL) (Koymans (1990); Ouaknine and Worrell (2008)), can express finite time requirements between various events of the mission as well as on each event duration. This allows us to specify safety critical missions with dynamic task specifications and finite time constraints. An optimization based method for LTL was proposed in (Karaman et al. (2008)), and (Wolff et al. (2014)), where they translate the LTL task specifications to Mixed Integer Linear Programming (MILP) constraints, which are then used to solve an optimal control problem for a linear point-robot model. This work was extended in (Maity and Baras (2015)), where the authors used bounded time temporal constraints using extended LTL for motion planning with linear system models. However, all these works did not incorporate a rich dynamical model of the robot, and also illustrated significant computational complexity issues for the proposed methods in case of planning for multiple robots in 3D.

In some recent papers, optimization based methods with MTL specifications for single (Zhou et al. (2015)) and multiple (Nikou et al. (2016)) robots, do guarantee safe and finite time mission completion. However, in both cases, the computation of the optimal trajectory is expensive (in the order of 500 sec computation time), and hence cannot be implemented in real-time. Moreover, these works put high constraints on the robot maneuverability, by limiting its dynamics to a simple linear (point-robot) model, which is in contradiction with the main reason for deploying quadrotors in constrained dynamic environments. Thus, in this paper, our intention is to use the rich dynamics of the robots in an intelligent way to divide and conquer the computationally complex problem of mission planning for multiple UAVs using finite time MTL constraints.

3 Notation and Preliminaries

3.1 System Dynamics

Any general (possibly nonlinear) dynamical system can be represented in the form:

where for all time continuous

  • is the state vector of the system

  • is the initial condition of the state vector and

  • is the set of control inputs which is constrained in the control set .

Given a nonlinear model of the system, a linearization around an operating point is expressed as:

where for all time continuous

If time is discretized, then the system dynamics take the form:


where as before, , , and for all . Let us denote the trajectory for System (1), with initial condition at , and input as: . However, in this paper, for the sake of convenience, we use the shorthand notation i.e., instead of to represent system trajectory whenever no explicit information about and is required. Similar to the the continuous time case, the corresponding linearized system in discrete time looks like:


for all . We use System (2) form dynamics in our problem formulation in Section 5.

3.2 Metric Temporal Logic (MTL)

The convention on MTL syntax and semantics followed in this paper is the same as presented in (Koymans (1990)). More details on specifying tasks as MTL formulae can also be found in (Ouaknine and Worrell (2008)).

Definition 1

An atomic proposition is a statement with regard to the state variables that is either or for some given values of .

Let be the set of atomic propositions which labels as a collection of areas of interest in some workspace, which can possibly be time varying. Then, we can define a map which labels this workspace or environment as follows:

where and denotes the power set of as usual. In general, represents an interval of time but it may just also represent a time instance. For each trajectory of System (2) i.e., as before, the corresponding sequence of atomic propositions, which satisfies is given as: .

We later specify the tasks formally using MTL formulae, which can incorporate finite timing constraints. These formulae are built on the stated atomic propositions (Definition 1) by following some grammar.

Definition 2

The syntax of MTL formulas are defined in accordance with the following rules of grammar:

where , , and are the Boolean constants for and respectively. represents the disjunction while represents the negation operator. denotes the Until operator over the time interval . Similarly, other operators (both Boolean and temporal) can be expressed using the grammar imposed in Definition 2. Some examples are conjunction (), always on (), eventually within () etc. Further examples of temporal operators can be found in (Karaman et al. (2008)).

Definition 3

The semantics of any MTL formula is recursively defined over a trajectory as:
iff or
iff and
iff s.t. and ,

Thus, for instance, the expression means the following: is true within time interval , and until is true, must be true. Similarly, the MTL operator means that is true at next time instance. means that is always true for the time duration or during the interval , implies that eventually becomes true within the interval . More complicated formulas can be specified using a variety of compositions of two or more MTL operators. For example, suffices to the following: within time interval , will be eventually true and from that time instance, it will always be true for an interval or duration of . The remaining Boolean operators such as implication () and equivalence () can also be represented using the grammar rules and semantics given in Definition 2 and Definition 3. Similar to the convention used in Definition 3, a system trajectory satisfying an MTL specification is denoted as .

Figure 1: CAD model for the workspace used. The environment is a 10x10x3 workspace which is divided into several 2D regions of interest that are labeled with alphabets and marked with different colors.

3.3 The Workspace

Throughout this paper, we repeatedly refer to a time critical rescue mission defined on the constrained workspace shown in Fig. 1. It is a custom built CAD environment designed with the intention to closely suit our problem. As shown in Fig. 1, various areas of interest are marked on the workspace using different alphabets. The role of each of these areas of interest will become obvious as we formulate the problem and specify the mission using MTL specifications in Section 5. For now, we briefly describe the mission in a two UAV setting. Starting from initial positions and , two quadrotor UAVs and need to rescue two objects located at and respectively from a constrained environment. The objects are accessible only through a window , with dimensions such that it allows only one UAV to pass at a given time. Therefore, one of the UAVs has to wait at for the other to pass first. It is assumed that there are no additional obstacles in the area other than the walls and the UAVs themselves. The task for each UAV is to grasp its respective target object, and transport it to safety (marked and respectively for and ) in given finite time. While doing so, the UAVs need to avoid the obstacles as well as each other, in particular at the window . Later on, we also use prime region notation; e.g., to represent the same 2D region . There represents an altitude (w.r.t. -axis) variation of the quadrotor while it is in the same 2D region .

4 Quadrotor Dynamics

We adopt the generalized nonlinear model for the quadrotor presented in (Michael et al. (2010)). We build a hybrid model for the system with five linear modes, namely Take off, Land, Hover, Steer, and a task specific Grasp mode. The linearization for each mode is carried out separately about a different operating point. This enables our system to have rich dynamics with less maneuverability restrictions, while each mode still being linear. This is an important point and its significance becomes apparent once we formulate the problem and present our solution approach, since it requires all constraints in the problem to be linear. (see Section 5).

4.1 General Nonlinear Model

The dynamics of a quadrotor can be fully specified using two coordinate frames. One is a fixed earth (or world) frame, and the second is a moving body frame. Let the homogeneous transformation matrix from body frame to earth frame be , which is a function of time . In state space representation, the quadrotor dynamics are represented as twelve states namely , where and represent the position and velocity of the quadrotor respectively with respect to the body frame. are the angles along the three axes (i.e., roll, pitch, and yaw respectively), and represents the vector containing their respective angular velocities. Under the rigid body assumptions on its airframe, the Newton-Euler formalism for quadrotor in earth frame is given by:


where is the moment of inertia matrix for the quadrotor, is the gravitational acceleration, , is the total thrust produced by the four rotors, and is the torque vector, whose components are the torques applied about the three axes. So, , , , and are the four control inputs to System (4.1).

4.2 Hybrid Model with Linear Modes

System (4.1) serves as a starting point for generating a hybrid model for the quadrotor with five modes, which are represented by a labeled transition system as shown in Fig. 2. As usual, the states (or modes) denote the action of the UAV, such as Take off and Steer, while the edges represent the change or switch to another action. The change is governed by some suitable guard condition. Note, that some edges donot exist; for example, the quadrotor cannot go from Land to Hover without taking the action Take off. Each state of the transition system follows certain dynamics, which result from a linearization of System (4.1) around a different operating point. For example, consider the Hover mode. One possible choice of operating points for the linearization of system dynamics in this mode is . This implies that the two states and i.e., the yaw angle and its respective angular velocity are identically zero, and thus can be removed from the state space representation. Consequently, the state space dimension is reduced to ten, and the control set is reduced to three inputs as well; i.e., , and . The resulting linearized model can be written in standard (discrete time) form as: , where is the state, and is the input (in vector notation), with the two system matrices given as:

where , and all zero and identity matrices in and are of proper dimensions. We adopt similar procedure to linearize System (4.1) around other operating points for different modes, and obtain linearized dynamics for the hybrid model. Here, we omit the discussion about the selection of these operating points, but it can be found in (García et al. (2013)).

Figure 2: The simplified hybrid dynamical model for the quadrotor. Some guard conditions are hidden for readability. We use linearized dynamics around different operating points for each mode. This makes the model rich in dynamics as well as linear at the same time.
Figure 3: The Grasp mode expressed as a combination of Hover (), Land (), and Take off () modes (colored cyan), with special guard conditions.

4.3 The Grasp Mode

Grasping in general is a very challenging problem, in particular when dexterity based manipulation is involved. Since Grasp is the only task specific dynamical mode of our system, it was advisable to simplify the grasping routine within the high level task. However, in case of aerial grasping, some passive mechanisms (Fiaz et al. (2019)) have been shown to be very reliable in grasping an object with an instantaneous touchdown onto its surface (Fiaz et al. (2018)). Thus, under this reliable passive aerial grasping assumption (i.e., instantaneous touchdown and grasp), we can express the Grasp mode as a switching combination of Hover, Land, and Take off dynamics with special guard conditions. This clearly simplifies the problem of having the need to introduce a complex gripper and its end-effector dynamics into the Grasp mode of the hybrid model. Figure 3 depicts this representation of the Grasp mode in terms of the Hover, Land, and Take off dynamics.

5 Method: Formulation and Solution

Given the map of the environment, we can write down a mission specification for each quadrotor as an MTL formula . For the workspace described in Section 3, a possible MTL task specification for the quadrotor can be written as:

where , , and . represents the neighborhood set of quadrotor i.e., all quadrotors s.t. , for some . , , are discrete time units, and the prime notation models the grasping action within the same area of the workspace with some altitude variation of the UAV along the -axis. Thus, for instance, in the two UAV setting as shown in Fig. 1, a possible MTL specification for quadrotor is:

A similar mission specification can be written for the quadrotor and so on. Now using the quadrotor dynamics (2) and these MTL formulae , we can state the rescue mission planning as an optimal control problem.

5.1 Problem Statement and Formulation

We set up the described mission as a standard optimal control problem in discrete time. Given the system dynamics (2), the objective is to find a suitable control law that steers each quadrotor through some regions of interest in the workspace within desired time bounds, so that it evacuates the target safely to a desired location. This control also optimizes some cost function, while the associated task constraints are specified by an MTL expression. As before, let denote the MTL formula for the mission specification, and be the cost function to be minimized. Then, the corresponding optimization problem for quadrotor , is given by: {prob}

Problem 1 is a discrete time optimal control problem with linear dynamics. However, it includes a complex MTL satisfiability constraint. In addition, notice that in our case, the hybrid model of the quadrotor has multiple linear modes. Therefore, in its current form, Problem 1 is not directly solvable.

We now describe two methods that transform Problem 1 into a set of readily solvable Mixed Integer Linear Programs (MILPs). First, we describe a method for translating the MTL satisfiability constaint into a set of linear constraints. This approach renders Problem 1 solvable as a MILP for a linear cost and a given dynamical mode of the system. Secondly, we decompose the complex MTL specification into a set of simpler MTL formulae , and . This suffices to breaking down of the original problem into sub-problems, each with a set of linear constraints and exactly one associated dynamical mode of the hybrid system. Combining both these methods, the resulting MILPs are expected to have significantly reduced computational complexity than the parent problem.

5.2 MTL Formulae to Linear Constraints

This method is based on the approach presented in (Karaman et al. (2008)) where the authors translate LTL specifications into linear constraints. Along similar lines, we now present an approach to translate MTL specifications into mixed integer linear constraints. We start with a simple temporal specification and work through the procedure to convert it to mixed integer linear constraints. We then use this example as a foundation for translating the MTL operators into equivalent linear constraints.

Consider the constraint that a trajectory lies within a convex polytope at time . Since is convex, it can be represented as an intersection of a finite number of halfspaces. A halfspace can be represented as set of points, . Thus, is equivalent to . So, the constraint can be represented by the set of linear constraints , and .

In a polytopic environment, atomic propositions (see Definition 2), , are related to system state via conjunction and disjunction of linear halfspaces Karaman et al. (2008). Let us consider the case of a convex polytope and let be some binary variables associated with the corresponding halfspaces at time . We can then force the constraint: , by introducing the following linear constraints:


where and are some large and small positive numbers respectively. If we denote , then . This approach is extended to the general nonconvex case by convex decomposition of the polytope. Then, the decomposed convex polytopes are related using disjunction operators. Similar to conjunction, as is described later in this section, the disjunction operator can also be translated to mixed integer linear constraints.

Let denote the set of all mixed integer linear constraints corresponding to a temporal expression . Using the described procedure, once we have obtained for atomic propositions , we can formulate for any MTL formula . Now, for the Boolean MTL operators, such as , , , let , and as before be the continuous variables associated with the formula generated at time with atomic propositions . Then is the negation of an atomic proposition, and it can be modeled as:


the conjunction operator, , is modeled as:


and the disjunction operator, , is modeled as:


Similar to binary operators, temporal operators such as , and can be modeled using linear constraints as well. Let , where is the time interval used in the MTL specification . Then, eventually operator: is modeled as:


and always operator: is represented as:


and until operator: is equivalent to:


The equivalent linear constraints for until operator (5.2) are constructed using a procedure similar to (Karaman et al. (2008)). The modification for MTL comes from the following result in (Koymans (1990)).

All other combinations of MTL operators for example, eventually-always operator: and always-eventually operator: etc., can be translated to similar linear constraints using (5)-(LABEL:until). In addition to the collective operator constraints, we need another constraint as well, which suffices to the overall satisfaction of a task specification .

Using this approach, we can translate an MTL formula into a set of mixed integer linear constraints , which converts the associated optimal control problem (e.g. Problem 1) to a MILP for some linear cost function.

5.3 Decomposition of Complex MTL Formulae

Notice that the worst case complexity of the above MILP (Problem 1 with linear constraints and linear cost) is exponential i.e., , where is the number of boolean variables or equivalently the number of halfspaces required to express the MTL formula, and is the discrete time horizon. Therefore, it is logical to consider decomposing the task specification into several simpler sub-tasks , where and .

In (Schillinger et al. (2018)), the authors proposed a timed-automata based approach to decompose a complex LTL specification into a finite number of simpler LTL specifications. In case of MTL, this method is not applicable in general, because MTL to Buchi automata conversion is not always possible. However, in the special case, where the finite time constraints are specified as intervals i.e., in case of Metric Interval Temporal Logic (MITL), we can break down a complex MTL specification (mission) into finite number of simpler MTL specifications (sub-tasks), if the sum of the finite timing intervals in decomposed MTL specifications does not violate the finite timing interval of the original MTL specification. We can state this proposition as the following theorem:

Theorem 1

Given an MITL specification , there exists some finite -length decomposition , , s.t. , if , where is the finite timing interval for , and s are the corresponding finite timing intervals for , .

The proof follows directly from Theorem 2 in (Schillinger et al. (2018)). It can also be readily verified using a timed automata simulation in UPAAL (Behrmann et al. (2006)).

Notice that Theorem 1 does not guarantee an equivalence relationship between and . Moreover, this decomposition is not unique. However, if the mission is specified by an MITL specification and the system is represented by a hybrid model, which is the case in our problem, one convenient design choice is to pick such , for which there is only one associated dynamical mode of the system. We provide examples of such decomposition in Section 6.

For example, consider again the workspace in Fig. 1 and let be given by:

then, a possible decomposition is given by:

which clearly satisfies Theorem 1.

5.4 Final Trajectory Generation

By decomposing the mission specification , and by using the MTL to linear constraints translation mechanism, we can replace Problem 1 with a collection of smaller optimization problems, each with a sub-task specification represented as an MTL formula , and an associated linear mode of the hybrid model.

Here, the linear cost function of choice is , where is the discrete time horizon for the optimal trajectory. Thus, our final formulation of the problem is given by:


where is the MTL specification for the sub-task for the UAV, , are the linear system matrices for the mode, and is the resulting optimal trajectory for the sub-task, with , , and .

For example, in the two UAV setting, for quadrotor , one sub-task is to go from to in 5 time units. The MTL specification for this sub-task is given by , and the associated dynamics are selected from the Steer mode.

Problem 2 represents a collection of MILPs, which can be solved recursively and efficiently using a MILP solver. The resultant trajectories are locally optimal for each individual sub-task, and their existence inherently guarantees safety and finite time completion of the respective sub-tasks. The final trajectory for the complete mission is generated over time by composing all the individual optimal sub-task trajectories. The final path is therefore not optimal but suboptimal with respect to the original mission specification for the UAV. However, despite this loss of global optimality, the advantages achieved in terms of reduction in computational complexity, and improved scalability with respect to the number of UAVs are far more important, as is shown in the following section.

6 Simulations and Results

We apply the proposed method for solving Problem 2 in the same workspace as shown in Fig. 1. The experiments are run through YALMIP-CPLEX solver using MATLAB interface on an Intel NuC. It is portable computer with an Intel core i7 @ 3.7 GHz CPU, an integrated Intel Iris GPU, and 16 GBs of memory. This setup is directly transferable to a quadrotor as a companion module for onboard computation.

We use a neighborhood set threshold for the UAVs i.e., . The discrete time horizon for simulation is , and the UAV altitude limit in Hover and Steer modes is set to . All dynamics are uniformly discretized at a rate of 5 Hz.

6.1 Case Study I: Validation (2 UAVs)

In the two UAV setting (as in Fiaz and Baras (2019)), for the mission , the sub-tasks for the quadrotor are specified as following:

Using the convention defined earlier, the specification requires the quadrotor to attain desired threshold altitude (represented as ) while staying inside the 2D region marked . requires the quadrotor to reach within 5 time units, and requires it to reach within 10 time units, while avoiding the obstacle and the neighboring quadrotor . requires the UAV to grasp the object at within 10 time units while staying in , whereas asks it to reach within 10 time units. Finally forces to stay at indefinitely.

Similarly, the sub-tasks for quadrotor are given as following:

Notice, that the constraint , where , , enforces the quadrotors to avoid collision when within proximity of its neighbors. In practice, the UAV that is the first to reach region and is closest to the window , gets to go through first. The other UAV has to wait in the default Hover mode at .

Figure 4: The resultant composed trajectories for the sub-tasks for and operating simultaneously.

Each UAV sequentially solves the set of MILPs for its respective sub-task specifications, and moves along the generated optimal trajectory for the corresponding sub-task. The final mission trajectory is generated by recursive composition of all these optimal sub-task trajectories. Figure 4 shows the resulting composed trajectories for both the quadrotors operating simultaneously. Both UAVs safely avoid the obstacles and evacuate their respective objects within given finite time limits. As expected, quadrotor waits at . The number of circular rings at (see Fig. 4) correspond to the waiting time for in terms of discrete steps.

Table 1 provides some insight into the timing analysis of each sub-task for both quadrotors. A closer look at this data indicates that all timing constraints are indeed satisfied. Moreover, the computation time for each sub-task indicates that the proposed method can be implemented in real-time. To the best of the authors knowledge, these are one of the fastest computation times reported in the existing MTL based planning literature. The secret to this reduction in computational complexity lies in our divide and conquer approach. From an implementation point of view, the performance can be further improved by using hardware which is optimized for computation (such as Nvidia Jetson TX2 etc.).

Computation (sec) Execution (steps)
() 2.7 2
() 6.3 4
() 10.3 7
() 3.0 3
() 5.7 6
() 2.5 2
() 2.7 2
() 5.8 4
() 11.1 8
() 3.0 3
() 5.7 6
() 2.5 2
Table 1: Timing analysis for the for

6.2 Case Study II: Scalability (N UAVs)

We now consider the case of number of UAVs to investigate the scalability features of our method. For this case study, we increase the number of UAVs in the simulation setup, one at a time until one of the finite-time constraints in any of the sub-task specifications is violated for at least one of the UAVs. To keep the analysis consistent, we keep the finite timing constraints for all UAVs the same as before.

It turns out that for , the sub-task specification fails the satisfaction criterion and hence no solution exists for this sub-task. That is, for , one of the UAVs fails to reach its respective target object within the finite time limit of 10 units. The reason is that beyond , one access point to the environment is not sufficient to meet the specified timing constraints for all the UAVs, since now the quadrotors have to queue up for longer duration at in order to avoid collisions at .

However, this problem can be solved simply either by increasing the finite time limits for this sub-task, or by executing the mission in an environment with multiple access points. Another way to look at this limitation is to identify that is the maximum number of UAVs that can be deployed successfully under these safety and timing constraints in this particular workspace, and adding more UAVs does not provide any additional value in terms of the success of the mission. Therefore, it is more of a limitation of the workspace than our approach itself. Figure 5 shows the resulting composed trajectories for 6 UAVs, in which case all safety and timing constraints are satisfied. Table2 enlists the computation and execution times for the sub-tasks for the case, indicating the satisfaction of all timing constraints.

Figure 5: The resultant composed trajectories for the sub-tasks for UAVs operating simultaneously. As before, the number of circular rings at correspond to the waiting time for the quadrotor in terms of discrete steps.
Computation (sec) Execution (steps)
() 2.7 2
() 5.3 4
() 11.3 9
() 3.0 3
() 5.7 6
() 2.5 2
() 2.7 2
() 5.8 4
() 10.7 8
() 3.0 3
() 5.7 6
() 2.5 2
() 2.7 2
() 5.8 4
() 9.3 6
() 3.0 3
() 7.7 8
() 2.5 2
() 2.5 2
() 5.8 3
() 7.9 5
() 3.0 3
() 5.5 6
() 2.5 2
() 2.7 2
() 5.8 3
() 10.1 7
() 3.0 3
() 5.7 6
() 2.5 2
() 2.7 2
() 6.3 5
() 9.5 6
() 3.0 3
() 5.7 7
() 2.5 2
Table 2: Timing analysis for the for

7 Conclusions and Prospects

We have proposed a hybrid compositional approach to rescue mission planning for quadrotors with MTL task specifications, and have presented an optimization based method which can be implemented in real-time. Using a simple yet realistic search and rescue test case, we have demonstrated the computational efficiency of our approach, and have shown that by breaking down the mission into several sub-tasks, and by using a hybrid model for the system, it is possible to solve the challenging problem of motion planning for multi-agent systems with rich dynamics and finite time constraints in real-time.

In addition to some promising results, this work also poses many new and interesting questions as well. For example, given a finite time constraint for the whole mission, what is the best or optimal way to divide the timing constraints among various sub-tasks. Of course it is a scheduling problem, and is dependent on many factors such as robot dynamics, its maximum attainable speed, and nature of the sub-tasks as well.

In this study, the individual sub-task timing constraints were constructed in a relaxed and uniform fashion. However, it is worth noticing that using a rich dynamical model for the UAV puts less constraints on its maneuverability, and hence can allow it to tackle more conservative finite time constraints as well. For example, the Steer mode in our model allows the quadrotor to achieve speeds as high as 1.5 m/s, which is not possible with the usual single mode Hover linearization only.

We anticipate that the scalability features of this approach can be shown with even greater number of UAVs in an environment with multiple access points for instance. Detailed performance comparison of this hybrid approach with some decentralized collision avoidance methods will be beneficial as well. Extension of this work with different tasks, dynamic obstacles other than the UAVs themselves, conservative time constraints, and tolerances in both time and space can also yield interesting results, and are all great directions for future work.


  1. thanks: [


  1. Baier, C., Katoen, J.P., et al. (2008). Principles of model checking, volume 26202649. MIT press Cambridge.
  2. Behrmann, G., David, A., Pettersson, P., Yi, W., and Hendriks, M. (2006). Uppaal 4.0.
  3. Choset, H.M. (2005). Principles of robot motion: theory, algorithms, and implementation. MIT press.
  4. Fiaz, U.A. (2017). Passive Magnetic Latching Mechanisms For Robotic Applications. Master’s thesis, KAUST.
  5. Fiaz, U.A., Abdelkader, M., and Shamma, J.S. (2018). An intelligent gripper design for autonomous aerial transport with passive magnetic grasping and dual-impulsive release. In 2018 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM), 1027–1032. IEEE.
  6. Fiaz, U.A. and Baras, J.S. (2019). A hybrid compositional approach to optimal mission planning for multi-rotor uavs using metric temporal logic. arXiv preprint arXiv:1904.03830.
  7. Fiaz, U.A., Toumi, N., and Shamma, J.S. (2017). Passive aerial grasping of ferrous objects. IFAC-PapersOnLine, 50(1), 10299–10304.
  8. Fiaz, U.A., Shamma, J.S., and Abdelkader, M.A. (2019). Impulsive release mechanism and method. US Patent App. 16/266,800.
  9. García, L.R., Dzul López, A.E., Lozano, R., and Pégard, C. (2013). Modeling the quad-rotor mini-rotorcraft. Quad Rotorcraft Control, 23–34.
  10. Gholami, A., Fiaz, U.A., and Baras, J.S. (2019). Drone-assisted communications for remote areas and disaster relief. arXiv preprint arXiv:1909.02150.
  11. Goerzen, C., Kong, Z., and Mettler, B. (2010). A survey of motion planning algorithms from the perspective of autonomous uav guidance. JIRS, 57(1-4), 65.
  12. Hoareau, G., Liebenberg, J.J., Musial, J.G., and Whitman, T.R. (2017). Package transport by unmanned aerial vehicles. US Patent 9,731,821.
  13. Kantaros, Y. and Zavlanos, M.M. (2018). Temporal logic optimal control for large-scale multi-robot systems: 10 400 states and beyond. In CDC, 2519–2524. IEEE.
  14. Karaman, S., Sanfelice, R.G., and Frazzoli, E. (2008). Optimal control of mixed logical dynamical systems with ltl specifications. In CDC, 2117–2122. IEEE.
  15. Koymans, R. (1990). Specifying real-time properties with metric temporal logic. Real-time systems, 2(4), 255–299.
  16. Kress-Gazit, H., Fainekos, G.E., and Pappas, G.J. (2009). Temporal-logic-based reactive mission and motion planning. IEEE transactions on robotics, 25(6), 1370–1381.
  17. Latombe, J. (1991). Robot motion planning. Kluwer international series in engineering and computer science. Kluwer Academic Publishers, Boston.
  18. LaValle, S.M. (2006). Planning algorithms. Cambridge university press.
  19. Maity, D. and Baras, J.S. (2015). Motion planning in dynamic environments with bounded time temporal logic specifications. In 2015 23rd Mediterranean Conference on Control and Automation (MED), 940–946. IEEE.
  20. Michael, N., Mellinger, D., Lindsey, Q., and Kumar, V. (2010). The grasp multiple micro-uav testbed. IEEE Robotics & Automation Magazine, 17(3), 56–65.
  21. Mozaffari, M., Saad, W., Bennis, M., and Debbah, M. (2016). Efficient deployment of multiple unmanned aerial vehicles for optimal wireless coverage. IEEE Communications Letters, 20(8), 1647–1650.
  22. Nikou, A., Tumova, J., and Dimarogonas, D.V. (2016). Cooperative task planning of multi-agent systems under timed temporal specifications. In ACC. IEEE.
  23. Ouaknine, J. and Worrell, J. (2008). Some recent results in metric temporal logic. In Formal Modeling and Analysis of Timed Systems, 1–13. Springer.
  24. Plaku, E. and Karaman, S. (2016). Motion planning with temporal-logic specifications: Progress and challenges. AI communications, 29(1), 151–162.
  25. Schillinger, P., Bürger, M., and Dimarogonas, D.V. (2018). Decomposition of finite ltl specifications for efficient multi-agent planning. In DARS, 253–267. Springer.
  26. Waharte, S. and Trigoni, N. (2010). Supporting search and rescue operations with uavs. In 2010 International Conference on Emerging Security Technologies, 142–147. IEEE.
  27. Wolff, E.M., Topcu, U., and Murray, R.M. (2014). Optimization-based trajectory generation with ltl specifications. In ICRA 2014.
  28. Xi, W., Tan, X., and Baras, J.S. (2005). A hybrid scheme for distributed control of autonomous swarms. In ACC 2005, 3486–3491. IEEE.
  29. Zhou, Y., Maity, D., and Baras, J.S. (2015). Optimal mission planner with timed temporal logic constraints. In 2015 European Control Conference (ECC). IEEE.
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
Add comment
Loading ...
This is a comment super asjknd jkasnjk adsnkj
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test description