Search for an Immobile Entity on a Unit Graph: A Mathematical Programming Approach

Size: px
Start display at page:

Download "Search for an Immobile Entity on a Unit Graph: A Mathematical Programming Approach"

Transcription

1 Search for an Immobile Entity on a Unit Graph: A Mathematical Programming Approach by Wanyan Yu and Rajan Batta Department of Industrial and Systems Engineering, 438 Bell Hall University at Buffalo (SUNY), Buffalo, NY 1460, USA May 010 Abstract We consider the problem of finding an immobile entity on a unit graph with the objective of minimizing the expected search time. The problem was introduced and discussed by Jotshi and Batta [15] in a recent paper. They did not provide a formulation but instead focused on developing graph-theory based heuristics. In contrast, we develop a formulation and use a mathematical programming-based approach. Our algorithm named SIEUG is based on several proven properties of an optimal solution. We are able to establish that it indeed finds an optimal solution for many medium-size problem instances (up to 100 nodes and 0 odd-degree nodes). For larger instances, we only use the first stage of the SIEUG algorithm and confirm that this approach is empirically superior to that developed by Jotshi and Batta. A thorough computational study is conducted and results in suggested solution strategies that are a function of graph size and structure. Keywords: Search theory; Eulerian path; Mixed integer programming

2 1 Introduction and Literature Review This paper discusses the problem of finding an immobile entity on a unit graph with the objective of minimizing the expected search time. The entity is assumed to be uniformly distributed on the graph and to be of infinitesimal size. The searcher is free to start from any vertex of the network and needs to plan a route which covers all of the edges of the graph at least once because there is no a priori knowledge about the position of the immobile entity. To discover the entity, the searcher must be at the same point as the entity. It is assumed that there is no communication between the entity and the searcher during the search process. Given all of these assumptions, it is evident that the expected search time is uniquely determined by the searcher s starting vertex and search path. The problem described above is essentially the same as the Utilitarian Postman (UP) Problem discussed in [3] in the context of rendezvous search game. The UP problem s objective is to minimize the mean time of delivery of mail to all customers. More generally, a UP path is the one which minimizes the expected time required to find a random (uniformly distributed) point on a network. We note that UP is different from the well-known Chinese Postman Problem (CPP) which finds the shortest length path which visits all of the edges of the network. The optimal UP path is one of the open Eulerian paths (an open Eulerian path is a path covers all the edges of the network and the shortest open Eulerian path is the CP path) but may be longer than the CP path. Furthermore, unlike a CP path whose length is bounded by twice of the length of the whole network[13], a UP path may traverse on an edge more than twice[5] and therefore no similar bound exists for a general network. Before we present a discussion on the specific problem in this paper, we briefly review the general topic of search theory. Search theory came into being as a major discipline of the operations research field during World War II. A commonly considered objective is minimizing the expected time of detection. According to the nature of the problem[16], work in the literature can be classified into two areas: One-Sided Search and Search Games (Two-Sided Search Problem). For one-sided search, the position of the target is independent from the searcher s strategy. The target is either immobile or its motion is determined stochastically by known rules. On the other hand, Search Games can be further divided into two cases based on whether the target wants to be found or not. It is formulated as a zero-sum game if the target is hiding from the searcher. If the target wants to be found, the problem is called Rendezvous Search. The problem discussed in this paper falls into the category of One-Sided Search. The first set of models in search theory related to our problem is searching for an immobile hider in search games. Alpern et al. [4] proved that any random CP path is optimal for 1

3 a simply searchable network with an arbitrary starting point for the searcher. This paper gives sufficient conditions for simple searchability and shows that it is not a topological property. In another paper [8], the same authors conjectured that an optimal strategy to search for an immobile hider on any network will never use trajectories that visit some (or part of) edges more than twice. In a related paper, Alpern [3] introduced the Utilitarian Postman (UP) path problem in which the average delivery time is minimized. A follow-up to this paper is [8] in which it is proved that the uniform hiding strategy is optimal for some special structured graphs (easily hideable networks). Sufficient conditions for a network to be easily hideable are also provided in this paper. Finally Alpern et al. [5] concluded that for arbitrary-start search games, the optimal hiding strategy on a symmetric network is the uniform distribution and therefore the UP path is the optimal search strategy. They also provided a construction for such paths for a symmetric network of odd degrees. Another set of search theory models that related to our problem are known as Rendezvous Search problems. In Rendezvous Search the entity wants to be found. For such problems, the min-max objective in the searcher and hider problem can be converted to a min-min objective in which two players both wish to meet in the least expected time. A rendezvous search problem telephone coordination game was first proposed by Alpern in a talk given in 1976 (Institute of Advanced Studies, Vienna). It deals with the minimization of the meeting for two unit speed searchers, randomly placed in a known search network. For this special case, Anderson and Weber[9] developed a discrete location formulation and found the optimal strategy for a symmetric rendezvous search (in which players I and II adopt identical strategies) on a completely connected graph on vertices. The extension of the problem to a 3 vertex network is shown in [17]. It was not until Alpern[1] proposed a general continuous formulation that the rendezvous search field started to draw research attention. The upper bounds for various rendezvous values for the circle and an arbitrary network are given in [1]. Continuing this research direction, the upper bound on the symmetric rendezvous value was improved by Anderson and Essegaier [10] and Baston [11]. After that, the rendezvous search problem was continuously studied by Alpern and Beck [6]- [7] and Howard [14] under different assumptions regarding network structure. Readers are referred to the survey paper [] for a comprehensive review of the recent results on rendezvous search for two unit speed searches. We note that the vast majority of the search literature focuses on finding the optimal solution for the case of a special-structured graph. Departing from this trend, Jotshi and Batta[15] developed heuristic algorithms for finding an immobile entity on a general structured network. The major drawback of their approach is that the heuristic algorithms are not based on a mathematical programming formulation and hence do not provide any form

4 of performance guarantee. In this paper we focus on the same problem as in Jotshi and Batta[15], except that we adopt a mathematical programming approach. Our approach is computationally tested versus the heuristic procedure presented in Jotshi and Batta[15]. The structure of this paper is as follows. Section presents our mathematical model. Section 3 discusses some observations and properties of an optimal solution for the mathematical model, which lead to our solution methodology and heuristics in section 4. Section 5 provides some computational results and performance comparison with other heuristic methods. Conclusions and future search directions are provided in Section 6. Model Formulation We restrict our attention to simple graphs, i.e., graphs with no loops and no more than one edge between two different vertices. All of the edges presented are assumed to have unit length. We also assume that the immobile entity is uniformly distributed on the graph. Furthermore, we assume the following characteristics of the searcher start vertex for searcher is not specified and search speed is constant and equal to unity. It turns out that a unit search speed can be easily relaxed. However, relaxing the constant search speed assumption is difficult. Finally, the immobile entity is assumed to be of infinitesimal size, implying that the locations of the searcher and the entity have to coincide for the entity to be discovered. Under the above set of assumptions, we develop two separate formulations for the problem of finding a path for the searcher that minimizes the expected search time. The first formulation is a MIQCP model and is presented in Section.1. Because the computational time to solve this model is prohibitively large for reasonable-size problems, a second MIP model is developed in Section...1 Mixed Integer Quadratic Constraint Problem (MIQCP) Model.1.1 Notation and formulation Consider a labeled graph G(V,A) represented by a set of vertices V and a set of edges A, where V = {1,,, n} and A = {E 1, E,, E m }. Let P be an open Eulerian path on graph G represented as a sequence of r traversed edges E li, i.e. P = (E l1, E l,, E lr ), l i {1,, m}. Each edge E li is represented by a vector of dimension n whose entries are 0 except for two entries which are 1. The entries that are 1 indicate the end vertices of edge E li. More formally, let the vector that represents the ith edge on path P be Zi P = 3

5 (c 1 i, c i,, c n i ) T. For example, if the second edge on path P connects vertices 3 and 4, and n = 5, we have Z P = (0, 0, 1, 1, 0) T. Armed with this notation, we proceed with the formulation. Output An open Eulerian path P = (E l1, E l,,e lr ), l i {1,,m} which minimizes expected search time Data Requirements n m b j k = number of vertices on graph G(V,A) number { of edges on graph G(V,A) 1 if vertex j is an end vertex of edge Ek on graph G 0 otherwise for k = 1,..., m; j = 1,..., n. Decision Variables r number of traversed edges E li { i th edge on the path, i = 1,,..., r. c j 1 if vertex j is an end vertex of Eli i = for i = 1,..., r; j = 1,..., n. 0 otherwise 0 if edge E k and edge E li are not adjacent Z ki = 1 if edge E k and edge E li are adjacent for k = 1,..., m; i = 1,..., r. { if edge E k and edge E li are identical 1 if Ek = E P ki = li for k = 1,..., m; i = 1,..., r. 0 otherwise 0 if edge E lk and edge E li are not adjacent t ki = 1 if edge E lk and edge E li are adjacent for i =,..., r; k = 1,..., i 1. { if edge E lk and edge E li are identical 1 if edge Elk and edge E w ki = li are identical for i =,..., r; k = 1,..., i 1. { 0 otherwise 1 if edge Eli is first time traversed y i = for i = 1,..., r. 0 otherwise We present a Mixed Integer Quadratic Constrained Problem (MIQCP) formulation for a known value of r (number of traversed edges). Later (in Sections 3 and 4) we will discuss the determination of the appropriate value of r. This formulation is labeled (P r 1 ). 4

6 (P1 r ) MinimizeE(T s ) = 1 m subject to: r i=1 (i 1 )y i (1) n c j i = for i = 1,, r. () j=1 n c j i c j i+1 1 for i = 1,, r 1. (3) j=1 c j i 1 +cj i +cj i+1 ( ) w (i 1)i +w i(i+1) for i =,, r 1; j = 1,, n. (4) c j i 1 cj i cj i+1 cj i+ w i(i+1) 1 for i =,, r ; j = 1,, n. (5) c j i 1 cj i cj i+1 cj i+ +w i(i+1) 1 for i =,, r ; j = 1,, n. (6) w (i 1)i +w i(i+1) 1 for i =,, r 1. (7) r y i = m, y 1 = 1. (8) i=1 m P ki = 1 for i = 1,, r. (9) k=1 r P ki 1 for k = 1,, m. (10) i=1 n Z ki = b j k cj i for k = 1,, m; i = 1,, r. (11) j=1 n t ki = c j k cj i for i =,, r; k = 1,, i 1. (1) j=1 Z ki 1 P ki 1 Z ki for k = 1,, m; i = 1,, r. (13) t ki 1 w ki 1 t ki for i =,, r; k = 1,, i 1. (14) i 1 k=1 0 < y i + w ki i 1 1 for i =,, r. (15) c j i {0, 1}, P ki {0, 1}, w ki {0, 1}, y i {0, 1}. 5

7 .1. Explanation of the formulation We now establish the correctness of formulation (P1 r ). Objective function It is assumed that the entity is uniformly distributed on a unit graph G(V,A). Besides, the searcher s speed is assumed to be unity. Let A i be the event that the entity is found on edge E li, and T s be the search time; then the expected search time can be written as: r E (T s ) = (T s A i )P r(a i ) (16) i=1 We know that the probability of finding the entity on a first time traversed edge is 1, m and the probability of finding the entity on a repeated edge is 0. On the other hand, the average search time given the entity is found on any point of E li equals the length of edges traversed in front of E li plus half of the length of E li. Then (16) can be written as: r E (T s ) = (i 1+ 1 ) 1 m y i = 1 m i=1 r (i 1 )y i i=1 Constraints There are two sets of constraints in the formulation. Set 1: Constraints which make the solution a valid open Eulerian path. We claim that if constraints () (10) are satisfied, then the solution is an open Eulerian path. Constraint () simply enforces the fact that there needs to be exactly two end vertices of each edge E li. The additional constraints (3), (4), (5) and (6), enforces path continuity. To see this, we note that constraint (3) ensures that all two successively traversed edges are either adjacent or identical. Constraint (4) indicates that all three successively traversed edges must not form a claw (a claw is a star graph with three edges, three leaves, and one central vertex). This inequality constraint comes from a linearization of the following condition: c j i 1 +cj i +cj i+1 3 if w (i 1)i+w i(i+1) = 0 for i=,, r 1; j= 1,, n. (17) 6

8 Constraints (5) and (6) are supplementary requirements of constraint (4). It considers the continuity of four successive edges if in the segment the third edge repeats the second edge. If the third edge repeats the second edge, the four edges must have one common end vertex. These two constraints is a linear representation of the following condition: c j i 1 cj i +cj i+1 cj i+ { 1 if w i(i+1) = 1 if w i(i+1) = 0 for i=,, r ; j= 1,, n. (18) Ensuring path continuity is not enough. We also need to concern ourselves with repeated edges to properly evaluate the objective function. An edge cannot be successively repeated more than times constraint (7) ensures that this happen. Constraint (8) ensures that the number of first-time traversed edges on path P has to be equal to the number of edges on the graph. Furthermore, the first edge on the path must be a first-traversed edge. The next thing we have to ensure is to establish a relationship between edges on the selected path and edges on the graph. Constraint (9) does this. Another factor is that each edge on the graph has to be covered. This is ensured by constraint (10). Set : Constraints that ensure the correct relationships between decision variables. Equation (11) defines the relationship between E k and E li. If E k and E li have no common end vertex, n j=1 bj k cj i = 0; if E k and E li have one common end vertex, n j=1 bj k cj i = 1; if E k and e i are identical, n j=1 bj k cj i =. Similarly, the relationship between edge c i and c k is defined by Equation (1). The inequality constraints (13), (14), (15) are a linear representation of the following relationship in (19), (0) and (1), respectively. P ki = y ki = y i = { { { 0 if Z ki = 1 if Z ki = 0 or 1 0 if t ki = 1 if t ki = 0 or 1 0 if i 1 k=1 w ki 1 1 if i 1 k=1 w ki= 0 for k= 1,, m; j= 1,, r. (19) for i=,, r; k= 1,, i 1. (0) for i=,, r. (1) 7

9 The MIQCP model can be solved by CPLEX 11. using the barrier optimizer when the graph size is small. A solved example is presented in the appendix. However, when the size of graph increases, CPLEX is not able to find a feasible solution for the MIQCP model within a reasonable time. Therefore, we seek an approach to linearize the quadratic constraints in the model in order to use the MIP optimizer in CPLEX. This enhanced MIP model is presented in the next section.. Enhanced MIP Model In this section, the MIQCP model is revised to a MIP model for the sake of computational efficiency. We introduce a new binary variable s j ki =cj k cj i ; the bilinear relationship between s j ki, cj k and cj i is given by the linear constraints () (4): s j ki cj k for i=,,r; k= 1,,i 1; j= 1,, n, () s j ki cj i for i=,,r; k= 1,, i 1; j= 1,, n, (3) s j ki cj k +cj i 1 for i=,, r; k= 1,, i 1; j= 1,, n, (4) where s j ki 0. Then constraints (3), (5), (6) and (1) can be rewritten as: n j=1 s j i(i+1) 1 for i= 1,, r 1. (5) s j (i 1)i sj (i+1)(i+) w i(i+1) 1 for i=,, r 1; j= 1,, n. (6) s j (i 1)i sj (i+1)(i+) +w i(i+1) 1 for i=,, r 1; j= 1,, n. (7) t ki = n s j ki for i =,, r; k = 1,, i 1. (8) j=1 Substituting the quadratic constraints in (P1 r ), we obtain an enhanced MIP model formulation (P r ) for a known value of r: (P r ) Minimize E (T s ) = 1 r m i=1 (i 1)y i subject to: 8

10 n c j i = for i= 1,, r. j=1 s j ki cj k for i=,,r; k= 1,, i 1; j= 1,, n. s j ki cj i for i=,,r; k= 1,, i 1; j= 1,, n. s j ki cj k +cj i 1 for i=,, r; k= 1,, i 1; j= 1,, n. n s j i(i+1) 1 for i= 1,, r 1. j=1 c j i 1 +cj i +cj i+1 ( w (i 1)i +w i(i+1) ) for i=,, r 1; j= 1,, n. s j (i 1)i sj (i+1)(i+) w i(i+1) 1 for i=,, r ; j= 1,, n. s j (i 1)i sj (i+1)(i+) +w i(i+1) 1 for i=,, r ; j= 1,, n. w (i 1)i +w i(i+1) 1 r y i =m, y 1 = 1. i=1 m P ki = 1 for i= 1,, r. k=1 for i=,, r 1. r P ki 1 for k= 1,, m. i=1 Z ki = t ki = n b j k cj i for k= 1,, m; i= 1,, r. j=1 n j=1 s j ki for i=,, r; k= 1,, i 1. Z ki 1 P ki 1 Z ki for k= 1,, m; i= 1,, r. t ki 1 w ki 1 t ki for i=,, r; k= 1,, i 1. i 1 k=1 0 < y i + w ki i 1 1 for i=,, r. c j i {0, 1},P ki {0, 1}, w ki {0, 1}, y i {0, 1}, s j ki {0, 1}. 9

11 A solved example to compare the MIQCP and MIP models is provided in the appendix. 3 Properties There are two main issues related to the MIP formulation which needs to be resolved. First, the optimal value of r, that is, the number of traversed edges (length) of the optimal path P is unknown. Second, the number of variables c j i s becomes unmanageable when the size of the graph increases. Due to these two issues, this formulation cannot be solved directly by a MIP solver, for large-size graphs. In this section, we establish some special properties of our MIP model. These properties help us develop our solution methodology in Section 4. The value of the objective function is determined by the values of r and y i s. Let variable r and vector y r = (y 1,, y r ) be a feasible partial solution to the problem, where y i = 0 indicates that the i th edge on path P is a repeated edge, and r is the length of path P. Furthermore, we define an optimal UP path, optimal r and optimal y r below. Definition. An optimal UP path is one which yields the minimum expected search time with the minimum number of repeated edges. An optimal r, denoted as r*, is the value of r corresponding to the optimal path. An optimal solution for y r, denoted as y r, is the value of y r corresponding to the optimal UP path. We now explore properties related to the values of r and r* and the structure of y r and yr. 3.1 Properties for r and r* Property 1. The length of a UP path, r, is no less than the length of the CP path, i.e., r µ, where µ is the length of the CP path. In other words, let r l and r l be the lower bound of r and r* respectively, then r l = µ, r l = µ. Explanation of Property 1: Based on its definition, a UP path is an open Eulerian path which covers the graph at least once. On the other hand, a CP path is such an open Eulerian path with a minimum length. Therefore, r µ. An example where r = µ is the case of a Eulerian graph, in which case the CP path becomes a UP path and the lower bound for r* becomes the same as the lower bound for r. Property. The upper bound of the length of a UP path, r, is not necessarily equal to the upper bound of the length of the CP path. 10

12 Explanation of Proeprty : It is known that a CP path will never utilize an edge more than twice [3]. Therefore the upper bound of a CP length is twice the length of the graph. However, a similar result does not hold for a UP path. A counterexample can be found in [13]. This counterexample has a bridge, i.e., an edge whose removal causes the graph to be split into two disconnected graphs. Conjecture: For an almost bridgeless symmetric graph, there exists a length of path, r u, such that no UP path with length greater than r u yields a less expected search time. That is, r > r u, E (T s (r u )) E (T s (r)). Explanation of rationale for conjecture: Property states that an upper bound of r is not easy to find for a general structured graph with a counterexample of a bridge. Here we conjecture that there is an upper bound of r for an almost bridgeless symmetric network (symmetric network means unit graph). An almost bridgeless graph is defined as a graph such that every cut edge is incident with a vertex of degree 1. With this conjecture, we can restrict our search on r in the range of [r l, r u ]. A construction approach to find r u is introduced in Section Properties for y r and y r The following contents focus on the issue of reducing the solution space of y r and y r. Property 3. It is beneficial to have the 0 entries of y r appear towards the end of the path. Furthermore, with an unknown number of traversed edges, an optimal UP path is the one on which the last edge is an non-repeated edge, that is, y r = 1. Explanation of Property 3: Intuitively, the expected search time increases when nonrepeated edges appear at the end of UP path. In other words, for a fixed path length of r, E (T s ) is minimized if y i = 0 for large i, which implies having the repeated edges towards the end of path. On the other hand, any UP path with the minimum expected search time and longer length is dominated by the optimal UP path because it can be converted to the optimal UP path by removing the repeated edges after the last unrepeated edge. Definition. A matching is a set of edges such that no two of the edges share the same vertex. A perfect matching is a matching which matches all vertices of the graph. If the graph is a weighted graph, the minimum weight perfect matching problem is to find a perfect matching of minimum weight. The minimum weight perfect matching over odd vertices is used to find the CP path. With the above definition, we establish the following lemma. 11

13 Lemma 1. Let n odd be the number of odd vertices on graph G (n odd ) and n m be the dimension of minimum weight perfect matching over odd vertices. If n 0 is the number of 0 entries of vector y r, then n 0 n m n odd. Proof. From Property 1 we know that the length of UP path is no less than the length of the CP path. In other words, the number of repeated edges on the optimal UP path is no less than the dimension of the minimum weight perfect matching over the odd vertices of graph G, i.e., n 0 n m. On the other hand, at most two odd vertices become even vertices by repeating one edge, and an open Eulerian path must have all the vertices even degree except for vertices as the starting and ending vertices. Therefore, the dimension of minimum weight perfect matching must satisfy: n m n odd (9) The lemma follows. We note that the second equality in the statement of Lemma 1 holds when each repeated edge connects two odd vertices. An example of this is a graph with a Hamiltonian path connecting all the odd vertices. Lemma. Let n 1 i be the number of 1s after the ith 0 entry of vector y r ; then n 1 i n odd i, for i n 0. Proof. Suppose y r = (1, 1,, 0,, 1) is a feasible solution. By removing n 1 i 1s that follows the i th 0, there are at most n 1 i odd vertices which become even vertices. On the other hand, because there are (i 1) repeated edges in front of the i th repeated edge, at most (i 1) odd vertices become even vertices by those repeats. Therefore, the number of odd vertices n odd must satisfy the following inequality: n 1 i + (i 1) + n odd n 1 i n odd i (30) The lemma follows. From Lemma 1, Lemma and Property 3, we obtain the following theorem. 1

14 Theorem 1. Given the number of 0 entries of vector y r, n 0, not less than n odd, the solution for y r = (y 1,, y r ) which yields the minimum expected search time has the following structure: there are n 1 leading 1 s followed by n (0,1) pair, where n 1 = m n odd and n = n odd 4. That is, the best possible solution for y r is: y r = (1, 1,, 1, 0, 1,, 0, 1, 0, 0,, 0 }{{}}{{}}{{} n 1 n (0,1)pair 1). In particular, y r = (1, 1,, 1, 0, 1,, 0, 1) if n }{{}}{{} 0 = n odd. n 1 n (0,1)pair Proof. We obtain the following inequalities by using Lemma : n 0 n, n 1 1 n odd 1, n1 n odd,, n1 n odd 4, n 1 n odd 1. (31) On the other hand, from Property 3, the last entry of y r must be 1. Therefore, there is at least one entry of 1 after each entry of 0, that is, n 1 n odd 1,, n 1 n0 1. (3) From Property 3 we also know that it is desirable to have the 0 entries of y i appear towards the end of the path. The total number of unrepeated edges equals to m. Therefore, the minimum expected search time is obtained when the equalities in (31) and (3) are all equalities. That is, yr = ( 1, 1,, 1, 0, 1,, 0, 1, 0, 0,, 0, 1) (33) }{{}}{{}}{{} n 1 n 0 n n (0,1)pair where n 1 =m n odd and n = n odd 4. We know from Lemma 1 that n 0 yr = ( 1, 1,, 1, }{{} n 1 0, 1,, 0, 1 }{{} n (0,1)pair The theorem follows. ), where n 1 =m n odd and n = n odd 4. n odd. Given n 0 = n odd, we can conclude that Note that this structure of y r is achieved only when the equality holds in Lemma. Such a UP path is not guaranteed to be found for a general graph. This structure of y r is the best solution given the value of n 0, without any information about the structure of the 13

15 graph. It can be used as the starting search point in the solution space of y r. If a path satisfies the structure of y r in Theorem 1 it is optimal. However, an optimal path does not necessarily satisfy Theorem 1. So Theorem 1 is a sufficient but not a necessary condition for optimality. We illustrate the lack of necessity of this condition via an example shown in Figure 1. Figure 1: An Example of Lack of Necessity of Condition in Theorem 1 The graph in Figure 1 has 6 odd nodes. Therefore the number of 0 entries of vector y r is at least n 0 = n odd =. Given n 0 =, we solve model (P r ) by setting r = n 0 +m = 1. The optimal path found by CPLEX is with a corresponding partial solution y r = (1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1). The optimal objective value is 5.4. Given n 0 =3, the optimal path found by CPLEX is with a corresponding partial solution y r = (1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1)which satisfies Theorem 1. The corresponding optimal objective value is also 5.4. Therefore we can conclude that the optimal objective function value is 5.4, and both paths yield an minimum expected search time. It is obvious that the optimal partial solution y r corresponding to the former path does not satisfy Theorem 1. Property 4. The value of r u equals to the length of a realized path of which the partial solution y r =(1, 1,, 1, 0, 1,, 0, 1 }{{}}{{} n 1 n (0,1)pair n 0 =r m., 0, 0,, 0 }{{} n 0 n, 1), where n 1 =m nodd and n = n odd 4, and Proof. First, given a path P(r) of which the partial solution y r =(1, 1,, 1, 0, 1,, 0, 1, }{{}}{{} n 1 n (0,1)pair 0, 0,, 0, 1), where n }{{} 1 =m nodd and n = n odd 4, we need to prove that a path P (r :r >r) n 0 n does not yield a smaller objective function value. Suppose r = r + 1. From Theorem 1, we know that a partial solution y r = (1, 1,, 1, }{{} n 1 14

16 0, 1,, 0, 1, 0, 0,, 0, 1) yields the minimum expected search time. Here }{{}}{{} n (0,1)pair n 0 n n 1 =m n odd =n 1, n = n odd 4 = n, n 0 n = r m n = r + 1 m n = r m n + 1 = n 0 n + 1. Therefore, E (T s (P )) E (T s (P )) = m > 0, and we can conclude that path P does not yield a smaller objective function value. By application of induction, it is easy to establish that the objective function cannot decrease for any given r > r. The theorem follows. If such a path P can be realized, the upper bound of r is the corresponding length of path P. In Section 4 we will discuss in detail how to obtain a feasible path which has a structure similar to P. 4 Solution Methodology We develop a solution methodology to find a UP path using the properties discussed in Section 3. We restrict the graph to be a simple, almost bridgeless, unit graph. Our strategy for solving the problem is as follows. We first develop a heuristic that finds a good solution and provides an upper bound for the path length. This upper bound is needed to define the mathematical programming model (P r ). The solution from the heuristic will also be used in Step 3 to define an upper bound for the optimal solution of (P r ). The next step is to use the properties developed in Section 3 to reduce the size of the formulation by creating a partial solution. The last step uses CPLEX on this reduced size formulation to solve the model. If a feasible solution exists, then the solution is optimal to (P r ). If a feasible solution does not exist, then we change the partial solution and resolve using CPLEX till feasibility is resolved. For the sake of brevity, we label our methodology as the SIEUG (search for an immobile entity on a unit graph) algorithm. SIEUG algorithm: 1. Obtain an upper bound for r* (denoted as r u ), the length of the optimal path, by constructing a feasible path P.. Set the value of r equal to µ ( µ is the length of the CP path). Construct a partial 15

17 solution y r = (y 1,, y r ) to the problem (P r ) which has the following property: all possible solutions which have a smaller objective value than this partial solution are infeasible to (P r ). 3. Use CPLEX to find the value of the c j i yr = (y 1,, y r ). variables that correspond to the partial solution If no feasible c j i s can be found by CPLEX, let µ = µ + 1, then go to Step. Otherwise, stop with the current values of c j i s. The SIEUG algorithm guarantees a termination before or when r reaches the value r u. The rest of this section contains the details necessary to execute the steps of the SIEUG algorithm and to establish that it yields an optimal solution to (P r ), if µ r r u. In Section 4.1, we discuss a heuristic procedure to find an upper bound for r*. In Section 4., we show how to construct a partial solution y r = (y 1,, y r ). In Section 4.3, we describe the mechanics of using CPLEX to find a feasible solution to (P r ). In Section 4.4, we define the conditions under which the SIEUG algorithm is optimal with respect to (P r ) and the UP problem. 4.1 Details of Step 1 of the SIEUG algorithm In order to obtain our upper bound, we need to construct a path P that has a corresponding partial solution y r which satisfies or is close to the structure defined in Property 4. Our procedure, labeled Heuristic A, constructs such a path P. We note that the application of Heuristic A is not restricted to unit graphs; however, in this paper we are only interested in its result on unit graphs. It is a refinement of the algorithm presented in Jotshi and Batta[15]. Heuristic A Input: A simple undirected graph G(V,E) with non-negative weights. Output: A path P covering all edges on graph G which provides an upper bound for r*. Procedure: Step 0: Initialize V, V, E, E, M, E 1, E, P, P 1, P to be empty. 16

18 Step 1: If graph G is Eulerian or has only two odd vertices, a UP path is simply a CP path. If graph G is Eulerian, use any vertex as the starting vertex and apply the End-Pairing algorithm by Edmonds and Johnson[1] to obtain a CP path. If G has only two odd vertices, add one virtual edge with a suitably large weight between the two odd vertices and then obtain a CP path by applying the End-Pairing algorithm. A UP path of G is the resulting CP path with the removal of the added virtual edge. Otherwise go to Step. Step : If graph G has more than two odd vertices, derive graph G (V,E ) from graph G(V,E) defined over set of odd vertices V V. Apply the minimum weight perfect matching algorithm on the set of odd vertices V. The minimum weight perfect matching algorithm we use is written in a function of LEDA library, which is a C++ class library providing various predefined data types and algorithms for graph and network problems. The matching algorithm gives a set of edges M in which each edge connects two odd vertices on the original graph except for two edges with negative weight which are not in the original set of edges. Let these two edges be l 1 = (n 1, o 1 ) and l 1 = (n, o ), where o 1, o are vertices on the original graph and n 1, n are virtual vertices for the algorithm. Delete edge l 1 and l from the matching set M and let the new set of edges be M. Delete o 1 and o from the set of odd vertices V and let the new set of odd vertices be V. Denote o 1 and o as the temporary starting and ending vertex of path P, respectively. Step 3: Find a Hamiltonian path connecting the vertices in V and covering the edges in M. This step is accomplished by revising Steps and 3 of the heuristic proposed by Jotshi and Batta[15]. A minimum spanning tree (MST) of vertices in V is found first by applying Kruskal s Algorithm. We enforce the usage of edges in M in the tree by assuming the length of those edges to be 0. If the MST is not a Hamiltonian path, revise the tree by replacing a non-bridge edge with another edge so that the increase in overall weight of the MST is the least until the tree becomes Hamiltonian. Let the resulting path be P 1. Denote the starting and ending vertices of P 1 as s 1 and s, respectively (the direction of the path is determined arbitrarily). Suppose P 1 contains the temporary starting or ending vertices of path P. Without loss of generality, suppose P 1 contains o 1, denote s as the marked vertex,o as the final starting vertex and s 1 as the final ending vertex. Go to Step 5. If P 1 contains the temporary starting or ending vertices of path P, then go to Step 4. 17

19 Step 4: Find the shortest path for the following four pair vertices: o 1 and s 1, o and s 1, o 1 and s, and o and s. Without loss of generality, let the length of the shortest path between o 1 and s 1 be the smallest of the four pairs. Extend the Hamiltonian path P 1 by inserting the shortest path between o 1 and s 1 in front of o 1. The new starting vertex of P 1 becomes s 1. Denote s 1 as the marked vertex, o as the final starting vertex and s as the final ending vertex. Step 5: Partition the edges on path P 1 into two sets (E 1 and E ) as follows: starting from the first edge on P 1, partition the sequence of edges between each two successive odd vertices into different sets. For example, assign the sequence of edges between the first two odd vertices to set E 1, assign the sequence of edges between the second and the third odd vertices to set E, and so on. Let E be the set {E E }, which means E contains edges in set E excluding edges in set E. Then the graph G vertices. Construct an Eulerian Path on G (V, E ) becomes a graph with only two odd using the same approach as in Step 1. Let the resulting Eulerian path be P. Note that the starting and ending vertex of P should be o and s 1, respectively. Step 6: Add path P 1 after path P and remove the marked vertex. The resulting path is the desired path P. Solved examples for Heuristic A are contained in the Appendix. Explanation of Heuristic A The structure of y r in Property 4 in Section 3 implies that the last edge traversed on the path can be far away from the last untraversed edge without a large increase in the expected search time. Therefore, instead of having the minimum Hamiltonian path connecting all the odd vertices at the end of the path as described in Jotshi and Batta s heuristic[15], one odd vertex can be taken out of consideration. Hence we only need to construct a shortest Hamiltonian path connecting all other odd vertices. We select this odd vertex by taking either the starting or ending vertex of the CPP tour on the same graph obtained from the minimum weight perfect matching algorithm. From the graph theory point of view, the starting vertex of path P does not have to be close to the other odd vertices because the 18

20 partial path connecting this vertex and the Hamiltonian ending vertex is Eulerian due to our Heuristic and placed at the beginning of P. It is desirable that this path is long, meaning that we want to cover as much of the network without repeating edges. Another idea is that we utilize the edges in the minimum weight perfect matching set to construct the Hamiltonian path connecting all but one odd vertex. The reason is that we want to have a scenario in which the minimum weight perfect matching set minimizes the total repeated length. This enforcement is valid when the resulting Hamiltonian path does not include the temporary starting and ending vertices in Step of Heuristic A. Since a CP path does not necessarily lead to an UP path, as explained in Section 3, this approach may not always find a better solution than Jotshi and Batta s heuristic. A computational study is therefore conducted in Section 5.1 to verify the effectiveness of the approach. Heuristic A is developed to provide a solution with a structure of y r that is shown to be desirable in Section 3. We therefore use the value of the total length corresponding to the optimal path P from Heuristic A as the upper bound value of r* to continue to the second step of the SIEUG algorithm. 4. Details of Step of SIEUG Algorithm After obtaining an upper bound for r*, we proceed as follows. It is known from Lemma 1 that the lower bound of the number of 0s appearing in y r is n m, where n m is the dimension of the minimum weight perfect matching over odd vertices. Furthermore, Theorem 1 provides the optimal structure of y r given the number of zeros n 0 in y r. The construction of y r = (y 1,, y r ) is thus as follows: Iteration 1: Let n 0 =n m and y r = ( 1, 1,, 1, 0, 1,, 0, 1, 0, 0,, 0, 1), where n }{{}}{{}}{{} 1 and n are defined n 1 n (0,1)pair n 0 n in the theorem. Iteration N ( N r u n 0 n 1 1 ): Let y r = ( 1, 1,, 1, 0, 1,, 0, 1, 0, 0,, 0, 1), where n }{{}}{{}}{{} 1 and n are defined same as in n 1 n (0,1)pair n 0 n +N Iteration 0. 19

21 4.3 Details of Step 3 of SIEUG Algorithm For each iteration of the SIEUG algorithm, CPLEX is employed to solve our model which utilizing the partial solution given by y r. It is noted that the CPLEX MIP solver has an internal function of completing an optimal solution given a partial starting solution. If the partial starting solution is infeasible, CPLEX will modify it and then use the revised partial solution to solve the model. We seek a solution such that all the possible solutions which provide a smaller objective function value are infeasible in the previous iterations. This is accomplished as follows: First, at each iteration, we update the value of r* by adding 1 to its current value. By doing this, we are able to define our mathematical model. Second, we set the value of y r such that it satisfies the structure corresponding to the possible optimal solution proved in Section 3.. This partial solution gives CPLEX an opportunity to find an optimal solution for a given total length of path P. 4.4 Conditions for Optimality of SIEUG Algorithm We formalize our main result in the following theorem. Theorem. If µ r r u, then the SIEUG algorithm finds an optimal solution to (P r ). Proof. Since the SIEUG algorithm stops at the iteration in which the first feasible solution is found, given the partial solution in Step, Theorem is essentially the same as the following statement: the first feasible solution found by the SIEUG algorithm is an optimal solution to (P r ). We prove this statement by examining the number of iterations required to find a feasible solution. We first prove that the statement is true if the number of iterations required to find a feasible solution is 1. It is known from Section 4. that in Iteration 1, n 0 =n m (n m is the dimension of minimum weight perfect matching over odd vertices) and the partial solution we set is y r = ( 1, 1,, 1, 0, 1,, 0, 1, 0, 0,, 0, 1), where n }{{}}{{}}{{} 1 = m nodd and n = n odd 4. n 1 n (0,1)pair n 0 n If a feasible solution is found in Iteration 1, there are two possible cases. Case 1: A feasible solution is obtained given the above y r. If so, then the solution obtained is an optimal solution to (P r ) by Theorem 1. Case : A feasible solution is obtained by repairing the given starting partial solution at Iteration 1. This implies that the objective function value corresponding to the feasible solution found is at least m greater that the objective function value corresponding to y r 0

22 we set in this iteration. Since the best objective value we can obtain in Iteration and later is also at least greater than the objective function value corresponding to y m r (See Property 4 in Section 3 and Section 4.), the feasible solution obtained in Iteration 1 is optimal to (P r ) with the minimum path length. Now we prove that if the number of iterations required to find a feasible solution is N (N > 1), then the solution found is optimal to (P r ). If the first feasible solution is found in Iteration N, it indicates no feasible solution is found in Iteration 1,,, N -1. In other words, the possible optimal objective function value is at least greater than the objective m function value corresponding to y r in Iteration N -1. It is easy to conclude from Section 4. that the difference between the objective value corresponding to y r in Iteration N and N -1 is. Therefore the approach of constructing y m r in Iteration N -1 guarantees all possible solutions which have a smaller objective value than this partial solution are infeasible to (P r ) in the previous iterations. On the other hand, by the same reasoning as for N =1, we know that no better solution can be found in iterations after N (N > 1). Therefore the feasibility of the solution at iteration N is also optimal to (P r ). Theorem provides a condition for optimality of the SIEUG algorithm to (P r ). But the question remains if the value of r u we find from Heuristic A is a valid upper bound to the length of an optimal UP path. Theorem 3 answers this question. Theorem 3. If the path P obtained by the SIEUG algorithm satisfies Property 4, then path P is an optimal UP path. Proof. If the path P obtained by the SIEUG algorithm has a partial solution y r = (1, 1,, 1 }{{} n 1, 0, 1,, 0, 1, 0, 0,, 0, 1), where n }{{}}{{} 1 = m nodd and n = n odd 4, and n 0 = r m, then n (0,1)pair n 0 n by Property 4, no path with a longer length yields a smaller objective function value. It indicates that the r u value found from Heuristic A is a valid upper bound. On the other hand, from Theorem, we know the path P obtained by the SIEUG algorithm is optimal to (P r ), where µ r r u. The theorem follows. As discussed in Section 4.1, the path P we construct by Heuristic A has a corresponding partial solution y r which satisfies or is close to the structure defined in Property 4. However, we cannot guarantee that path P obtained by the SIEUG algorithm necessarily satisfies Property 4. We explore this computationally in Section 5.. 1

23 5 Computational Results There are three aspects to our computational study. In Section 5.1, we focus on comparing Heuristic A to the heuristic presented in the Jotshi and Batta paper. In Section 5., we focus on determining the frequency with which the path P obtained by the SIEUG algorithm satisfies Property 4. In Section 5.3, we explore the computational limits of the SIEUG algorithm. Conclusions from our computational study are summarized in Section Comparison of Heuristic A with Jotshi and Batta s Heuristic We compared our Heuristic A with Jotshi and Batta s heuristic (Heuristic B) on 150 randomly generated connected unit graphs. We define graphs with edges less than 50 to be small graphs, those with between 50 and 100 edges to be medium graphs, and those with greater than 100 edges to be large graphs. Furthermore, we restrict the number of edges on a graph to be no larger than 300 for the computational study due to the limitation of the commercial software CPLEX we used. All the test runs were done on a computer with a T8300@.4GHZ CPU and GB of RAM. The following 4 possible outcomes exist when we compare the two heuristics: Case 1. Heuristic A provides a reduced or equal expected search time with larger or equal total path length. Case. Heuristic A provides a reduced or equal expected search time with less total path length. Case 3. Heuristic A provides an increased expected search time with larger or equal path length. Case 4. Heuristic A provides an increased expected search time with less total path length. Figure presents the number for each case among the 150 graphs. As we can see from the histogram, Heuristic A provides a better solution on 117 out of the 150 runs - obtained by summing up Cases 1 and. On the other hand, we observe that Heuristic A provides a longer optimal path for 143 among the total 150 graphs - obtained by summing up Cases 1 and 3. An explanation for this is as follows: In Heuristic A, we enforce that a Hamiltonian path covers the minimum weight perfect matching edges at the end of path P; this is a stronger requirement than a Hamiltonian path covering all odd vertices applied in Heuristic B and hence results in a longer path.

24 Figure : Heuristic A vs. Heuristic B We now focus on a comparison of Heuristics A and B as a function of the size of the graph. Table 1 summarizes the performance comparison on the 150 graphs, for different size of graphs. In Table 1, E1, L1 and T 1 represent the expected search time, total length of the path found and the run time from Heuristic A, respectively. E, L and T are the corresponding values from Heuristic B. We observe that the difference in objective function value realized by the two heuristics is very small. Also, the number of edges utilized by the two heuristics are very similar. On the other hand, the run time difference between Heuristic A and Heuristic B reduces when the graph size increases. For small graphs, the average run time of Heuristic A is 0.7 second; for the largest graph we tested (which has 95 edges), the run time of Heuristic A is seconds. Both heuristics A and B turns out to be efficient even for large-sized graph. Table 1: Average Comparisons of Solutions and Total Path Length of the Two Heuristics Graph Size (E-E1)/E(%) (L1 -L)/L(%) (T 1-T )/T (%) Small (1-50) Median(50-100) Large( ) How Often does the SIEUG Algorithm Deliver an Optimal Solution? Here we investigate the frequency with which the SIEUG algorithm delivers an optimal solution for 0 small and 40 medium graphs. There are two cases here. If the solution by the SIEUG algorithm satisfies Property 4, then we can conclude its optimality by Theorem 3. Otherwise if the optimality gap of the final solution is 0% in CPLEX in any iteration of 3

25 the algorithm, the solution is automatically proved to be optimal by exclusively exploring the branching tree with a branch and cut algorithm implemented in CPLEX. We run the SIEUG algorithm integrated with CPLEX 11. on the same platform as described in Section 5.1. The run time limit in the CPLEX MIP solver is set to be 1800 seconds. Table shows the results for the SIEUG algorithm on the 60 graphs. Several observations regarding the performance of the SIEUG algorithm can be made. First, when the number of odd nodes equals to 0 or, which means an Eulerian path exists on the graph, the optimal solution gap is 0 and the solution from Heuristic A is optimal. This essentially validates our model by showing that a Chinese Postman path is a Utilitarian path when the graph is Eulerian with only two odd vertices. Second, for graphs with less than 0 edges (small graphs), the SIEUG algorithm can find an optimal solution within 30 minutes 81.5% of the time. Third, when the number of edges on the graph is between 0 and 85, the SIEUG algorithm can find a feasible solution within 30 minutes. Note that this frequency depends not only on the algorithm but also the structure of the graph itself. We select graphs such that the odd nodes are centralized; therefore it is possible to realize a path which has the structure in Property 4. We also restrict the number of odd nodes on the graph to be no more than 4. This is due to the computational limits of the SIEUG algorithm, which will be discussed in the next section. We note that the solution from the SIEUG algorithm can be proved to be optimal using Property 4 for 11 out of the 40 graphs. For problems solved in our computational study, 7.5% of the time the SIEUG algorithm provides an optimal solution for medium graphs. Table : Frequency with which the SIEUG Algorithm Delivers an Optimal Solution Number of Edges Percentage with 0% Percentage that Satisfy Percentage with Proven Optimality Gap Property 4(but not 0% gap) Optimality Next we examine the mean gap for the case where the optimality of the solution from SIUEG cannot be proved, for graphs with number of edges between 0 and 85. Figure 3 shows the relationship between the number of edges and the percentage gap of the feasible solution obtained from SIEUG. It can be seen that the percentage gap reduces when the number of edges increases. That is because it becomes harder to obtain a feasible solution and once it is found it is close to the lower bound provided by a linear relaxation. The mean gap of the feasible solution is 4.9% while the smallest gap and largest gap are 1.07% and 14.97%, respectively. 4

26 Figure 3: Number of Edges vs. % Gap 5.3 Computational Limits of the SIEUG Algorithm Here we ran the SIEUG algorithm to explore its computational limits. The optimality gap in the CPLEX MIP solver is set to be 0.05 and the time limit to be 1800 seconds. Figures 4 and 5 summarizes the run time of SIEUG algorithm on the 60 graphs. The run time is positively affected both by the number of edges on the graph and the number of odd degree vertices. The first factor increases the size of the model in terms of the number of variables and constraints, while the second factor increases the difficulty of finding an optimal solution from the initial given partial solution of y r. From our computational study, when the number of edges on the graph is greater than 85 or the number of odd vertices is beyond 4, CPLEX is not able to provide a feasible solution within 5% gap after 30 minutes. Figure 4: Number of Edges vs. Run Time 5

V1.0: Seth Gilbert, V1.1: Steven Halim August 30, Abstract. d(e), and we assume that the distance function is non-negative (i.e., d(x, y) 0).

V1.0: Seth Gilbert, V1.1: Steven Halim August 30, Abstract. d(e), and we assume that the distance function is non-negative (i.e., d(x, y) 0). CS4234: Optimisation Algorithms Lecture 4 TRAVELLING-SALESMAN-PROBLEM (4 variants) V1.0: Seth Gilbert, V1.1: Steven Halim August 30, 2016 Abstract The goal of the TRAVELLING-SALESMAN-PROBLEM is to find

More information

Theorem 2.9: nearest addition algorithm

Theorem 2.9: nearest addition algorithm There are severe limits on our ability to compute near-optimal tours It is NP-complete to decide whether a given undirected =(,)has a Hamiltonian cycle An approximation algorithm for the TSP can be used

More information

Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret

Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret Advanced Algorithms Class Notes for Monday, October 23, 2012 Min Ye, Mingfu Shao, and Bernard Moret Greedy Algorithms (continued) The best known application where the greedy algorithm is optimal is surely

More information

6 Randomized rounding of semidefinite programs

6 Randomized rounding of semidefinite programs 6 Randomized rounding of semidefinite programs We now turn to a new tool which gives substantially improved performance guarantees for some problems We now show how nonlinear programming relaxations can

More information

Chapter 3: Paths and Cycles

Chapter 3: Paths and Cycles Chapter 3: Paths and Cycles 5 Connectivity 1. Definitions: Walk: finite sequence of edges in which any two consecutive edges are adjacent or identical. (Initial vertex, Final vertex, length) Trail: walk

More information

Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 7

Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 7 CS 70 Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 7 An Introduction to Graphs A few centuries ago, residents of the city of Königsberg, Prussia were interested in a certain problem.

More information

CPS 102: Discrete Mathematics. Quiz 3 Date: Wednesday November 30, Instructor: Bruce Maggs NAME: Prob # Score. Total 60

CPS 102: Discrete Mathematics. Quiz 3 Date: Wednesday November 30, Instructor: Bruce Maggs NAME: Prob # Score. Total 60 CPS 102: Discrete Mathematics Instructor: Bruce Maggs Quiz 3 Date: Wednesday November 30, 2011 NAME: Prob # Score Max Score 1 10 2 10 3 10 4 10 5 10 6 10 Total 60 1 Problem 1 [10 points] Find a minimum-cost

More information

II (Sorting and) Order Statistics

II (Sorting and) Order Statistics II (Sorting and) Order Statistics Heapsort Quicksort Sorting in Linear Time Medians and Order Statistics 8 Sorting in Linear Time The sorting algorithms introduced thus far are comparison sorts Any comparison

More information

In this lecture, we ll look at applications of duality to three problems:

In this lecture, we ll look at applications of duality to three problems: Lecture 7 Duality Applications (Part II) In this lecture, we ll look at applications of duality to three problems: 1. Finding maximum spanning trees (MST). We know that Kruskal s algorithm finds this,

More information

Discrete Mathematics and Probability Theory Fall 2009 Satish Rao,David Tse Note 8

Discrete Mathematics and Probability Theory Fall 2009 Satish Rao,David Tse Note 8 CS 70 Discrete Mathematics and Probability Theory Fall 2009 Satish Rao,David Tse Note 8 An Introduction to Graphs Formulating a simple, precise specification of a computational problem is often a prerequisite

More information

Module 7. Independent sets, coverings. and matchings. Contents

Module 7. Independent sets, coverings. and matchings. Contents Module 7 Independent sets, coverings Contents and matchings 7.1 Introduction.......................... 152 7.2 Independent sets and coverings: basic equations..... 152 7.3 Matchings in bipartite graphs................

More information

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs Graphs and Network Flows IE411 Lecture 21 Dr. Ted Ralphs IE411 Lecture 21 1 Combinatorial Optimization and Network Flows In general, most combinatorial optimization and integer programming problems are

More information

Adjacent: Two distinct vertices u, v are adjacent if there is an edge with ends u, v. In this case we let uv denote such an edge.

Adjacent: Two distinct vertices u, v are adjacent if there is an edge with ends u, v. In this case we let uv denote such an edge. 1 Graph Basics What is a graph? Graph: a graph G consists of a set of vertices, denoted V (G), a set of edges, denoted E(G), and a relation called incidence so that each edge is incident with either one

More information

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points MC 0 GRAPH THEORY 0// Solutions to HW # 0 points + XC points ) [CH] p.,..7. This problem introduces an important class of graphs called the hypercubes or k-cubes, Q, Q, Q, etc. I suggest that before you

More information

Fundamental Properties of Graphs

Fundamental Properties of Graphs Chapter three In many real-life situations we need to know how robust a graph that represents a certain network is, how edges or vertices can be removed without completely destroying the overall connectivity,

More information

Definition: A graph G = (V, E) is called a tree if G is connected and acyclic. The following theorem captures many important facts about trees.

Definition: A graph G = (V, E) is called a tree if G is connected and acyclic. The following theorem captures many important facts about trees. Tree 1. Trees and their Properties. Spanning trees 3. Minimum Spanning Trees 4. Applications of Minimum Spanning Trees 5. Minimum Spanning Tree Algorithms 1.1 Properties of Trees: Definition: A graph G

More information

val(y, I) α (9.0.2) α (9.0.3)

val(y, I) α (9.0.2) α (9.0.3) CS787: Advanced Algorithms Lecture 9: Approximation Algorithms In this lecture we will discuss some NP-complete optimization problems and give algorithms for solving them that produce a nearly optimal,

More information

Detecting a Stationary Target. on an Undirected Network

Detecting a Stationary Target. on an Undirected Network i Detecting a Stationary Target on an Undirected Network Anusman Panda 109CS0084 Manjeet Singh Harsh 109CS0593 Department of Computer Science and Engineering National Institute of Technology Rourkela-769

More information

Theory of Computing. Lecture 10 MAS 714 Hartmut Klauck

Theory of Computing. Lecture 10 MAS 714 Hartmut Klauck Theory of Computing Lecture 10 MAS 714 Hartmut Klauck Seven Bridges of Königsberg Can one take a walk that crosses each bridge exactly once? Seven Bridges of Königsberg Model as a graph Is there a path

More information

Matching Theory. Figure 1: Is this graph bipartite?

Matching Theory. Figure 1: Is this graph bipartite? Matching Theory 1 Introduction A matching M of a graph is a subset of E such that no two edges in M share a vertex; edges which have this property are called independent edges. A matching M is said to

More information

12.1 Formulation of General Perfect Matching

12.1 Formulation of General Perfect Matching CSC5160: Combinatorial Optimization and Approximation Algorithms Topic: Perfect Matching Polytope Date: 22/02/2008 Lecturer: Lap Chi Lau Scribe: Yuk Hei Chan, Ling Ding and Xiaobing Wu In this lecture,

More information

Lecture 5: Graphs. Rajat Mittal. IIT Kanpur

Lecture 5: Graphs. Rajat Mittal. IIT Kanpur Lecture : Graphs Rajat Mittal IIT Kanpur Combinatorial graphs provide a natural way to model connections between different objects. They are very useful in depicting communication networks, social networks

More information

Notes 4 : Approximating Maximum Parsimony

Notes 4 : Approximating Maximum Parsimony Notes 4 : Approximating Maximum Parsimony MATH 833 - Fall 2012 Lecturer: Sebastien Roch References: [SS03, Chapters 2, 5], [DPV06, Chapters 5, 9] 1 Coping with NP-completeness Local search heuristics.

More information

Dynamically Random Graphs

Dynamically Random Graphs Dynamically Random Graphs Alexis Byers, Wittenberg University Mallory Reed, Earlham College Laura Rucci, Cabrini College Elle VanTilburg, University of Texas-Austin SUMSRI 203 Miami University July 8,

More information

4 Fractional Dimension of Posets from Trees

4 Fractional Dimension of Posets from Trees 57 4 Fractional Dimension of Posets from Trees In this last chapter, we switch gears a little bit, and fractionalize the dimension of posets We start with a few simple definitions to develop the language

More information

Maximal Monochromatic Geodesics in an Antipodal Coloring of Hypercube

Maximal Monochromatic Geodesics in an Antipodal Coloring of Hypercube Maximal Monochromatic Geodesics in an Antipodal Coloring of Hypercube Kavish Gandhi April 4, 2015 Abstract A geodesic in the hypercube is the shortest possible path between two vertices. Leader and Long

More information

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3)

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3) COMPSCI 632: Approximation Algorithms September 18, 2017 Lecturer: Debmalya Panigrahi Lecture 7 Scribe: Xiang Wang 1 Overview In this lecture, we will use Primal-Dual method to design approximation algorithms

More information

8.2 Paths and Cycles

8.2 Paths and Cycles 8.2 Paths and Cycles Degree a b c d e f Definition The degree of a vertex is the number of edges incident to it. A loop contributes 2 to the degree of the vertex. (G) is the maximum degree of G. δ(g) is

More information

Institute of Operating Systems and Computer Networks Algorithms Group. Network Algorithms. Tutorial 4: Matching and other stuff

Institute of Operating Systems and Computer Networks Algorithms Group. Network Algorithms. Tutorial 4: Matching and other stuff Institute of Operating Systems and Computer Networks Algorithms Group Network Algorithms Tutorial 4: Matching and other stuff Christian Rieck Matching 2 Matching A matching M in a graph is a set of pairwise

More information

Problem Set 1. Solution. CS4234: Optimization Algorithms. Solution Sketches

Problem Set 1. Solution. CS4234: Optimization Algorithms. Solution Sketches CS4234: Optimization Algorithms Sketches Problem Set 1 S-1. You are given a graph G = (V, E) with n nodes and m edges. (Perhaps the graph represents a telephone network.) Each edge is colored either blue

More information

COMP260 Spring 2014 Notes: February 4th

COMP260 Spring 2014 Notes: February 4th COMP260 Spring 2014 Notes: February 4th Andrew Winslow In these notes, all graphs are undirected. We consider matching, covering, and packing in bipartite graphs, general graphs, and hypergraphs. We also

More information

Figure 2.1: A bipartite graph.

Figure 2.1: A bipartite graph. Matching problems The dance-class problem. A group of boys and girls, with just as many boys as girls, want to dance together; hence, they have to be matched in couples. Each boy prefers to dance with

More information

Definition For vertices u, v V (G), the distance from u to v, denoted d(u, v), in G is the length of a shortest u, v-path. 1

Definition For vertices u, v V (G), the distance from u to v, denoted d(u, v), in G is the length of a shortest u, v-path. 1 Graph fundamentals Bipartite graph characterization Lemma. If a graph contains an odd closed walk, then it contains an odd cycle. Proof strategy: Consider a shortest closed odd walk W. If W is not a cycle,

More information

(Refer Slide Time: 01:00)

(Refer Slide Time: 01:00) Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture minus 26 Heuristics for TSP In this lecture, we continue our discussion

More information

Solution for Homework set 3

Solution for Homework set 3 TTIC 300 and CMSC 37000 Algorithms Winter 07 Solution for Homework set 3 Question (0 points) We are given a directed graph G = (V, E), with two special vertices s and t, and non-negative integral capacities

More information

Assignment 4 Solutions of graph problems

Assignment 4 Solutions of graph problems Assignment 4 Solutions of graph problems 1. Let us assume that G is not a cycle. Consider the maximal path in the graph. Let the end points of the path be denoted as v 1, v k respectively. If either of

More information

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition. 18.433 Combinatorial Optimization Matching Algorithms September 9,14,16 Lecturer: Santosh Vempala Given a graph G = (V, E), a matching M is a set of edges with the property that no two of the edges have

More information

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs CMPUT 675: Topics in Algorithms and Combinatorial Optimization (Fall 009) Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching Lecturer: Mohammad R. Salavatipour Date: Sept 15 and 17, 009

More information

3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times 3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

More information

Winning Positions in Simplicial Nim

Winning Positions in Simplicial Nim Winning Positions in Simplicial Nim David Horrocks Department of Mathematics and Statistics University of Prince Edward Island Charlottetown, Prince Edward Island, Canada, C1A 4P3 dhorrocks@upei.ca Submitted:

More information

Discrete Mathematics for CS Spring 2008 David Wagner Note 13. An Introduction to Graphs

Discrete Mathematics for CS Spring 2008 David Wagner Note 13. An Introduction to Graphs CS 70 Discrete Mathematics for CS Spring 2008 David Wagner Note 13 An Introduction to Graphs Formulating a simple, precise specification of a computational problem is often a prerequisite to writing a

More information

1 Variations of the Traveling Salesman Problem

1 Variations of the Traveling Salesman Problem Stanford University CS26: Optimization Handout 3 Luca Trevisan January, 20 Lecture 3 In which we prove the equivalence of three versions of the Traveling Salesman Problem, we provide a 2-approximate algorithm,

More information

1 The Traveling Salesperson Problem (TSP)

1 The Traveling Salesperson Problem (TSP) CS 598CSC: Approximation Algorithms Lecture date: January 23, 2009 Instructor: Chandra Chekuri Scribe: Sungjin Im In the previous lecture, we had a quick overview of several basic aspects of approximation

More information

Basic Combinatorics. Math 40210, Section 01 Fall Homework 4 Solutions

Basic Combinatorics. Math 40210, Section 01 Fall Homework 4 Solutions Basic Combinatorics Math 40210, Section 01 Fall 2012 Homework 4 Solutions 1.4.2 2: One possible implementation: Start with abcgfjiea From edge cd build, using previously unmarked edges: cdhlponminjkghc

More information

FUTURE communication networks are expected to support

FUTURE communication networks are expected to support 1146 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL 13, NO 5, OCTOBER 2005 A Scalable Approach to the Partition of QoS Requirements in Unicast and Multicast Ariel Orda, Senior Member, IEEE, and Alexander Sprintson,

More information

CS261: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem

CS261: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem CS61: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem Tim Roughgarden February 5, 016 1 The Traveling Salesman Problem (TSP) In this lecture we study a famous computational problem,

More information

Component Connectivity of Generalized Petersen Graphs

Component Connectivity of Generalized Petersen Graphs March 11, 01 International Journal of Computer Mathematics FeHa0 11 01 To appear in the International Journal of Computer Mathematics Vol. 00, No. 00, Month 01X, 1 1 Component Connectivity of Generalized

More information

Number Theory and Graph Theory

Number Theory and Graph Theory 1 Number Theory and Graph Theory Chapter 7 Graph properties By A. Satyanarayana Reddy Department of Mathematics Shiv Nadar University Uttar Pradesh, India E-mail: satya8118@gmail.com 2 Module-2: Eulerian

More information

Line Graphs and Circulants

Line Graphs and Circulants Line Graphs and Circulants Jason Brown and Richard Hoshino Department of Mathematics and Statistics Dalhousie University Halifax, Nova Scotia, Canada B3H 3J5 Abstract The line graph of G, denoted L(G),

More information

11.1 Facility Location

11.1 Facility Location CS787: Advanced Algorithms Scribe: Amanda Burton, Leah Kluegel Lecturer: Shuchi Chawla Topic: Facility Location ctd., Linear Programming Date: October 8, 2007 Today we conclude the discussion of local

More information

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I Instructor: Shaddin Dughmi Announcements Posted solutions to HW1 Today: Combinatorial problems

More information

TWO CONTRIBUTIONS OF EULER

TWO CONTRIBUTIONS OF EULER TWO CONTRIBUTIONS OF EULER SIEMION FAJTLOWICZ. MATH 4315 Eulerian Tours. Although some mathematical problems which now can be thought of as graph-theoretical, go back to the times of Euclid, the invention

More information

6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS. Vehicle Routing Problem, VRP:

6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS. Vehicle Routing Problem, VRP: 6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS Vehicle Routing Problem, VRP: Customers i=1,...,n with demands of a product must be served using a fleet of vehicles for the deliveries. The vehicles, with given

More information

The Encoding Complexity of Network Coding

The Encoding Complexity of Network Coding The Encoding Complexity of Network Coding Michael Langberg Alexander Sprintson Jehoshua Bruck California Institute of Technology Email: mikel,spalex,bruck @caltech.edu Abstract In the multicast network

More information

11.2 Eulerian Trails

11.2 Eulerian Trails 11.2 Eulerian Trails K.. onigsberg, 1736 Graph Representation A B C D Do You Remember... Definition A u v trail is a u v walk where no edge is repeated. Do You Remember... Definition A u v trail is a u

More information

2 The Fractional Chromatic Gap

2 The Fractional Chromatic Gap C 1 11 2 The Fractional Chromatic Gap As previously noted, for any finite graph. This result follows from the strong duality of linear programs. Since there is no such duality result for infinite linear

More information

Clustering Using Graph Connectivity

Clustering Using Graph Connectivity Clustering Using Graph Connectivity Patrick Williams June 3, 010 1 Introduction It is often desirable to group elements of a set into disjoint subsets, based on the similarity between the elements in the

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can

More information

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch. Iterative Improvement Algorithm design technique for solving optimization problems Start with a feasible solution Repeat the following step until no improvement can be found: change the current feasible

More information

Lecture 3: Graphs and flows

Lecture 3: Graphs and flows Chapter 3 Lecture 3: Graphs and flows Graphs: a useful combinatorial structure. Definitions: graph, directed and undirected graph, edge as ordered pair, path, cycle, connected graph, strongly connected

More information

On Rainbow Cycles in Edge Colored Complete Graphs. S. Akbari, O. Etesami, H. Mahini, M. Mahmoody. Abstract

On Rainbow Cycles in Edge Colored Complete Graphs. S. Akbari, O. Etesami, H. Mahini, M. Mahmoody. Abstract On Rainbow Cycles in Edge Colored Complete Graphs S. Akbari, O. Etesami, H. Mahini, M. Mahmoody Abstract In this paper we consider optimal edge colored complete graphs. We show that in any optimal edge

More information

Column Generation Method for an Agent Scheduling Problem

Column Generation Method for an Agent Scheduling Problem Column Generation Method for an Agent Scheduling Problem Balázs Dezső Alpár Jüttner Péter Kovács Dept. of Algorithms and Their Applications, and Dept. of Operations Research Eötvös Loránd University, Budapest,

More information

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings On the Relationships between Zero Forcing Numbers and Certain Graph Coverings Fatemeh Alinaghipour Taklimi, Shaun Fallat 1,, Karen Meagher 2 Department of Mathematics and Statistics, University of Regina,

More information

Notes for Recitation 9

Notes for Recitation 9 6.042/18.062J Mathematics for Computer Science October 8, 2010 Tom Leighton and Marten van Dijk Notes for Recitation 9 1 Traveling Salesperson Problem Now we re going to talk about a famous optimization

More information

6. Lecture notes on matroid intersection

6. Lecture notes on matroid intersection Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans May 2, 2017 6. Lecture notes on matroid intersection One nice feature about matroids is that a simple greedy algorithm

More information

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE Professor Kindred Math 104, Graph Theory Homework 2 Solutions February 7, 2013 Introduction to Graph Theory, West Section 1.2: 26, 38, 42 Section 1.3: 14, 18 Section 2.1: 26, 29, 30 DO NOT RE-DISTRIBUTE

More information

Graph Theory. 1 Introduction to Graphs. Martin Stynes Department of Mathematics, UCC January 26, 2011

Graph Theory. 1 Introduction to Graphs. Martin Stynes Department of Mathematics, UCC   January 26, 2011 Graph Theory Martin Stynes Department of Mathematics, UCC email: m.stynes@ucc.ie January 26, 2011 1 Introduction to Graphs 1 A graph G = (V, E) is a non-empty set of nodes or vertices V and a (possibly

More information

Lecture 8: The Traveling Salesman Problem

Lecture 8: The Traveling Salesman Problem Lecture 8: The Traveling Salesman Problem Let G = (V, E) be an undirected graph. A Hamiltonian cycle of G is a cycle that visits every vertex v V exactly once. Instead of Hamiltonian cycle, we sometimes

More information

Abstract. 1. Introduction

Abstract. 1. Introduction MATCHINGS IN 3-DOMINATION-CRITICAL GRAPHS: A SURVEY by Nawarat Ananchuen * Department of Mathematics Silpaorn University Naorn Pathom, Thailand email: nawarat@su.ac.th Abstract A subset of vertices D of

More information

5.1 Min-Max Theorem for General Matching

5.1 Min-Max Theorem for General Matching CSC5160: Combinatorial Optimization and Approximation Algorithms Topic: General Matching Date: 4/01/008 Lecturer: Lap Chi Lau Scribe: Jennifer X.M. WU In this lecture, we discuss matchings in general graph.

More information

A Reduction of Conway s Thrackle Conjecture

A Reduction of Conway s Thrackle Conjecture A Reduction of Conway s Thrackle Conjecture Wei Li, Karen Daniels, and Konstantin Rybnikov Department of Computer Science and Department of Mathematical Sciences University of Massachusetts, Lowell 01854

More information

Graph Connectivity G G G

Graph Connectivity G G G Graph Connectivity 1 Introduction We have seen that trees are minimally connected graphs, i.e., deleting any edge of the tree gives us a disconnected graph. What makes trees so susceptible to edge deletions?

More information

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1

Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanford.edu) January 11, 2018 Lecture 2 - Graph Theory Fundamentals - Reachability and Exploration 1 In this lecture

More information

Topic: Local Search: Max-Cut, Facility Location Date: 2/13/2007

Topic: Local Search: Max-Cut, Facility Location Date: 2/13/2007 CS880: Approximations Algorithms Scribe: Chi Man Liu Lecturer: Shuchi Chawla Topic: Local Search: Max-Cut, Facility Location Date: 2/3/2007 In previous lectures we saw how dynamic programming could be

More information

FOUR EDGE-INDEPENDENT SPANNING TREES 1

FOUR EDGE-INDEPENDENT SPANNING TREES 1 FOUR EDGE-INDEPENDENT SPANNING TREES 1 Alexander Hoyer and Robin Thomas School of Mathematics Georgia Institute of Technology Atlanta, Georgia 30332-0160, USA ABSTRACT We prove an ear-decomposition theorem

More information

Material handling and Transportation in Logistics. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena

Material handling and Transportation in Logistics. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Material handling and Transportation in Logistics Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Introduction to Graph Theory Graph Theory As Mathematical

More information

Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost

Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R + Goal: find a tour (Hamiltonian cycle) of minimum cost Traveling Salesman Problem (TSP) Input: undirected graph G=(V,E), c: E R

More information

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture 28 Chinese Postman Problem In this lecture we study the Chinese postman

More information

Some Upper Bounds for Signed Star Domination Number of Graphs. S. Akbari, A. Norouzi-Fard, A. Rezaei, R. Rotabi, S. Sabour.

Some Upper Bounds for Signed Star Domination Number of Graphs. S. Akbari, A. Norouzi-Fard, A. Rezaei, R. Rotabi, S. Sabour. Some Upper Bounds for Signed Star Domination Number of Graphs S. Akbari, A. Norouzi-Fard, A. Rezaei, R. Rotabi, S. Sabour Abstract Let G be a graph with the vertex set V (G) and edge set E(G). A function

More information

22 Elementary Graph Algorithms. There are two standard ways to represent a

22 Elementary Graph Algorithms. There are two standard ways to represent a VI Graph Algorithms Elementary Graph Algorithms Minimum Spanning Trees Single-Source Shortest Paths All-Pairs Shortest Paths 22 Elementary Graph Algorithms There are two standard ways to represent a graph

More information

Elements of Graph Theory

Elements of Graph Theory Elements of Graph Theory Quick review of Chapters 9.1 9.5, 9.7 (studied in Mt1348/2008) = all basic concepts must be known New topics we will mostly skip shortest paths (Chapter 9.6), as that was covered

More information

Matching and Factor-Critical Property in 3-Dominating-Critical Graphs

Matching and Factor-Critical Property in 3-Dominating-Critical Graphs Matching and Factor-Critical Property in 3-Dominating-Critical Graphs Tao Wang a,, Qinglin Yu a,b a Center for Combinatorics, LPMC Nankai University, Tianjin, China b Department of Mathematics and Statistics

More information

3 Euler Tours, Hamilton Cycles, and Their Applications

3 Euler Tours, Hamilton Cycles, and Their Applications 3 Euler Tours, Hamilton Cycles, and Their Applications 3.1 Euler Tours and Applications 3.1.1 Euler tours Carefully review the definition of (closed) walks, trails, and paths from Section 1... Definition

More information

4 Integer Linear Programming (ILP)

4 Integer Linear Programming (ILP) TDA6/DIT37 DISCRETE OPTIMIZATION 17 PERIOD 3 WEEK III 4 Integer Linear Programg (ILP) 14 An integer linear program, ILP for short, has the same form as a linear program (LP). The only difference is that

More information

Abstract. A graph G is perfect if for every induced subgraph H of G, the chromatic number of H is equal to the size of the largest clique of H.

Abstract. A graph G is perfect if for every induced subgraph H of G, the chromatic number of H is equal to the size of the largest clique of H. Abstract We discuss a class of graphs called perfect graphs. After defining them and getting intuition with a few simple examples (and one less simple example), we present a proof of the Weak Perfect Graph

More information

Mathematical and Algorithmic Foundations Linear Programming and Matchings

Mathematical and Algorithmic Foundations Linear Programming and Matchings Adavnced Algorithms Lectures Mathematical and Algorithmic Foundations Linear Programming and Matchings Paul G. Spirakis Department of Computer Science University of Patras and Liverpool Paul G. Spirakis

More information

CS270 Combinatorial Algorithms & Data Structures Spring Lecture 19:

CS270 Combinatorial Algorithms & Data Structures Spring Lecture 19: CS270 Combinatorial Algorithms & Data Structures Spring 2003 Lecture 19: 4.1.03 Lecturer: Satish Rao Scribes: Kevin Lacker and Bill Kramer Disclaimer: These notes have not been subjected to the usual scrutiny

More information

Pebbling on Directed Graphs

Pebbling on Directed Graphs Pebbling on Directed Graphs Gayatri Gunda E-mail: gundagay@notes.udayton.edu Dr. Aparna Higgins E-mail: Aparna.Higgins@notes.udayton.edu University of Dayton Dayton, OH 45469 Submitted January 25 th, 2004

More information

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 9.1 Linear Programming Suppose we are trying to approximate a minimization

More information

Vertex Colorings without Rainbow or Monochromatic Subgraphs. 1 Introduction

Vertex Colorings without Rainbow or Monochromatic Subgraphs. 1 Introduction Vertex Colorings without Rainbow or Monochromatic Subgraphs Wayne Goddard and Honghai Xu Dept of Mathematical Sciences, Clemson University Clemson SC 29634 {goddard,honghax}@clemson.edu Abstract. This

More information

Distributed minimum spanning tree problem

Distributed minimum spanning tree problem Distributed minimum spanning tree problem Juho-Kustaa Kangas 24th November 2012 Abstract Given a connected weighted undirected graph, the minimum spanning tree problem asks for a spanning subtree with

More information

Trees. 3. (Minimally Connected) G is connected and deleting any of its edges gives rise to a disconnected graph.

Trees. 3. (Minimally Connected) G is connected and deleting any of its edges gives rise to a disconnected graph. Trees 1 Introduction Trees are very special kind of (undirected) graphs. Formally speaking, a tree is a connected graph that is acyclic. 1 This definition has some drawbacks: given a graph it is not trivial

More information

looking ahead to see the optimum

looking ahead to see the optimum ! Make choice based on immediate rewards rather than looking ahead to see the optimum! In many cases this is effective as the look ahead variation can require exponential time as the number of possible

More information

Interleaving Schemes on Circulant Graphs with Two Offsets

Interleaving Schemes on Circulant Graphs with Two Offsets Interleaving Schemes on Circulant raphs with Two Offsets Aleksandrs Slivkins Department of Computer Science Cornell University Ithaca, NY 14853 slivkins@cs.cornell.edu Jehoshua Bruck Department of Electrical

More information

Part II. Graph Theory. Year

Part II. Graph Theory. Year Part II Year 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2017 53 Paper 3, Section II 15H Define the Ramsey numbers R(s, t) for integers s, t 2. Show that R(s, t) exists for all s,

More information

2 The Mixed Postman Problem with Restrictions on the Arcs

2 The Mixed Postman Problem with Restrictions on the Arcs Approximation Algorithms for the Mixed Postman Problem with Restrictions on the Arcs Francisco Javier Zaragoza Martínez Departamento de Sistemas, Universidad Autónoma Metropolitana Unidad Azcapotzalco

More information

Maximum number of edges in claw-free graphs whose maximum degree and matching number are bounded

Maximum number of edges in claw-free graphs whose maximum degree and matching number are bounded Maximum number of edges in claw-free graphs whose maximum degree and matching number are bounded Cemil Dibek Tınaz Ekim Pinar Heggernes Abstract We determine the maximum number of edges that a claw-free

More information

Chomp the Graph. Research. treet. road. Sam Magura, Vitchyr Pong, Elliot Cartee, Kevin Valakuzhy. Scientific

Chomp the Graph. Research. treet. road. Sam Magura, Vitchyr Pong, Elliot Cartee, Kevin Valakuzhy. Scientific Chomp the Graph am Magura, Vitchyr Pong, Elliot Cartee, Kevin Valakuzhy Introduction Chomp the Graph is a two player game played on a finite graph G=(V,E) On a player s turn, they remove part of the graph,

More information

An Algorithmic Approach to Graph Theory Neetu Rawat

An Algorithmic Approach to Graph Theory Neetu Rawat An Algorithmic Approach to Graph Theory Neetu Rawat nrwt12345@gmail.com, Assistant Professor, Chameli Devi Group of Institutions, Indore. India. Abstract This paper compares two different minimum spanning

More information

Discrete mathematics , Fall Instructor: prof. János Pach

Discrete mathematics , Fall Instructor: prof. János Pach Discrete mathematics 2016-2017, Fall Instructor: prof. János Pach - covered material - Lecture 1. Counting problems To read: [Lov]: 1.2. Sets, 1.3. Number of subsets, 1.5. Sequences, 1.6. Permutations,

More information