881 likes | 2.11k Views
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.
E N D
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