    Polynomial Time Algorithms for Tracking Path Problems

Given a graph G, and terminal vertices s and t, the TRACKING PATHS problem asks to compute a minimum number of vertices to be marked as trackers, such that the sequence of trackers encountered in each s-t path is unique. TRACKING PATHS is NP-hard in both directed and undirected graphs in general. In this paper we give a collection of polynomial time algorithms for some restricted versions of TRACKING PATHS. We prove that TRACKING PATHS is polynomial time solvable for chordal graphs and tournament graphs. We prove that TRACKING PATHS is NP-hard in graphs with bounded maximum degree δ≥ 6, and give a 2(δ+1)-approximate algorithm for the same. We also analyze the version of tracking s-t paths where paths are tracked using edges instead of vertices, and we give a polynomial time algorithm for the same. Finally, we show how to reconstruct an s-t path, given a sequence of trackers and a tracking set for the graph in consideration.

Authors

01/09/2020

Improved Kernels for Tracking Path Problems

Given a graph G, terminal vertices s and t, and an integer k, the Tracki...
10/29/2018

A Maximum Linear Arrangement Problem on Directed Graphs

We propose a new arrangement problem on directed graphs, Maximum Directe...
01/31/2018

Efficient Algorithms for Measuring the Funnel-likeness of DAGs

Funnels are a new natural subclass of DAGs. Intuitively, a DAG is a funn...
02/20/2019

On Polynomial-Time Combinatorial Algorithms for Maximum L-Bounded Flow

Given a graph G=(V,E) with two distinguished vertices s,t∈ V and an inte...
04/26/2021

How to Catch Marathon Cheaters: New Approximation Algorithms for Tracking Paths

Given an undirected graph, G, and vertices, s and t in G, the tracking p...
07/06/2019

Node-Constrained Traffic Engineering: Theory and Applications

Traffic engineering (TE) is a fundamental task in networking. Convention...
12/29/2017

Interesting Paths in the Mapper

The Mapper produces a compact summary of high dimensional data as a simp...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Tracking moving objects in networks has been studied extensively due to applications in surveillance and monitoring. Specific cases include secure system surveillance, habitat monitoring, vehicle tracking, and other similar scenarios. Object tracking in networks also finds applications in analyzing disease spreading patterns, information dissemination patterns on social media, and data packet flow in large networks like the world wide web. Tracking has been largely studied in the fields of machine learning, artificial intelligence, networking systems among other fields.

The problem of tracking paths in a network was first graphically modeled by Banik et al. in . Let be an undirected graph without any self loops or parallel edges and suppose that has a unique entry vertex (source) and a unique exit vertex (destination) . A simple path from to is called an - path. The problem requires finding a set of vertices , such that for any two distinct - paths, say and , in , the sequence of vertices in as encountered in is different from the sequence of vertices in as encountered in . Here is called a tracking set for the graph , and the vertices in are referred to as trackers. Banik et al.  proved that the problem of finding a minimum-cardinality tracking set to track shortest - paths (Tracking Shortest Paths problem) is NP-hard and APX-hard. Later, the problem of tracking all - paths (Tracking Paths) in an undirected graph was studied in ,,. Tracking Paths is formally defined as follows.

Tracking Paths Input: An undirected graph with terminal vertices and . Question: Find a minimum cardinality tracking set for .

Tracking Paths was proven to be NP-complete in . Here, the authors studied the parameterized version of Tracking Paths, which asks if there exists a tracking set of size at most , and showed it to be fixed-parameter tractable by giving a polynomial kernel. Specifically, it was proven that an instance of Tracking Paths can be reduced to an equivalent instance of size in polynomial time, where is the desired size of the tracking set. In , the authors improved this kernel to , and gave a kernel for planar graphs. In , Eppstein et al. proved that Tracking Paths is NP-complete for planar graphs and gave a -approximation algorithm for this setting. Here, the authors also proved that Tracking Paths can be solved in linear time for graphs of bounded clique width, when the clique decomposition is given in advance.

Tracking Shortest Paths was also studied in  and . In , Banik et al. studied Tracking Shortest Paths and proved the problem to be fixed-parameter tractable. In , Bilò et al. prove that Tracking Shortest Paths is NP-hard for cubic planar graphs in case of multiple source-destination pairs, and give an FPT algorithm parameterized by the number of vertices equidistant from the source .

In this paper we study Tracking Paths for chordal graphs, tournament graphs, and degree bounded graphs. A Chordal graph is a graph in which each cycle of length greater than three has a chord (an edge between non-adjacent vertices of the cycle). A tournament is a directed graph in which there exists a directed edge between each pair of vertices. So far all the work done on Tracking Paths has been focused on tracking - paths (or shortest - paths) using vertices. In this paper, we also study tracking - paths using edges. A natural question that follows is that of path reconstruction, which has already been studied for shortest paths . Here we give an algorithm for path reconstruction when all -

paths are considered. Chordal graphs find applications in computational biology, computer vision and artificial intelligence

, , , . Tournament graphs are used in voting theory and social choice theory to graphically depict pairwise relationships between entities in a community , . Tournament graphs are particularly used to study the Condorcet voting model, where a preference is indicated between each pair of contestants .

Our Results and Methods. In this paper we give some polynomial time results for some variants of the Tracking Paths problem. We prove that Tracking Paths is polynomial time solvable for chordal graphs and tournaments. From , it is known that each cycle in the input graph needs a tracker. The key idea in proofs for chordal and tournament graphs is that if two - paths differ in only one vertex, than that vertex necessarily needs to be marked as a tracker. Next we prove that Tracking Paths is NP-hard for graphs with maximum degree (). We also give a -approximation algorithm for graphs with maximum degree . Here the idea is to ensure that sufficient vertices are marked as trackers in each cycle. This derives from the fact that each cycle in a graph necessarily needs a tracker . In order to give a complete solution for tracking paths in a graph, we also give an algorithm that reconstructs the required - path given a sequence of trackers and a tracking set for the input graph. This uses the fact that by the definition of a tracking set, each maximal sequence of trackers in a tracking set should correspond to at most one - path in a graph. The reconstruction algorithm uses the disjoint path algorithms for undirected graphs  and tournaments  to construct the required - path.

Towards the end of the paper we analyze the problem of tracking - paths in an undirected graph using edges rather than vertices. We prove that even while using edges, each cycle in the graph needs at least one edge to be marked as a tracker. Further, a minimum feedback edge set (set of edges whose removal makes a graph acyclic) is also a minimum tracking edge set.

2 Definitions and Notations

Throughout the paper, while analyzing tracking paths using vertices in a graph, we assume graphs to be simple i.e. there are no self loops and multi-edges. When considering tracking set for a graph , we assume that the given graph is an - graph, i.e. the graph contains a unique source and a unique destination (both and are known), and we aim to find a tracking set that can distinguish between all simple paths between and . Here and are also referred as the terminal vertices. In this paper, when we refer to tracking set, we mean tracking set for all - paths. If , then unless otherwise stated, represents the set of vertices and , and represents an edge between and . For a vertex , neighborhood of is denoted by . We use to denote degree of vertex . For a vertex and a subgraph , . For a subset of vertices we use to denote . With slight abuse of notation we use to denote . For a graph and a set of vertices , denotes the subgraph induced by the vertex set . If is a singleton, we may use to denote , where . is used to denote the set of integers . A chord in a cycle is an edge between two vertices of the cycle, such that the edge itself not part of the cycle. In a directed cycle, a monotone cycle is a cycle in which there exists a pair of vertices such that there exists two directed paths in from the vertex to the vertex .

In a graph , a feedback vertex set (FVS) is a set of vertices whose removal makes the graph acyclic. In an undirected graph , feedback edge set (FES) is the set of edges whose removal makes the graph acyclic. An edge weighted undirected graph is an undirected graph with weights (real number values) assigned to each of its edges. For a path , denotes the vertex set of path and denotes the edge set of path . For a subgraph (or graph) , denotes the vertex set of , and denotes the edge set of . Let be a path between vertices and , and be a path between vertices and , such that . By , we denote the path between and , formed by concatenating paths and at . Two paths and are said to be vertex disjoint if their vertex sets do not intersect except possibly at the end points, i.e. , where and are the starting and end points of the paths. By distance we mean length of the shortest path, i.e. the number of edges in that path. For a sequence of vertices , by we mean the set of vertices in the sequence . For a graph , an FVS is a set of vertices such that is a forest. If there exists a path such that is an edge that lies at one end point of , then denotes the subpath of obtained after removing the edge . Graphs which have maximum degree of vertices as three are known as cubic graphs. By a bounded degree graph, we mean a graph whose vertices have a maximum degree of , where is some constant.

3 Preliminaries

In this section, we give some basic claims which are necessary for the proofs of results in subsequent sections. Here the focus is on analysis of Tracking Paths in undirected graphs. We start by first recalling a reduction rule from  that ensures that each vertex and edge in the input graph participates in an - path.

Reduction Rule 1

 In graph , if there exists a vertex or an edge that does not participate in any - path in , then delete it.

It is known that Reduction Rule is safe and can be applied in quadratic time  on undirected graphs. In rest of the paper, by reduced graph, we mean a graph that is preprocessed using Reduction Rule 1. Next we recall the following lemma from , which is used to define some commonly used terms in this paper.

Lemma 1

In a reduced graph , any induced subgraph consisting of at least one edge, contains of a pair of vertices such that, (a) there exists a path in from to , say , and another path from to , say , (b) , (c) and .

With respect to Lemma 1, we refer to the vertex as a local source and vertex as a local destination for the subgraph . Note that a subgraph may have multiple local source-destination pairs.

Now we state the tracking set condition, which is useful for validation of a tracking set .

Tracking Set Condition: For a graph , with terminal vertices , a set of vertices , is said to satisfy the tracking set condition if there does not exist a pair of vertices , such that the following holds: there exist two distinct paths, say and , between and in , and there exists a path from to , say , and a path from to , say , in , and , i.e. and are mutually vertex disjoint, and also vertex disjoint from and .

It is known that for a reduced graph , a set of vertices is a tracking set if and only if satisfies the tracking set condition. We use this fact, to prove the following lemma.

Lemma 2

In a graph , if is not a tracking set for , then there exists two - paths with the same sequence of trackers, and they form a cycle in , such that has a local source and a local destination , and .

Proof

Let be a graph, such that is not a tracking set for . Due to tracking set condition, it is known that in such a case, there exists two distinct vertices along with two distinct paths between and , such that there are no trackers on and except possibly at and . Further, there exists a path from to and a path from to , and such that these and are vertex disjoint, and they intersect with and only at and . Let be the graph induced by . Observe that and form a local source-destination pair for . Note that no vertex, other than possible and , in is a tracker. Starting from , let be the last vertex in until which paths and have the same sequence of vertices. Let be the first vertex in after , such that . We use to denote the subpath of lying between vertices and , and to denote the subpath of lying between the vertices and . Observe that paths and are vertex disjoint (except for vertices and ) and thus form a cycle, say . Further there exists a subpath of between and , that intersects only at . Since and share the same vertex sequence from to , is a local source for . Also, by construction, is a local destination for . Note that it is possible that and/or . However, does not contain any trackers. Hence the lemma holds. ∎

4 Tracking Paths in Chordal Graphs and Tournaments

In this section, we give polynomial time algorithms for solving Tracking Paths for chordal graphs and tournaments.

4.1 Chordal Graphs

Here we give a polynomial time algorithm to find a tracking set for undirected chordal graphs. Recall that chordal graphs are those graphs in which each cycle of length greater than three has a chord. Many problems that are known to be NP-hard on general graphs are polynomial time solvable for chordal graphs e.g. chromatic number, feedback vertex set, independent set .

In undirected graphs, a tracking set is also a feedback vertex set . However, a tracking set can be arbitrarily larger in size compared to a feedback vertex set. This holds true for chordal graphs as well. See Figure 1. Figure 1: Depiction of a chordal graph on n vertices with an optimum tracking set (V(G)∖{s,t}) of size n−2 and an FVS (vertex x) of size 1

Algorithm 1 gives a procedure to compute a minimum tracking set for a chordal graph . We prove its correctness in the following lemma.

Lemma 3

Algorithm 1 gives an optimum tracking set for a chordal graph.

Proof

Algorithm 1 starts by ensuring that each vertex and edge in the input graph participates in an - path of . Next for each edge , if there exists a vertex , we check if there exists an - path in that contains the edge . Let such a path in . Now consider the path that can be obtained by replacing the edge in by the path along with the vertex . Observe that the vertex sets of and differ only in vertex . Hence, necessarily belongs to a tracking set for .

Now we prove that Algorithm 1 indeed returns an optimal tracking set for . Suppose not. Then is not a tracking set for . Due to Lemma 2, there exists two - paths, say and they form a cycle in , such that has a local source and a local destination , and does not contain any trackers. See Figure 2. Figure 2: Indistinguishable s-t paths in a graph form a cycle (marked in dotted lines)

Path is marked in solid lines, while path is marked in dashed lines. Since and contain the same sequence of trackers, no vertex in can be a tracker. Since we consider graphs without any parallel edges, there exists at least one vertex in .

First we consider the case where is a triangle. Due to Algorithm 1, the vertex in would necessarily have been marked as a tracker. This contradicts the assumption that no vertex in is marked as a tracker.

Next we consider the case when is not a triangle, i.e. is a cycle containing four or more vertices. Since is a chordal graph, necessarily contains a chord. We consider the following two cases based on whether a chord is incident on the vertex or not. Let and be two vertices such that and . Without loss of generality, let . Observe that the edge in path can be replaced by the concatenated path , to obtain a new path that differs from only at the vertex . Hence must have been marked as a tracker in Algorithm 1. Next we consider the case when a chord in is incident on . Let and , such that , and . Observe that there exists an - path containing the edge , in which can be replaced with the path , to obtain a new path that differs only at the vertex . Due to Algorithm 1, vertex must have been marked as a tracker. Both the above cases contradict the assumption that no vertex in is a tracker. Hence Algorithm 1 gives an optimum tracking set for a chordal graph. ∎

Next we prove that Algorithm 1 runs in polynomial time.

Lemma 4

Algorithm 1 runs in time .

Proof

Let be the input graph, and . Due to , it is known that it takes (quadratic) time to apply Reduction Rule 1. Next for each edge , we consider the set of vertices that are adjacent to both end points of the edge . This takes time. Now for each vertex that is adjacent to both and , we check if participates in some - path in the graph . Removal of vertex from takes constant time. In order to check if participates in some - path in , we check if there exists a path between and , say , and a path between and , say , such that . This can be done using the algorithm for finding vertex disjoint paths shown in  in time. Thus the total time taken to run Algorithm 1 is , i.e. . ∎

From Lemma 3 and Lemma 4, we have the following theorem.

Theorem 4.1

Tracking Paths can be solved in polynomial time in chordal graphs.

4.2 Tournaments

Here we give a polynomial time algorithm to find a tracking set for tournament graphs. Recall that tournaments are directed graphs that have a directed edge between each pair of vertices in the graph. A lot of problems including feedback vertex set and feedback arc set are known to be NP-hard in tournaments. From  it is known that Tracking Paths is NP-hard for directed acyclic graphs. Since a directed acyclic graph is also a directed graph, this implies that Tracking Paths is NP-hard for directed graphs as well. However, as we prove now, Tracking Paths is in P for tournament graphs.

We start by first applying Reduction Rule 1, to ensure that each vertex and edge in the input graph participates in an - path. Lemma 5 in Appendix proves that Reduction Rule 1 is safe and can be applied on tournament graphs in polynomial time.

Lemma 5

Reduction Rule 1 is safe and can be applied in polynomial time in tournament graphs.

Proof

Consider a tournament graph . If a vertex or an edge in does not participate in any - path, then it can not contribute to tracking any paths, nor does it need to be considered while ensuring that all - paths have unique sequence of trackers. Hence Reduction Rule 1 is safe for tournament graphs.

In order to apply Reduction Rule 1, for each edge , check if there exists a path from to , say , and a path from to , say , such that , using the algorithm for finding vertex disjoint paths in tournament given in  in time. If such paths do not exist, then delete the edge . After repeating the process for all edges in , we delete the isolated vertices. Thus the Reduction Rule 1 can be applied in time in a tournament graph. ∎

Algorithm 2 gives a procedure to compute a minimum tracking set for a tournament graph . Next two lemmas prove the correctness and running time of the algorithm.

Lemma 6

Algorithm 2 gives an optimum tracking set for a tournament graph.

Proof

Algorithm 2 starts by ensuring that each vertex and edge in the input graph participates in an - path of . Next for each edge , if there exists a vertex , we check if there exists an - path in that contains the edge . Let such a path in . Now consider the path that can be obtained by replacing the edge in by edges and along with the vertex . Observe that the vertex sets of and differ only in vertex . Hence, necessarily belongs to a tracking set for .

Now we prove that Algorithm 2 indeed returns a tracking set for . Suppose not. Then there exists two - paths, say and , that contain the same sequence of trackers in . Consider the graph induced by . Starting from , let be the last vertex until which and contain the same sequence of vertices. Let be the first vertex on after , such that . Let be the subpath of lying between the vertices and , and be the subpath of lying between the vertices and . Observe that and are vertex disjoint except for their endpoints and , hence they form a monotone cycle, say . See Figure 4. Further, there exists a subpath of from to that intersects with only at . Figure 3: Indistinguishable s-t paths in a graph form a cycle (marked in dotted lines)

Path is marked in dashed lines, while path is marked in solid lines. Observe the monotone cycle formed due to paths and with two directed paths from the vertex to vertex in . Since we consider graphs without any parallel edges, there exists at least one vertex in .

Let be the two out-neighbors of vertex such that and and . Since is a tournament, there exists an edge between the vertices and . See Figure 4. We use to denote the subpath of lying between vertices and , to denote the subpath of between vertices and , and to denote the subpath of between vertices and . While denotes the subpath of between vertices and . First we consider the case when . Observe that paths and are two - paths that differ only in vertex . Hence must have been marked as tracker by Algorithm 2. Next consider the case when . Now paths and are two - paths that differ only at vertex . Hence must have been marked as a tracker by Algorithm 2. This contradicts the assumption that no vertex other than in is marked as a tracker. Hence Algorithm 2 gives an optimum tracking set for a tournament graph. ∎

Lemma 7

Algorithm 2 runs in time .

Proof

Let be the input graph, and . From , it is known that it takes (quadratic) time to apply Reduction Rule 1. Next for each edge , we consider the set of vertices that are adjacent to both end points of the edge . This takes time. Now for each vertex that is adjacent to both and , we check if participates in some - path in the graph . Removal of vertex from takes constant time. In order to check if participates in some - path in , we check if there exists a path between and , say , and a path between and , say , such that . This can be done using the algorithm for finding vertex disjoint paths in tournaments shown in  in time. Thus the total time taken to run Algorithm 2 is , i.e. . ∎

From Lemma 6 and Lemma 7, we have the following theorem.

Theorem 4.2

Tracking Paths can be solved in polynomial time in tournament graphs.

5 Bounded-Degree Graphs

In this section, we give an approximation algorithm for Tracking Paths. We show that given an undirected graph , there exists a polynomial time algorithm that gives a tracking set for , of the size , where is the size of an optimum tracking set for and is the maximum degree of graph . Approximation algorithms have been studied for restricted versions of Tracking Shortest Paths and Tracking Paths. Banik et al. gave a -approximate algorithm for Tracking Shortest Paths in planar graphs in . Eppstein et al. gave a -approximate algorithm for Tracking Paths in planar graphs in . Bilò et al. gave a -approximate algorithm for Tracking Shortest Paths in case of multiple source-destination pairs in . Next we show that Tracking Paths for bounded degree graphs is polynomial time reducible from Vertex Cover for bounded degree graphs.

Lemma 8

Given an undirected graph with maximum degree , there exists an - graph with maximum degree , such that has a vertex cover of size if and only if has a tracking set for all - paths, of size .

Proof

Let be and undirected graph with maximum degree . For reference, let be the graph in Figure 6. Figure 5: Depiction of an undirected graph G with maximum degree d

We create the graph as follows. For each vertex , we introduce a vertex in , and we call these set of vertices in as . For each edge , we introduce two vertices in , and we call the set of vertices as , and the set of vertices as . The adjacencies between and are introduced as follows. If an edge is incident on vertices in , then we add edges between the corresponding vertices and the vertices in . Next, we add the source and destination vertices and in . We then create a triangular grid between and the vertices in , and another triangular grid between the vertices in and . See Figure 6. The vertices of are marked with blank boxes, while the ones from are marked with solid boxes. The circled vertices form a tracking set. Observe that the maximum degree of vertices in and , including the vertices in , is . The maximum degree of vertices in is at most .

Now we prove that there exists a vertex cover of size in if and only if there exists a tracking set in of size . First consider the case when has a vertex cover of size . We now prove that there exists a tracking set of size in . We mark the vertices in corresponding to as trackers. In addition we mark all the vertices in and (except and ) as trackers. Now the size of tracking set in is . We claim that is a valid tracking set for . Suppose not. Then there exists two distinct - paths, say in , such that the sequence of trackers in is same as that in . Observe that two distinct subpaths (subpaths of some - paths) contained in () cannot have the same sequence of trackers from (). Since all vertices in are marked as trackers, this implies that contain the same sequence of vertices from and , and they necessarily differ in vertices from . Let be the vertices that distinguish and , and and . Since and cant differ in their vertex set from and , the vertex preceding has to be common in both . Without loss of generality, we assume that the is the vertex preceding , and . This implies that . Note that corresponds to an edge in . Since we marked the vertices corresponding to as trackers in , at least one of the neighbors of in is necessarily a tracker. Thus either or is necessarily a tracker. This contradicts the assumption that and have the same sequence of trackers.

Now we consider the case when has a tracking set of size . We claim that there exists a vertex cover of size in . Suppose not. Consider the triangular grid subgraphs and . Observe that for each edge in , there exists a vertex , and there exists an - path, say , that passed through in , such that we can replace edge in by edges , to form another - path, say . Observe that and differ in only one vertex i.e. . Hence is necessarily a tracker. The same holds true for each edge in . Thus all vertices in are necessarily trackers and hence belong to . Since , the remaining trackers in are vertices from . Let be the set of vertices in that have been marked as trackers, i.e. . Note that . We denote the set of vertices in that correspond to vertices in as . We claim that forms a vertex cover for . Suppose not. Then there exists an edge, say in , such none of its end points belong to . This implies that the vertices in that correspond to and , say , are not trackers in . Due to the construction of , there exists a pair of vertices and ( correspond to the edge in ) such that and are adjacent to both and .

Observe that for each pair of vertices , where and , there exists two vertices in (the vertices in that correspond to the endpoints of the edge in ) that are adjacent to both and . Thus for each pair of vertices , there exists two paths between them passing through two distinct vertices in . Further, there exists a path from to that is completely contained in , and there exists a path from to that is completely contained in . Thus at least one of the vertices from that are adjacent to , must necessarily be a tracker. This contradicts the fact that neither nor is a tracker in . This completes the proof. ∎

Since Vertex Cover is known to be NP-hard for graphs with maximum degree (, due to Lemma 8 we have the following corollary.

Corollary 1

Tracking Paths is NP-hard for graphs with maximum degree .

Algorithm 3 gives a procedure to find a -approximate tracking set for undirected graphs with maximum degree . We prove its correctness in the following lemma.

Lemma 9

Algorithm 3 gives a -approximate tracking set for an undirected graph.

Proof

Algorithm 3 starts by ensuring that each vertex and edge in the input graph participates in an - path of by applying Reduction Rule 1.

Next we claim that Algorithm 3 indeed returns an optimal tracking set for . Suppose not. Then is not a tracking set for . Due to Lemma 2, there exists a cycle in with a local source and a local destination , such that does not contain any trackers. See Figure 2.

Path is marked in solid lines, while path is marked in dashed lines. Observe the cycle formed due to paths and . Since and contain the same sequence of trackers, no vertex in can be a tracker. Since we consider graphs without any parallel edges, there exists at least one vertex in . Note that Algorithm 3 includes a -approximate feedback vertex set, , for in . Thus at least one vertex from belongs to . Note that it is possible that vertices and/or , and thus or may have been included in . But the vertices do not help distinguish between paths and . However, observe that Algorithm 3 also includes all neighbors of the vertices in into . Further each vertex in has at least two of its neighbors in . Thus at least one vertex in , other than and , will have been necessarily included in . This violates the claim that no vertex other than or belongs to , contradicting the assumption that is not a tracking set for .

Next we explain the approximation ratio . From , it is known that each tracking set is also a feedback vertex set. Hence, for a graph , the size of a minimum FVS serves as a lower bound for the size of an optimum tracking set for . Thus when Algorithm 3 includes a -approximate FVS , into the tracking set , the size of is at most , where is the size of an optimum tracking set for . Further, for each vertex in , all of its neighbors are also included into the tracking set . Since the maximum degree of is upper bounded by , for each vertex in , additional vertices are included in . Thus the size of is at most . ∎

Next we prove that Algorithm 3 runs in polynomial time.

Lemma 10

Algorithm 3 runs in time .

Proof

Algorithm 3 starts by applying Reduction Rule 1 that can be applied in quadratic time. Next we find a -approximate feedback vertex set for the input graph, using the algorithm given in  in time. We include in tracking set . Next, for each vertex , we add to . This step takes time. Thus the overall time taken is . Hence the algorithm runs in total time.∎

From Lemma 9 and Lemma 10, we have the following theorem.

Theorem 5.1

For an undirected graph on vertices such that the maximum degree of vertices in is , there exists an algorithm that finds a -approximate tracking set for .

The approximation ratio for our algorithm can be improved slightly by using the improved approximation bounds known for FVS in bounded degree graphs .

6 Reconstructing Paths using Trackers

In real-world applications, it might be required to identify the - path which corresponds to a given sequence of trackers. Banik et al.  gave a polynomial time algorithm to reconstruct the shortest - path corresponding to a subset of trackers, given a tracking set for shortest - paths. Here we give an algorithm that works for all - paths. Given a graph and a sequence of trackers , such that , where is a tracking set of constant size for , the algorithm identifies the unique - path in that corresponds to . Our algorithm works for both undirected graphs as well as tournaments.

Lemma 11

Given a graph , and tracking set for , and a sequence of trackers , the unique - path corresponding to can be found in polynomial time.

Proof

Let denote the vertices in the sequence and let . Let be the path that we need to find, i.e. the unique - path in that corresponds to . Let be the sequence of trackers received as part of the input. Let be the set of pairs of vertices formed from consecutive vertices in , i.e. . Since corresponds to , should not contain any trackers from , other than those in . Now we need to find the path that passes through the sequence of vertices in . In order to do so we find the vertex disjoint paths between and , where and . The sub paths between the pairs of vertices in should be vertex disjoint. We create a copy for each vertex in , and introduce and edge between and each vertex in in the graph . We create a new set and be the set of all vertices in . Consider the graph . If is an undirected graph, then using the algorithm for disjoint paths in undirected graphs from , find the vertex disjoint paths between the pairs of vertices in , in the graph . If is a tournament graphs, then using the algorithm for disjoint paths in tournaments from , find the vertex disjoint paths between the pairs of vertices in , in the graph . Since disjoint path problem can be solved in polynomial time for undirected graphs and tournaments ,, we can perform this step in polynomial time. Observe that the sequence of these vertex disjoint paths will form an - path in , which will also be an - path in . Next we prove that the path found will be a unique - path. Suppose not. Then there exists two - paths in , that contain the sequence of trackers . However, this contradicts the assumption that is a tracking set for . Observe that if the paths between pairs of vertices and are not vertex disjoint, this results in violation of tracking set condition, as there are two vertex disjoint paths between a pair of vertices that have disjoint paths to and themselves. This contradicts the assumption that is a tracking set for . ∎

7 Tracking Edge Set for Undirected Graphs

In this section we study the problem of identifying - paths in an undirected edge weighted graph using the edges of the graph. For a graph , we define a tracking edge set as the set of edges whose intersection with each - path results in a unique sequence of edges. Here we allow parallel edges in the input graph. We formally define the problem of tracking paths using edges as follows.

Tracking Paths using Edges Input: An undirected edge weighted graph with terminal vertices and . Question: Find a minimum weight tracking edge set for .

We start by first applying Reduction Rule 1, which ensures that each vertex and edge in the graph participates in some - path. Next we prove that each cycle in the reduced graph needs an edge as a tracker.

Lemma 12

For a reduced graph , if is a tracking edge set, then each cycle in contains an edge such that .

Proof

Suppose the claim does not hold. Then there exists a cycle in graph , such that , i.e. none of the edges in belong to . Consider an edge . Due to Reduction Rule 1, participates in an - path, say . Let be the first vertex of that appears in path while traversing from to . Similarly, let be the last vertex of that appears in path while traversing from to . See Figure 7. Observe that and serve as local source and sink respectively for the cycle , and there exist exactly two vertex disjoint paths between and in . Since none of the edges in are part of the tracking edge set , this leads to two - paths in with exactly same sequence of edges. This contradicts the fact that is a tracking edge set for . ∎

Next we prove that a feedback edge set (FES) is a tracking edge set for a reduced graph. An FES is a set of edges whose removal makes the graph acyclic.

Lemma 13

For a reduced graph , a feedback edge set is also a tracking edge set for .

Proof

Consider graph reduced by Reduction Rule 1, and an FES for . We claim that is a tracking edge set for . Suppose not. Then there exists two - paths, say and , in , such that the sequence of tracking edges in both these paths is the same. The graph induced by and contains at least one cycle, say . See Figure 2. Since and contain the same sequence of tracking edges, there must be no edge in cycle that belongs to . However, since is an FES for , it must necessarily contain an edge, say , from the cycle marked as a tracking edge. Observe that can belong to either and , but not both of them. This contradicts the assumption that and contain the same sequence of tracking edges. ∎

Although finding a minimum FVS is a NP-hard problem, an FES can be found in polynomial time. We now prove that Tracking Paths using Edges can be solved in polynomial time.

Theorem 7.1

For an undirected edge-weighted graph on vertices, Tracking Paths using Edges can be solved in time.

Proof

Let be an undirected edge-weighted graph on vertices. From Lemma 13 it is known that an FES is a tracking edge set for . In order to find a minimum weighted tracking edge set for , we first find a maximum weight spanning tree for using Prim’s algorithm or Kruskal’s algorithm in time. Now the edges in comprise of a minimum weight FES, which is also a minimum weight tracking edge set for . ∎

A path reconstruction algorithm similar to the one mentioned in Section 6 can be given by considering a sequence of tracking edges, and finding vertex disjoint paths between their endpoints in the graph obtained after removal of remaining tracking edges from the tracking edge set for that graph.

8 Conclusions

In this paper, we give polynomial time results for some variants of the Tracking Paths problem. Specifically, we solve Tracking Paths for chordal graphs and tournaments, along with giving an approximation algorithm for degree bounded graphs. We also analyze the problem Tracking Paths using Edges, and prove it to be polynomial time solvable. A constructive algorithm has also been given that helps identify an - path, given the unique sequence of trackers it contains. Future scope of this work lies in improving the running times of these algorithms and identifying more graph classes where Tracking Paths may be easily solvable. Open problems include finding approximation algorithms for the NP-hard variants (other than bounded degree version) of the problem for both undirected and directed graphs.

Acknowledgement

We thank Prof. Venkatesh Raman for the insightful discussions and suggestions.

References

•  Bafna, V., Berman, P., Fujito, T.: A 2-approximation algorithm for the undirected feedback vertex set problem. SIAM J. Discrete Math. 12(3), 289–297 (1999)
•  Bafna, V., Berman, P., Fujito, T.: Constant ratio approximations of the weighted feedback vertex set problem for undirected graphs. In: Staples, J., Eades, P., Katoh, N., Moffat, A. (eds.) Algorithms and Computations. pp. 142–151. Springer Berlin Heidelberg, Berlin, Heidelberg (1995)
•  Banik, A., Katz, M.J., Packer, E., Simakov, M.: Tracking paths. In: Algorithms and Complexity - 10th International Conference, CIAC 2017. pp. 67–79 (2017)
•  Banik, A., Choudhary, P.: Fixed-parameter tractable algorithms for tracking set problems. In: Algorithms and Discrete Applied Mathematics - 4th International Conference, CALDAM 2018, Guwahati, India, February 15-17, 2018, Proceedings. pp. 93–104 (2018)
•  Banik, A., Choudhary, P., Lokshtanov, D., Raman, V., Saurabh, S.: A polynomial sized kernel for tracking paths problem. Algorithmica 82(1), 41–63 (2020)
•  Banik, A., Choudhary, P., Raman, V., Saurabh, S.: Fixed-parameter tractable algorithms for tracking shortest paths (2020), http://arxiv.org/abs/2001.08977
•  Bilò, D., Gualà, L., Leucci, S., Proietti, G.: Tracking routes in communication networks. In: Censor-Hillel, K., Flammini, M. (eds.) Structural Information and Communication Complexity. pp. 81–93. Springer International Publishing, Cham (2019)
•  Choudhary, P., Raman, V.: Improved kernels for tracking path problems. CoRR abs/2001.03161 (2020), http://arxiv.org/abs/2001.03161
•  Chudnovsky, M., Scott, A., Seymour, P.: Disjoint paths in tournaments. Advances in Mathematics 270, 582 – 597 (2015)
•  Duraisamy, K., Dempsey, K., Ali, H., Bhowmick, S.: A noise reducing sampling approach for uncovering critical properties in large scale biological networks. In: 2011 International Conference on High Performance Computing Simulation. pp. 721–728 (July 2011). https://doi.org/10.1109/HPCSim.2011.5999898
•  Eppstein, D., Goodrich, M.T., Liu, J.A., Matias, P.: Tracking paths in planar graphs. In: 30th International Symposium on Algorithms and Computation, ISAAC 2019, December 8-11, 2019, Shanghai University of Finance and Economics, Shanghai, China. pp. 54:1–54:17 (2019)
•  Fisher, D.C., Ryan, J.: Tournament games and condorcet voting. Linear Algebra and its Applications 217, 87 – 100 (1995), proceedings of a Conference on Graphs and Matrices in Honor of John Maybee
•  Garey, M., Johnson, D., Stockmeyer, L.: Some simplified np-complete graph problems. Theoretical Computer Science 1(3), 237 – 267 (1976)
•  Geman, D.: Random fields and inverse problems in imaging. In: Hennequin, P.L. (ed.) École d’Été de Probabilités de Saint-Flour XVIII - 1988. pp. 115–193. Springer Berlin Heidelberg, Berlin, Heidelberg (1990)
•  Golumbic, M.C.: Chapter 3 - perfect graphs. In: Golumbic, M.C. (ed.) Algorithmic Graph Theory and Perfect Graphs, pp. 51 – 80. Academic Press (1980)
•  Kawarabayashi, K., Kobayashi, Y., Reed, B.: The disjoint paths problem in quadratic time. Journal of Combinatorial Theory, Series B 102(2), 424 – 435 (2012)
• 

Lauritzen, S.L., Spiegelhalter, D.J.: Local computations with probabilities on graphical structures and their application to expert systems. Journal of the Royal Statistical Society. Series B (Methodological)

50(2), 157–224 (1988)
•  McGarvey, D.C.: A theorem on the construction of voting paradoxes. Econometrica 21(4), 608–610 (1953)
• 

Rabiner, L.R.: A tutorial on hidden markov models and selected applications in speech recognition. Proceedings of the IEEE

77(2), 257–286 (Feb 1989). https://doi.org/10.1109/5.18626
•  Stearns, R.: The voting problem. The American Mathematical Monthly 66(9), 761–763 (1959)