Table of Contents
Fetching ...

A Complete Algorithm for a Moving Target Traveling Salesman Problem with Obstacles

Anoop Bhat, Geordan Gutow, Bhaskar Vundurthy, Zhongqiang Ren, Sivakumar Rathinam, Howie Choset

TL;DR

MTVG-TSP finds feasible solutions in all cases where the baseline does, and when the sum of the targets' time window lengths enters a critical range, MTVG-TSP finds a feasible solution with up to 38 times less computation time.

Abstract

The moving target traveling salesman problem with obstacles (MT-TSP-O) is a generalization of the traveling salesman problem (TSP) where, as its name suggests, the targets are moving. A solution to the MT-TSP-O is a trajectory that visits each moving target during a certain time window(s), and this trajectory avoids stationary obstacles. We assume each target moves at a constant velocity during each of its time windows. The agent has a speed limit, and this speed limit is no smaller than any target's speed. This paper presents the first complete algorithm for finding feasible solutions to the MT-TSP-O. Our algorithm builds a tree where the nodes are agent trajectories intercepting a unique sequence of targets within a unique sequence of time windows. We generate each of a parent node's children by extending the parent's trajectory to intercept one additional target, each child corresponding to a different choice of target and time window. This extension consists of planning a trajectory from the parent trajectory's final point in space-time to a moving target. To solve this point-to-moving-target subproblem, we define a novel generalization of a visibility graph called a moving target visibility graph (MTVG). Our overall algorithm is called MTVG-TSP. To validate MTVG-TSP, we test it on 570 instances with up to 30 targets. We implement a baseline method that samples trajectories of targets into points, based on prior work on special cases of the MT-TSP-O. MTVG-TSP finds feasible solutions in all cases where the baseline does, and when the sum of the targets' time window lengths enters a critical range, MTVG-TSP finds a feasible solution with up to 38 times less computation time.

A Complete Algorithm for a Moving Target Traveling Salesman Problem with Obstacles

TL;DR

MTVG-TSP finds feasible solutions in all cases where the baseline does, and when the sum of the targets' time window lengths enters a critical range, MTVG-TSP finds a feasible solution with up to 38 times less computation time.

Abstract

The moving target traveling salesman problem with obstacles (MT-TSP-O) is a generalization of the traveling salesman problem (TSP) where, as its name suggests, the targets are moving. A solution to the MT-TSP-O is a trajectory that visits each moving target during a certain time window(s), and this trajectory avoids stationary obstacles. We assume each target moves at a constant velocity during each of its time windows. The agent has a speed limit, and this speed limit is no smaller than any target's speed. This paper presents the first complete algorithm for finding feasible solutions to the MT-TSP-O. Our algorithm builds a tree where the nodes are agent trajectories intercepting a unique sequence of targets within a unique sequence of time windows. We generate each of a parent node's children by extending the parent's trajectory to intercept one additional target, each child corresponding to a different choice of target and time window. This extension consists of planning a trajectory from the parent trajectory's final point in space-time to a moving target. To solve this point-to-moving-target subproblem, we define a novel generalization of a visibility graph called a moving target visibility graph (MTVG). Our overall algorithm is called MTVG-TSP. To validate MTVG-TSP, we test it on 570 instances with up to 30 targets. We implement a baseline method that samples trajectories of targets into points, based on prior work on special cases of the MT-TSP-O. MTVG-TSP finds feasible solutions in all cases where the baseline does, and when the sum of the targets' time window lengths enters a critical range, MTVG-TSP finds a feasible solution with up to 38 times less computation time.
Paper Structure (21 sections, 7 theorems, 15 equations, 10 figures, 1 table, 2 algorithms)

This paper contains 21 sections, 7 theorems, 15 equations, 10 figures, 1 table, 2 algorithms.

Key Result

theorem thmcountertheorem

Alg. alg:point_to_moving_target_planning_alg finds a minimum-time trajectory beginning at $(p, T)$ and intercepting $s$, if one exists.

Figures (10)

  • Figure 1: Targets move along trajectories with piecewise-constant velocities, which can be intercepted by agent during time windows depicted in bold colored lines. Agent’s trajectory shown in dark blue avoids obstacles, intercepts each target within its time window, and returns to start location (depot).
  • Figure 2: (a) We compute $\text{vis}(q, s)$ for all $q \in V_O$ and $s \in V_{tw}$. (b) In the moving target visibility graph (MTVG) associated with $p$ and $s$, we draw an edge from $q$ to $s$ if $\text{vis}(q, s) \neq \emptyset$. All edges between position-nodes are bidirectional, but edges from position-nodes to $s$ are unidirectional: there are no edges leaving $s$. The positions of endpoints of edges on $s$ are drawn arbitrarily, since the agent's position after traversing edge $(q, s)$ depends on the time when the agent leaves $q$.
  • Figure 3: Example 20-target instance. Each target's time window lengths sum to 26 s.
  • Figure 4: Time for each algorithm to compute a feasible solution, varying the sum of time window lengths per target while fixing the number of time windows to two. The sampled-points method reached the time limit in 11% of instances without finding a feasible solution. In these cases, the computation time is set equal to the time limit. MTVG-TSP did not reach the time limit in any instance.
  • Figure 5: Maximum attempted number of points per target used by sampled-points method. In instances where the method found a feasible solution, we report the number of points used to obtain the solution. In instances where the method timed out, we report the number of points upon timeout.
  • ...and 5 more figures

Theorems & Definitions (13)

  • remark thmcounterremark
  • theorem thmcountertheorem
  • definition thmcounterdefinition
  • theorem thmcountertheorem
  • theorem thmcountertheorem
  • lemma thmcounterlemma
  • proof
  • lemma thmcounterlemma
  • proof
  • lemma thmcounterlemma
  • ...and 3 more