Graph Coloring.

Slides:



Advertisements
Similar presentations
Connectivity - Menger’s Theorem Graphs & Algorithms Lecture 3.
Advertisements

Approximation Algorithms
22C:19 Discrete Math Graphs Fall 2014 Sukumar Ghosh.
1 NP-completeness Lecture 2: Jan P The class of problems that can be solved in polynomial time. e.g. gcd, shortest path, prime, etc. There are many.
Section 1.7: Coloring Graphs
David Laughon CS594 Graph Theory Graph Coloring. Coloring – Assignment of labels to vertices k-coloring – a coloring where Proper k-coloring – k-coloring.
Structured Graphs and Applications
Last time: terminology reminder w Simple graph Vertex = node Edge Degree Weight Neighbours Complete Dual Bipartite Planar Cycle Tree Path Circuit Components.
CSC5160 Topics in Algorithms Tutorial 2 Introduction to NP-Complete Problems Feb Jerry Le
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
Section 2.3 Graph Coloring By Katie Lessard & Colleen Raimondi.
Graph Colouring Lecture 20: Nov 25.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 23 Instructor: Paul Beame.
Coloring Algorithms and Networks. Coloring2 Graph coloring Vertex coloring: –Function f: V  C, such that for all {v,w}  E: f(v)  f(w) Chromatic number.
Graph Theory Ch.5. Coloring of Graphs 1 Chapter 5 Coloring of Graphs.
K-Coloring k-coloring: A k-coloring of a graph G is a labeling f: V(G)  S, where |S|=k. The labels are colors; the vertices of one color form a color.
The Maximum Independent Set Problem Sarah Bleiler DIMACS REU 2005 Advisor: Dr. Vadim Lozin, RUTCOR.
K-Coloring k-coloring: A k-coloring of a graph G is a labeling f: V(G)  S, where |S|=k. The labels are colors; the vertices of one color form a color.
22C:19 Discrete Math Graphs Spring 2014 Sukumar Ghosh.
Graph Coloring.
CS 2813 Discrete Structures
9.8 Graph Coloring. Coloring Goal: Pick as few colors as possible so that two adjacent regions never have the same color. See handout.
9.2 Graph Terminology and Special Types Graphs
Graph Coloring.
Lecture 22 More NPC problems
1 Graph Coloring: An Overview Graph Coloring Basics Planar/4-color Graphs Applications New Register Allocation Technique.
Data Structures & Algorithms Graphs
Problems on Paired Graphs Stephen Hedetniemi, Alice McRae, Dee Parks, Kelly Wise and come join in…
Graph Colouring L09: Oct 10. This Lecture Graph coloring is another important problem in graph theory. It also has many applications, including the famous.
Chapter 10.8 Graph Coloring
CSE, IIT KGP Graph Coloring. CSE, IIT KGP K-coloring A k-coloring of G is a labeling f:V(G)  {1,…,k}.A k-coloring of G is a labeling f:V(G)  {1,…,k}.
Graph.
Graph Coloring. Vertex Coloring problem in VLSI routing channels Standard cells Share a track Minimize channel width- assign horizontal Metal wires to.
Graph Colouring Lecture 20: Nov 25. This Lecture Graph coloring is another important problem in graph theory. It also has many applications, including.
Introduction to Graph Theory
Chapter 10.8 Graph Coloring These class notes are based on material from our textbook, Discrete Mathematics and Its Applications, 7 th ed., by Kenneth.
Welcome! Cinda Heeren Lecturer Department of CS UIUC The Beauty of Computer Science.
Graph Coloring: Background and Assignment Networked Life NETS 112 Fall 2014 Prof. Michael Kearns.
Presented By Ravindra Babu, Pentyala.  Real World Problem  What is Coloring  Planar Graphs  Vertex Coloring  Edge Coloring  NP Hard Problem  Problem.
Timetable Problem solving using Graph Coloring
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
Chapter 10 NP-Complete Problems.
Graph Coloring and Applications
Graph Coloring Lots of application – be it mapping routes, coloring graphs, building redundant systems, mapping genes, looking at traffic patterns (see.
The Beauty of Computer Science
Mathematical Foundations of AI
Hard Problems Some problems are hard to solve.
Richard Anderson Lecture 26 NP-Completeness
Bipartite Matching Lecture 8: Oct 7.
2.3 Graph Coloring Homework (MATH 310#3W):
Richard Anderson Lecture 26 NP-Completeness
Graph Coloring CS 594 Stephen Grady.
What is the next line of the proof?
ICS 353: Design and Analysis of Algorithms
Parameterised Complexity
Graph Theory Graph Colorings.
Instructor: Shengyu Zhang
Chapter 10.8 Graph Coloring
Richard Anderson Lecture 28 NP-Completeness
Chapter 10.8 Graph Coloring
Chapter 10.8 Graph Coloring
Allocating time to Instructors
Applied Combinatorics, 4th ed. Alan Tucker
Graph Coloring.
CSE 6408 Advanced Algorithms.
Chapter 10.8 Graph Coloring
Graph Colouring & Tress in Graph Theory
Problems on Paired Graphs
Dominating Set By Eric Wengert.
Instructor: Aaron Roth
Presentation transcript:

Graph Coloring

What is Graph Coloring? Graph Coloring is an assignment of colors (or any distinct marks) to the vertices of a graph. Strictly speaking, a coloring is a proper coloring if no two adjacent vertices have the same color. NP-Complete. Clique problem. How many colors are there in Turkey’s map?

Origin of the problem

Proper 6-coloring Optimal 4-coloring

A graph is 2-colorable iff it is bipartite

Why Graph Coloring? Many problems can be formulated as a graph coloring problem including Time Tabling, Scheduling, Register Allocation, Channel Assignment A lot of research has been done in this area so much is already known about the problem space.

University scheduling Scheduling of exams so that as little time as possible is needed for the university to be open

Channel Assignment Find a channel assignment to R radio stations such that no station has a conflict (there is a conflict if they are in vicinity) Vertices – radio stations, edges – conflict, colors – available channels

Register allocation Given a set of available registers, find an assignment of variables to registers Vertices – variables, colors – registers.

Terminology K-Coloring A k-coloring of a graph G is a mapping of V(G) onto the integers 1..k such that adjacent vertices map into different integers. A k-coloring partitions V(G) into k disjoint subsets such that vertices from different subsets have different colors.

Terminology K-colorable Chromatic Number A graph G is k-colorable if it has a k-coloring. Chromatic Number The smallest integer k for which G is k-colorable is called the chromatic number of G. Note: Each color defines an independent set of vertices ( vertices with no edges between them. ). Note: In order to verify that the chromatic number of a graph is a number k, we must also show that the graph can not be properly colored with k-1 colors. In other words the goal is to show that the (k-1)-coloring we might construct for the graph must force two adjacent vertices to have the same color.

Terminology K-chromatic graph Coloring A graph whose chromatic number is k is called a k-chromatic graph. Coloring A coloring of a graph G assigns colors to the vertices of G so that adjacent vertices are given different colors Look at previous example. Simply state that the since we found the chromatic number to be N the graph is N-chromatic.

Example For k-colorable: look at example and say that since it has a 6-coloring therefore it is 6-colorable. For chromatic number: Look at previous example. See if students can find a better coloring of G and state its chromatic number. This is a k-chromatic graph! The chromatic number is four. Therefore this a 4-Chromatic Graph

Example Problem: A state legislature has a number of committees that meet each week for one hour. How can we schedule the committee meetings times such that the least amount of time is used but such that two committees with overlapping membership do not meet at the same time.

Example (cont) A vertex represents a meeting An edge represents a conflict between to meetings The chromatic number of this graph is four. Thus four hours suffice to schedule committee meetings without conflict.

Applications: Sudoku Each cell is a vertex Each integer label is a “color” A vertex is adjacent to another vertex if one of the following hold: Same row Same column Same 3x3 grid Vertex-coloring solves Sudoku

Edge Coloring Given a graph G=(V,E) how can we color the edges such that edges that share a vertex do not share a color.

Existing Results Vizing's theorem Vertex degree: number of edges entering into the edge. Any graph with a maximum vertex degree of δ (delta) can be edge colored using at most δ + 1 colors.

Example Auxiliary Graph An Edge Coloring Problem can be formulated as a Vertex Coloring Problem. Let L(G) be an auxiliary graph and G be the graphs which we are trying to color. L(G) contains a vertex for every edge in G. There is an edge in L(G) drawn between two vertices if their associated edges in G share a vertex. Example Auxiliary Graph A B C A B C

Example Auxiliary Graph B A B C D E A E C D A C B D E A B C D E

Approximate Colouring Algorithm Sort the vertices so that degree(v(i))>=degree(v(i+1)) Colour v(0) For i=1 to n colour v(i) so that there is no clash Complexity is O(n2)