SlideShare a Scribd company logo
Maulana Azad NationalMaulana Azad National InstituteInstitute ofof
TechnologyTechnology
Department of Computer Science & EngineeringDepartment of Computer Science & Engineering
PresentationPresentation
OnOn
Graph ColoringGraph Coloring
Presented By:Presented By:
Priyank JainPriyank Jain
Shweta SaxenaShweta Saxena
What is Graph Coloring?What is Graph Coloring?
 Graph Coloring is an assignment of colorsGraph Coloring is an assignment of colors
(or any distinct marks) to the vertices of a(or any distinct marks) to the vertices of a
graph. Strictly speaking, a coloring is agraph. Strictly speaking, a coloring is a
proper coloring if no two adjacent verticesproper coloring if no two adjacent vertices
have the same color.have the same color.
Origin of the problemOrigin of the problem
Origin of the problemOrigin of the problem
Why Graph Coloring?Why Graph Coloring?
 Many problems can be formulated as aMany problems can be formulated as a
graph coloring problem including Timegraph coloring problem including Time
Tabling,Tabling, Channel AssignmentChannel Assignment etc.etc.
 A lot of research has been done in thisA lot of research has been done in this
area.area.
Channel AssignmentChannel Assignment
 Find a channel assignment to R radioFind a channel assignment to R radio
stations such that no station has a conflictstations such that no station has a conflict
(there is a conflict if they are in vicinity)(there is a conflict if they are in vicinity)
 Vertices – radio stations, edges – conflict,Vertices – radio stations, edges – conflict,
colors – available channelscolors – available channels
TerminologyTerminology
 K-ColoringK-Coloring
 A k-coloring of a graph G is a mapping ofA k-coloring of a graph G is a mapping of
V(G) onto the integers 1..k such that adjacentV(G) onto the integers 1..k such that adjacent
vertices map into different integers.vertices map into different integers.
 A k-coloring partitions V(G) into k disjointA k-coloring partitions V(G) into k disjoint
subsets such that vertices from differentsubsets such that vertices from different
subsets have different colors.subsets have different colors.
TerminologyTerminology
 K-colorableK-colorable
 A graph G is k-colorable if it has a k-coloring.A graph G is k-colorable if it has a k-coloring.
 Chromatic NumberChromatic Number
 The smallest integer k for which G is k-The smallest integer k for which G is k-
colorable is called the chromatic number of G.colorable is called the chromatic number of G.
TerminologyTerminology
 K-chromatic graphK-chromatic graph
 A graph whose chromatic number is k isA graph whose chromatic number is k is
called a k-chromatic graph.called a k-chromatic graph.
 ColoringColoring
 A coloring of a graph G assigns colors to theA coloring of a graph G assigns colors to the
vertices of G so that adjacent vertices arevertices of G so that adjacent vertices are
given different colorsgiven different colors
ExampleExample
The chromatic number is four. Therefore this a 4-Chromatic Graph
ExampleExample
 Problem: A state legislature has aProblem: A state legislature has a
number of committees that meet eachnumber of committees that meet each
week for one hour. How can we scheduleweek for one hour. How can we schedule
the committee meetings times such thatthe committee meetings times such that
the least amount of time is used but suchthe least amount of time is used but such
that two committees with overlappingthat two committees with overlapping
membership do not meet at the samemembership do not meet at the same
time.time.
Example (cont)Example (cont)
The chromatic number of this graph is four. Thus four hours suffice to schedule
committee meetings without conflict.
An edge represents a conflict between to meetings
An vertex represents a meeting
Graph Colouring AlgorithmGraph Colouring Algorithm
 There is no efficient algorithm available forThere is no efficient algorithm available for
coloring a graph with minimum number ofcoloring a graph with minimum number of
colors.colors.
 Graph coloring problem is a known NPGraph coloring problem is a known NP
Complete problem.Complete problem.
NP Complete ProblemNP Complete Problem
 NP complete problems are problemsNP complete problems are problems
whose status is unknown.whose status is unknown.
 No polynomial time algorithm has yetNo polynomial time algorithm has yet
been discovered for any NP completebeen discovered for any NP complete
problemproblem
 It is not established that no polynomial-It is not established that no polynomial-
time algorithm exist for any of them.time algorithm exist for any of them.
NP Complete ProblemNP Complete Problem
 The interesting part is, if any one of theThe interesting part is, if any one of the
NP complete problems can be solved inNP complete problems can be solved in
polynomial time, then all of them can bepolynomial time, then all of them can be
solved.solved.
 Although Graph coloring problem is NPAlthough Graph coloring problem is NP
Complete problem there are someComplete problem there are some
approximate algorithms to solve the graphapproximate algorithms to solve the graph
coloring problem.coloring problem.
Basic Greedy AlgorithmBasic Greedy Algorithm
1.1. Color first vertex with first color.Color first vertex with first color.
2. Do following for remaining V-1 vertices.2. Do following for remaining V-1 vertices.
a)a) Consider the currently picked vertexConsider the currently picked vertex
and color it with the lowest numberedand color it with the lowest numbered
color that has not been used on anycolor that has not been used on any
previously colored vertices adjacent to it.previously colored vertices adjacent to it.
If all previously used colors appear onIf all previously used colors appear on
vertices adjacent to v, assign a new colorvertices adjacent to v, assign a new color
to it.to it.
Analysis of Greedy AlgorithmAnalysis of Greedy Algorithm
The above algorithm doesn’t always useThe above algorithm doesn’t always use
minimum number of colors. Also, theminimum number of colors. Also, the
number of colors used sometime dependnumber of colors used sometime depend
on the order in which vertices areon the order in which vertices are
processedprocessed
Example:Example:
 For example, consider the following twoFor example, consider the following two
graphs. Note that in graph on right side,graphs. Note that in graph on right side,
vertices 3 and 4 are swapped. If wevertices 3 and 4 are swapped. If we
consider the vertices 0, 1, 2, 3, 4 in leftconsider the vertices 0, 1, 2, 3, 4 in left
graph, we can color the graph using 3graph, we can color the graph using 3
colors. But if we consider the vertices 0, 1,colors. But if we consider the vertices 0, 1,
2, 3, 4 in right graph, we need 4 colors2, 3, 4 in right graph, we need 4 colors
Analysis of Basic AlgorithmAnalysis of Basic Algorithm
WelshWelsh PowellPowell AlgorithmAlgorithm
 Find the degree of each vertexFind the degree of each vertex
 ListList the vericesthe verices in order of descendingin order of descending
valence i.e.valence i.e. degree(v(i))>=degree(v(i+1))degree(v(i))>=degree(v(i+1))
 ColourColour the first vertex in the listthe first vertex in the list
 Go down the sorted list and color everyGo down the sorted list and color every
vertex not connected to the coloredvertex not connected to the colored
vertices above the same color then crossvertices above the same color then cross
out all colored vertices in the list.out all colored vertices in the list.
Welsh Powell AlgorithmWelsh Powell Algorithm
 Repeat the process on the uncoloredRepeat the process on the uncolored
vertices with a new color-always workingvertices with a new color-always working
in descending order of degree until allin descending order of degree until all
vertices are colored.vertices are colored.
 ComplexityComplexity of above algorithm =of above algorithm = O(nO(n22
))
Welsh Powell Algorithm:Welsh Powell Algorithm:
ExampleExample
Welsh Powell Algorithm:Welsh Powell Algorithm:
ExampleExample
Welsh Powell Algorithm:Welsh Powell Algorithm:
ExampleExample
Welsh Powell Algorithm:Welsh Powell Algorithm:
ExampleExample
Welsh Powell Algorithm:Welsh Powell Algorithm:
ExampleExample
Welsh Powell Algorithm:Welsh Powell Algorithm:
ExampleExample
Any QueriesAny Queries
Thank YouThank You

More Related Content

PPTX
Graph coloring
PPTX
Graph coloring
PPTX
Graph coloring using backtracking
PPT
Graph coloring problem
PPT
GRAPH COLORING AND ITS APPLICATIONS
PPT
Graph algorithm
PPTX
Graph coloring problem(DAA).pptx
PPTX
Kruskal & Prim's Algorithm
Graph coloring
Graph coloring
Graph coloring using backtracking
Graph coloring problem
GRAPH COLORING AND ITS APPLICATIONS
Graph algorithm
Graph coloring problem(DAA).pptx
Kruskal & Prim's Algorithm

What's hot (20)

PDF
P, NP, NP-Complete, and NP-Hard
PPTX
Data structure - Graph
PPTX
Daa unit 1
PPTX
Stressen's matrix multiplication
PPTX
Breadth First Search & Depth First Search
PPTX
The n Queen Problem
PPT
Unit 1 chapter 1 Design and Analysis of Algorithms
PPT
Coloring graphs
PPT
Minimum spanning tree
PDF
Time and Space Complexity
PPTX
All pair shortest path
PDF
Daa notes 1
PPTX
Graph in data structure
PPT
Graph Coloring : Greedy Algorithm & Welsh Powell Algorithm
PPTX
CLR AND LALR PARSER
PPT
Graph coloring
PPT
Spanning trees
PPTX
graph theory
PPT
Graphs bfs dfs
DOC
Time and space complexity
P, NP, NP-Complete, and NP-Hard
Data structure - Graph
Daa unit 1
Stressen's matrix multiplication
Breadth First Search & Depth First Search
The n Queen Problem
Unit 1 chapter 1 Design and Analysis of Algorithms
Coloring graphs
Minimum spanning tree
Time and Space Complexity
All pair shortest path
Daa notes 1
Graph in data structure
Graph Coloring : Greedy Algorithm & Welsh Powell Algorithm
CLR AND LALR PARSER
Graph coloring
Spanning trees
graph theory
Graphs bfs dfs
Time and space complexity
Ad

Similar to Graph colouring (20)

PPTX
graph coloring back tracking and applications in realA time.pptx
PPTX
Module 5 - GraphColoring hoeyo colr grafh.pptx
PPTX
Module 5 - GraphColo blhyhfhuufring.pptx
PDF
A study-of-vertex-edge-coloring-techniques-with-application
PPTX
Graph coloring Algorithm
PDF
An analysis between different algorithms for the graph vertex coloring problem
PDF
Graph Coloring and Its Implementation
PDF
Graph Coloring
PPTX
Graph Coloring Algorithm.pptx
PPT
Farhna shaikh webinar_graphcoloring
PPTX
Graph coloring and_applications
PDF
An FPT Algorithm for Maximum Edge Coloring
PDF
Algorithms for Graph Coloring Problem
PPTX
daa seminar[1].pptx_SQL _UNIT_DBMS_PRESENTSTATION
PDF
Parallel Algorithm for Graph Coloring
PPT
Exact coloring of real-life graphs is easy
PPTX
Graph Coloring
PPT
CS6702 Unit III coloring ppt
graph coloring back tracking and applications in realA time.pptx
Module 5 - GraphColoring hoeyo colr grafh.pptx
Module 5 - GraphColo blhyhfhuufring.pptx
A study-of-vertex-edge-coloring-techniques-with-application
Graph coloring Algorithm
An analysis between different algorithms for the graph vertex coloring problem
Graph Coloring and Its Implementation
Graph Coloring
Graph Coloring Algorithm.pptx
Farhna shaikh webinar_graphcoloring
Graph coloring and_applications
An FPT Algorithm for Maximum Edge Coloring
Algorithms for Graph Coloring Problem
daa seminar[1].pptx_SQL _UNIT_DBMS_PRESENTSTATION
Parallel Algorithm for Graph Coloring
Exact coloring of real-life graphs is easy
Graph Coloring
CS6702 Unit III coloring ppt
Ad

Recently uploaded (20)

PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PPTX
Sustainable Sites - Green Building Construction
PPTX
web development for engineering and engineering
PDF
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
PPT
Mechanical Engineering MATERIALS Selection
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PPTX
UNIT 4 Total Quality Management .pptx
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPTX
Strings in CPP - Strings in C++ are sequences of characters used to store and...
PDF
composite construction of structures.pdf
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PDF
Well-logging-methods_new................
PPTX
bas. eng. economics group 4 presentation 1.pptx
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PDF
Digital Logic Computer Design lecture notes
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PPTX
Internet of Things (IOT) - A guide to understanding
Model Code of Practice - Construction Work - 21102022 .pdf
Sustainable Sites - Green Building Construction
web development for engineering and engineering
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
Mechanical Engineering MATERIALS Selection
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
Foundation to blockchain - A guide to Blockchain Tech
UNIT 4 Total Quality Management .pptx
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
Strings in CPP - Strings in C++ are sequences of characters used to store and...
composite construction of structures.pdf
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Well-logging-methods_new................
bas. eng. economics group 4 presentation 1.pptx
Operating System & Kernel Study Guide-1 - converted.pdf
Digital Logic Computer Design lecture notes
UNIT-1 - COAL BASED THERMAL POWER PLANTS
Internet of Things (IOT) - A guide to understanding

Graph colouring

  • 1. Maulana Azad NationalMaulana Azad National InstituteInstitute ofof TechnologyTechnology Department of Computer Science & EngineeringDepartment of Computer Science & Engineering PresentationPresentation OnOn Graph ColoringGraph Coloring Presented By:Presented By: Priyank JainPriyank Jain Shweta SaxenaShweta Saxena
  • 2. What is Graph Coloring?What is Graph Coloring?  Graph Coloring is an assignment of colorsGraph Coloring is an assignment of colors (or any distinct marks) to the vertices of a(or any distinct marks) to the vertices of a graph. Strictly speaking, a coloring is agraph. Strictly speaking, a coloring is a proper coloring if no two adjacent verticesproper coloring if no two adjacent vertices have the same color.have the same color.
  • 3. Origin of the problemOrigin of the problem
  • 4. Origin of the problemOrigin of the problem
  • 5. Why Graph Coloring?Why Graph Coloring?  Many problems can be formulated as aMany problems can be formulated as a graph coloring problem including Timegraph coloring problem including Time Tabling,Tabling, Channel AssignmentChannel Assignment etc.etc.  A lot of research has been done in thisA lot of research has been done in this area.area.
  • 6. Channel AssignmentChannel Assignment  Find a channel assignment to R radioFind a channel assignment to R radio stations such that no station has a conflictstations such that no station has a conflict (there is a conflict if they are in vicinity)(there is a conflict if they are in vicinity)  Vertices – radio stations, edges – conflict,Vertices – radio stations, edges – conflict, colors – available channelscolors – available channels
  • 7. TerminologyTerminology  K-ColoringK-Coloring  A k-coloring of a graph G is a mapping ofA k-coloring of a graph G is a mapping of V(G) onto the integers 1..k such that adjacentV(G) onto the integers 1..k such that adjacent vertices map into different integers.vertices map into different integers.  A k-coloring partitions V(G) into k disjointA k-coloring partitions V(G) into k disjoint subsets such that vertices from differentsubsets such that vertices from different subsets have different colors.subsets have different colors.
  • 8. TerminologyTerminology  K-colorableK-colorable  A graph G is k-colorable if it has a k-coloring.A graph G is k-colorable if it has a k-coloring.  Chromatic NumberChromatic Number  The smallest integer k for which G is k-The smallest integer k for which G is k- colorable is called the chromatic number of G.colorable is called the chromatic number of G.
  • 9. TerminologyTerminology  K-chromatic graphK-chromatic graph  A graph whose chromatic number is k isA graph whose chromatic number is k is called a k-chromatic graph.called a k-chromatic graph.  ColoringColoring  A coloring of a graph G assigns colors to theA coloring of a graph G assigns colors to the vertices of G so that adjacent vertices arevertices of G so that adjacent vertices are given different colorsgiven different colors
  • 10. ExampleExample The chromatic number is four. Therefore this a 4-Chromatic Graph
  • 11. ExampleExample  Problem: A state legislature has aProblem: A state legislature has a number of committees that meet eachnumber of committees that meet each week for one hour. How can we scheduleweek for one hour. How can we schedule the committee meetings times such thatthe committee meetings times such that the least amount of time is used but suchthe least amount of time is used but such that two committees with overlappingthat two committees with overlapping membership do not meet at the samemembership do not meet at the same time.time.
  • 12. Example (cont)Example (cont) The chromatic number of this graph is four. Thus four hours suffice to schedule committee meetings without conflict. An edge represents a conflict between to meetings An vertex represents a meeting
  • 13. Graph Colouring AlgorithmGraph Colouring Algorithm  There is no efficient algorithm available forThere is no efficient algorithm available for coloring a graph with minimum number ofcoloring a graph with minimum number of colors.colors.  Graph coloring problem is a known NPGraph coloring problem is a known NP Complete problem.Complete problem.
  • 14. NP Complete ProblemNP Complete Problem  NP complete problems are problemsNP complete problems are problems whose status is unknown.whose status is unknown.  No polynomial time algorithm has yetNo polynomial time algorithm has yet been discovered for any NP completebeen discovered for any NP complete problemproblem  It is not established that no polynomial-It is not established that no polynomial- time algorithm exist for any of them.time algorithm exist for any of them.
  • 15. NP Complete ProblemNP Complete Problem  The interesting part is, if any one of theThe interesting part is, if any one of the NP complete problems can be solved inNP complete problems can be solved in polynomial time, then all of them can bepolynomial time, then all of them can be solved.solved.  Although Graph coloring problem is NPAlthough Graph coloring problem is NP Complete problem there are someComplete problem there are some approximate algorithms to solve the graphapproximate algorithms to solve the graph coloring problem.coloring problem.
  • 16. Basic Greedy AlgorithmBasic Greedy Algorithm 1.1. Color first vertex with first color.Color first vertex with first color. 2. Do following for remaining V-1 vertices.2. Do following for remaining V-1 vertices. a)a) Consider the currently picked vertexConsider the currently picked vertex and color it with the lowest numberedand color it with the lowest numbered color that has not been used on anycolor that has not been used on any previously colored vertices adjacent to it.previously colored vertices adjacent to it. If all previously used colors appear onIf all previously used colors appear on vertices adjacent to v, assign a new colorvertices adjacent to v, assign a new color to it.to it.
  • 17. Analysis of Greedy AlgorithmAnalysis of Greedy Algorithm The above algorithm doesn’t always useThe above algorithm doesn’t always use minimum number of colors. Also, theminimum number of colors. Also, the number of colors used sometime dependnumber of colors used sometime depend on the order in which vertices areon the order in which vertices are processedprocessed
  • 18. Example:Example:  For example, consider the following twoFor example, consider the following two graphs. Note that in graph on right side,graphs. Note that in graph on right side, vertices 3 and 4 are swapped. If wevertices 3 and 4 are swapped. If we consider the vertices 0, 1, 2, 3, 4 in leftconsider the vertices 0, 1, 2, 3, 4 in left graph, we can color the graph using 3graph, we can color the graph using 3 colors. But if we consider the vertices 0, 1,colors. But if we consider the vertices 0, 1, 2, 3, 4 in right graph, we need 4 colors2, 3, 4 in right graph, we need 4 colors
  • 19. Analysis of Basic AlgorithmAnalysis of Basic Algorithm
  • 20. WelshWelsh PowellPowell AlgorithmAlgorithm  Find the degree of each vertexFind the degree of each vertex  ListList the vericesthe verices in order of descendingin order of descending valence i.e.valence i.e. degree(v(i))>=degree(v(i+1))degree(v(i))>=degree(v(i+1))  ColourColour the first vertex in the listthe first vertex in the list  Go down the sorted list and color everyGo down the sorted list and color every vertex not connected to the coloredvertex not connected to the colored vertices above the same color then crossvertices above the same color then cross out all colored vertices in the list.out all colored vertices in the list.
  • 21. Welsh Powell AlgorithmWelsh Powell Algorithm  Repeat the process on the uncoloredRepeat the process on the uncolored vertices with a new color-always workingvertices with a new color-always working in descending order of degree until allin descending order of degree until all vertices are colored.vertices are colored.  ComplexityComplexity of above algorithm =of above algorithm = O(nO(n22 ))
  • 22. Welsh Powell Algorithm:Welsh Powell Algorithm: ExampleExample
  • 23. Welsh Powell Algorithm:Welsh Powell Algorithm: ExampleExample
  • 24. Welsh Powell Algorithm:Welsh Powell Algorithm: ExampleExample
  • 25. Welsh Powell Algorithm:Welsh Powell Algorithm: ExampleExample
  • 26. Welsh Powell Algorithm:Welsh Powell Algorithm: ExampleExample
  • 27. Welsh Powell Algorithm:Welsh Powell Algorithm: ExampleExample

Editor's Notes

  • #9: 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.
  • #10: Look at previous example. Simply state that the since we found the chromatic number to be N the graph is N-chromatic.
  • #11: 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!