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 [3]. 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. [3] proved that the problem of finding a minimumcardinality tracking set to track shortest  paths (Tracking Shortest Paths problem) is NPhard and APXhard. Later, the problem of tracking all  paths (Tracking Paths) in an undirected graph was studied in [5],[8],[11]. 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 NPcomplete in [5]. 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 fixedparameter 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 [8], the authors improved this kernel to , and gave a kernel for planar graphs. In [11], Eppstein et al. proved that Tracking Paths is NPcomplete 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 [4] and [7]. In [4], Banik et al. studied Tracking Shortest Paths and proved the problem to be fixedparameter tractable. In [7], Bilò et al. prove that Tracking Shortest Paths is NPhard for cubic planar graphs in case of multiple sourcedestination 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 nonadjacent 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 [3]. 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
[10], [17], [14], [19]. Tournament graphs are used in voting theory and social choice theory to graphically depict pairwise relationships between entities in a community [18], [20]. Tournament graphs are particularly used to study the Condorcet voting model, where a preference is indicated between each pair of contestants [12].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 [5], 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 NPhard 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 [5]. 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 [16] and tournaments [9] 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 multiedges. 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 [5] that ensures that each vertex and edge in the input graph participates in an  path.
Reduction Rule 1
[5] 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 [5] 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 [5], 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 sourcedestination pairs.
Now we state the tracking set condition, which is useful for validation of a tracking set [5].
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 sourcedestination 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 NPhard on general graphs are polynomial time solvable for chordal graphs e.g. chromatic number, feedback vertex set, independent set [15].
In undirected graphs, a tracking set is also a feedback vertex set [5]. 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.
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.
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 [5], 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 [16] in time. Thus the total time taken to run Algorithm 1 is , i.e. . ∎
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 NPhard in tournaments. From [6] it is known that Tracking Paths is NPhard for directed acyclic graphs. Since a directed acyclic graph is also a directed graph, this implies that Tracking Paths is NPhard 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 [9] 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 .
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 outneighbors 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 [5], 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 [9] in time. Thus the total time taken to run Algorithm 2 is , i.e. . ∎
Theorem 4.2
Tracking Paths can be solved in polynomial time in tournament graphs.
5 BoundedDegree 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 [3]. Eppstein et al. gave a approximate algorithm for Tracking Paths in planar graphs in [11]. Bilò et al. gave a approximate algorithm for Tracking Shortest Paths in case of multiple sourcedestination pairs in [7]. 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.
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 NPhard for graphs with maximum degree () [13], due to Lemma 8 we have the following corollary.
Corollary 1
Tracking Paths is NPhard 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 [5], 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 [1] 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.∎
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 [2].
6 Reconstructing Paths using Trackers
In realworld applications, it might be required to identify the  path which corresponds to a given sequence of trackers. Banik et al. [3] 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 [16], 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 [9], 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 [16],[9], 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 NPhard 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 edgeweighted graph on vertices, Tracking Paths using Edges can be solved in time.
Proof
Let be an undirected edgeweighted 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 NPhard 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
 [1] Bafna, V., Berman, P., Fujito, T.: A 2approximation algorithm for the undirected feedback vertex set problem. SIAM J. Discrete Math. 12(3), 289–297 (1999)
 [2] 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)
 [3] Banik, A., Katz, M.J., Packer, E., Simakov, M.: Tracking paths. In: Algorithms and Complexity  10th International Conference, CIAC 2017. pp. 67–79 (2017)
 [4] Banik, A., Choudhary, P.: Fixedparameter tractable algorithms for tracking set problems. In: Algorithms and Discrete Applied Mathematics  4th International Conference, CALDAM 2018, Guwahati, India, February 1517, 2018, Proceedings. pp. 93–104 (2018)
 [5] Banik, A., Choudhary, P., Lokshtanov, D., Raman, V., Saurabh, S.: A polynomial sized kernel for tracking paths problem. Algorithmica 82(1), 41–63 (2020)
 [6] Banik, A., Choudhary, P., Raman, V., Saurabh, S.: Fixedparameter tractable algorithms for tracking shortest paths (2020), http://arxiv.org/abs/2001.08977
 [7] Bilò, D., Gualà, L., Leucci, S., Proietti, G.: Tracking routes in communication networks. In: CensorHillel, K., Flammini, M. (eds.) Structural Information and Communication Complexity. pp. 81–93. Springer International Publishing, Cham (2019)
 [8] Choudhary, P., Raman, V.: Improved kernels for tracking path problems. CoRR abs/2001.03161 (2020), http://arxiv.org/abs/2001.03161
 [9] Chudnovsky, M., Scott, A., Seymour, P.: Disjoint paths in tournaments. Advances in Mathematics 270, 582 – 597 (2015)
 [10] 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
 [11] 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 811, 2019, Shanghai University of Finance and Economics, Shanghai, China. pp. 54:1–54:17 (2019)
 [12] 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
 [13] Garey, M., Johnson, D., Stockmeyer, L.: Some simplified npcomplete graph problems. Theoretical Computer Science 1(3), 237 – 267 (1976)
 [14] Geman, D.: Random fields and inverse problems in imaging. In: Hennequin, P.L. (ed.) École d’Été de Probabilités de SaintFlour XVIII  1988. pp. 115–193. Springer Berlin Heidelberg, Berlin, Heidelberg (1990)
 [15] Golumbic, M.C.: Chapter 3  perfect graphs. In: Golumbic, M.C. (ed.) Algorithmic Graph Theory and Perfect Graphs, pp. 51 – 80. Academic Press (1980)
 [16] Kawarabayashi, K., Kobayashi, Y., Reed, B.: The disjoint paths problem in quadratic time. Journal of Combinatorial Theory, Series B 102(2), 424 – 435 (2012)

[17]
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)  [18] McGarvey, D.C.: A theorem on the construction of voting paradoxes. Econometrica 21(4), 608–610 (1953)

[19]
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  [20] Stearns, R.: The voting problem. The American Mathematical Monthly 66(9), 761–763 (1959)
Comments
There are no comments yet.