??? Computing Science Inside… Graph Colouring ???.

Slides:



Advertisements
Similar presentations
Heuristic Search techniques
Advertisements

CS 206 Introduction to Computer Science II 04 / 01 / 2009 Instructor: Michael Eckmann.
Some Graph Algorithms.
COMPILERS Register Allocation hussein suleman uct csc305w 2004.
Breakfast Bytes: Pigeons, Holes, Bridges and Computers Alan Kaylor Cline November 24, 2009.
BY PAYEL BANDYOPADYAY WHAT AM I GOING TO DEAL ABOUT? WHAT IS AN AD-HOC NETWORK? That doesn't depend on any infrastructure (eg. Access points, routers)
Discrete Math for Computer Science. Mathematical Model Real-world Problem Computerized Solution Abstract Model Transformed Model picture of the real worldpicture.
Review: Constraint Satisfaction Problems How is a CSP defined? How do we solve CSPs?
Graphs Graphs are the most general data structures we will study in this course. A graph is a more general version of connected nodes than the tree. Both.
Data Structure and Algorithms (BCS 1223) GRAPH. Introduction of Graph A graph G consists of two things: 1.A set V of elements called nodes(or points or.
Section 1.7: Coloring Graphs
Don’t Be So Symbol Minded Problem Solving, Reasoning, and Sense Making in the Core Standards Environment Jim Rubillo
Last time: terminology reminder w Simple graph Vertex = node Edge Degree Weight Neighbours Complete Dual Bipartite Planar Cycle Tree Path Circuit Components.
A Decentralised Coordination Algorithm for Maximising Sensor Coverage in Large Sensor Networks Ruben Stranders, Alex Rogers and Nicholas R. Jennings School.
Graph Algorithms: Minimum Spanning Tree We are given a weighted, undirected graph G = (V, E), with weight function w:
Chapter 9 Graph algorithms. Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
Improving code generation. Better code generation requires greater context Over expressions: optimal ordering of subtrees Over basic blocks: Common subexpression.
CS 1114: Graphs and Blobs Prof. Graeme Bailey (notes modified from Noah Snavely, Spring 2009)
Improving Code Generation Honors Compilers April 16 th 2002.
CS 206 Introduction to Computer Science II 03 / 30 / 2009 Instructor: Michael Eckmann.
Exam Timetabling Problem using Graph Coloring
Linear Programming – Max Flow – Min Cut Orgad Keller.
Converting 2D to 3D drawings Drawing products you want to design in 3D can be a difficult. A strategy that can help with this is called oblique drawing.
Map Coloring to Graph Coloring Part of a unit on discrete mathematics.
Optimization Problems Minimum Spanning Tree Behavioral Abstraction.
Minimum Spanning Trees What is a MST (Minimum Spanning Tree) and how to find it with Prim’s algorithm and Kruskal’s algorithm.
Coming up in Math 110: Today: Section 8.2 (Quadratic formula)
Topic 6 – Wireless Technology and handheld devices 1)TechMed scenario covers The uses of wireless technologies and handheld devices In the scenario: “Some.
Dijkstra’s Algorithm and Heuristic Graph Search David Johnson.
Minimal Spanning Trees What is a minimal spanning tree (MST) and how to find one.
An Illustration of Prim's Algorithm
Graphing the Right Way The TASTE Method.
CS654: Digital Image Analysis Lecture 3: Data Structure for Image Analysis.
BZUpages.com. Advantages of Bluetooth Presented by: Shahbaz Hussain.
 Introduction  Components of Wi-Fi and its working  IEEE Architecture  Advantages and Limitations.
Introduction to Graphs. Introduction Graphs are a generalization of trees –Nodes or verticies –Edges or arcs Two kinds of graphs –Directed –Undirected.
1 CS 350 Data Structures Chaminade University of Honolulu.
Minimum spanning trees Aims: To know the terms: tree, spanning tree, minimum spanning tree. To understand that a minimum spanning tree connects a network.
Big Ideas Differentiation Frames with Icons. 1. Number Uses, Classification, and Representation- Numbers can be used for different purposes, and numbers.
The standards and protocols used in communication By William Kemp.
An Illustration of Kruskal’s Algorithm Prepared Spring 2006 by Sean Szumlanski Computer Science II, University of Central Florida.
1 Graph Coloring: An Overview Graph Coloring Basics Planar/4-color Graphs Applications New Register Allocation Technique.
Graphs. Made up of vertices and arcs Digraph (directed graph) –All arcs have arrows that give direction –You can only traverse the graph in the direction.
Section 2 Using a Scientific Approach Key Concepts What is the goal of a scientific method? How does a scientific law differ from a scientific theory?
CS 206 Introduction to Computer Science II 11 / 16 / 2009 Instructor: Michael Eckmann.
SCIENCE FAIR 2010.
GRAPH COLORING AND CLASSIFYING TROPICAL FISH By Vennam Chandrasekhar Reddy.
Graphs A ‘Graph’ is a diagram that shows how things are connected together. It makes no attempt to draw actual paths or routes and scale is generally inconsequential.
Solve the equation for y. SOLUTION EXAMPLE 2 Graph an equation Graph the equation –2x + y = –3. –2x + y = –3 y = 2x –3 STEP 1.
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
The Last Lecture CS 5010 Program Design Paradigms "Bootcamp" Lesson © Mitchell Wand, This work is licensed under a Creative Commons Attribution-NonCommercial.
2.1 Elements of Computational thinking
Preparing for exams. Students have built up years of experience with exams But they have not always built up confidence in this knowledge.
Graph problems Prof. Ramin Zabih
Graphs Definition: a graph is an abstract representation of a set of objects where some pairs of the objects are connected by links. The interconnected.
Automated Data Capture Technologies O It is often necessary or convenient to capture data automatically, for example the delivery of a package by an Cable.
Graph Theory and Algorithms 1 DM Notes1CMrsLenox.
Troubleshooting. What is Troubleshooting ? Troubleshooting is a problem solving method. Other problem solving methods are invention, innovation, engineering.
Mathematical modeling To describe or represent a real-world situation quantitatively, in mathematical language.
CSE 373: Data Structures and Algorithms Lecture 21: Graphs V 1.
Spanning Trees Longin Jan Latecki Temple University based on slides by
Graph Theory Graph Colorings.
CSE 373: Data Structures and Algorithms
Computational Thinking for KS3
CSC 380: Design and Analysis of Algorithms
Computational Thinking
Spanning Trees Longin Jan Latecki Temple University based on slides by
Section 2.2 Characteristics of Quadratic Functions
Quiz: Computational Thinking
Complaint Letters Writing Task.
Presentation transcript:

??? Computing Science Inside… Graph Colouring ???

Constraint? Can you think of constraints in your life? –Time to be at school? –How much pocket money you get? –1 shower – 4 people to get ready for 8.30am? to constrain –to keep within closed bounds, to confine –to limit an action/activity, in response to limited resources

??? Constraints Constraints lie at the heart of everyday problems –School timetable –Sudoku puzzle We'd like the computer to solve these –We first work out a strategy to solve these problems… –…then we can tell the computer what to do always remember, they're dumb/stupid things Key theme –By comparing problems together, we often find that a solution to one problem can be used to solve another

??? Activity 1 – Map colouring Look at the map on Worksheet 1 –It has six countries, numbered 1-6 Colour this map using the FEWEST colours –BUT any countries that share a border cannot be the same colour –No coloured pens? – use letters A, B, C… to represent colours How many colours did you need?

??? Map Colouring How did you go about solving the problem? Which country did you start with? How did you decide which colour to choose? Is 3 the minimum? What are the constraints in this problem? Borders –Number of neighbours? Use as few colours as possible

??? Activity 1 Was the task easy? –Imagine there were 4000 countries? Can we represent the map another way… –to make the problem easier to solve? How about this? This is abstraction –we've removed information The structure is known as a graph

??? Using a Graph to represent a map How does the graph represent the map? Vertices: Countries Edge: Borders Why would this be better? Clearer structure Borders are easier to see Easy to represent in a computer

??? Graph Representation representation using lists of numbers –1 – 2,3 –2 – 1,3,4,5 –3 – 1,2,4,6 –4 – 2,3,5,6 –5 – 2,4,6 –6 – 3,4,5 To colour the graph –Repeatedly Remove vertex with lowest connectivity Add this vertex to a record of those removed, held in order –Repeatedly Replace nodes in reverse order of removal, noting a legal colour each time

??? Wireless Communications Do you know about Wireless Communication? Communications using radio waves- no wires! Radio, mobile phone, TV, GPRS, Bluetooth… Why don't they interfere with each other? Each uses a different frequency to communicate Do you ever hear interference? Car radio and mobile phone

??? Activity 2 In mobile systems, –each mobile mast has a short range –reuse of frequencies is necessary –but problematic How to ensure reuse doesn't cause interference? Use your knowledge for Activity 1 to solve the problem on Worksheet 2 Freq 1 Freq 2 Freq 1

??? Activity 2 Read the problem description on Worksheet 2 –Work out the minimum number of frequencies the company must buy –Consider the constraints… How could you represent the information from the table to make it easier to understand? –Clues: A graph? What are the constraints? What would be the vertices and edges?

??? Activity 2 Have a go at solving the problem… Frequencies = colours –How many frequencies needed to colour the graph? Did using a graph make it easier than using the table? Would it be possible to do this manually for base stations? Transform/abstract the computer to the graph colouring problem, and then get a computer to do it- much quicker!

??? Activity 3 8 kinds of fish Some fish eat each other fish How would I work out a safe set of fishtank allocations so no fish was another's dinner? Other problems like this?

??? Discussion and Conclusion Method for solving a problem –an algorithm – series of steps… computer can do this kind of rote work Graph colouring as a problem –and a way of solving the graph colouring problem Problem Abstraction Removed details from the problem Represented it in a way that we know how to solve – here, as a graph Key Computing Science techniques –find a common representation of a problem –an algorithm to solve problems so represented –learn to transform other problems into this representation Did you notice? This was brain work – no computer could do this