Network models and graph theory

Similar documents
Introduction to optimization

Chapter 9 Graph Algorithms

11/22/2016. Chapter 9 Graph Algorithms. Introduction. Definitions. Definitions. Definitions. Definitions

EECS 1028 M: Discrete Mathematics for Engineers

Let G = (V, E) be a graph. If u, v V, then u is adjacent to v if {u, v} E. We also use the notation u v to denote that u is adjacent to v.

Outline. Introduction. Representations of Graphs Graph Traversals. Applications. Definitions and Basic Terminologies

Chapter 9 Graph Algorithms

Graphs: Introduction. Ali Shokoufandeh, Department of Computer Science, Drexel University

Chapter 9 Graph Algorithms

Paths. Path is a sequence of edges that begins at a vertex of a graph and travels from vertex to vertex along edges of the graph.

Graphs Definitions. Gunnar Gotshalks. GraphDefinitions 1

Graph Theory. ICT Theory Excerpt from various sources by Robert Pergl

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. An Introduction to Graph Theory

Network Design and Optimization course

Graph Theory and Applications

Discrete mathematics II. - Graphs

Material handling and Transportation in Logistics. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena

Theory of Computing. Lecture 10 MAS 714 Hartmut Klauck

An Introduction to Graph Theory

Maximum Flows of Minimum Cost

Graph theory: basic concepts

Introduction to Graph Theory

Graph Theory CS/Math231 Discrete Mathematics Spring2015

Announcements Problem Set 5 is out (today)!

Graph Theory. Connectivity, Coloring, Matching. Arjun Suresh 1. 1 GATE Overflow

Chapter 23. Minimum Spanning Trees

Assignment 4 Solutions of graph problems

Binary Relations McGraw-Hill Education

Graph and Digraph Glossary

Institute of Operating Systems and Computer Networks Algorithms Group. Network Algorithms. Tutorial 4: Matching and other stuff

Kruskal s MST Algorithm

Introduction III. Graphs. Motivations I. Introduction IV

CS 561, Lecture 9. Jared Saia University of New Mexico

Graph Theory. Probabilistic Graphical Models. L. Enrique Sucar, INAOE. Definitions. Types of Graphs. Trajectories and Circuits.

CMSC 380. Graph Terminology and Representation

MATH 350 GRAPH THEORY & COMBINATORICS. Contents

r=1 The Binomial Theorem. 4 MA095/98G Revision

1 Digraphs. Definition 1

Introduction to Optimization

Introduction to Combinatorial Algorithms

A GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY

Foundations of Discrete Mathematics

Basics of Graph Theory

Introduction Optimization on graphs

Chapter 11: Graphs and Trees. March 23, 2008

We ve done. Introduction to the greedy method Activity selection problem How to prove that a greedy algorithm works Fractional Knapsack Huffman coding

Combinatorics Summary Sheet for Exam 1 Material 2019

Graph Algorithms Using Depth First Search

Undirected Network Summary

More NP-complete Problems. CS255 Chris Pollett May 3, 2006.

Lecture 4: Bipartite graphs and planarity

GRAPHS, GRAPH MODELS, GRAPH TERMINOLOGY, AND SPECIAL TYPES OF GRAPHS

Corso di Identificazione dei Modelli e Analisi dei Dati

UNIT 3. Greedy Method. Design and Analysis of Algorithms GENERAL METHOD

Jörgen Bang-Jensen and Gregory Gutin. Digraphs. Theory, Algorithms and Applications. Springer

CS473-Algorithms I. Lecture 13-A. Graphs. Cevdet Aykanat - Bilkent University Computer Engineering Department

4. (a) Draw the Petersen graph. (b) Use Kuratowski s teorem to prove that the Petersen graph is non-planar.

Chapter 2 Graphs. 2.1 Definition of Graphs

{ 1} Definitions. 10. Extremal graph theory. Problem definition Paths and cycles Complete subgraphs

Lecture 1: Examples, connectedness, paths and cycles

Graphs and Trees. An example. Graphs. Example 2

CS 4407 Algorithms Lecture 5: Graphs an Introduction

Topics Covered. Introduction to Graphs Euler s Theorem Hamiltonian Circuits The Traveling Salesman Problem Trees and Kruskal s Algorithm

Preface MOTIVATION ORGANIZATION OF THE BOOK. Section 1: Basic Concepts of Graph Theory

Lecture 10. Elementary Graph Algorithm Minimum Spanning Trees

CSE 417 Branch & Bound (pt 4) Branch & Bound

On some problems in graph theory: from colourings to vertex identication

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

Overlapping Cluster Planarity.

Basic Graph Theory with Applications to Economics

CPS 102: Discrete Mathematics. Quiz 3 Date: Wednesday November 30, Instructor: Bruce Maggs NAME: Prob # Score. Total 60

DEFINITION OF GRAPH GRAPH THEORY GRAPHS ACCORDING TO THEIR VERTICES AND EDGES EXAMPLE GRAPHS ACCORDING TO THEIR VERTICES AND EDGES

All 13,509 cities in US with a population of at least 500 Reference:

Study Guide Mods: Date:

Chapter 9. Greedy Technique. Copyright 2007 Pearson Addison-Wesley. All rights reserved.

COP 4531 Complexity & Analysis of Data Structures & Algorithms

IE 102 Spring Routing Through Networks - 1

Graphs. Introduction To Graphs: Exercises. Definitions:

Undirected Graphs. Hwansoo Han

Elements of Graph Theory

Minimum Spanning Trees My T. UF

Extensional Acyclic Orientations and Set Graphs

Section 3.1: Nonseparable Graphs Cut vertex of a connected graph G: A vertex x G such that G x is not connected. Theorem 3.1, p. 57: Every connected

Algorithm Design (8) Graph Algorithms 1/2

Basic Graph Definitions

About the Tutorial. Audience. Prerequisites. Disclaimer & Copyright. Graph Theory

Adjacent: Two distinct vertices u, v are adjacent if there is an edge with ends u, v. In this case we let uv denote such an edge.

0.0.1 Network Analysis

Basic Graph Theory with Applications to Economics

Chapter S:I. I. Introduction. Examples for Search Problems Search Problem Abstraction

ON THE STRUCTURE OF SELF-COMPLEMENTARY GRAPHS ROBERT MOLINA DEPARTMENT OF MATHEMATICS AND COMPUTER SCIENCE ALMA COLLEGE ABSTRACT

Strongly connected: A directed graph is strongly connected if every pair of vertices are reachable from each other.

Number Theory and Graph Theory

Studying Graph Connectivity

Graphs - I CS 2110, Spring 2016

Assignment 1 Introduction to Graph Theory CO342

Dynamic programming. Trivial problems are solved first More complex solutions are composed from the simpler solutions already computed

CS6702 GRAPH THEORY AND APPLICATIONS QUESTION BANK

Graph Theory: Introduction

Artificial Intelligence

Transcription:

Network models and graph theory G. Ferrari Trecate Dipartimento di Ingegneria Industriale e dell Informazione (DIII) Università degli Studi di Pavia Industrial Automation Ferrari Trecate (DII) Network models Industrial Automation / 9

Outline Introduction to network models Graph theory Ferrari Trecate (DII) Network models Industrial Automation / 9

Outline Introduction to network models Graph theory Ferrari Trecate (DII) Network models Industrial Automation / 9

Optimization on networks Methods for solving decision problems where the unknowns can only take finitely many values Focus on problems that can be represented as a graph or a network such as logistic or transport problems network design problems project management problems Several optimization problems on networks are computationally very demanding However, there are interesting industrial problems that can be solved in an efficient fashion Ferrari Trecate (DII) Network models Industrial Automation 4 / 9

Outline Introduction to network models Graph theory Ferrari Trecate (DII) Network models Industrial Automation 5 / 9

Basic definitions Undirected graph A graph is undirected if G = (V, E) is a pair comprising a finite set of vertices (or nodes) V = {,,..., n} and a set of E V V unordered pairs called edges (or arcs). Example: V = {,, }, E = {(, ), (, )} Undirected edges : (, ) = (, ), (, ) = (, ) Ferrari Trecate (DII) Network models Industrial Automation 6 / 9

Basic definitions Directed graph A graph G is directed (or digraph) if all pairs in E are ordered. Example:: V = {,, }, E = {(, ), (, )} Ordered edges: (, ) (, ), (, ) (, ) Ferrari Trecate (DII) Network models Industrial Automation 7 / 9

Basic definitions Network If a function c : E R is specified, a graph is called weighted or network. If the graph is directed, one has a directed network. Example of directed network: V = {,, }, E = {(, ), (, )} c(, ) = e c(, ) = - Ferrari Trecate (DII) Network models Industrial Automation 8 / 9

Basic definitions Subgraph The graph H = (U, F ) is a subgraph of G = (V, E) if U V, F E and edges in F connect only vertices in U. Graph G = (V, E) Graph H = (U, F ) 4 4 H = (U, F ) is a subgraph of G because U = {,, 4} V, F = {(, ), (, 4)} E and edges in F connects only vertices inu. Ferrari Trecate (DII) Network models Industrial Automation 9 / 9

Cuts Directed cuts Let G = (V, E) be a digraph and S V. The directed cuts associated to S are the sets of edges δ + (S) = {(i, j) E : i S, j S} (edges leaving S) δ (S) = {(i, j) E : i S, j S} (edges entering in S) For an undirected graph δ + (S) = δ (S). δ + ({,, }) = {(, 4), (, 4)} δ ({,, }) = {(4, )} 4 S δ ({, 4}) = {(, 4), (, )} Ferrari Trecate (DII) Network models Industrial Automation 0 / 9

Graph connectivity Path A sequence of arcs e e e k such that is a path from v to v k+. e = (v, v ), e = (v, v ),..., e k = (v k, v k+ ) Notation: v v v k+ Path classification A path from a vertex to itself is a cycle. A path is elementary if it does not contain the same edge twice. A path is simple if it does not not pass through the same vertex twice (with the exception of the starting vertex for a cycle). Ferrari Trecate (DII) Network models Industrial Automation / 9

Graph connectivity 4 Remarks The path is elementary but not simple. The path 4 is simple and elementary. The paths and are cycles. All simple paths are also elementary (if the same vertex is not crossed twice, the path cannot contain the same edge twice). Ferrari Trecate (DII) Network models Industrial Automation / 9

Graph connectivity Hamiltonian paths A path is Hamiltonian if it simple and contains all vertices (except the starting vertex for a cycle). 4 The path 4 is Hamiltonian. The path 4 is not Hamiltonian. The cycle 4 is Hamiltonian. Remark There is no simple algorithm for checking if a graph contains a Hamiltonian cycle... Ferrari Trecate (DII) Network models Industrial Automation / 9

Graph connectivity Connectivity and completeness A vertex v is connected to v if there is a path from v to v. - A graph is connected if all pairs of vertices are connected. - A graph G = (V, E) is complete if E = V V Disconnected graph 5 Connected graph 5 4 4 Ferrari Trecate (DII) Network models Industrial Automation 4 / 9

Graph connectivity Tree If G = (V, E) is undirected, a connected subgraph with k vertices and k edges is a tree. A tree is spanning if k = n, with n = V. Graph Tree Spanning tree 4 5 4 4 5 Ferrari Trecate (DII) Network models Industrial Automation 5 / 9

Graph connectivity Tree theorem Let T be an undirected graph. The following conditions are equivalent: T is a tree T is a connected acyclic graph T is acyclic and the addition of any arc produces a simple cycle T is connected and the deletion of any arc makes T disconnected Every pair of vertices of T is connected by a unique simple path 4 5 Ferrari Trecate (DII) Network models Industrial Automation 6 / 9

Graph connectivity Forest A forest is an undirected acyclic graph. A subgraph of G is a maximal forest if the addition of any edge produces a cycle. Example Red edges define a maximal forest 5 6 4 7 Remarks A forest is always the union of disjoint trees. A spanning tree is a maximal forest. Ferrari Trecate (DII) Network models Industrial Automation 7 / 9

Optimization on networks Some interesting problems Problem A Is an undirected graph connected? Problem B Given a digraph and two nodes v and v, check if v is connected to v. Problem C Does an undirected graph contain a Hamiltonian cycle? Problem TSP (Travelling Salesman Problem) Given an undirected complete network and a number r R check if it contains a Hamiltonian cycle of cost less than r. Problem TSP - Vertices = towns - Weights = distances (in Km) The traveling salesman must visit all town and be back to the first one covering less than r Km A B 0 4 0 5 8 C D Ferrari Trecate (DII) Network models Industrial Automation 8 / 9

Optimization on networks Enumeration algorithm All problems can be solved by computing all paths of length less than (or equal to) V contained in the graph Highly inefficient method: the number of paths explodes with the number of vertices Which is the computational time needed for solving problems A, B, C and TSP? It depends upon the adopted algorithm... - A rigorous answer is provided by the computational complexity theory Computational complexity Quantify the efficiency of a given algorithms Quantify the intrinsic difficulty of a problem Ferrari Trecate (DII) Network models Industrial Automation 9 / 9