The maximum-impact coloring polytope

Size: px
Start display at page:

Download "The maximum-impact coloring polytope"

Transcription

1 Intl. Trans. in Op. Res. 24 (2017) DOI: /itor INTERNATIONAL TRANSACTIONS IN OPERATIONAL RESEARCH The maximum-impact coloring polytope Mónica Braga a, Diego Delle Donne a, Rodrigo Linfati b and Javier Marenco a a Sciences Institute, National University of General Sarmiento, Buenos Aires, Argentina b Department of Industrial Engineering, Universidad del Bío-Bío, Concepción, Chile mbraga@ungs.edu.ar [Braga]; ddelledo@ungs.edu.ar [Delle Donne]; rlinfati@ubiobio.cl [Linfati]; jmarenco@ungs.edu.ar [Marenco] Received 20 May 2015; received in revised form 29 December 2015; accepted 2 January 2016 Abstract Given two graphs G = (V, E G ) and H = (V, E H ) over the same set of vertices and given a set of colors C, the impact on H of a coloring c : V C of G, denoted I(c), is the number of edges ij E H such that c(i) = c( j). In this setting, the maximum-impact coloring problem asks for a proper coloring of G maximizing the impact I(c) on H. This problem naturally arises in the assignment of classrooms to courses, where it is desirable but not mandatory to assign lectures from the same course to the same classroom. Since the maximum-impact coloring problem is NP-hard, we propose in this work an integer programming based approach for tackling this problem. To this end, we present an integer programming formulation and study the associated polytope. We provide several families of valid inequalities, and we study under which conditions these inequalities define facets of the associated polytope. Finally, we show computational evidence over real-life instances suggesting that some of these families may be useful in a cutting-plane environment. Keywords: coloring; integer programming; facets 1. Introduction A recurring problem in course scheduling consists of determining which classrooms are to be assigned to each lecture of each course, in such a way that overlapping lectures receive different classrooms (de Werra, 1985), where the starting and ending times of each lecture are given as part of the input. This situation is usually modeled by an undirected graph G = (V, E G ), whose vertices represent the lectures and whose edges join pairs of lectures that cannot receive the same classroom since the corresponding time intervals have nonempty intersection, and by a set C of classrooms. The graph G is usually referred to as the conflict graph among the courses. This problem corresponds to the classical graph vertex coloring problem, as any C-coloring c (i.e., an assignment c : V C such that c(i) c( j) whenever ij E G ) corresponds to a feasible assignment of classrooms to Published by John Wiley & Sons Ltd, 9600 Garsington Road, Oxford OX4 2DQ, UK and 350 Main St, Malden, MA02148, USA.

2 304 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) lectures. Note that this problem is feasible if and only if C χ(g), where the chromatic number χ(g) represents the minimum number of colors in any feasible coloring of G. In a typical setting, all the courses start and end at roughly the same weeks and every week follows the same schedule, so it suffices to assign classrooms for just the first week, and the resulting assignment is repeated all over the lecturing term. A usual requirement in practical environments needs all the lectures from the same course to be assigned to the same classroom. If the classrooms are labs, then this implies that all the equipment is installed in just one lab, thus simplifying the course logistics. On the other hand, if the classrooms are regular rooms then this additional requirement helps professors and students to remember which classroom they must use, besides providing a uniform lecturing environment throughout the week. However, this requirement is not strict, and it can be violated if not enough classrooms are available. In order to take this situation into account, we propose to study the following combinatorial optimization problem. In addition to G, we have a second graph H = (V, E H ) defined over the same set of vertices, in such a way that ij E H if and only if i and j are lectures from the same course. We assume E G E H =.Ifc isacoloringofg, we define the impact of c on H tobe I(c) = {ij E H : c(i) = c( j)}, i.e., the number of edges from H whose endpoints receive the same color. Given two graphs G = (V, E G ) and H = (V, E H ) with E G E H = and a set C of colors, the maximum-impact coloring roblem (MICP) consists of finding a C-coloring of G maximizing the impact on H. In practice, the ideal situation consists of finding a coloring c with I(c) = E H, so all the lectures from each course are assigned the same classroom. However, this situation may not be attained if the number of available classrooms is not large enough. MICP is clearly NP-hard (Garey and Johnson, 1979), since it contains the problem of determining whether χ(g) C or not as a particular problem (namely, by taking E H = ). Since MICP arises in the context of classroom allocation to lectures, it may be the case that G is an interval graph and H is the union of disjoint cliques, and the classical coloring problem restricted to interval graphs can be solved in polynomial time. However, the following result shows that in this case MICP remains NP-hard. Theorem 1. MICP remains NP-hard when G is restricted to be an interval graph and H is restricted to be the union of disjoint cliques. Proof. We reduce the precoloring extension problem (PREXT) over interval graphs to MICP over an interval graph G and a disjoint union of cliques H. GivenagraphG = (V, E G ), a color set C, and a function f : A C for some A V assigning colors to some of the vertices of G, PREXT checks whether there exists a coloring c : V C of G such that c(i) = f (i) for every i A (i.e., some of the vertices are colored beforehand, and PREXT checks for a proper coloring of all the graph maintaining the pre-assigned colors). PREXT is NP-complete, and remains NP-complete when restricted to interval graphs (Biro et al., 1992). Given an instance (G,C, f ) of PREXT such that G is an interval graph, we construct an instance (G, H,C) of MICP as follows. For every color c C, letk(c) ={i A : f (i) = c} be the set of vertices precolored with color c, and construct the graph H = (V, E H ) with E H ={ij : i, j K(c) for some c C}. In other words, we take G as the conflict graph, and H is defined to be a disjoint union of cliques, each joining all the vertices precolored by f with the same color. Clearly, MICP

3 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) over (G, H,C) has a solution with objective value E H if and only if f can be extended to a proper coloring. This implies that MICP remains NP-hard when G is restricted to be an interval graph and H is restricted to be the union of disjoint cliques. Integer programming techniques have shown to be quite successful for vertex coloring problems, resorting to several formulations for the classical vertex coloring problem. The standard model (Coll et al., 2002; Méndez-Díaz and Zabala, 2006, 2008) includes a binary variable x ic for each vertex i V and each color c C, asserting whether vertex i is assigned color c or not. This formulation may be extended with variables w c for each color c C specifying whether this color is used or not; the chromatic number of G is found by minimizing the sum of these variables. There are many other formulations for the vertex coloring problem and its variants, namely the representatives formulation (Campêlo et al., 2004, 2008), the orientation model (Borndörfer et al., 1998), and the supernodal formulation (Burke et al., 2010), among others. Column generation approaches have also been used to solve the vertex coloring problem with formulations with exponentially many variables, as used in Hansen et al. (2009), Held et al. (2011), Malaguti et al. (2011), and Mehrotra and Trick (1995). In Gualandi and Malucelli (2012), a column generation scheme is combined with a constraint programming model used to solve the pricing subproblem and to compute heuristic solutions. Also, several heuristic techniques have been proposed for graph coloring problems and/or to determining good lower bounds for χ(g) (see, e.g., Desrosiers et al., 2008). In the context of course timetabling, many real-life requirements and rules arise and particular constraints are imposed in order to obtain practical solutions. The above formulations and techniques were applied in a wide range of publications (see, e.g., Burke et al., 2012; Daskalaki at al., 2004; Lach and Lübbecke, 2012; Waterer, 1995). Additionally, some of these applications have given place to scheduling software as shown in Miranda (2010) and Mooney et al. (1996). In Phillips et al. (2013, 2015) a method based on constraint branching is developed with the aim of reducing the problem size while attempting to retain the best solutions, and it is applied to real instances. In Wasfy and Aloul (2007), the performance of SAT solvers is compared with standard integer programming techniques for a classroom assignment problem. Given a propositional formula, the Boolean Satisfiability Problem (SAT) asks whether there exists an interpretation satisfying the formula, i.e., an assignment of true or false to the variables in the formula such that the formula evaluates to true. Since integer programming techniques have shown to be quite successful for the classical vertex coloring problem and for similar scheduling and timetabling problems, we propose to tackle MICP with such techniques. In this paper, we start this issue by presenting a natural integer programming formulation for MICP and providing an initial polyhedral study of this formulation. In particular, we present several families of facet-inducing inequalities, and incorporate some of them into a branch-and-cut algorithm, showing that some of these valid inequalities may be useful in practice. We are not aware of similar approaches for this problem. The remainder of this paper is organized as follows. Section 2 presents a natural integer programming formulation for MICP, defines the polytope we are interested in, and collects straightforward facts on this polytope. Section 3 introduces some families of valid inequalities and studies conditions ensuring facetness. Finally, Section 4 reports our computational experience, and Section 5 includes concluding remarks and ideas for future work.

4 306 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) Integer programming formulation We now present a natural integer programming formulation for MICP, based on the standard model for vertex coloring. To the best of our knowledge, the first polyhedral results on this formulation appeared in Coll et al. (2002). For i V and c C, we define the value of binary assignment variable x ic to be 1 if the vertex i is assigned the color c, and 0 otherwise. For every ij E H with i < j we define the value of binary impact variable y ij to be 1 if the vertices i and j are assigned the same color, and 0 otherwise. For ij E H, i < j, we define y ji = y ij as a notational convenience. In this setting, MICP can be formulated in the following way. max ij E H :i< j y ij x ic = 1 i V (1) c C x ic + x jc 1 ij E G, c C (2) y ij 1 + x ic x jc ij E H, i < j, c C (3) y ij 1 + x jc x ic ij E H, i < j, c C (4) x ic {0, 1} i V, c C (5) y ij {0, 1} ij E H, i < j. (6) The total impact should be maximized in the objective function. Constraints (1) and (2) enforce the x-variables to define a proper vertex coloring of G, whereas constraints (3) and (4) force y ij to be 0ifi and j receive different colors (if, e.g., x jc = 1andx ic = 1forc c, then (3) forces y ij = 0). We do not impose constraints forcing y ij to take value 1 if i and j get the same color, since in the optimal solution this situation is guaranteed, and this property makes the resulting polytope much easier to study. Finally, the variables should be binary for constraints (5) and (6). Definition 1 (maximum-impact coloring polytope). Given two graphs G = (V, E G ) and H = (V, E H ) with E G E H = and a finite set C, we define P MIC (G, H,C) R V C + E H to be the convex hull of the points (x, y) R V C + E H satisfying constraints (1) (6). The following result shows that constraints (1) are a minimal equation system for this polytope when C >χ(g). We define 0 = (0,...0) to be the all-zeros vector of an appropriate dimension. For ij E H, we define e ij {0, 1} E H to be the unit vector with a nonzero coefficient in the entry corresponding to the variable y ij. Proposition 1. If C >χ(g), then the dimension of P MIC (G, H,C) is V ( C 1) + E H. Proof. Let λ R V C, μ R E H and λ 0 R be such that λx + μy = λ 0 for every (x, y) P MIC (G, H,C). Foranyvertexi V and any colors c, c C, let(x, 0) be a feasible solution such that x ic = 1 and no vertex is assigned color c (such a solution exists since C >χ(g)), and construct the feasible solution (x, 0), wherex ic = 1, x ic = 0, and the remaining entries of x coincide with x. This amounts to change the color assigned to i from c to c.sinceλx + μ0 = λx + μ0, we conclude that λ ic = λ ic.

5 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) Now, for any ij E H,let(x, 0) be a feasible solution such that i and j are assigned the same color (again, such a solution exists since C >χ(g)), and construct the feasible solution (x, e ij ). Since λx + μ0 = λx + μe ij, we conclude that μ ij = 0. This shows that (λ, μ) is a linear combination of the coefficient vectors of the constraints (1). Since constraints (1) are linearly independent, the result follows. The dimension of P MIC (G, H,C) for C =χ(g) turns out to be difficult to characterize. The same holds for the classical vertex coloring polytope on the x-variables, namely the dimension is strongly dependent on the graph structure and does not seem to be amenable to a simple characterization. In the following proposition, we collect some straightforward facts on P MIC (G, H,C). Proposition 2. Assume C >χ(g). (i) For i j E G and c C, constraint (2) induces a facet of P MIC (G, H,C) if and only if {i, j} is a maximal clique in G. (ii) Constraints (3) and (4) induce facets of the polytope P MIC (G, H,C). (iii) For i V and c C, the inequality x ic 0 induces a facet of P MIC (G, H,C), whereas the inequality x ic 1 does not induce a facet of P MIC (G, H,C) in general. (iv) For i j E H, the inequality y ij 0 induces a facet of P MIC (G, H,C), whereas the inequality y ij 1 does not induce a facet of P MIC (G, H,C) in general. 3. Facet-inducing inequalities We are interested in finding families of strong valid inequalities as a first step toward a cutting plane based implementation for solving MICP in practice. Although H may have a particular structure if coming from a course scheduling setting, in this work we do not assume any particular structure for this graph, so the results in this section hold for any pair of graphs G and H Partitioned inequalities and generalizations In this section, we explore families of facet-inducing inequalities based on (small) cliques in H and a partition of the color set C into two or more sets. We start with two simple families, and then present a general class of valid inequalities including them. Definition 2 (partitioned inequalities). Let i j E H and D C such that 1 D C 1.Wedefine y ij x id + x jd d / D d D (7) to be the partitioned inequality associated with i j and D. The validity of this inequality stems from the fact that the vertices i and j cannot get the same color (hence y ij = 0) if i is assigned a color in D and j is assigned a color in C\D. The right-hand side of (7) is null precisely in this case, implying that y ij = 0 must hold indeed. Throughout this paper, we call a coloring to be a k-coloring if it employs exactly k colors.

6 308 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) Theorem 2. The partitioned inequality (7) is valid and, if C >χ(g) + 1, is facet-inducing for P MIC (G, H,C). Proof. Let (x, y) P MIC (G, H,C) Z V C + E H be any feasible solution. If y ij = 0 then (7) is trivially satisfied, so assume y ij = 1. This implies that i and j are assigned the same color c, hence the righthand side of (7) equals 1 and, again, the inequality is satisfied. Now for facetness. Let λ R V C, μ R E H and λ 0 R be such that λx + μy = λ 0 for every (x, y) P MIC (G, H,C) satisfying (7) at equality. We will prove that (λ, μ) is a linear combination of the coefficient vector of (7) and the coefficient vectors of the model constraints (1). Claim 1: λ kc = λ kc for k V \{i, j} and c, c C.Letw = (x, e ij ) be a feasible solution with χ(g) + 1 colors such that i and j get the same color (such a solution exists as, e.g., it can be constructed from a χ(g)-coloring of G by setting color χ(g) + 1 to the vertices i and j). Note that w satisfies (7) at equality regardless of the color assigned to i and j. Furthermore, since C >χ(g) + 1, there is at least one unused color in w. Let w = ( x, e ij ) be a solution obtained from w by renaming the colors in such a way that k gets color c (i.e., x kc = 1) and no vertex is assigned color c. Finally, construct a new solution w from w by setting x kc = 1, x kc = 0, and leaving the remaining variables unchanged. Both solutions satisfy (7) at equality, implying λ kc = λ kc. Claim 2: μ kl = 0forkl E H, kl i j. Letw = (x, 0) be a feasible solution such that k and l are assigned the same color, and define w = ( x, ȳ) as follows. If i and j get different colors in w, then rename the colors in such a way that i gets a color in D and j gets a color in C\D,andsetȳ = 0. If i and j get the same color in w, thensetȳ = eij and x = x. It is straightforward to verify that w satisfies (7) at equality. Construct the solution w = ( x, ȳ + e kl ) which is feasible and satisfies (7) at equality. These two solutions show that μ kl = 0. Claim 3: μ ij = λ ic + λ id for c C\D and d D. Letw 1 = (x 1, e ij ) be a feasible solution such that x 1 ic = x 1 jc = 1 for some color c C\D.Letw2 = (x 2, 0) be a feasible solution such that x 2 id = 1 and x 2 jc = 1. These constructions are possible since C >χ(g), and both solutions satisfy (7) at equality. The fact that λx 1 + μe ij = λx 2, together with Claim 1, implies μ ij + λ ic = λ id. Claim 4: μ ij = λ jd + λ jc for c C\D and d D A symmetric argument to the one given in Claim 3 settles this case. If c C\D and d, d D, then Claim 3 asserts that μ ij = λ ic + λ id and also asserts that μ ij = λ ic + λ id, implying λ id = λ id for every d, d D. Similarly, Claim 3 implies λ ic = λ ic for every c, c C\D. On the other hand, Claim 4 implies λ jd = λ jd for every d, d D, andλ jc = λ jc for every c, c C\D. By combining these facts with the previous claims, we conclude that (λ, μ) is a linear combination of the coefficient vector of (7) and the coefficient vectors of the model constraints (1), hence (7) induces a facet of P MIC (G, H,C). The partitioned inequalities can be separated in polynomial time. Given a (possibly fractional) solution (x, y ) for the linear relaxation of P MIC (G, H,C), consider each edge ij with y ij > 0. For each such edge, construct D ={d C : x jd x id }. There exists a partitioned inequality associated with ij and violating (7) if and only if the inequality constructed by this procedure violates this solution. This yields an O( V E H ) exact separation procedure for these inequalities.

7 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) When D =1, the partitioned inequalities are equivalent to the constraints (3) and (4), so Theorem 2 implies item (ii) in Proposition 2, for C >χ(g) + 1. Definition 3 (three-partitioned inequalities). Let {i, j, k} V be a triangle in H (i.e., a set of three mutually adjacent vertices in H). Let D 1 and D 2 be two nonempty sets of colors such that D 1 D 2 = and D 1 D 2 C 1. Wedefine y ij + y jk + y ik d D1 (x jd x id ) + 2 d D2 (x kd x id ) (8) to be the three-partitioned inequality associated with the triangle {i, j, k} and the color sets D 1 and D 2. We now show that (8) is a valid inequality. We omit the facetness proof for this family since it falls along the same lines as the proof of Theorem 2. Theorem 3. The three-partitioned inequality (8) is valid and, if C >χ(g) + 1, is facet-inducing for P MIC (G, H,C). Proof of validity. Let (x, y) be any feasible solution. The inequality (8) is violated only if x id = 1for d D 1 D 2. Assume x id = 1 for some d D 1.Ifx jd = 1 for some d D 1 or x kd = 1 for some d D 2 then the inequality is trivially satisfied, so assume x jd = 0foreveryd D 1 and x kd = 0for every d D 2. In this case, either (a) the edge ik from the triangle has both endpoints with the same color, implying y ik = 1andy ij = y jk = 0, or (b) the vertices j and k get the same color (which is, therefore, different from the color assigned to i), implying y jk = 1andy ij = y jk = 0. In both cases, (8) is satisfied. A symmetrical argument shows that (8) holds if x id = 1 for some d D 2. Since the point (x, y) is an arbitrary feasible solution, we conclude that (8) is a valid inequality. The partitioned inequalities and the three-partitioned inequalities share a similar pattern that makes them amenable to a common generalization. To this end, note that the three-partitioned inequality (8) is equivalent to y ij + y jk + y ik x jd + 2 x kd d D1 d D2 + 2 d / D 1 D 2 x id. In (7) we have two adjacent vertices in H and the color set partitioned into two sets, whereas (8) involves three mutually adjacent vertices in H and a partition of the color set into three sets. These ideas can be generalized as follows. For A V, we denote by E H (A) ={ij E H : i A and j A} the set of edges in H with both endpoints in A.

8 310 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) Definition 4 (k-partitioned inequalities). Let K ={v 1,...v k } V be a (not necessarily maximal) clique in H. Consider a partition C ={C t } t=1,...k of the color set C. We define ij E H (K) y ij (k 2)(k 1) 2 + (k 1) k t=1 c C t x vt c (9) to be the k-partitioned inequality associated with K and C. Proposition 3. The k-partitioned inequality (9) is valid for P MIC (G, H,C). We omit the proof of Proposition 3 since it is very similar to the proofs of the preceding results. Unfortunately, the facetness properties of the partitioned inequalities (7) and the threepartitioned inequalities (8) do not generalize for K 4. Indeed, if K ={v 1,...v 4 } then the inequality (9) reads ij E H (K) y ij k t=1 c C t x vt c and is only satisfied at equality by solutions having ij E H (K) y ij = 3 (and, in this case, the three active y-variables in K form a triangle) or ij E H (K) y ij = 6. This implies that every solution satisfying (9) at equality satisfies, e.g., the additional equality 3(y v1 v 4 + y v2 v 3 ) = ij E H (K) y ij, hence the induced face is not a facet Clique inequalities and related families In this section, we are interested in facet-inducing inequalities arising from (not necessarily maximal) cliques in G. This search is motivated by the clique inequalities for the classical vertex coloring polytope: if K V is a clique in G and c C is a fixed color, the standard clique inequality is defined to be x kc 1. (10) k K This inequality is valid for P MIC (G, H,C), and it is easy to verify that it induces a facet of this polytope if and only if K is a maximal clique. These inequalities have been shown to be very useful in practice (see Méndez-Díaz and Zabala 2006, 2008), and this fact motivates to search for cliquebased inequalities for P MIC (G, H,C). We start with a simple family involving a clique in G and a vertex whose neighborhood in H includes the clique. Definition 5 (vertex-clique inequalities). Let K V be a clique in G and let i V \K beavertexsuch that ik E H for all k K (see Fig. 1). We define y ik 1 (11) k K to be the vertex-clique inequality associated with K and i. The structure depicted in Fig. 1 often arises in the context of classroom allocation to courses when a theory lecture (represented by the vertex i) is followed by several parallel practice lectures. It is desirable that one practice lecture takes place in the same classroom as the theory lecture, so at least a fraction of the students need not change classrooms between lectures. In this case, the

9 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) parallel practice lectures define the clique K in G, all of its vertices being joined by an edge in H to the vertex i.for j V, we define N H ( j) ={k V : jk E H }. Theorem 4. The vertex-clique inequality (11) is valid for P MIC (G, H,C). Furthermore, if K > 1, C >χ(g) + 1, and K is a maximal clique, then (11) induces a facet of P MIC (G, H,C). Proof. Let (x, y) be a feasible solution. Since K is a clique in G, then at most one vertex in K, say vertex j K, can get the same color as i. This implies y ik = 0foreveryk K\{ j}, hence (x, y) satisfies (11). Since (x, y) is an arbitrary feasible solution, the vertex-clique inequality (11) is valid. Now for facetness. Let λ R V C, μ R E H and λ 0 R be such that λx + μy = λ 0 for every (x, y) P MIC (G, H,C) satisfying (11) at equality. We will prove that (λ, μ) is a linear combination of the coefficient vector of (11) and the coefficient vectors of the model constraints (1). Claim 1: λ jc = λ jc for j V and c, c C. Letk K\{ j}, and construct a feasible solution w = (x, e ik ) with χ(g) + 1 colors such that i and k are assigned the same color (this can always be achieved with χ(g) + 1colors,e.g.,bytakinganyχ(G)-coloring and assigning color χ(g) + 1to the vertices i and k). Let w = ( x, e ij ) be a solution obtained from w by renaming the colors in such awaythat j gets color c and no vertex is assigned color c. Finally, construct a new solution w from w by setting x jc = 1, x jc = 0, and leaving the remaining variables unchanged. Both solutions satisfy (11) at equality, implying λ jc = λ jc. Claim 2: μ ij = 0for j N H (i)\k. SinceK is a maximal clique, there exists a vertex k K such that jk E G. Note that i, j, andk are pairwise nonadjacent in G. Letw = (x, e ik ) be a feasible solution with χ(g) + 1 colors such that i, j, andk are assigned the same color c. The solutions w and w = (x, e ik + e ij ) are feasible and satisfy (11) at equality, implying μ ij = 0. Claim 3: μ kj = 0fork K and j N H (k), j i. Letk K\{k} and let w = (x, e ik ) be a feasible solution with χ(g) + 2 colors such that i and k are assigned the same color c and such that j and k are assigned the same color c. Such a solution can be constructed from any χ(g)-coloring by assigning color χ(g) + 1 to the vertices i and k, and color χ(g) + 2 to the vertices j and k. The solutions w and w = (x, e ik + e jk ) imply the claim. Claim 4: μ kl = 0forkl E H, k, l K {i}. A similar argument as the one provided in Claim 3 settles this case. Claim 5: μ ik = μ ik for k, k K. Consider any χ(g)-coloring w and construct the solution w = ( x, e ik ) (resp. w = ( x, e ik )) fromw by assigning color χ(g) + 1 to the vertices i and k (resp. i and k ). Both solutions satisfy (11) at equality and, together with Claim 1, implying μ ik = μ ik. Fig. 1. A clique K V in G and a vertex i V such that ik E H for every k K. Solid edges belong to E G and dotted edges belong to E H.

10 312 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) By combining these claims, we conclude that (λ, μ) is a linear combination of the coefficient vector of (11) and the coefficient vectors of the model constraints (1), hence (11) induces a facet of P MIC (G, H,C). The following family of valid inequalities combines the ideas that give rise to the partitioned inequalities (7) with the argument proving the validity of the vertex-clique inequalities (11). Definition 6 (clique-partitioned inequalities). Again, let K V be a clique in G and let i V \ Ksuch that ik E H for all k K (see Fig. 1). Let D C such that D C K. Wedefine x id (12) y ik x kd + k K d D k K d / D to be the clique-partitioned inequality associated with the clique K, the vertex i, and the color set D. Note that if K ={j}, then this inequality is equivalent to the partitioned inequality (7), hence the clique-partitioned inequalities generalize the partitioned inequalities (7) in a different way than the generalization performed by the k-partitioned inequalities (9). The proof of facetness of the clique-partitioned inequalities is similar to the previous proofs and is, therefore, omitted. Theorem 5. The clique-partitioned inequality (12) is valid and, if C >χ(g) + 1, is facet-inducing for P MIC (G, H,C). Proof of validity. Let (x, y) be a feasible solution. We have k K y ik 1, since at most one vertex in K can get the same color as vertex i.if k K y ik = 0 then the inequality is satisfied, so assume that one vertex in K,sayvertex j K, is assigned the same color as vertex i and y ij = 1. The inequality (12) is violated only if d D k K x kd = 0and d / D x id = 0. This implies that i is assigned a color in D and j gets a color in C\D, a contradiction since we assume that both vertices are assigned the same color. The inequality is, therefore, satisfied. Since (x, y) is an arbitrary feasible solution, we conclude that (12) is a valid inequality. We close this section with two families of facet-inducing inequalities based on cliques in G,which involve special coefficients for the variables associated with the vertices in a subset of the considered clique. This gives rise to larger families of valid inequalities. In turn, devising effective separation procedures for these families turns out to be a difficult task, compared to the previous families. Again, we only provide the proofs of validity, since the facetness arguments go along the same lines as the previous results. Definition 7 (subclique inequalities). Let K V be a clique in G and let i / K be a vertex such that ik E H for all k K. Let K K with 1 K K 1, and j K \ K (see Fig. 2). Let c C Fig. 2. Structure for the subclique inequalities. Dotted edges belong to E H.

11 and let D C\{c} with D.Wedefine y ij + 2 k K y ik 3 (x ic + x jc ) M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) x kd 2 x id (13) d D k K d D to be the subclique inequality associated with the cliques K and K K, the vertices i and j, the color c, and the color set D. Theorem 6. The subclique inequality (13) is valid and, if C >χ(g) + 1 and D C ( K +1), is facet-inducing for P MIC (G, H,C). Proof of validity. Let (x, y) be a feasible solution. Since K {j} is a clique, then at most one vertex in K {j} is assigned the same color as i, hence the left-hand side of (13) is at most 2. Consider the term (x ic + x jc ) in the right-hand side of (13). Case 1: xic + x jc = 2.NovertexinK is assigned color c, hence the only variable in the left-hand side of (13) that can take a nonzero value is y ij. Then, the left-hand side of (13) takes value 0 or 1. Since x id = 0foreveryd D, then the right-hand side takes value at least 1, hence (13) is satisfied. Case 2: xic = 1 and x jc = 0. Wehavey ij = 0 and at most one vertex in K is assigned color c. Since x id = 0foreveryd D, then the right-hand side of (13) takes value at least 2, hence the inequality is satisfied. Case 3: xic = 0 and x jc = 1. Wehavey ij = 0. If k K y ik = 0 then the inequality is trivially satisfied, so assume that some vertex k K is assigned the same color as vertex i, hence the left-hand side of (13) equals 2. At most one color d D has x id = 1 and, if this is the case, then x kd = 1 as well. This implies that the right-hand side of (13) takes value at least 2, hence the inequality is satisfied. Case 4: xic + x jc = 0. Consider the following situations. 1. If i and j are assigned the same color c c, then k K y ik = 0sinceK {j} is a clique. Assume y ij = 1, since otherwise (13) is trivially satisfied. At most one color d D has x id = 1, hence the right-hand side of (13) takes value at least 1 and the inequality is, therefore, satisfied. 2. If i and j are assigned different colors, then assume that one vertex k K has the same color as vertex i, as otherwise the left-hand side of (13) is null and the inequality is trivially satisfied. At most one color d D has x id = 1 and, if this is the case, then x kd = 1 as well. This implies that the right-hand side of (13) takes value at least 2, hence the inequality is satisfied. We conclude that (x, y) satisfies the inequality (13). Since this point is an arbitrary feasible solution, then (13) is a valid inequality. The following family of valid inequalities involves the same structure and a more complicated expression than the previous families.

12 314 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) Definition 8 (two-color subclique inequalities). Let K V be a clique in G and i V \K such that ik E H for all k K. Let K K with 1 K K 1 and j K \ K (see Fig. 2). Let D C and D C be two subsets of colors such that D, D = K,D D =.Wedefine y ik + 2y ij K +2 x id + 2 x jd k K d D d / D + [ x ic ] x kc 2x jc (14) c D k K to be the two-color subclique inequality associated with the cliques K and K K, the vertices i and j, and the color sets D and D. Theorem 7. The two-color subclique inequality (14) is valid and, if C >χ(g) + 1 and D C D 1, is facet-inducing for P MIC (G, H,C). The proof of Theorem 7 goes along the same lines as the proof of Theorem 6 and is, therefore, omitted Inequalities over triangles and diamonds In this section we present two families of valid inequalities involving triangles and diamonds in G H = (V, E G E H ). Definition 9 (semitriangle inequalities). Let i j E H and k V such that ik, jk E G (see Fig. 3), and let d 1, d 2 C, d 1 d 2, be two different colors. We define y ij 2 + (x jd1 x id1 ) + (x id2 x jd2 ) (x kd1 + x kd2 ) (15) to be the semitriangle inequality associated with the vertex set {i, j, k} and the colors d 1 and d 2. Theorem 8. The semitriangle inequality (15) is valid and, if C >χ(g) + 1, is facet-inducing for P MIC (G, H,C). Proof of validity. Let (x, y) be a feasible solution and assume y ij = 1, since otherwise the inequality (15) is satisfied. Consider the following cases. Fig. 3. Structure for the semitriangle inequalities. Solid edges belong to E G and the dotted edge belongs to E H.

13 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) Fig. 4. Structure for the semidiamond inequalities. Solid edges belong to E G and dotted edges belong to E H. Case 1: xkd 1 + x kd 2 = 1. Assume x kd1 = 1, so x id1 = 0. If x jd2 = 0 then (15) is satisfied, so assume x jd2 = 1. Since y ij = 1, then x id2 = 1, hence the right-hand side of (15) equals 1 and (15) is satisfied. The case x kd2 = 1 can be handled symmetrically. Case 2: xkd 1 + x kd 2 = 0. The inequality (15) is not satisfied only if x id1 = 1andx jd2 = 1, a contradiction since this implies that i and j get different colors. In both cases the inequality (15) is satisfied. Since (x, y) is an arbitrary feasible solution, then (15) is valid. The semitriangle inequalities can be separated in polynomial time by exhaustive search, since this family is composed by O( V 3 C 2 ) inequalities and the violation can be checked in O(1). Definition 10 (semidiamond inequalities). Let { j, k, l} V be a triangle in G, and let i Vbeavertex such that i j, ik E H and il / E H (see Fig. 4). Let d 1, d 2 Cwithd 1 d 2, and let D C\{d 1, d 2 } with D C 3.Wedefine y ij + 2y ik 3 + (x kd + x jd x id ) d D + (x id1 x kd1 ) + (x kd2 x id2 ) (x ld1 + x ld2 ) (16) to be the semidiamond inequality associated with the triangle { j, k, l}, the vertex i, the colors d 1 and d 2, and the color subset D. Theorem 9. The semidiamond inequality (16) is valid and, if C >χ(g) + 1, is facet-inducing for P MIC (G, H,C). The proof of validity of the semidiamond inequalities goes along the same lines as the proof of Theorem 8, and is therefore omitted. Again, the semidiamond inequalities can be separated in polynomial time. Given a (possibly fractional) solution (x, y ) for the linear relaxation of P MIC (G, H,C), consider each triangle { j, k, l} in G and each vertex i satisfying the hypotheses. For each pair of different colors d 1 and d 2, construct D ={d C\{d 1, d 2 } : x kd + x jd x id < 0} and check whether the constructed inequality is violated or not. There exists a violated semidiamond inequality if and only if this procedure yields a violated inequality. This algorithm may not be useful for practical purposes due to its high (although polynomial) complexity, and better procedures should be designed instead if this complexity is not acceptable.

14 316 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) Valid inequalities that do not induce facets We present in this section two families of valid inequalities that do not induce facets and, in some case, are even redundant with respect to the inequalities presented in previous sections. Nevertheless, one of these families turned out to contribute to the overall performance of our cutting plane based algorithm for MICP. Definition 11 (bounding inequalities). Let K V be a clique in G, and let j K and i / Kbetwo vertices such that i j E H (see Fig. 5). Let D C be a set of colors. We define y ij min{ D, K } + 1 x kd x id (17) d D k K\{ j} d D to be the bounding inequality associated with the clique K, the vertices i and j, and the color set D. Proposition 4. The bounding inequality (17) is valid for P MIC (G, H,C). Proof. Let (x, y) P MIC (G, H,C) Z V C + E H be any feasible solution. If K D then d D k K\{ j} x kd K 1which, together with d D x id 1, implies that the right-hand side of (17) takes value at least 1 and, therefore, (17) is trivially satisfied. Assume now K > D and (x, y) violates (17), i.e., y ij = 1 and the right-hand side of (17) equals 0. This implies that i is assigned a color in D and exactly D vertices in K\{ j} get colors in D. SinceK is a clique, the vertex j cannot be assigned a color in D (since all of these colors are taken by vertices in K\{ j}). But i is assigned a color in D, hence i and j are assigned different colors, contradicting the fact that y ij = 1. The inequality (17) is, therefore, satisfied. Since (x, y) is an arbitrary feasible solution, we conclude that (17) is a valid inequality. The inequality (17) does not define a facet of P MIC (G, H,C), since every feasible solution (x, y) in the face induced by this inequality satisfies x kd = D. d D k K if D K 1, and satisfies y ij = 1 otherwise. Furthermore, if K D then (17) is dominated by y ij 1 and the model constraints (1). Definition 12 (reinforced bounding inequalities). Let K V be a clique in G. Partition K into K = K 1 K 2, and let i / K such that ik E H for all k K 1 and it / E H for all t K 2 (see Fig. 6). Let Fig. 5. A clique K V in G and a vertex i adjacent in H to one vertex from K. Solid edges belong to E G and the dotted edge belongs to E H.

15 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) Fig. 6. A clique K = K 1 K 2 V in G and a vertex i adjacent in H to all the vertices in K 1. Solid edges belong to E G and dotted edges belong to E H. D C. We define y ik 1 + min( D, K 2 +1) k K 1 x kd x id (18) d D k K 2 d D to be the reinforced bounding inequality associated with the clique K 1 K 2, the vertex i, and the color set D. Proposition 5. The reinforced bounding inequality (18) is valid for P MIC (G, H,C). The proof of Proposition 5 goes along the same lines as the proof of Proposition 4 and is, therefore, omitted. The inequality (18) does not define a facet of P MIC (G, H,C), since every feasible solution (x, y) in the face induced by this inequality satisfies x kd = D, d D k K if D K 2, and satisfies y ij = 1 otherwise. Again, if K 2 +1 D then (18) is dominated by k K 1 y ik 1 and the model constraints (1). Note that the reinforced bounding inequalities trivially generalize the bounding inequalities which, in turn, can be obtained from the reinforced bounding inequalities and the model constraints (1). 4. Computational experiments In this section, we report the implementation of a branch-and-cut algorithm based on the families of valid inequalities presented in Section 3. We start with the models (1) (6) and dynamically add cuts from these families at each node in the enumeration tree. For the valid inequalities with polynomial-time exact separation procedures, we apply these procedures as described in Section 3. For the remaining families of valid inequalities, we resort to the following straightforward heuristic separation procedures:

16 318 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) For the vertex-clique inequalities, we first identify all the triples {i, j, k} V such that ij, ik E H and jk E G. Starting from each such triple, we define K ={j, k} and greedily add vertices to K in such a way that the resulting set satisfies the hypotheses of Definition 5. A vertex l is added to K only if y il > 0. After each addition of a vertex to K, we check if the resulting vertex-clique inequality is violated. For the clique-partitioned inequalities, we first identify all the triples {i, j, k} V such that ij, ik E H and jk E G. Again, each such triple defines an initial clique K ={j, k}, andwe greedily add vertices to K in such a way that the resulting set satisfies the hypotheses of Definition 6. Avertexl is added to K only if y il > 0. At each step, we construct the color set D C containing all the colors d C such that t K x td < x id. If the resulting vertex-clique inequality is violated, weadditasacut. For the bounding inequalities, starting from each triple {i, j, k} V such that ij EH and jk E G, we greedily add vertices to K ={j, k} in order to obtain a clique in G and we construct the color set D C containing all the colors d C with t K x td > 0.5. If the resulting bounding inequality is violated, we add this inequality as a new cut. We did not include separation algorithms for the k-partitioned inequalities (9), the sub-clique inequalities (13), the two-color sub-clique inequalities (14), and the reinforced bounding inequalities (18) in our branch-and-cut procedure, since similar greedy procedures would be quite expensive and might compromise the total running times and, furthermore, handling the sub-clique structures present in the last three of these families is not straightforward. We have tried a greedy procedure for separating the standard clique inequalities (10) but it turns out that, for the instances considered in this work, the preprocessing performed by Cplex dominates these inequalities and no violated clique inequality is found (if the preprocessing is deactivated, then the separation procedure finds a number of violated clique inequalities, but the overall running times are very degraded). Due to this fact, we do not explicitly separate the clique inequalities in our implementation. After a round of cuts at each node in the enumeration tree, a standard branching procedure is performed by selecting any fractional variable and setting two descendant nodes with the selected variable set to 0 and 1, respectively. The implementation was performed within the Cplex 12.5 environment, and the experiments were carried out on a computer with an Intel Core 2 Duo CPU, with two T8100 cores running at 2 GHz, and 2 GB of RAM memory. We have kept all of Cplex parameters at their default values Instances from the University of Buenos Aires We have performed experiments with real instances coming from the School of Sciences from the University of Buenos Aires (Delle Donne and Martínez Viademonte, 2014). Table 1 reports the time to solve these instances to optimality, with a time limit of 1 hour. Cplex was able to solve most of these instances to optimality, with the exception of the two instances coming from the 2014 courses. With the addition of the cuts presented in this work, all the instances but one are solved to optimality within the root node. In the instance that required branching to get the optimal value, the enumeration tree consisted of 17 nodes. Most of these instances are solved to optimality in quite short running times, even taking into account that the number of available colors equals the chromatic number for all but three of the associated graphs. The graphs G coming from these real instances are interval graphs, hence they

17 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) Table 1 Times to optimality for Cplex with and without the cuts presented in this work for instances coming from the School of Sciences from the University of Buenos Aires Cplex 12.5 Cplex + Cuts Instance V E G E H C χ(g) Time (s) Nodes Time (s) Nodes I II I II I II I II I II I %* 18, II %** The run marked with one asterisk reached the memory limit of 1 GB, and the run marked with two asterisks reached the time limit of 1 hour. For these two runs, the optimality gap at the end of the execution is reported instead of the running time. are quite sparse, and this might be related with such short running times to optimality. We have performed additional experiments by changing the number of colors and, as expected, the running times tend to be smaller for either larger and smaller values of C. As a representative example of this situation, Fig. 7 shows the running times in seconds as a function of C for the instance II, which has χ(g) = 20. The running time peaks at C =χ(g) and tends to reduce for larger values of C. It is remarkable that infeasibility is detected in very short running times, because of the preprocessing performed by Cplex. This behavior is repeated for all the remaining instances: when running the procedure with C = χ(g) 1, infeasibility is detected (and the procedure ends) for all the instances in less than 2.5 seconds. This is an interesting feature that seems to appear in these instances coming from a real classroom allocation context, and may not hold in general. It is interesting to note that solving to optimality at the root node implies that the dual bound obtained at the root node is optimal. Table 2 presents the dual bounds with the standard Cplex cuts and with the cuts presented in this work, showing that this is indeed the case. Clearly, the linear relaxation of the models (1) (6) has E H as optimal value, but it turns out that this is also the value of the linear relaxation after Cplex applies a round of general cuts. Note that with the exception of two instances this value does not equal the optimal value of the integer solution, hence the dual bounds given by the linear relaxation are quite weak. This explains the difficulties that Cplex encounters in the last two instances, namely Cplex is able to find the optimal solution within a reasonable amount of time but it takes many nodes in the enumeration tree to bring the dual bound down to this value. Fortunately, the valid inequalities presented in this work help to bring this bound down to the optimal value in all the considered instances, including the last instance for which some branching was needed. The formulation considered in this work does not include constraints forcing the variable y ij = 1 when i and j are assigned the same color, for ij E H. Instead, we rely on the objective function to set all possible y-variables to 1 in the optimal solution. We may consider an alternative formulation

18 320 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) Fig. 7. Running times in seconds as a function of the number of available colors for the instance II, which has χ(g) = 20. Table 2 Dual bounds and number of cuts at the root node for the standard execution of Cplex (with Cplex s generic cuts) and for the execution with the valid inequalities presented in this work, for instances coming from the School of Sciences from the University of Buenos Aires Cplex 12.5 Cplex + Cuts Instance V E G E H C Root UB Cuts Root UB Cuts I * 0 124* II * I * II * I * II * I * II * I * II * 0 186* I * 10,000** II * 10,000** The reported values correspond to the bounds after the addition of cuts. The bounds marked with one asterisk correspond to optimal values, and the runs marked with two asterisks reached the maximum allowed number of cuts. including the constraint y ij x ic + x jc 1foreveryij E H and every c C, in order not to allow feasible solutions with spurious null values. The running times are not much affected by the addition of these constraints. Indeed, this alternative formulation was able to solve to optimality all the instances, with running times in average being 13.1% larger than those reported in Table 1. Finally, Table 3 reports experiments with the families of valid inequalities identified in this work. The first group of columns shows the results when only one family of valid inequalities is employed, in order to assess the contribution of each family to the overall procedure. The columns Time red., Node red., and Cuts report the average reduction in running time with respect to the

19 M. Braga et al. / Intl. Trans. in Op. Res. 24 (2017) Table 3 Number of generated cuts for each family of valid inequalities Single family All families Family Time red. Node red. Cuts Attempts Cuts Partitioned inequalities 30.9% 24.6% Three-partitioned inequalities 39.7% 6.4% , Vertex-clique inequalities 48.0% 73.3% Semitriangle inequalities 3.48% 10.0% ,944,992 2 Semidiamond inequalities 49, ,124, ,803 Clique-partitioned inequalities 47.6% 73.3% Bounding inequalities 16.7% 24.6% , execution of Cplex with standard parameters, the average reduction in the number of nodes in the enumeration tree with respect to the execution of Cplex, and the average number of cuts when each of the families is considered in the branch-and-cut procedure, for all the instances that Cplex is able to solve to optimality. With the exception of the semidiamond inequalities, the addition of each family allows to solve all these instances to optimality. On the other hand, the addition of the semidiamond inequalities only solves to optimality three instances within the time limit of 10 minutes, hence the time and node reductions are not reported for this family. The addition of just the partitioned inequalities (resp. the three-partitioned inequalities and the bounding inequalities) degrades the total running time, although the number of nodes in the enumeration tree is reduced. It is interesting to note that the addition of the vertex-clique inequalities (resp. the clique-partitioned inequalities) allows to solve all these instances at the root node. Based on these results, it is safe to assert that these two families are the most effective at tackling these instances. The last two columns report the number of generated cuts for each family of valid inequalities, when all of them are included in the overall procedure. For each family, the number of evaluated inequalities is reported in the second-to-last column, and the number of violated inequalities is reported in the last column. The semidiamond inequalities and the (not facet-inducing) bounding inequalities are the most frequently appearing cuts, although the other families contribute with a fair amount of cuts to the final result. The large number of attempts and generated cuts for the semidiamond inequalities suggest that a more restricted approach may be useful, in order to limit the running time of the separation procedure Experiments with other instances Besides performing experiments with the instances mentioned in the previous section, which was our main practical objective, we report the computational results of experiments with additional instances in this section. We have performed experiments with instances coming from Track 3 of the 2007 International Timetabling Competition (ITC, 2007) and with random instances. The instances coming from ITC 2007 cannot be directly used as a benchmark for our problem, since we are only interested in the classroom allocation aspects of the overall problem. In order to overcome this difficulty, we consider the best timetables obtained for the UD2 specification while writing this paper, and we use the course days and times as input for our procedure (ITC, 2015). This approach is similar to the one employed in Phillips et al. (2015). If several course events are

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

Graph Coloring via Constraint Programming-based Column Generation

Graph Coloring via Constraint Programming-based Column Generation Graph Coloring via Constraint Programming-based Column Generation Stefano Gualandi Federico Malucelli Dipartimento di Elettronica e Informatica, Politecnico di Milano Viale Ponzio 24/A, 20133, Milan, Italy

More information

Facets of the minimum-adjacency vertex coloring polytope

Facets of the minimum-adjacency vertex coloring polytope Facets of the minimum-adjacency vertex coloring polytope Diego Delle Donne Javier Marenco email: {ddelle, jmarenco}@dc.uba.ar Computer Science Dept., FCEN, University of Buenos Aires Pabellón I, Ciudad

More information

Integer Programming Theory

Integer Programming Theory Integer Programming Theory Laura Galli October 24, 2016 In the following we assume all functions are linear, hence we often drop the term linear. In discrete optimization, we seek to find a solution x

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

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

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

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

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

Integer and Combinatorial Optimization: Clustering Problems

Integer and Combinatorial Optimization: Clustering Problems Integer and Combinatorial Optimization: Clustering Problems John E. Mitchell Department of Mathematical Sciences RPI, Troy, NY 12180 USA February 2019 Mitchell Clustering Problems 1 / 14 Clustering Clustering

More information

The strong chromatic number of a graph

The strong chromatic number of a graph The strong chromatic number of a graph Noga Alon Abstract It is shown that there is an absolute constant c with the following property: For any two graphs G 1 = (V, E 1 ) and G 2 = (V, E 2 ) on the same

More information

Discrete Optimization. Lecture Notes 2

Discrete Optimization. Lecture Notes 2 Discrete Optimization. Lecture Notes 2 Disjunctive Constraints Defining variables and formulating linear constraints can be straightforward or more sophisticated, depending on the problem structure. The

More information

Monotone Paths in Geometric Triangulations

Monotone Paths in Geometric Triangulations Monotone Paths in Geometric Triangulations Adrian Dumitrescu Ritankar Mandal Csaba D. Tóth November 19, 2017 Abstract (I) We prove that the (maximum) number of monotone paths in a geometric triangulation

More information

Treewidth and graph minors

Treewidth and graph minors Treewidth and graph minors Lectures 9 and 10, December 29, 2011, January 5, 2012 We shall touch upon the theory of Graph Minors by Robertson and Seymour. This theory gives a very general condition under

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

The Structure of Bull-Free Perfect Graphs

The Structure of Bull-Free Perfect Graphs The Structure of Bull-Free Perfect Graphs Maria Chudnovsky and Irena Penev Columbia University, New York, NY 10027 USA May 18, 2012 Abstract The bull is a graph consisting of a triangle and two vertex-disjoint

More information

Scan Scheduling Specification and Analysis

Scan Scheduling Specification and Analysis Scan Scheduling Specification and Analysis Bruno Dutertre System Design Laboratory SRI International Menlo Park, CA 94025 May 24, 2000 This work was partially funded by DARPA/AFRL under BAE System subcontract

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

/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

Parameterized graph separation problems

Parameterized graph separation problems Parameterized graph separation problems Dániel Marx Department of Computer Science and Information Theory, Budapest University of Technology and Economics Budapest, H-1521, Hungary, dmarx@cs.bme.hu Abstract.

More information

1. Lecture notes on bipartite matching

1. Lecture notes on bipartite matching Massachusetts Institute of Technology 18.453: Combinatorial Optimization Michel X. Goemans February 5, 2017 1. Lecture notes on bipartite matching Matching problems are among the fundamental problems in

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

Polynomial-Time Approximation Algorithms

Polynomial-Time Approximation Algorithms 6.854 Advanced Algorithms Lecture 20: 10/27/2006 Lecturer: David Karger Scribes: Matt Doherty, John Nham, Sergiy Sidenko, David Schultz Polynomial-Time Approximation Algorithms NP-hard problems are a vast

More information

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem L. De Giovanni M. Di Summa The Traveling Salesman Problem (TSP) is an optimization problem on a directed

More information

2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006

2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006 2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006 The Encoding Complexity of Network Coding Michael Langberg, Member, IEEE, Alexander Sprintson, Member, IEEE, and Jehoshua Bruck,

More information

5. Lecture notes on matroid intersection

5. Lecture notes on matroid intersection Massachusetts Institute of Technology Handout 14 18.433: Combinatorial Optimization April 1st, 2009 Michel X. Goemans 5. Lecture notes on matroid intersection One nice feature about matroids is that a

More information

Flexible Coloring. Xiaozhou Li a, Atri Rudra b, Ram Swaminathan a. Abstract

Flexible Coloring. Xiaozhou Li a, Atri Rudra b, Ram Swaminathan a. Abstract Flexible Coloring Xiaozhou Li a, Atri Rudra b, Ram Swaminathan a a firstname.lastname@hp.com, HP Labs, 1501 Page Mill Road, Palo Alto, CA 94304 b atri@buffalo.edu, Computer Sc. & Engg. dept., SUNY Buffalo,

More information

On Covering a Graph Optimally with Induced Subgraphs

On Covering a Graph Optimally with Induced Subgraphs On Covering a Graph Optimally with Induced Subgraphs Shripad Thite April 1, 006 Abstract We consider the problem of covering a graph with a given number of induced subgraphs so that the maximum number

More information

On the Max Coloring Problem

On the Max Coloring Problem On the Max Coloring Problem Leah Epstein Asaf Levin May 22, 2010 Abstract We consider max coloring on hereditary graph classes. The problem is defined as follows. Given a graph G = (V, E) and positive

More information

Notes for Lecture 24

Notes for Lecture 24 U.C. Berkeley CS170: Intro to CS Theory Handout N24 Professor Luca Trevisan December 4, 2001 Notes for Lecture 24 1 Some NP-complete Numerical Problems 1.1 Subset Sum The Subset Sum problem is defined

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

PCP and Hardness of Approximation

PCP and Hardness of Approximation PCP and Hardness of Approximation January 30, 2009 Our goal herein is to define and prove basic concepts regarding hardness of approximation. We will state but obviously not prove a PCP theorem as a starting

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

Pebble Sets in Convex Polygons

Pebble Sets in Convex Polygons 2 1 Pebble Sets in Convex Polygons Kevin Iga, Randall Maddox June 15, 2005 Abstract Lukács and András posed the problem of showing the existence of a set of n 2 points in the interior of a convex n-gon

More information

Complexity Results on Graphs with Few Cliques

Complexity Results on Graphs with Few Cliques Discrete Mathematics and Theoretical Computer Science DMTCS vol. 9, 2007, 127 136 Complexity Results on Graphs with Few Cliques Bill Rosgen 1 and Lorna Stewart 2 1 Institute for Quantum Computing and School

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

Bipartite Roots of Graphs

Bipartite Roots of Graphs Bipartite Roots of Graphs Lap Chi Lau Department of Computer Science University of Toronto Graph H is a root of graph G if there exists a positive integer k such that x and y are adjacent in G if and only

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

A Branch-and-Cut algorithm for graph coloring

A Branch-and-Cut algorithm for graph coloring Discrete Applied Mathematics 154 (2006) 826 847 www.elsevier.com/locate/dam A Branch-and-Cut algorithm for graph coloring Isabel Méndez-Díaz, Paula Zabala Departamento de Computación, FCEyN, Universidad

More information

Chapter 15 Introduction to Linear Programming

Chapter 15 Introduction to Linear Programming Chapter 15 Introduction to Linear Programming An Introduction to Optimization Spring, 2015 Wei-Ta Chu 1 Brief History of Linear Programming The goal of linear programming is to determine the values of

More information

Small Survey on Perfect Graphs

Small Survey on Perfect Graphs Small Survey on Perfect Graphs Michele Alberti ENS Lyon December 8, 2010 Abstract This is a small survey on the exciting world of Perfect Graphs. We will see when a graph is perfect and which are families

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms Prof. Tapio Elomaa tapio.elomaa@tut.fi Course Basics A 4 credit unit course Part of Theoretical Computer Science courses at the Laboratory of Mathematics There will be 4 hours

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

8 Matroid Intersection

8 Matroid Intersection 8 Matroid Intersection 8.1 Definition and examples 8.2 Matroid Intersection Algorithm 8.1 Definitions Given two matroids M 1 = (X, I 1 ) and M 2 = (X, I 2 ) on the same set X, their intersection is M 1

More information

A Computational Study of Conflict Graphs and Aggressive Cut Separation in Integer Programming

A Computational Study of Conflict Graphs and Aggressive Cut Separation in Integer Programming A Computational Study of Conflict Graphs and Aggressive Cut Separation in Integer Programming Samuel Souza Brito and Haroldo Gambini Santos 1 Dep. de Computação, Universidade Federal de Ouro Preto - UFOP

More information

Integer Programming ISE 418. Lecture 7. Dr. Ted Ralphs

Integer Programming ISE 418. Lecture 7. Dr. Ted Ralphs Integer Programming ISE 418 Lecture 7 Dr. Ted Ralphs ISE 418 Lecture 7 1 Reading for This Lecture Nemhauser and Wolsey Sections II.3.1, II.3.6, II.4.1, II.4.2, II.5.4 Wolsey Chapter 7 CCZ Chapter 1 Constraint

More information

An Introduction to Chromatic Polynomials

An Introduction to Chromatic Polynomials An Introduction to Chromatic Polynomials Julie Zhang May 17, 2018 Abstract This paper will provide an introduction to chromatic polynomials. We will first define chromatic polynomials and related terms,

More information

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs Introduction to Mathematical Programming IE406 Lecture 20 Dr. Ted Ralphs IE406 Lecture 20 1 Reading for This Lecture Bertsimas Sections 10.1, 11.4 IE406 Lecture 20 2 Integer Linear Programming An integer

More information

Faster parameterized algorithms for Minimum Fill-In

Faster parameterized algorithms for Minimum Fill-In Faster parameterized algorithms for Minimum Fill-In Hans L. Bodlaender Pinar Heggernes Yngve Villanger Abstract We present two parameterized algorithms for the Minimum Fill-In problem, also known as Chordal

More information

Algorithms Exam TIN093/DIT600

Algorithms Exam TIN093/DIT600 Algorithms Exam TIN093/DIT600 Course: Algorithms Course code: TIN 093 (CTH), DIT 600 (GU) Date, time: 22nd October 2016, 14:00 18:00 Building: M Responsible teacher: Peter Damaschke, Tel. 5405 Examiner:

More information

General properties of staircase and convex dual feasible functions

General properties of staircase and convex dual feasible functions General properties of staircase and convex dual feasible functions JÜRGEN RIETZ, CLÁUDIO ALVES, J. M. VALÉRIO de CARVALHO Centro de Investigação Algoritmi da Universidade do Minho, Escola de Engenharia

More information

Stable sets, corner polyhedra and the Chvátal closure

Stable sets, corner polyhedra and the Chvátal closure Stable sets, corner polyhedra and the Chvátal closure Manoel Campêlo Departamento de Estatística e Matemática Aplicada, Universidade Federal do Ceará, Brazil, mcampelo@lia.ufc.br. Gérard Cornuéjols Tepper

More information

arxiv: v1 [cs.dm] 30 Apr 2014

arxiv: v1 [cs.dm] 30 Apr 2014 The stable set polytope of (P 6,triangle)-free graphs and new facet-inducing graphs Raffaele Mosca arxiv:1404.7623v1 [cs.dm] 30 Apr 2014 May 1, 2014 Abstract The stable set polytope of a graph G, denoted

More information

The complement of PATH is in NL

The complement of PATH is in NL 340 The complement of PATH is in NL Let c be the number of nodes in graph G that are reachable from s We assume that c is provided as an input to M Given G, s, t, and c the machine M operates as follows:

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

1. Lecture notes on bipartite matching February 4th,

1. Lecture notes on bipartite matching February 4th, 1. Lecture notes on bipartite matching February 4th, 2015 6 1.1.1 Hall s Theorem Hall s theorem gives a necessary and sufficient condition for a bipartite graph to have a matching which saturates (or matches)

More information

An upper bound for the chromatic number of line graphs

An upper bound for the chromatic number of line graphs EuroComb 005 DMTCS proc AE, 005, 151 156 An upper bound for the chromatic number of line graphs A D King, B A Reed and A Vetta School of Computer Science, McGill University, 3480 University Ave, Montréal,

More information

Decision Problems. Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not.

Decision Problems. Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not. Decision Problems Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not. Definition: The class of problems that can be solved by polynomial-time

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

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

NP-Hardness. We start by defining types of problem, and then move on to defining the polynomial-time reductions.

NP-Hardness. We start by defining types of problem, and then move on to defining the polynomial-time reductions. CS 787: Advanced Algorithms NP-Hardness Instructor: Dieter van Melkebeek We review the concept of polynomial-time reductions, define various classes of problems including NP-complete, and show that 3-SAT

More information

Algorithms for Integer Programming

Algorithms for Integer Programming Algorithms for Integer Programming Laura Galli November 9, 2016 Unlike linear programming problems, integer programming problems are very difficult to solve. In fact, no efficient general algorithm is

More information

Exact Algorithms Lecture 7: FPT Hardness and the ETH

Exact Algorithms Lecture 7: FPT Hardness and the ETH Exact Algorithms Lecture 7: FPT Hardness and the ETH February 12, 2016 Lecturer: Michael Lampis 1 Reminder: FPT algorithms Definition 1. A parameterized problem is a function from (χ, k) {0, 1} N to {0,

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

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize. Cornell University, Fall 2017 CS 6820: Algorithms Lecture notes on the simplex method September 2017 1 The Simplex Method We will present an algorithm to solve linear programs of the form maximize subject

More information

Faster parameterized algorithms for Minimum Fill-In

Faster parameterized algorithms for Minimum Fill-In Faster parameterized algorithms for Minimum Fill-In Hans L. Bodlaender Pinar Heggernes Yngve Villanger Technical Report UU-CS-2008-042 December 2008 Department of Information and Computing Sciences Utrecht

More information

Algorithm design in Perfect Graphs N.S. Narayanaswamy IIT Madras

Algorithm design in Perfect Graphs N.S. Narayanaswamy IIT Madras Algorithm design in Perfect Graphs N.S. Narayanaswamy IIT Madras What is it to be Perfect? Introduced by Claude Berge in early 1960s Coloring number and clique number are one and the same for all induced

More information

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms 1. Computability, Complexity and Algorithms Given a simple directed graph G = (V, E), a cycle cover is a set of vertex-disjoint directed cycles that cover all vertices of the graph. 1. Show that there

More information

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms Ann-Brith Strömberg 2018 04 24 Lecture 9 Linear and integer optimization with applications

More information

Sources for this lecture. 3. Matching in bipartite and general graphs. Symmetric difference

Sources for this lecture. 3. Matching in bipartite and general graphs. Symmetric difference S-72.2420 / T-79.5203 Matching in bipartite and general graphs 1 3. Matching in bipartite and general graphs Let G be a graph. A matching M in G is a set of nonloop edges with no shared endpoints. Let

More information

Computational problems. Lecture 2: Combinatorial search and optimisation problems. Computational problems. Examples. Example

Computational problems. Lecture 2: Combinatorial search and optimisation problems. Computational problems. Examples. Example Lecture 2: Combinatorial search and optimisation problems Different types of computational problems Examples of computational problems Relationships between problems Computational properties of different

More information

LATIN SQUARES AND THEIR APPLICATION TO THE FEASIBLE SET FOR ASSIGNMENT PROBLEMS

LATIN SQUARES AND THEIR APPLICATION TO THE FEASIBLE SET FOR ASSIGNMENT PROBLEMS LATIN SQUARES AND THEIR APPLICATION TO THE FEASIBLE SET FOR ASSIGNMENT PROBLEMS TIMOTHY L. VIS Abstract. A significant problem in finite optimization is the assignment problem. In essence, the assignment

More information

Conflict Graphs for Combinatorial Optimization Problems

Conflict Graphs for Combinatorial Optimization Problems Conflict Graphs for Combinatorial Optimization Problems Ulrich Pferschy joint work with Andreas Darmann and Joachim Schauer University of Graz, Austria Introduction Combinatorial Optimization Problem CO

More information

Lecture 2 - Introduction to Polytopes

Lecture 2 - Introduction to Polytopes Lecture 2 - Introduction to Polytopes Optimization and Approximation - ENS M1 Nicolas Bousquet 1 Reminder of Linear Algebra definitions Let x 1,..., x m be points in R n and λ 1,..., λ m be real numbers.

More information

A graph is finite if its vertex set and edge set are finite. We call a graph with just one vertex trivial and all other graphs nontrivial.

A graph is finite if its vertex set and edge set are finite. We call a graph with just one vertex trivial and all other graphs nontrivial. 2301-670 Graph theory 1.1 What is a graph? 1 st semester 2550 1 1.1. What is a graph? 1.1.2. Definition. A graph G is a triple (V(G), E(G), ψ G ) consisting of V(G) of vertices, a set E(G), disjoint from

More information

Framework for Design of Dynamic Programming Algorithms

Framework for Design of Dynamic Programming Algorithms CSE 441T/541T Advanced Algorithms September 22, 2010 Framework for Design of Dynamic Programming Algorithms Dynamic programming algorithms for combinatorial optimization generalize the strategy we studied

More information

CMSC Honors Discrete Mathematics

CMSC Honors Discrete Mathematics CMSC 27130 Honors Discrete Mathematics Lectures by Alexander Razborov Notes by Justin Lubin The University of Chicago, Autumn 2017 1 Contents I Number Theory 4 1 The Euclidean Algorithm 4 2 Mathematical

More information

The External Network Problem

The External Network Problem The External Network Problem Jan van den Heuvel and Matthew Johnson CDAM Research Report LSE-CDAM-2004-15 December 2004 Abstract The connectivity of a communications network can often be enhanced if the

More information

W[1]-hardness. Dániel Marx. Recent Advances in Parameterized Complexity Tel Aviv, Israel, December 3, 2017

W[1]-hardness. Dániel Marx. Recent Advances in Parameterized Complexity Tel Aviv, Israel, December 3, 2017 1 W[1]-hardness Dániel Marx Recent Advances in Parameterized Complexity Tel Aviv, Israel, December 3, 2017 2 Lower bounds So far we have seen positive results: basic algorithmic techniques for fixed-parameter

More information

1 Linear programming relaxation

1 Linear programming relaxation Cornell University, Fall 2010 CS 6820: Algorithms Lecture notes: Primal-dual min-cost bipartite matching August 27 30 1 Linear programming relaxation Recall that in the bipartite minimum-cost perfect matching

More information

NP-Completeness. Algorithms

NP-Completeness. Algorithms NP-Completeness Algorithms The NP-Completeness Theory Objective: Identify a class of problems that are hard to solve. Exponential time is hard. Polynomial time is easy. Why: Do not try to find efficient

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

Foundations of Computing

Foundations of Computing Foundations of Computing Darmstadt University of Technology Dept. Computer Science Winter Term 2005 / 2006 Copyright c 2004 by Matthias Müller-Hannemann and Karsten Weihe All rights reserved http://www.algo.informatik.tu-darmstadt.de/

More information

5.3 Cutting plane methods and Gomory fractional cuts

5.3 Cutting plane methods and Gomory fractional cuts 5.3 Cutting plane methods and Gomory fractional cuts (ILP) min c T x s.t. Ax b x 0integer feasible region X Assumption: a ij, c j and b i integer. Observation: The feasible region of an ILP can be described

More information

Paths, Flowers and Vertex Cover

Paths, Flowers and Vertex Cover Paths, Flowers and Vertex Cover Venkatesh Raman M. S. Ramanujan Saket Saurabh Abstract It is well known that in a bipartite (and more generally in a König) graph, the size of the minimum vertex cover is

More information

Set Cover with Almost Consecutive Ones Property

Set Cover with Almost Consecutive Ones Property Set Cover with Almost Consecutive Ones Property 2004; Mecke, Wagner Entry author: Michael Dom INDEX TERMS: Covering Set problem, data reduction rules, enumerative algorithm. SYNONYMS: Hitting Set PROBLEM

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

The Probabilistic Method

The Probabilistic Method The Probabilistic Method Po-Shen Loh June 2010 1 Warm-up 1. (Russia 1996/4 In the Duma there are 1600 delegates, who have formed 16000 committees of 80 persons each. Prove that one can find two committees

More information

Lecture 6: Graph Properties

Lecture 6: Graph Properties Lecture 6: Graph Properties Rajat Mittal IIT Kanpur In this section, we will look at some of the combinatorial properties of graphs. Initially we will discuss independent sets. The bulk of the content

More information

HEURISTIC ALGORITHMS FOR THE GENERALIZED MINIMUM SPANNING TREE PROBLEM

HEURISTIC ALGORITHMS FOR THE GENERALIZED MINIMUM SPANNING TREE PROBLEM Proceedings of the International Conference on Theory and Applications of Mathematics and Informatics - ICTAMI 24, Thessaloniki, Greece HEURISTIC ALGORITHMS FOR THE GENERALIZED MINIMUM SPANNING TREE PROBLEM

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

Vertex Cover Approximations

Vertex Cover Approximations CS124 Lecture 20 Heuristics can be useful in practice, but sometimes we would like to have guarantees. Approximation algorithms give guarantees. It is worth keeping in mind that sometimes approximation

More information

A Branch-and-Cut Algorithm for the Partition Coloring Problem

A Branch-and-Cut Algorithm for the Partition Coloring Problem A Branch-and-Cut Algorithm for the Partition Coloring Problem Yuri Frota COPPE/UFRJ, Programa de Engenharia de Sistemas e Otimização Rio de Janeiro, RJ 21945-970, Brazil abitbol@cos.ufrj.br Nelson Maculan

More information

Introduction to Graph Theory

Introduction to Graph Theory Introduction to Graph Theory Tandy Warnow January 20, 2017 Graphs Tandy Warnow Graphs A graph G = (V, E) is an object that contains a vertex set V and an edge set E. We also write V (G) to denote the vertex

More information

1 Matching in Non-Bipartite Graphs

1 Matching in Non-Bipartite Graphs CS 369P: Polyhedral techniques in combinatorial optimization Instructor: Jan Vondrák Lecture date: September 30, 2010 Scribe: David Tobin 1 Matching in Non-Bipartite Graphs There are several differences

More information

Minimum sum multicoloring on the edges of trees

Minimum sum multicoloring on the edges of trees Minimum sum multicoloring on the edges of trees Dániel Marx a,1 a Department of Computer Science and Information Theory, Budapest University of Technology and Economics, H-1521 Budapest, Hungary. Abstract

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

Chapter 10 Part 1: Reduction

Chapter 10 Part 1: Reduction //06 Polynomial-Time Reduction Suppose we could solve Y in polynomial-time. What else could we solve in polynomial time? don't confuse with reduces from Chapter 0 Part : Reduction Reduction. Problem X

More information

A CSP Search Algorithm with Reduced Branching Factor

A CSP Search Algorithm with Reduced Branching Factor A CSP Search Algorithm with Reduced Branching Factor Igor Razgon and Amnon Meisels Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105, Israel {irazgon,am}@cs.bgu.ac.il

More information

In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems.

In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems. 2 Basics In this chapter we introduce some of the basic concepts that will be useful for the study of integer programming problems. 2.1 Notation Let A R m n be a matrix with row index set M = {1,...,m}

More information