# Some Applications of Graph Bandwidth to Constraint Satisfaction Problems

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 Some Applications of Graph Bandwidth to Constraint Satisfaction Problems Ramin Zabih Computer Science Department Stanford University Stanford, California Abstract Bandwidth is a fundamental concept in graph theory which has some surprising applications to a class of AI search problems. Graph bandwidth provides a link between the syntactic structure of a constraint satisfaction problem (CSP) and the complexity of the underlying search task. Bandwidth can be used to define a new class of easy CSP s, namely those that have limited constraint graph bandwidth. These CSP s can be solved in polynomial time, essentially by divide and conquer. This in turn suggests that bandwidth provides a mathematical measure of the decomposability of a search problem. In addition, bandwidth supplies a measure for comparing different search orderings for a given CSP. Statistical analysis suggests that backtracking with small bandwidth orderings leads to a more efficient search than that obtained under orderings with larger bandwidths. Small bandwidth orderings also limit the pruning that can be done by intelligent backtracking. If small bandwidth orderings are indeed advantageous, then a large number of heuristics developed in numerical analysis to find such orderings may find applicability to solving constraint satisfaction problems. 1 Introduction The bandwidth of an ordering of a graph is the maximum distance between two adjacent vertices, and the bandwidth of a graph is its minimum bandwidth under any ordering. 1 Bandwidth is one of the basic concepts in graph theory, and is related to almost every other mathematical property that graphs possess [?]. It is nonetheless surprising to discover some strong connections between graph bandwidth and a class of search problems encountered in AI. The search problems known as constraint satisfaction problems (CSP s) have an associated constraint graph. The vertices of the graph consist of the vari- 1 These definitions will be made more precise in section 3. ables of the search problem, and there is an edge between two vertices if there is a (non-trivial) constraint between those variables. The bandwidth of the constraint graph is strongly related to the complexity of the underlying constraint satisfaction problem. In particular, there is evidence for two claims. The bandwidth of the constraint graph of a constraint satisfaction problem serves as a measure of its decomposability. The bandwidth of a search ordering provides a measure of its quality, as backtracking with a small bandwidth ordering generally results in a smaller search tree. The first claim is supported by a proof that any problem of limited bandwidth can be solved in polynomial time, essentially by divide and conquer. The second claim is supported by statistical analysis, and by evidence that small bandwidth orderings have additional important properties related to intelligent backtracking. If small bandwidth orderings are indeed useful, then the large body of heuristics that has been developed by numerical analysts for finding such orderings may prove to be useful for solving CSP s. After a brief review of constraint satisfaction problems, section 3 formally defines bandwidth and relates it to some other graph-theoretic notions in the CSP literature. Section 4 proves that any CSP whose bandwidth can be limited is solvable in polynomial time. Section 5 presents statistical data which suggests that small bandwidth orderings are generally superior, as well as describing some preliminary results about the interaction between such orderings and intelligent backtracking.

2 2 Constraint Satisfaction Problems A constraint satisfaction problem (CSP) has a set of variables and a domain of values, V = {v 1,v 2,...,v n } the set of variables, V = n, D = {d 1,d 2,...,d m } the set of values, D = d. Every variable v i must be assigned a value d k. A CSP also consists of some constraints saying which assignments are compatible. Most interesting problems are binary CSP s, where the constraints involve pairs of variables. Such a constraint is a (proper) subset of D D consisting of the simultaneously permitted assignments. A binary CSP has an associated constraint graph G =(V,E), where E = { (v i,v j ) there is a contraint between v i and v j }. Note that the constraint graph hides a great deal of the information about the search problem, particularly the tightness of the constraints. The constraint graph G may be assumed to be connected, as otherwise each connected component can be considered separately. Many standard combinatorial problems are binary CSP s, including graph coloring and the n-queens problem. 3 Graph Definitions Given a graph G with n vertices, an ordering h is a oneto-one map from the vertices of G to the set {1,...,n}. The bandwidth of a vertex v under an ordering h is the maximum value of h(v) h(w) over all vertices w connected to v. The bandwidth of a graph under an ordering is the maximum bandwidth of any vertex, and the bandwidth of a graph is its minimum bandwidth under any ordering. The bandwidth of G under h will be written as B(G, h). 3.1 Relating bandwidth and other graph properties There are many notions akin to bandwidth which have been developed in the CSP literature. It is straightforward to determine the relationship between bandwidth and three graph properties: front length (introduced by [?]), width [?], and induced width [?]. Seidel [?] defines an invasion of G to be a sequence of subgraphs G 1,...,G n where G i is a subgraph of G i+1 with i vertices and where G n = G. For a given invasion, a front F i consists of the vertices in G i that are adjacent (in G) to vertices not in G i. The front length of an invasion is the maximum size of F i. There is an invasion associated with any ordering h, defined by G 1 = h 1 (1), G i+1 = G i h 1 (i + 1). The front length of G under the invasion associated with h will be written as F (G, h). Freuder [?] defines the width of a vertex v under an ordering h to be the number of vertices that are connected to v which occur earlier than v under h. The width of a graph under an ordering is the maximum width of any vertex. The width of G under h will be written as W (G, h). Dechter and Pearl [?] construct the induced graph of G under an ordering h by processing G s vertices in the order {h 1 (n),...,h 1 (1)}, and adding an edge between any two neighbors of a vertex v that precede v under h. The induced graph of G under h will be written as G h. It is straightforward to analyze the relationships among these quantities. First, for a fixed ordering h, define P i def = {h 1 (i B(G, h)),...,h 1 (i 1)} (assuming h 1 (j) = h 1 (1) if j < 1 for simplicity). The important property of P i is the following: if there is an edge between v and w, where v occurs before h(i) and w does not, then v P i. Theorem 3.1 For any graph G and ordering h B(G, h) F (G, h). Proof: Consider a front F i in the invasion defined by h. Clearly F i P i+1. But P i+1 B(G, h). Theorem 3.2 For any graph G and ordering h B(G, h) W (G, h). Proof: All of the previous vertices that v = h(i) is connected to must be in P i. Theorem 3.3 For any graph G and ordering h B(G, h) W (G h,h). Proof: The edges added when v = h(i) is processed will be between two elements of P i. Adding such edges will never increase the bandwidth, so B(G h,h)=b(g, h). Applying theorem 3.2 with G replaced by G h gives the desired result. Note that the above three inequalities cannot be made strict (i.e., it is invalid to replace by > ). Theorem 3.4 There exists a graph G and an ordering h such that B(G, h) = F (G, h) = W (G, h) = W (G h,h). Proof: Consider a graph G that is a triangle. Then, for any ordering h, B(G, h) =F (G, h) =W (G, h) = W (G h,h)=2.

3 4 Limited Bandwidth CSP s There is no technical definition of what it means for a search problem to be local or nearly decomposable. The intuition behind these terms, however, is that certain search problems can be solved piece by piece, without taking the entire problem into consideration at each point in the search. Coloring a long and narrow graph is an example of such a search problem. There are several reasons to believe that the bandwidth of a CSP s constraint graph reflects the locality of the search problem. First, note that edges in the constraint graph measure strong interactions between variables. If there is no edge between two variables, then assigning one a value can have no (direct) effect upon the other, so the lack of an edge reflects a sort of independence. If the CSP has limited bandwidth, each vertex in the constraint graph can have no more than a bounded number of neighbors. This suggests that small bandwidth graphs should be solvable by only worrying about a small subset of the variables at any instant. Additional anecdotal evidence to support this conclusion can be obtained by visual inspection of graphs of various bandwidths. Graphs with small bandwidths tend to look long and thin. The highest bandwidth graph, on the other hand, is the complete graph where there is an edge between every pair of vertices. A stronger argument can be made on the basis of the claim that nearly decomposable search problems should be easy to solve. In particular, it should be possible to solve them efficiently by solving their subparts more or less independently (gluing the subparts back together into a solution by divide and conquer or by dynamic programming). It turns out that any CSP of limited bandwidth can be solved in polynomial time by dynamic programming. 4.1 Solving bandwidth-limited CSP s in polynomial time The basic strategy is to find an ordering with minimal bandwidth, and then to use this ordering to solve the CSP. In general, determining the bandwidth of a graph is an NP-complete problem [?]. However, if the graph s bandwidth is no larger than b, a minimal bandwidth ordering can be found in time O(n b ) and also space O(n b ). This can be done via an algorithm of Saxe [?] as improved by Gurari and Sudborough [?]. Given an ordering h with bandwidth no larger than b, the CSP can then be solved via dynamic programming. There are three possible algorithms, with slightly different bounds. Because of the relationships between bandwidth, front length and induced width that are proven in section 3, either Seidel s or B(G, h) N Tree size ± ± ± ± ± 405 Figure 1: Average tree size for a graph-coloring problem, with 99% confidence intervals. Dechter and Pearl s method may be used. In addition, Fernández-Baca has recently produced an algorithm that makes explicit use of bandwidth [?]. However, Dechter and Pearl s algorithm gives the bound that seems likely to be lowest in practice. Dechter and Pearl [?] show how to solve a CSP under an ordering h with induced width w = W (G h,h)in time O(d w+1 ) and space O(d w ). Applying theorem 3.3, w b. Combining this with Saxe s algorithm gives the desired result. Theorem 4.1 Any CSP whose constraint graph s bandwidth is no larger than b can be solved in time O(n b + d b+1 ) and space O(n b + d b ). One corollary of this theorem is a very simple proof of a result first discovered by Monien and Sudborough [?]. Corollary 4.2 Any graph of limited bandwidth can be colored in polynomial time. 5 Small Bandwidth Orderings Since small bandwidth CSP s are easy to solve, the obvious generalization would be to claim that small bandwidth orderings are generally efficient. In fact, the method for solving small bandwidth CSP s described above first finds a small bandwidth ordering (by Saxe s algorithm), and next uses that ordering to solve the search problem. This suggests that there is something special about small bandwidth orderings. There is both empirical and theoretical evidence that small bandwidth orderings have special properties. Empirically, there is statistical evidence that using small bandwidth orderings for backtrack search is advantageous. There are also theoretical evidence that links small bandwidth orderings with intelligent backtracking. 5.1 Empirical results Statistical analysis of some preliminary experimental results suggest that small bandwidth orderings are indeed advantageous. The problem that has been examined is the graph-coloring problem described in

4 Search tree size Graph bandwidth Figure 2: Average tree size as a function of ordering bandwidth, with 99% confidence intervals. [?]. This CSP has 1176 solutions. Depth-first search (sometimes referred to as backtracking, or chronological backtracking) has been run on the problem several thousand times, under orderings with different bandwidths. Figure 1 shows the average number of nodes in the search tree as a function of the bandwidth of the ordering, together with the 99% confidence intervals. The graph in figure 2 presents the same data in a slightly more readable form. The data supports the hypothesis that the search trees resulting from small bandwidth orderings are significantly smaller than those resulting from orderings with greater bandwidth. More precisely, the data suggests that as the bandwidth of the ordering increases, the search tree gets larger. Furthermore each increment in bandwidth results in a corresponding increase in search tree size which is statistically significant at the 99% confidence level. For this problem at least, it is not merely the case that the very smallest bandwidth orderings are better han the very largest. Of course, one would like to have evidence from more than one problem. The large number of trial runs necessary to obtain statistically significant results, however, makes this something of a challenge. 5.2 Ordering bandwidth and intelligent backtracking Why should it be advantageous to use a small bandwidth ordering? Suppose that a CSP is solved by chronological backtracking under an ordering with bandwidth b. Such a process will construct a search tree in the standard manner: the nodes of the search tree will consist of labelings which assign values to some subset of the variables, the root node will consist of the empty labeling, and the children of a node will assign a value to one variable that was not assigned a value by the parent node. Assuming that the CSP is solved under a fixed ordering, each level in the search tree will correspond to a single variable which is assigned a value at that depth in the tree. 2 Some of the leaf nodes of the search tree will be solutions to the CSP; the remaining leaf nodes are failures, because all the possible values of some unassigned variable are incompatible with the values of the variables that have been assigned values. At a given node of this search tree, the corresponding labeling will have assigned values to certain variables. However, only the most recent b variables to have been assigned values can have any effect on the remainder of the search. Any variables that were assigned values earlier will have no edges in the constraint graph connecting them to variables that do not yet have values, and hence will have no effect. More precisely, consider two labelings at the same level in the search tree. If these two labelings assign the same values to the most recent b variables, then the subtrees underneath the two labelings will be isomorphic. This is the property that the dynamic programming schemes mentioned in section 4.1 exploit. This is also an advantageous property for doing chronological backtracking. In a small bandwidth ordering, at any point in the search the only variables that matter are a small number of recent ones. When using backtrack search, the decision actually responsible for a failure can occur significantly before the failure itself is detected. This is a well-known malady of backtracking which can lead to extremely poor performance. The greater the number of intervening decisions, the worse backtracking performs. Various schemes have been proposed to solve this problem. These schemes mostly work by invoking some sort of failure analysis to determine where responsibility for a failure lies. The results of this analysis are then used to discard portions of the search tree which can be shown to contain no solution. The two most popular such schemes are dependencydirected backtracking [?] and intelligent backtracking [?]. The major difference involves how much pruning of the search tree is done. Dependency-directed backtracking achieves a much greater reduction in search tree size, at the cost of a potentially exponential use of 2 It is rather straightforward to extend all of the results in this paper to rearrangement search strategies such as [?]. The bandwidth of a dynamic search ordering is simply the maximum of the bandwidths of the orderings used down any branch of the search tree.

6 by a fellowship from the Fannie and John Hertz Foundation.

### On the Space-Time Trade-off in Solving Constraint Satisfaction Problems*

On the Space-Time Trade-off in Solving Constraint Satisfaction Problems* Roberto J. Bayardo Jr. and Daniel P. Miranker Department of Computer Sciences and Applied Research Laboratories The University of

### Unifying and extending hybrid tractable classes of CSPs

Journal of Experimental & Theoretical Artificial Intelligence Vol. 00, No. 00, Month-Month 200x, 1 16 Unifying and extending hybrid tractable classes of CSPs Wady Naanaa Faculty of sciences, University

### These notes present some properties of chordal graphs, a set of undirected graphs that are important for undirected graphical models.

Undirected Graphical Models: Chordal Graphs, Decomposable Graphs, Junction Trees, and Factorizations Peter Bartlett. October 2003. These notes present some properties of chordal graphs, a set of undirected

### Constraint Satisfaction Problems

Constraint Satisfaction Problems Search and Lookahead Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 4/6, 2012 Nebel, Hué and Wölfl (Universität Freiburg) Constraint

### Fast algorithms for max independent set

Fast algorithms for max independent set N. Bourgeois 1 B. Escoffier 1 V. Th. Paschos 1 J.M.M. van Rooij 2 1 LAMSADE, CNRS and Université Paris-Dauphine, France {bourgeois,escoffier,paschos}@lamsade.dauphine.fr

### 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

### 6.001 Notes: Section 31.1

6.001 Notes: Section 31.1 Slide 31.1.1 In previous lectures we have seen a number of important themes, which relate to designing code for complex systems. One was the idea of proof by induction, meaning

### Figure 4.1: The evolution of a rooted tree.

106 CHAPTER 4. INDUCTION, RECURSION AND RECURRENCES 4.6 Rooted Trees 4.6.1 The idea of a rooted tree We talked about how a tree diagram helps us visualize merge sort or other divide and conquer algorithms.

### 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

9 About Intersection Graphs Since this lecture we focus on selected detailed topics in Graph theory that are close to your teacher s heart... The first selected topic is that of intersection graphs, i.e.

### 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

### A Fast Algorithm for Optimal Alignment between Similar Ordered Trees

Fundamenta Informaticae 56 (2003) 105 120 105 IOS Press A Fast Algorithm for Optimal Alignment between Similar Ordered Trees Jesper Jansson Department of Computer Science Lund University, Box 118 SE-221

### 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,

### High Dimensional Indexing by Clustering

Yufei Tao ITEE University of Queensland Recall that, our discussion so far has assumed that the dimensionality d is moderately high, such that it can be regarded as a constant. This means that d should

### Artificial Intelligence

Contents Artificial Intelligence 5. Constraint Satisfaction Problems CSPs as Search Problems, Solving CSPs, Problem Structure Wolfram Burgard, Andreas Karwath, Bernhard Nebel, and Martin Riedmiller What

### Artificial Intelligence

Artificial Intelligence 5. Constraint Satisfaction Problems CSPs as Search Problems, Solving CSPs, Problem Structure Wolfram Burgard, Andreas Karwath, Bernhard Nebel, and Martin Riedmiller SA-1 Contents

### 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

### 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,

### P and NP (Millenium problem)

CMPS 2200 Fall 2017 P and NP (Millenium problem) Carola Wenk Slides courtesy of Piotr Indyk with additions by Carola Wenk CMPS 2200 Introduction to Algorithms 1 We have seen so far Algorithms for various

### CS 188: Artificial Intelligence. Recap: Search

CS 188: Artificial Intelligence Lecture 4 and 5: Constraint Satisfaction Problems (CSPs) Pieter Abbeel UC Berkeley Many slides from Dan Klein Recap: Search Search problem: States (configurations of the

### Constraint Satisfaction Problems. slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig, Jean-Claude Latombe

Constraint Satisfaction Problems slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig, Jean-Claude Latombe Standard search problems: State is a black box : arbitrary data structure Goal test

### 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

### A Uniform View of Backtracking

A Uniform View of Backtracking Fahiem Bacchus 1 Department. of Computer Science, 6 Kings College Road, University Of Toronto, Toronto, Ontario, Canada, M5S 1A4, fbacchus@cs.toronto.edu? Abstract. Backtracking

### Superconcentrators of depth 2 and 3; odd levels help (rarely)

Superconcentrators of depth 2 and 3; odd levels help (rarely) Noga Alon Bellcore, Morristown, NJ, 07960, USA and Department of Mathematics Raymond and Beverly Sackler Faculty of Exact Sciences Tel Aviv

### Ramsey s Theorem on Graphs

Ramsey s Theorem on Graphs 1 Introduction Exposition by William Gasarch Imagine that you have 6 people at a party. We assume that, for every pair of them, either THEY KNOW EACH OTHER or NEITHER OF THEM

### P Is Not Equal to NP. ScholarlyCommons. University of Pennsylvania. Jon Freeman University of Pennsylvania. October 1989

University of Pennsylvania ScholarlyCommons Technical Reports (CIS) Department of Computer & Information Science October 1989 P Is Not Equal to NP Jon Freeman University of Pennsylvania Follow this and

### 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

### Constraint Satisfaction Problems

Constraint Satisfaction Problems Chapter 5 Chapter 5 1 Outline CSP examples Backtracking search for CSPs Problem structure and problem decomposition Local search for CSPs Chapter 5 2 Constraint satisfaction

### arxiv: v3 [cs.dm] 12 Jun 2014

On Maximum Differential Coloring of Planar Graphs M. A. Bekos 1, M. Kaufmann 1, S. Kobourov, S. Veeramoni 1 Wilhelm-Schickard-Institut für Informatik - Universität Tübingen, Germany Department of Computer

### / 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

### Conflict based Backjumping for Constraints Optimization Problems

Conflict based Backjumping for Constraints Optimization Problems Roie Zivan and Amnon Meisels {zivanr,am}@cs.bgu.ac.il Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105,

### Rigidity, connectivity and graph decompositions

First Prev Next Last Rigidity, connectivity and graph decompositions Brigitte Servatius Herman Servatius Worcester Polytechnic Institute Page 1 of 100 First Prev Next Last Page 2 of 100 We say that a framework

### On 2-Subcolourings of Chordal Graphs

On 2-Subcolourings of Chordal Graphs Juraj Stacho School of Computing Science, Simon Fraser University 8888 University Drive, Burnaby, B.C., Canada V5A 1S6 jstacho@cs.sfu.ca Abstract. A 2-subcolouring

### CS 188: Artificial Intelligence Fall 2011

Announcements Project 1: Search is due next week Written 1: Search and CSPs out soon Piazza: check it out if you haven t CS 188: Artificial Intelligence Fall 2011 Lecture 4: Constraint Satisfaction 9/6/2011

### The problem of minimizing the elimination tree height for general graphs is N P-hard. However, there exist classes of graphs for which the problem can

A Simple Cubic Algorithm for Computing Minimum Height Elimination Trees for Interval Graphs Bengt Aspvall, Pinar Heggernes, Jan Arne Telle Department of Informatics, University of Bergen N{5020 Bergen,

### Fast Skew Partition Recognition

Fast Skew Partition Recognition William S. Kennedy 1, and Bruce Reed 2, 1 Department of Mathematics and Statistics, McGill University, Montréal, Canada, H3A2K6 kennedy@math.mcgill.ca 2 School of Computer

### On maximum spanning DAG algorithms for semantic DAG parsing

On maximum spanning DAG algorithms for semantic DAG parsing Natalie Schluter Department of Computer Science School of Technology, Malmö University Malmö, Sweden natalie.schluter@mah.se Abstract Consideration

### MergeSort, Recurrences, Asymptotic Analysis Scribe: Michael P. Kim Date: September 28, 2016 Edited by Ofir Geri

CS161, Lecture 2 MergeSort, Recurrences, Asymptotic Analysis Scribe: Michael P. Kim Date: September 28, 2016 Edited by Ofir Geri 1 Introduction Today, we will introduce a fundamental algorithm design paradigm,

### Domination Cover Pebbling: Structural Results

Domination Cover Pebbling: Structural Results arxiv:math.co/0509564 v 3 Sep 005 Nathaniel G. Watson Department of Mathematics Washington University at St. Louis Carl R. Yerger Department of Mathematics

### A NOTE ON THE NUMBER OF DOMINATING SETS OF A GRAPH

A NOTE ON THE NUMBER OF DOMINATING SETS OF A GRAPH STEPHAN WAGNER Abstract. In a recent article by Bród and Skupień, sharp upper and lower bounds for the number of dominating sets in a tree were determined.

### 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

### CS 161 Lecture 11 BFS, Dijkstra s algorithm Jessica Su (some parts copied from CLRS) 1 Review

1 Review 1 Something I did not emphasize enough last time is that during the execution of depth-firstsearch, we construct depth-first-search trees. One graph may have multiple depth-firstsearch trees,

### 1 Definition of Reduction

1 Definition of Reduction Problem A is reducible, or more technically Turing reducible, to problem B, denoted A B if there a main program M to solve problem A that lacks only a procedure to solve problem

### Comparing Implementations of Optimal Binary Search Trees

Introduction Comparing Implementations of Optimal Binary Search Trees Corianna Jacoby and Alex King Tufts University May 2017 In this paper we sought to put together a practical comparison of the optimality

### Chordal Graphs: Theory and Algorithms

Chordal Graphs: Theory and Algorithms 1 Chordal graphs Chordal graph : Every cycle of four or more vertices has a chord in it, i.e. there is an edge between two non consecutive vertices of the cycle. Also

### 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

### 4.1 Review - the DPLL procedure

Applied Logic Lecture 4: Efficient SAT solving CS 4860 Spring 2009 Thursday, January 29, 2009 The main purpose of these notes is to help me organize the material that I used to teach today s lecture. They

### MergeSort, Recurrences, Asymptotic Analysis Scribe: Michael P. Kim Date: April 1, 2015

CS161, Lecture 2 MergeSort, Recurrences, Asymptotic Analysis Scribe: Michael P. Kim Date: April 1, 2015 1 Introduction Today, we will introduce a fundamental algorithm design paradigm, Divide-And-Conquer,

### 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

### Binary vs. Non-Binary Constraints

Binary vs. Non-Binary Constraints Fahiem Bacchus Department of Computer Science University of Toronto Toronto, Canada fbacchus@cs.toronto.edu Xinguang Chen Department of Computing Science University of

### A Construction of Cospectral Graphs

Project Number: MA-PRC-3271 A Construction of Cospectral Graphs A Major Qualifying Project Report submitted to the Faculty of the WORCESTER POLYTECHNIC INSTITUTE in partial fulfillment of the requirements

### 15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015

15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015 While we have good algorithms for many optimization problems, the previous lecture showed that many

### Orthogonal art galleries with holes: a coloring proof of Aggarwal s Theorem

Orthogonal art galleries with holes: a coloring proof of Aggarwal s Theorem Pawe l Żyliński Institute of Mathematics University of Gdańsk, 8095 Gdańsk, Poland pz@math.univ.gda.pl Submitted: Sep 9, 005;

### 1 Some Solution of Homework

Math 3116 Dr. Franz Rothe May 30, 2012 08SUM\3116_2012h1.tex Name: Use the back pages for extra space 1 Some Solution of Homework Proposition 1 (Counting labeled trees). There are n n 2 different labeled

### 2. CONNECTIVITY Connectivity

2. CONNECTIVITY 70 2. Connectivity 2.1. Connectivity. Definition 2.1.1. (1) A path in a graph G = (V, E) is a sequence of vertices v 0, v 1, v 2,..., v n such that {v i 1, v i } is an edge of G for i =

### Artificial Intelligence Constraint Satisfaction Problems

Artificial Intelligence Constraint Satisfaction Problems Recall Search problems: Find the sequence of actions that leads to the goal. Sequence of actions means a path in the search space. Paths come with

### Graphic TSP in cubic graphs

Graphic TSP in cubic graphs arxiv:1608.07568v2 [cs.dm] 30 Aug 2016 Zdeněk Dvořák Daniel Král Bojan Mohar Abstract We prove that every simple 2-connected cubic n-vertex graph contains a spanning closed

### Graph Algorithms Using Depth First Search

Graph Algorithms Using Depth First Search Analysis of Algorithms Week 8, Lecture 1 Prepared by John Reif, Ph.D. Distinguished Professor of Computer Science Duke University Graph Algorithms Using Depth

### Chapter S:II. II. Search Space Representation

Chapter S:II II. Search Space Representation Systematic Search Encoding of Problems State-Space Representation Problem-Reduction Representation Choosing a Representation S:II-1 Search Space Representation

### Binary Trees. BSTs. For example: Jargon: Data Structures & Algorithms. root node. level: internal node. edge.

Binary Trees 1 A binary tree is either empty, or it consists of a node called the root together with two binary trees called the left subtree and the right subtree of the root, which are disjoint from

### Lecture 5 Sorting Arrays

Lecture 5 Sorting Arrays 15-122: Principles of Imperative Computation (Spring 2018) Frank Pfenning, Rob Simmons We begin this lecture by discussing how to compare running times of functions in an abstract,

### Trapezoidal decomposition:

Trapezoidal decomposition: Motivation: manipulate/analayze a collection of segments e.g. detect segment intersections e.g., point location data structure Definition. Draw verticals at all points binary

### Today. CS 188: Artificial Intelligence Fall Example: Boolean Satisfiability. Reminder: CSPs. Example: 3-SAT. CSPs: Queries.

CS 188: Artificial Intelligence Fall 2007 Lecture 5: CSPs II 9/11/2007 More CSPs Applications Tree Algorithms Cutset Conditioning Today Dan Klein UC Berkeley Many slides over the course adapted from either

### One-Point Geometric Crossover

One-Point Geometric Crossover Alberto Moraglio School of Computing and Center for Reasoning, University of Kent, Canterbury, UK A.Moraglio@kent.ac.uk Abstract. Uniform crossover for binary strings has

### Problem Set 2 Solutions

Problem Set 2 Solutions Graph Theory 2016 EPFL Frank de Zeeuw & Claudiu Valculescu 1. Prove that the following statements about a graph G are equivalent. - G is a tree; - G is minimally connected (it is

### Graphs and Network Flows ISE 411. Lecture 7. Dr. Ted Ralphs

Graphs and Network Flows ISE 411 Lecture 7 Dr. Ted Ralphs ISE 411 Lecture 7 1 References for Today s Lecture Required reading Chapter 20 References AMO Chapter 13 CLRS Chapter 23 ISE 411 Lecture 7 2 Minimum

### The following is a summary, hand-waving certain things which actually should be proven.

1 Basics of Planar Graphs The following is a summary, hand-waving certain things which actually should be proven. 1.1 Plane Graphs A plane graph is a graph embedded in the plane such that no pair of lines

### 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

### Constraint Satisfaction Problems Part 2

Constraint Satisfaction Problems Part 2 Deepak Kumar October 2017 CSP Formulation (as a special case of search) State is defined by n variables x 1, x 2,, x n Variables can take on values from a domain

### Diversity Coloring for Distributed Storage in Mobile Networks

Diversity Coloring for Distributed Storage in Mobile Networks Anxiao (Andrew) Jiang and Jehoshua Bruck California Institute of Technology Abstract: Storing multiple copies of files is crucial for ensuring

### CS 280 Problem Set 10 Solutions Due May 3, Part A

CS 280 Problem Set 10 Due May 3, 2002 Part A (1) You are given a directed graph G with 1000 vertices. There is one weakly connected component of size 800 and several other weakly connected components of

### Figure : Example Precedence Graph

CS787: Advanced Algorithms Topic: Scheduling with Precedence Constraints Presenter(s): James Jolly, Pratima Kolan 17.5.1 Motivation 17.5.1.1 Objective Consider the problem of scheduling a collection of

### 10. EXTENDING TRACTABILITY

0. EXTENDING TRACTABILITY finding small vertex covers solving NP-hard problems on trees circular arc coverings vertex cover in bipartite graphs Lecture slides by Kevin Wayne Copyright 005 Pearson-Addison

### A Simplied NP-complete MAXSAT Problem. Abstract. It is shown that the MAX2SAT problem is NP-complete even if every variable

A Simplied NP-complete MAXSAT Problem Venkatesh Raman 1, B. Ravikumar 2 and S. Srinivasa Rao 1 1 The Institute of Mathematical Sciences, C. I. T. Campus, Chennai 600 113. India 2 Department of Computer

### Introduction to Algorithms

Lecture 1 Introduction to Algorithms 1.1 Overview The purpose of this lecture is to give a brief overview of the topic of Algorithms and the kind of thinking it involves: why we focus on the subjects that

### 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:

### Constraint Satisfaction Problems

Constraint Satisfaction Problems Chapter 5 Section 1 3 Constraint Satisfaction 1 Outline Constraint Satisfaction Problems (CSP) Backtracking search for CSPs Local search for CSPs Constraint Satisfaction

### Hardness of Subgraph and Supergraph Problems in c-tournaments

Hardness of Subgraph and Supergraph Problems in c-tournaments Kanthi K Sarpatwar 1 and N.S. Narayanaswamy 1 Department of Computer Science and Engineering, IIT madras, Chennai 600036, India kanthik@gmail.com,swamy@cse.iitm.ac.in

### Modules. 6 Hamilton Graphs (4-8 lectures) Introduction Necessary conditions and sufficient conditions Exercises...

Modules 6 Hamilton Graphs (4-8 lectures) 135 6.1 Introduction................................ 136 6.2 Necessary conditions and sufficient conditions............. 137 Exercises..................................

### 4 Basics of Trees. Petr Hliněný, FI MU Brno 1 FI: MA010: Trees and Forests

4 Basics of Trees Trees, actually acyclic connected simple graphs, are among the simplest graph classes. Despite their simplicity, they still have rich structure and many useful application, such as in

### Copyright 2000, Kevin Wayne 1

Chapter 3 - Graphs Undirected Graphs Undirected graph. G = (V, E) V = nodes. E = edges between pairs of nodes. Captures pairwise relationship between objects. Graph size parameters: n = V, m = E. Directed

### Pacific Journal of Mathematics

Pacific Journal of Mathematics SIMPLIFYING TRIANGULATIONS OF S 3 Aleksandar Mijatović Volume 208 No. 2 February 2003 PACIFIC JOURNAL OF MATHEMATICS Vol. 208, No. 2, 2003 SIMPLIFYING TRIANGULATIONS OF S

### Solutions to relevant spring 2000 exam problems

Problem 2, exam Here s Prim s algorithm, modified slightly to use C syntax. MSTPrim (G, w, r): Q = V[G]; for (each u Q) { key[u] = ; key[r] = 0; π[r] = 0; while (Q not empty) { u = ExtractMin (Q); for

### Fast algorithm for generating ascending compositions

manuscript No. (will be inserted by the editor) Fast algorithm for generating ascending compositions Mircea Merca Received: date / Accepted: date Abstract In this paper we give a fast algorithm to generate

### CSC 373: Algorithm Design and Analysis Lecture 4

CSC 373: Algorithm Design and Analysis Lecture 4 Allan Borodin January 14, 2013 1 / 16 Lecture 4: Outline (for this lecture and next lecture) Some concluding comments on optimality of EST Greedy Interval

### Formal Model. Figure 1: The target concept T is a subset of the concept S = [0, 1]. The search agent needs to search S for a point in T.

Although this paper analyzes shaping with respect to its benefits on search problems, the reader should recognize that shaping is often intimately related to reinforcement learning. The objective in reinforcement

### Michał Dębski. Uniwersytet Warszawski. On a topological relaxation of a conjecture of Erdős and Nešetřil

Michał Dębski Uniwersytet Warszawski On a topological relaxation of a conjecture of Erdős and Nešetřil Praca semestralna nr 3 (semestr letni 2012/13) Opiekun pracy: Tomasz Łuczak On a topological relaxation

### arxiv: v1 [math.co] 4 Sep 2017

Abstract Maximal chord diagrams up to all isomorphisms are enumerated. The enumerating formula is based on a bijection between rooted one-vertex one-face maps on locally orientable surfaces andacertain

### Games and Adversarial Search II Alpha-Beta Pruning (AIMA 5.3)

Games and Adversarial Search II Alpha-Beta Pruning (AIMA 5.) Some slides adapted from Richard Lathrop, USC/ISI, CS 7 Review: The Minimax Rule Idea: Make the best move for MAX assuming that MIN always replies

### Maximal Independent Set

Chapter 0 Maximal Independent Set In this chapter we present a highlight of this course, a fast maximal independent set (MIS) algorithm. The algorithm is the first randomized algorithm that we study in

### THE BRAID INDEX OF ALTERNATING LINKS

THE BRAID INDEX OF ALTERNATING LINKS YUANAN DIAO, GÁBOR HETYEI AND PENGYU LIU Abstract. It is well known that the minimum crossing number of an alternating link equals the number of crossings in any reduced

### Eddie Schwalb, Rina Dechter. It is well known that all these tasks are NP-hard.

Coping With Disjunctions in Temporal Constraint Satisfaction Problems 3 Eddie Schwalb, Rina Dechter Department of Information and Computer Science University of California at Irvine, CA 977 eschwalb@ics.uci.edu,

### Fixed Parameter Algorithms

Fixed Parameter Algorithms Dániel Marx Tel Aviv University, Israel Open lectures for PhD students in computer science January 9, 2010, Warsaw, Poland Fixed Parameter Algorithms p.1/41 Parameterized complexity

### On the Complexity of the Policy Improvement Algorithm. for Markov Decision Processes

On the Complexity of the Policy Improvement Algorithm for Markov Decision Processes Mary Melekopoglou Anne Condon Computer Sciences Department University of Wisconsin - Madison 0 West Dayton Street Madison,

### Binary Heaps in Dynamic Arrays

Yufei Tao ITEE University of Queensland We have already learned that the binary heap serves as an efficient implementation of a priority queue. Our previous discussion was based on pointers (for getting

### 11.1. Definitions. 11. Domination in Graphs

11. Domination in Graphs Some definitions Minimal dominating sets Bounds for the domination number. The independent domination number Other domination parameters. 11.1. Definitions A vertex v in a graph

### Crossing Numbers and Parameterized Complexity

Crossing Numbers and Parameterized Complexity MichaelJ.Pelsmajer 1, Marcus Schaefer 2, and Daniel Štefankovič3 1 Illinois Institute of Technology, Chicago, IL 60616, USA pelsmajer@iit.edu 2 DePaul University,