Tutorial 7 of CSCI2110 Graph Coloring & Planar Graph Tutor: Zhou Hong (周宏) hzhou@cse.cuhk.edu.hk Reminder • Homework 4 has been posted • Due date: Nov. 1st, 2013, 17:00 Outline • Application of Graph Coloring • Independent Set V.S. Graph Coloring • Circle Packing Theorem Wireless Communication • Nowadays, wireless communication is very popular, we have all kinds of wireless devices – Smart phones, iPads … • These devices communicate with each other through radio base stations Co-Channel Interference • Suppose two base stations have overlapping service area, then using radio waves with the same frequency will cause interference • One possible solution is assigning different frequencies to these two base stations Frequency Spectrum • However, frequencies are precious and expensive resources • Companies & Organizations may need millions of dollars to buy a particular frequency band Frequency Allocation Problem • There are many base stations, some of them have overlapping service areas. • We would like to minimize the number of frequencies allocated to base stations and avoid interference. Interference Graph •Vertices represent base stations •Edges represent overlapping between service areas Graph Coloring Basic Idea: each color represents a frequency Interference Graph Observation: Interference graph is k-colorable if and only if k different frequencies are enough for our allocation. Proof: k different colors ⟺ k different frequencies Adjacent vertices have different colors ⟺ Overlapping base stations have different frequencies Independent Set Independent Set: A set of vertices in a graph, no two of them are adjacent. Blue vertices in the above graph form an independent set. Maximal V.S. Maximum Independent Set Maximal Independent Set: An independent set that is not the subset of any other independent set. Maximum Independent Set: An independent set with maximum number of vertices. Maximum Independent Set Problem: Find an independent set with maximum number of vertices. Independent Set V.S. Graph Coloring Claim: A Graph is k-colorable if and only if the vertex set can be partitioned into k independent sets. Proof (k-colorable ⇒ k independent sets): Set of vertices with the same color is an independent set. Proof (k independent sets ⇒ k-colorable): Assign different colors to different independent sets. Sudoku Rules: Place the numbers 1 through 9 in the 81 cells, but do not let any number appear twice in any row, column, or 3x3 “box”. Usually, you start with a subset of the cells filled, and try to finish it. 1 6 5 4 3 9 7 2 8 7 8 3 2 6 1 4 5 9 9 2 4 8 5 7 6 1 3 4 7 9 5 2 8 1 3 6 3 1 2 9 4 6 5 8 7 6 5 8 7 1 3 2 9 4 5 9 6 1 8 4 3 7 2 2 3 7 6 9 5 8 4 1 8 4 1 3 7 2 9 6 5 Sudoku As Graph Coloring Problem Sudoku As Graph Coloring: • Construct a graph. – 81 vertices, one for each cell. – Two vertices are connected by an edge if the corresponding cells are in the same row, column or 3x3 box. • Assign a color to each number from 1 to 9. • Complete coloring of the graph with the nine colors. Cells with the same number correspond to an independent set of the graph. Therefore, the final solution of Sudoku is 9 independent sets. Frequency Allocation Revisited Again, we have many base stations, some of them have overlapping service areas. However, only r frequencies are available. Our goal is to assign frequencies to base stations to avoid interference, while maximizing the number of working base stations. Coloring With Limited Colors Now, the problem becomes using r colors to color as much vertices as possible, so that two adjacent vertices get different colors. Interference Graph Totally r colors When r = 1, the problem is exactly Maximum Independent Set Problem. Recap Graph Coloring Application To model a problem as a graph coloring problem, a standard recipe is to think of your resource (e.g. gates, time slots, registers, frequencies) as colors, each object as a vertex, and each edge as a conflict. Using minimum number of colors to color all the nodes is equivalent to using minimum amount of resource for all the objects so that there would be no conflicts. Coloring maximum number of nodes with limited number of colors is equivalent to serving maximum number of objects with limited amount of resource so that there would be no conflicts. Circle Packing In geometry, circle packing is the study of the arrangement of circles (of equal or varying sizes) on a given surface such that no overlapping occurs and so that all circles touch another. -- from wiki Intersection Graph The intersection graph of a circle packing is the graph having a vertex for each circle, and an edge for every pair of circles that are tangent. Circle Packing V.S. Planar Graph Circle Packing Theorem: For every connected simple planar graph G there is a circle packing in the plane whose intersection graph is (isomorphic to) G. The proof of this theorem is not easy, we will not talk about it. However, let’s consider the converse of this theorem. For every circle packing in the plane, its intersection graph is a connected simple planar graph. Circle Packing V.S. Planar Graph For every circle packing in the plane, its intersection graph is a connected simple planar graph. To see why this is true, we draw intersection graph on a plane based on the circle packing. • Put vertex on the centre of each circle. • Draw a line between two vertices, if there exists an edge. We claim that the lines between vertices will not intersect except at the endpoint. Circle Packing V.S. Planar Graph By contradiction, assume the line between centres of circle c1 and c2 intersects with the line between centres of circle c3 and c4 at point o. By triangle inequality, at least two of the four pairs of circles (c1 and c3, c3 and c2, c2 and c4, c4 and c1) have overlapping interior, contradiction. Therefore, the intersection graph is planar graph. c3 c1 c2 o c4 Thank You! Q&A?