Problem 2.2 can now be formulated as a Generalized Traveling Salesman Problem (GTSP) with intersecting node sets in the following manner. The GTSP can be described with a directed graph
, with nodes
N and arcs
A where the nodes are members of predefined node sets
. Here each node represents sample vehicle pose
, and the arc connecting node
to node
represents the length of the minimum length path for a Dubins vehicle
from configuration
to configuration
. The node set
corresponding to region
contains all samples whose projection lies in
,
for
and
. The objective of the GTSP is to find a minimum cost cycle passing through each node set exactly one time. An example instance of Problem 2.2 can be seen in
Figure 1(a).
Next, the GTSP can be converted to an Asymmetric TSP through a series of graph transformations due to Noon and Bean [
17]. What follows is a brief summary of the Noon–Bean transformation from [
17] as it is used in this work. The transformation is best described in three stages. The first stage converts the asymmetric GTSP to a GTSP with mutually exclusive node sets. The second stage converts the GTSP to the canonical form by eliminating intra-set arcs. Finally the third stage converts the canonical form to a clustered TSP and then to an Asymmetric TSP.
Figure 1.
Example DTSPN with the corresponding “GTSP with intersecting node sets”. (a) Example instance of DTSPN with three circular regions and samples . The circuit through samples is the optimal tour; (b) Problem (P0): A GTSP with intersecting node sets representation of the DTSPN example. Note: only an essential subset of arcs is shown for clarity of illustration.
Figure 1.
Example DTSPN with the corresponding “GTSP with intersecting node sets”. (a) Example instance of DTSPN with three circular regions and samples . The circuit through samples is the optimal tour; (b) Problem (P0): A GTSP with intersecting node sets representation of the DTSPN example. Note: only an essential subset of arcs is shown for clarity of illustration.
3.1. Stage 1
We begin by restating the problem above in a compact manor to facilitate the discussion. Problem
is a GTSP defined by the graph
with the corresponding cost vector
. An example of Problem (P0) is shown in
Figure 1(b). The first stage converts the GTSP
to a new problem
which is a GTSP with mutually exclusive node sets. This is done by first eliminating any arcs from
that do not enter at least one new node set.
Problem
is a GTSP defined by the graph
with the corresponding cost vector
. Where
, and
. The arc set
is formed by first setting
, and then removing any edges that do not enter at least one new node set. Let
denote the set of node sets of which node
i is a member,
i.e., if
, then
. For every
, if
, then remove the arc
from set
, see
Figure 2(a).
Figure 2.
Example of Problem (P1) and Problem (P2) from Stage 1 of transformation. (a) Problem (P1): Any arcs that do not enter at least one new node set and have been removed from the graph in Problem (P0); (b) Problem (P2): A large finite cost α is added to each edge. Here , where is defined in Equation (4).
Figure 2.
Example of Problem (P1) and Problem (P2) from Stage 1 of transformation. (a) Problem (P1): Any arcs that do not enter at least one new node set and have been removed from the graph in Problem (P0); (b) Problem (P2): A large finite cost α is added to each edge. Here , where is defined in Equation (4).
Next, a constant is added to the cost of each arc entering a new node set. Problem
is a GTSP defined by the graph
with the corresponding cost vector
. Where
,
, and
. Notice that all arc costs are nonnegative. We now define a finite, positive constant
α as,
For every arc
, set the cost of the arc
in the following manner,
Here
, represents the cardinality of the set
Z. Notice that Equation (4) adds to the original arc cost an additional cost of
α for each new node set entered by arc
. An example of Problem (P2) can be seen in
Figure 2(b), where
represents
.
Next, any nodes that belong to more than one node set are duplicated and placed in different node sets so as to allow each node to have membership in only one node set. Problem
is a GTSP over the graph
with the corresponding cost vector
. The set of nodes
will be populated with the same set of nodes in
plus the additional nodes created to account for the nodes that fall into multiple node sets. For every
, create
nodes and assign each to a different node set. For all
, add the node
to
, and to the node set
. This insures that
. Any arcs to and from the original nodes are duplicated as well. For every arc
, create the arc
with the corresponding cost
for every
and
. In addition, zero cost arcs are added between all the spawned nodes of each multiple membership node. For each node
with multiple node set membership
, create arcs
with associated costs
for all
, such that
. See
Figure 3(a) for an example of Problem (P3).
Figure 3.
Example of Problem (P3) and Problem (P4) from Stage 1 and Stage 2 of transformation. (a) Problem (P3): Nodes and from (P2) lie in multiple node sets. These nodes are duplicated and the spawned nodes and are placed in node set . Zero cost arcs (dashed arrows) are added connecting to and to ; (b) Problem (P4): The intra-set arc from Problem (P3) is removed.
Figure 3.
Example of Problem (P3) and Problem (P4) from Stage 1 and Stage 2 of transformation. (a) Problem (P3): Nodes and from (P2) lie in multiple node sets. These nodes are duplicated and the spawned nodes and are placed in node set . Zero cost arcs (dashed arrows) are added connecting to and to ; (b) Problem (P4): The intra-set arc from Problem (P3) is removed.
To summarize, Stage 1 of the Noon–Bean transformation takes GTSP with intersecting node sets and transforms it into a GTSP with mutually exclusive node sets. The following theorem from [
17] summarizes the relationships between problems
,
,
, and
.
Theorem 3.1 (Noon and Bean [
17]).
Given a GTSP in the form of ,
we can transform the problem to a problem of the form of .
Given an optimal solution to with cost less than ,
we can construct an optimal solution to .
If an optimal solution to has a cost greater than or equal to ,
the problem is infeasible.
3.2. Stage 2
The second stage takes the GTSP with mutually exclusive node sets and eliminates any intra-set arcs, leaving a GTSP in “canonical form.” Define a problem
that differs from problem
only by the arcs and arc costs. Problem
is a GTSP over the graph
with the corresponding cost vector
where
and
. The arc set
is populated in the following manner. For every
pair of nodes in
for which
, calculate the lowest cost path from
i to
j over the arc set
. An arc
if the following four conditions hold,
,
,
if then must also equal ,
if then must also equal .
If the shortest path has finite cost, add the arc
to the arc set
, and set the corresponding arc cost
equal to the shortest path cost. If no feasible path exists, then the arc
will not be part of
. The problem defined on
is now in the GTSP canonical form with mutually exclusive node sets and no intra-set arcs. See
Figure 3(b) for an example of Problem (P4). The following theorem from [
17] establishes the correctness of the transformation in Stage 2.
Theorem 3.2 (Noon and Bean [
17]).
Given an optimal solution, ,
to ,
we can construct the optimal solution, ,
to .
3.3. Stage 3
The third stage of the transformation converts the canonical GTSP to a “clustered” TSP. Problem
is a clustered TSP over the graph
with the corresponding cost vector
where
. For every node set
corresponding to nodes in
, define a cluster
corresponding to the nodes in
. The nodes in each cluster are first enumerated. Let
denote the ordered nodes of
where
r represents the cardinality of the cluster,
. Next, a zero cost cycle is created for each cluster by adding zero cost edges between consecutive nodes in each cluster and connecting the first node to the last. For each cluster
i with
, add the arcs
to
, and for each of these intra-cluster arcs assign a zero cost,
i.e.,
. The inter-set edges are then shifted so they emanate from the previous node in its cycle. For every inter-set arc
, with
, create the arc
with the corresponding cost,
. For each interest arc
, create the arc
with the corresponding cost,
, where
. See
Figure 4(a) for an example of Problem (P5).
Finally, the clustered TSP is converted to an ATSP by adding a large finite cost to each inter-cluster arc cost.
Problem
is a ATSP over the graph
with the corresponding cost vector
where
and
. The arc costs are differ from
in the following way. For every arc
, if
i and
j belong to the same clusters in
, then
. If
i and
j belong to different clusters in
, then
where
An example can be seen in
Figure 4(b), where
depicts
. The optimal tour is shown in red.
The following theorem from [
17] establishes the correctness of the transformation in Stage 3.
Theorem 3.3 (Noon and Bean [
17]).
Given a canonical GTSP in the form of with n node sets, we can transform the problem into a standard TSP in the form of .
Given an optimal solution to with ,
we can construct an optimal solution to .
Figure 4.
Example of Problem (P5) and Problem (P6) from Stage 3 of transformation. (a) Problem (P5): The clustered TSP is created by forming zero cost intra-set cycles and adjusting the originating node in each inter-set arc; (b) Problem (P6): A large finite cost β is added to each inter-set edge. Here , where is defined in Equation (5). The optimal tour is shown in red with a cost of .
Figure 4.
Example of Problem (P5) and Problem (P6) from Stage 3 of transformation. (a) Problem (P5): The clustered TSP is created by forming zero cost intra-set cycles and adjusting the originating node in each inter-set arc; (b) Problem (P6): A large finite cost β is added to each inter-set edge. Here , where is defined in Equation (5). The optimal tour is shown in red with a cost of .
3.4. Performance Comparison
The Intersecting Regions Algorithm (IRA) proposed here is similar to the Resolution Complete Method (RCM) proposed in [
15] with the key exception that we use the fact that visiting one of the samples in the intersection of multiple regions achieves the goal of visiting all the regions in the intersection.
Figure 5 illustrate this key difference. The RCM requires mutually exclusive node sets for the conversion from DTSPN to a GTSP with disjoint node sets. To meet this requirement, samples are assigned directly to the node set of the region from whose boundary they are drawn, as depicted in
Figure 5(b). If multiple regions overlap and a sample lies in the intersection, IRA assigns this sample to all the node sets corresponding to the intersecting regions, as depicted in
Figure 5(a), while RCM does not. The IRA then uses this additional information in the optimization.
Theorem 3.4 (IRA Performance).
Given ,
the set of possibly intersecting regions,
R,
and the set of m sample configurations,
S,
let and denote the tours produced by IRA and the RCM [15], respectively. Then the length of is no greater than that of ,
Proof. [Proof of Theorem 3.4] Let
be a feasible tour, and note that both IRA and RCM minimize the tour length plus an additive constant while ensuring that all regions are visited. The difference is that IRA may produce tours visiting fewer than
n unique samples, should some samples lie in the multiple regions. In particular, the IRA ensures that each leg of the tour enters at least one new region, by construction. Therefore, in performing the optimization IRA will either consider T, or subset of T, in which samples at the end of legs not entering an unvisited region have been removed. Due to the Dubins distance function satisfying the triangle inequality [
20], a tour that visits a redundant sample will be longer than a tour that visits a subset of the samples. The optimal tour
cannot be longer than
, because both optimize over the same set of feasible tours except for the tours in which IRA bypasses these unneeded samples. ☐
The property
resolution complete method as used in [
15], dictates that the method converges to a solution at least as good as any nonisolated optimum solution as the number of sample configurations goes to infinity.
Corollary 3.5 (IRA is Resolution Complete).
Given ,
the set of possibly intersecting regions,
R,
and the set of m sample configurations,
S drawn from a Halton quasi-random sequence [21] as in RCM, then IRA is Resolution Complete.
Proof. [Proof of Corollary 3.5] From [
15], the RCM is a resolution complete method and converges as the number of samples goes to infinity, and from Theorem 3.4, we have shown that for the same set of sample configurations IRA will produce a tour that is no longer than RCM. ☐
Figure 5.
A comparison of IRA and RCM on an example DTSPN instance with three regions and three sample poses. (a) Example Tour: IRA, Tour Length ; (b) Example Tour: RCM, Tour Length .
Figure 5.
A comparison of IRA and RCM on an example DTSPN instance with three regions and three sample poses. (a) Example Tour: IRA, Tour Length ; (b) Example Tour: RCM, Tour Length .