Graph Coloring

1 / 27

# Graph Coloring - PowerPoint PPT Presentation

Graph Coloring. Introduction. When a map is colored, two regions with a common border are customarily assigned different colors. We want to use a small amount of colors instead of just assigning every region its own color. . Graph Coloring. Each map in a plane can be represented by a graph.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Graph Coloring' - kesia

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Graph Coloring

Introduction
• When a map is colored, two regions with a common border are customarily assigned different colors.
• We want to use a small amount of colors instead of just assigning every region its own color.
Graph Coloring
• Each map in a plane can be represented by a graph.
• Each region is represented by a vertex.
• Edges connect to vertices if the regions represented by these vertices have a common border.
• Two regions that touch at only one point are not considered adjacent.
• The resulting graph is called the dual graph of the map.

B

B

A

G

C

D

F

C

A

E

D

B

A D F G

E

E

B

A E

D

C

C

Dual Graph Examples
Graph Coloring
• A coloring of a simple graph is the assignment of a color to each vertex of the graph so that no two adjacent vertices are assigned the same color.
• The chromatic number of a graph is the least number of colors needed for a coloring of the graph.
• The Four Color Theorem:The chromatic number of a planar graph is no greater than four.

b e

a d g

c f

Example
• What is the chromatic number of the graph shown below?

The chromatic number must be

at least 3 since a, b, and c must

be assigned different colors. So

lets try 3 colors first.

b

a

c

e

3 colors work, so the chromatic

number of this graph is 3.

g

d

f

Example
• What is the chromatic number for each graph?

White

White

Yellow

Yellow

Green

White

Yellow

White

Yellow

White

Yellow

Chromatic number: 2

Chromatic number: 3

Applications
• Scheduling Final Exams
• How would you model this with a graph?
• After you have drawn a graph, what should you do?
Applications of Functional Decomposition
• Multi-level FPGA synthesis
• VLSI design
• Machine learning and data mining
• Finite state machine design
Two-Level Curtis Decomposition

F(X) = H( G(B), A ), X = A B

B - bound set

X

A - free set

if A B = , it is disjoint decomposition

if A B  , it is non-disjoint decomposition

Multi-Level Curtis Decomposition

Two-level decomposition is recursively applied to few functions Hi and Gi, until small functions Gt and Ht are created, that are notfurther decomposable.

Thus Curtis decomposition is multi-level,and each two-level stage should createthe candidates for the next level that will beas well decomposable as possible.

Cost Function

Decomposed Function Cardinalityis the total cost of all blocks,where the cost of a binary block withn inputs and m outputs is m * 2n.

Decomposition Algorithm
• Find a set of partitions (Ai, Bi) of input variables (X) into free variables (A) and bound variables (B)
• For each partitioning, find decompositionF(X) = Hi(Gi(Bi), Ai) such that column multiplicity is minimal, and calculate DFC
• Repeat the process for all partitioning until the decomposition with minimum DFC is found.
Algorithm Requirements
• Since the process is iterative, it is of high importance that minimizing of the column multiplicity index was done as fast as possible.
• At the same time it is important that the value of column multiplicity was close to the absolute minimum value for a given partitioning.
New Algorithm DOM forGraph Coloring by Domination Covering

Basic Definitions

Definition 1. Node A in the incompatibility graph covers node B if

1) A and B have no common edges;

2) A has edges with all the nodes that B has edges with;

3) A has at least one more edge than B.

New Algorithm DOM forGraph Coloring by Domination Covering

Basic Definitions(cont’d)

Definition 2. If conditions 1) and 2) are true and A and B have the same number of nodes, then it is called pseudo-covering.

Definition 3. The complete graph is one in which all the pairs of vertices are connected.

Definition 4. A non-reducible graph is a graph that is not complete and has no covered or pseudo-covered nodes. Otherwise, the graph is reducible.

New Algorithm DOM forGraph Coloring by Domination Covering

Theorem 1.If any node A in the incompatibility graph covers any other node B in the graph, then node B can be removed from the graph, and in a pseudo-covering any one of the nodes A and B can be removed.

Theorem 2.If a graph is reducible and can be reduced to a complete graph by successive removing of all its covered and pseudo-covered nodes, then Algorithm DOM finds the coloring with the minimun number of colors(the exact coloring).

2

1

1

Step 2

Step 1

3

3

4

5

4

5

6

6

7

Step 1: Removing 2 and 7 covered by 1

Step 2: Removing 5 covered by 4

Example Showing How DOM Colors ofa Reducible Graph

2

1

1

1

3

Step 4

Step 3

3

3

4

5

4

4

6

6

6

7

Step 3: Coloring the complete graph

Step 4: Coloring the dominated vertices

Example Showing How DOM Colors ofa Reducible Graph

1

1

1

2

6

2

6

2

6

Step 3

Step 2

Step 1

7

7

7

3

5

3

5

5

3

4

4

4

Step 1: Removing random node (1)

Step 2: Removing 2 and 6 covered by 4

Step 3: Removing 3 pseudo-covered by 5

Example Showing How DOM Colors ofa Reducible Graph

1

1

1

2

6

2

6

2

6

Step 5

Step4

7

7

7

5

5

3

3

3

5

4

4

4

Step 4: Coloring the complete graph

Step 5: Coloring the remaining nodes

Example Showing How DOM Colors ofa Reducible Graph
Comparison of MVGUDwith Other Decomposers

* Abbreviation are explained in the next slide

Abbreviations
• TR - TRADE, an earlier decomposer developed at Porland State University
• MI - MISII, a decomposer from UC, Berkeley
• St - a binary decomposer from Freiberg (Germany)
• SC - MuloP-dc, a decomposer from Freiberg (Germany)
• LU - program Demain from Warwaw/Monash (Luba and Selvaraj)
• Js and Jh - systematic and heuristic strategiesin a decompower fromTechnical University of Eindhoven (Jozwiak)
Conclusions
• Presented a new algorithm to createincompatibility graphs
• Presented a new heuristic dominance graph coloring program DOM
• Proved that exact graph coloring algorithmis not needed
• Introduced early filtering of decompositions
• Shown by comparison that this approachis faster and gives less complex decompositions
References
• Partitioning for two-level decompositions
• M.A.Perkowski, “A New Representation of Strongly Unspecified Switching Functions and Its Application to Multi-Level AND/OR/EXOR Synthesis”, Proc. RM ‘95 Work, 1995, pp.143-151
• Our approach to decomposition
• M.A.Perkowski, M.Marek-Sadowska, L.Jozwiak, M.Nowicka, R.Malvi, Z.Wang, J.Zhang, “Decomposition of Multiple-Valued Relations”, Proc. ISMVL ‘97, pp.13-18