Graph Theory in Computer Science Daniel Candeias 20122013

  • Slides: 22
Download presentation
Graph Theory in Computer Science Daniel Candeias 2012/2013

Graph Theory in Computer Science Daniel Candeias 2012/2013

Contents • • Introduction What is graph theory? Fields of study Applications in computer

Contents • • Introduction What is graph theory? Fields of study Applications in computer Science • Graph Operations • Common Problems

Introduction • With this presentation I want to show you that we can use

Introduction • With this presentation I want to show you that we can use Graph Theory in diverse fields of study. • I’ll focus in Computer Science applications, and give you a general overview about it.

What is Graph Theory? Definition: The mathematical theory of the properties and applications of

What is Graph Theory? Definition: The mathematical theory of the properties and applications of graphs. Used to understand solve many of mathematical and path problems.

Fields of Study Mathematical problem The cells of a GSM mobile phone network Other

Fields of Study Mathematical problem The cells of a GSM mobile phone network Other examples: Music • Electrical eng. • Biochemistry • Computer science • Physics

Applications in computer Science (1) • Since computer science is not a concrete/centralized subject,

Applications in computer Science (1) • Since computer science is not a concrete/centralized subject, we can introduce graph theory in many areas. But where Let’s see some examples…

Applications in computer Science (2) Networks: Graph theory can be used in computer networks,

Applications in computer Science (2) Networks: Graph theory can be used in computer networks, for security purpose or to schematize network topologies, for example.

Applications in computer Science (3) Webpage: can be represented by a direct graph. The

Applications in computer Science (3) Webpage: can be represented by a direct graph. The vertices are the web pages available at the website and a directed edge from page A to page B exists if and only if A contains a link to B. Facebook is based in graph theory

Applications in computer Science (4) Workflow: It’s sequence of processes through which a piece

Applications in computer Science (4) Workflow: It’s sequence of processes through which a piece of work passes from initiation to completion. Can be also represented as directed graph.

Applications in computer Science (5) Neural Networks: A series of algorithms that attempt to

Applications in computer Science (5) Neural Networks: A series of algorithms that attempt to identify underlying relationships in a set of data by using a process that mimics the way the human brain operates.

Applications in computer Science (6) Google Maps:

Applications in computer Science (6) Google Maps:

Graph Operations (1) Basic Operations

Graph Operations (1) Basic Operations

Graph Operations (2) Shortest Path: is the problem of finding a path between two

Graph Operations (2) Shortest Path: is the problem of finding a path between two vertices (or nodes) in a graph such that the sum of the weights of its constituent edges is minimized. E. g. Dijkstra’s algorithm

Graph Operations (3) Minimun Spanning tree: A tree is a connected graph without cycles

Graph Operations (3) Minimun Spanning tree: A tree is a connected graph without cycles with some properties: • A graph is a tree if and only if there is one and only one path joining any two of its vertices. • A connected graph is a tree if and only if every one of its edges is a bridge. • A connected graph is a tree if and only if it has N vertices and N; 1 edges. E. g. Kruskal's Algorithm

Graph Operations (4) Minimun Spanning tree

Graph Operations (4) Minimun Spanning tree

Graph Operations (5) Breadth-First Search (BFS): algorithm used to search in graphs.

Graph Operations (5) Breadth-First Search (BFS): algorithm used to search in graphs.

Graph Operations (6) Depth-First Search (DFS): algorithm used to search in graphs.

Graph Operations (6) Depth-First Search (DFS): algorithm used to search in graphs.

Graph Operations (7) DFS Vs. BFS

Graph Operations (7) DFS Vs. BFS

Common problems (1) House of Santa Claus: the house in the picture can be

Common problems (1) House of Santa Claus: the house in the picture can be represented as a graph, where each vertice is a node. Try to draw a the house by yourself fallowing this rules: • You have to draw a house in one line. • You must not lift your pencil while drawing. • You must not repeat a line.

Common problems (2) Three Houses, Three Utilities: there are three utilities (three vertices) and

Common problems (2) Three Houses, Three Utilities: there are three utilities (three vertices) and three houses (three vertices), and the purpose of this problem is to draw a line from each house to each facility without the lines ever crossing.

Conclusions • As we can see Graph Theory can be applied to several areas.

Conclusions • As we can see Graph Theory can be applied to several areas. • In Computer Science is mainly used to solve problems, or to represent scenarios, related with networks.

Thank you! Daniel Candeias

Thank you! Daniel Candeias