Computing the chromatic number for block intersection graphs of Latin squares Ed Sykes CS 721 project McMaster University, December 2004 Slide 1.

Slides:



Advertisements
Similar presentations
AES Sub-Key Generation By Muhammad Naseem. Rotate Word 09CF4F3C.
Advertisements

6.8 The Cheapest-Link Algorithm. The Cheapest-Link Algorithm Pick the edge with the smallest weight and mark it Pick the next edge with the smallest weight.
Masalah Penugasan.
Introduction to Probability
Euler Circuits and Paths
OBJECTIVE: 1) BE ABLE TO IDENTIFY THE MEDIAN AND ALTITUDE OF A TRIANGLE 2) BE ABLE TO APPLY THE MID-SEGMENT THEOREM 3) BE ABLE TO USE TRIANGLE MEASUREMENTS.
Row 1 Row 6 Row 5 Row 2 Row 7 Row 3 Row 8 Row 4 Row 9 Row 10 Row 11.
Chapter 3 The Greedy Method 3.
Multi-Method Dispatch Using Multiple Row Displacement Candy Pang, Wade Holst, Yuri Leontiev, and Duane Szafron ECOOP’99 Presented by: Irene Cheng Date:
Traveling Salesman Problems Repetitive Nearest-Neighbor and Cheapest-Link Algorithms Chapter: 6.
1.1. Graph Models Two basic notions: Graphs Directed Graphs.
Discrete Math for CS Chapter 8: Directed Graphs. Discrete Math for CS digraph: A digraph is a graph G = (V,E) where V is a finite set of vertices and.
CPSC-608 Database Systems Fall 2011 Instructor: Jianer Chen Office: HRBB 315C Phone: Notes #8.
Chapter 9: Graphs Basic Concepts
Graph Partitioning Problem Kernighan and Lin Algorithm
Chapter 2 Graph Algorithms.
Chapter 4 sections 1 and 2.  Fig. 1  Not connected  All vertices are even.  Fig. 2  Connected  All vertices are even.
Overview of Probability Theory In statistical theory, an experiment is any operation that can be replicated infinitely often and gives rise to a set of.
Please grab your calculators on your way into the room and start on the Bell Ringer. Find a pair or group of angles that have an invariant sum of 180 degrees.
AES (Advanced Encryption Standard) By- Sharmistha Roy M.Tech, CSE 1 st semester NIT, Agartala.
CS555Spring 2012/Topic 101 Cryptography CS 555 Topic 10: Block Cipher Security & AES.
Phrase-structure grammar A phrase-structure grammar is a quadruple G = (V, T, P, S) where V is a finite set of symbols called nonterminals, T is a set.
Slide Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley.
Chapter 11 – Counting Methods Intro to Counting Methods Section 11.1: Counting by Systematic Listing.
Distance vector routing protocol This concept gives a brief idea about the one type of forwarding protocol followed in routing. Authors Parul Goradia Mentor.
Cryptography Lecture 17: Advanced Encryption Standard (AES) Piotr Faliszewski.
Vocabulary and Representations of Graphs. NC Standard Course of Study Competency Goal 1: The learner will use matrices and graphs to model relationships.
Unit – V Graph theory. Representation of Graphs Graph G (V, E,  ) V Set of vertices ESet of edges  Function that assigns vertices {v, w} to each edge.
Problem Statement How do we represent relationship between two related elements ?
Geometric Constructions with Understanding **This is meant as a resource to the teacher! It is NOT intended to replace teaching in the classroom OR the.
AES Encryption FIPS 197, November 26, Bit Block Encryption Key Lengths 128, 192, 256 Number of Rounds Key Length Rounds Block.
A horse race has the following horses running. How many different first, second and third place results are possible: Mushroom Pepper Sausage Tomato Onion.
Representing Relations Using Matrices A relation between finite sets can be represented using a zero-one matrix Suppose R is a relation from A = {a 1,
3.2 Proof and Perpendicular Lines
A Valentines Day Problem Source The teachers lab Patterns in Mathematics
Geometry: Plane Figures Chapter. point A point marks a location. A A B B line segment the part of the line between 2 points endpoints.
ECE Prof. John A. Copeland fax Office: GCATT Bldg.
CHAPTER V Relation between line and line, line and Angle, Angle and Angle, and determining the size.
Geo A 11.1 Reflections Assignment 1 1. Graph the reflection of the polygon in the given line.
Graphs and Matrices Spring 2012 Mills College Dan Ryan Lecture Slides by Dan Ryan is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike.
Shortest Path -Prim’s -Djikstra’s. PRIM’s - Minimum Spanning Tree -A spanning tree of a graph is a tree that has all the vertices of the graph connected.
Prim’s MST Djikstra SP. PRIM’s - Minimum Spanning Tree -A spanning tree of a graph is a tree that has all the vertices of the graph connected by some.
Basic Concepts Graphs For more notes and topics visit:
The Polar Environmental Centre
Oil-soluble yellow pigment extracted from turmeric powder
Dr. Ameria Eldosoky Discrete mathematics
Jan 2007.
Combinations COURSE 3 LESSON 11-3
The Advanced Encryption Standard: Rijndael
Make an Organized List and Simulate a Problem
4.3 Paths in Relations and Digraphs
Arranging and Choosing
Single Source Shortest Paths Bellman-Ford Algorithm
Chapter 9: Graphs Basic Concepts
Rotors and Secret-Key Encryption
Running example The 4-houses puzzle:
Shortest path algorithm
Splash Screen.
AB AC AD AE AF 5 ways If you used AB, then, there would be 4 remaining ODD vertices (C, D, E and F) CD CE CF 3 ways If you used CD, then, there.
1.11 Day 3 Bell Ringer Please grab your calculators on
Splash Screen.
A Series of Slides in 5 Parts Movement 2. BFS
Latin Square Designs.
Splash Screen.
If AD = 10, DC =6, and ED = 15, find DB.
Chapter 9: Graphs Basic Concepts
A Series of Slides in 5 Parts Movement 4. Best-First
A Series of Slides in 5 Parts Movement 4. Best-First
A Series of Slides in 5 Parts Movement 1. DFS
A Series of Slides in 5 Parts Movement 3. IDFS
Presentation transcript:

Computing the chromatic number for block intersection graphs of Latin squares Ed Sykes CS 721 project McMaster University, December 2004 Slide 1

A Latin square is a combinatorial structure that plays a large role in the combinatorial design theory. A Latin square is a square matrix of positive integers so that the sum of each column and each row gives the same number: Slide 2 10

Slide 3 A block of a Latin square is formed by a triple {i,j,a ij } where i is the row index, j is the column index, and a ij the entry at that position. For the purpose of creating the block intersection graph, we make sure that the set of row indexes and the set of column indexes are disjoint:

Slide 4 a b c e d A B C D E {A,a,0} {A,b,1} {A,c,2} {A,d,3} {A,e,4} {B,a,1} {B,b,3} {B,c,0} {B,d,4} {B,e,2} {C,a,2} {C,b,4} {C,c,1} {C,d,0} {C,e,3} {D,a,3} {D,b,2} {D,c,4} {D,d,1} {D,e,0} {E,a,4} {E,b,0} {E,c,3} {E,d,2} {E,e,1}

Slide 5 The block intersection graph of a Latin square is formed by the blocks as the vertices and two blocks form an edge if their intersection is non-empty.

Slide 6 {C,a,2} {C,b,4} {C,c,1} {C,d,0} {C,e,3} {D,a,3} {D,b,2} {D,c,4} {D,d,1} {D,e,0} {E,a,4} {E,b,0} {E,c,3} {E,d,2} {E,e,1} {A,a,0} {A,b,1} {A,c,2} {A,d,3} {A,e,4} {B,a,1} {B,b,3} {B,c,0} {B,d,4} {B,e,2} See some edges:

Slide 7 A complete adjacency matrix for the graph is shown here:

Slide 8 A colouring of a graph is an assignment of colours to vertices so that no two adjacent vertices get the same colour: For our block intersection graph:

Slide 9 {A,b,1} gets colour 1 {A,c,2} gets colour 2 {A,d,3} gets colour 3 {A,e,4} gets colour 4 {B,a,1} gets colour 2 {B,b,3} gets colour 4 {B,c,0} gets colour 3 {B,d,4} gets colour 5 {B,e,2} gets colour 1 {C,a,2} gets colour 4 {C,b,4} gets colour 2 {C,c,1} gets colour 5 {C,d,0} gets colour 1 {C,e,3} gets colour 0 {D,a,3} gets colour 5 {D,b,2} gets colour 3 {D,c,4} gets colour 0 {D,d,1} gets colour 4 {D,e,0} gets colour 2 {E,a,4} gets colour 3 {E,b,0} gets colour 5 {E,c,3} gets colour 1 {E,d,2} gets colour 0 {E,e,1} gets colour 6

Slide 10 The chromatic number of a graph is the smallest number of colours one can use to colour the graph. Thus computing the chromatic number of a graph is a combinatorial problem of finding the smallest colouring among all colourings. Prof. Franek asked me to design and implement a simple bound-and-branch backtracking program in C++ to compute chromatic numbers of block intersection graphs of various Latin squares.

The input into the program is a line that represents row by row format of a Latin square. Slide 11 1.The “real” Latin square is computed and displayed 2.The blocks are computed and displayed. 3.The block intersection graph is computed in the form of the adjacency matrix and displayed.

Slide 12 4.The maximum degree (=number of adjacent vertices to a given vertex) is computed, for it is well-known that the chromatic number <= max. degree. 5.The first N blocks are assigned fixed colours (for a Latin square N x N), for they must have different colours as the first N blocks are all connected by edges (form a clique). 6.A simple recursive implementation of backtracking is used for generating all possible colourings.

Slide 13 7.When the number of colours used reaches the current minimum (that starts with the max. degree), this line of search is abolished. 8.On each recursive call all so-far used colours are tried and the first new colour is tried as well. 9.When all colourings are found and the minimum is established, it is displayed and the last minimal colouring is displayed as well.

Slide 14 latin square number 1: abcde A01234 B13042 C24103 D32410 E40321 {A,a,0} {A,b,1} {A,c,2} {A,d,3} {A,e,4} {B,a,1} {B,b,3} {B,c,0} {B,d,4} {B,e,2} {C,a,2} {C,b,4} {C,c,1} {C,d,0} {C,e,3} {D,a,3}

Slide 15 {D,b,2} {D,c,4} {D,d,1} {D,e,0} {E,a,4} {E,b,0} {E,c,3} {E,d,2} {E,e,1}

Slide

Slide 17 max degree=12 chromatic number=7 minimum colouring:{A,a,0} gets colour 0 {A,b,1} gets colour 1 {A,c,2} gets colour 2 {A,d,3} gets colour 3 {A,e,4} gets colour 4 {B,a,1} gets colour 2 {B,b,3} gets colour 4 {B,c,0} gets colour 3 {B,d,4} gets colour 5 {B,e,2} gets colour 1 {C,a,2} gets colour 4 {C,b,4} gets colour 2 {C,c,1} gets colour 5 {C,d,0} gets colour 1 {C,e,3} gets colour 0 {D,a,3} gets colour 5 {D,b,2} gets colour 3 {D,c,4} gets colour 0 {D,d,1} gets colour 4 {D,e,0} gets colour 2 {E,a,4} gets colour 3 {E,b,0} gets colour 5

Slide 18 {E,b,0} gets colour 5 {E,c,3} gets colour 1 {E,d,2} gets colour 0 {E,e,1} gets colour 6 In conclusion: The program performed well for Latin squares of size 5, 6, and 7. However, for Latin squares of size 8 the combinatorial explosion occurred and to compute just one chromatic number took over 12 days. For even larger Latin squares the problem is not computationally feasible.