MAESTRIA EN GERENCIA DE SISTEMAS - INTRODUCCION A LA TEORIA DE GRAFOS Y REDES

32
logo MAESTRIA EN GERENCIA DE SISTEMAS MAESTRIA EN GERENCIA DE SISTEMAS INTRODUCCION A LA TEORIA DE GRAFOS Y REDES Msc. Washington Rodr´ ıguez [email protected]

Transcript of MAESTRIA EN GERENCIA DE SISTEMAS - INTRODUCCION A LA TEORIA DE GRAFOS Y REDES

logo

MAESTRIA EN GERENCIA DE SISTEMAS

MAESTRIA EN GERENCIA DE SISTEMASINTRODUCCION A LA TEORIA DE GRAFOS Y REDES

Msc. Washington Rodrı[email protected]

February 18, 2015

logo

MAESTRIA EN GERENCIA DE SISTEMAS

IntroduccionDentro del proceso de toma de decisiones existen diversos problemas que pueden abor-darse desde puntos de vista variados tal como: Optimizacion en Redes y la ProgramacionMatematica. Dependiendo del problema puede ser mejor utilizar tecnicas combinatoriaso tecnicas exactas. Ası podemos tener

Alternativas de decision Si o No.- Construye o no construye, Amplıa o no amplıa

Alternativas de decision con numeros enteros.- Cantidad de cajas a producir,Numero de batches a producir, Numero de lotes a comprar, etc.

Ruta a elegir.- Problema del agente viajero (Combinatorio)

Camiones a contratar.- Dimensionamiento de la flota (Combinatorio).

Camino mas corto entre dos ciudades.- Ruta mas corta (Combinatorio).

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Aplicaciones de la Teorıa de Grafos

Ejemplos

Podemos encontrar varias aplicaciones de la teorıa de Grafos. A continuacion resumimosalgunas posibles aplicaciones de la modelizacion con grafos y redes.

Nodos Arcos FlujoCiudades Carreteras Vehıculos

Aereopuertos Rutas aereas AvionesTerminales de computadoras Cableado Datos

Estaciones de bombeo Tuberıas Petroleo, gas, agua, etcCentros de distribucion Rutas Productos

Procesos SC Interrealaciones Materiales

Table: Aplicaciones de los grafos

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos y Redes

Grafos Orientados (Digrafos)

Definicion de Grafos Orientados

Definicion

Un grafo orientado G es un par ordenado de conjuntos G = (V,E), donde:

V es un conjunto finito, V = {x1, . . . , xn}, cuyos elementos se llaman vertices.

E es un conjunto finito, E = {e1, . . . , en} de elementos de V × V cuyoselementos se denominan arcos.

En la figura x4 es un vertice aislado y el arco e5 es un lazo. Para esteejemplo V = {x1, x2, x3, x4, x5, x6} y E = {e1, e2, e3, e4, e5}, es decir, E ={(x1, x2), (x2, x3), (x3, x5), (x3, x5), (x6, x6)}

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos y Redes

Conjuntos de sucesores y predecesores

Sucesores y Predecesores

Definicion

Dado un arco e = (x, y),

Se dice que x es el vertice inicial de e y que y es un sucesor de x, y ∈ S(x), Ses el conjunto de sucesores de x

Se dice que y es el extremo final de e y que x es un predecesor de y, x ∈ P (y),P es el conjunto de predecesores de y

Tambien diremos que e es incidente a los extremos x e y

Dos arcos e1 y e2 son adyacentes o vecinos si comparten al menos un vertice.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos y Redes

Grado interior y Grado exterior de un vertice

Definicion del Grado de un Vertice

Definicion

Dado un vertice x ∈ V ,

Se llama grado interior de x y se denota d−(x) a la cardinalidad del conjunto{(y, x) ∈ E/y ∈ P (x)}Se llama grado exterior de x y se denota d+(x) a la cardinalidad del conjunto{(x, y) ∈ E/y ∈ S(x)}Se llama grado de un vertice x a d(x) = d−(x) + d+(x)

Observacion

Si d(x)=0 entonces es x un vertice aislado.

Si d−(x) = 0 entonces es x un vertice fuente.

Si d+(x) = 0 entonces es x un vertice sumidero.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Caminos y Circuitos

Camino

Definicion de Camino

Definicion

Un camino C en un Grafo G = (V,E) que une dos vertices x e y en V es unasucesion de arcos C = {(x, z1), (z1, z2), . . . , (zk, y)}, tambien se puede notar C como:C = {x, z1, z2, . . . , zk, y}

El numero de arcos de C se llama la longitud del camino.

Se dice que C es un camino simple si no tiene arcos repetidos.

Se dice que C es elemental si en la sucesion no se repite ningun vertice.

Un camino C es Hamiltoneano si es elemental y pasa por todos los vertices deV .

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Caminos y Circuitos

Circuito

Definicion de Circuito

Definicion

Un circuito C en un Grafo G = (V,E) es un camino simple cerrado

Un circuito C en un Grafo G = (V,E) se dice circuito Hamiltoneano si contienetodos los vertices de G una y solo una vez.

Si G admite un circuito Hamiltoneano entonces G se llama Grafo Hamiltoneano.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Caminos y Circuitos

Matriz de incidencia

Definicion de Matriz de Incidencia

Definicion

Sea G = (V,E) un grafo sin lazos con n vertices (|V | = n) y m arcos (|E| = m), sellama matriz de incidencia vertices - arcos del grafo G a la matriz A de orden n×m,definida por:

|aij | =

−1 si el arco ej tiene a xi como vertice inicial;1 si el arco ej tiene a xi como vertice final;0 si no ocurre ninguna de las anteriores.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Caminos y Circuitos

Ejemplo

Ejemplo de Matriz de Incidencia

Ejemplo

Para el siguiente grafo encontrar la matriz de incidencia.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos no Orientados (No dirigidos)

Definicion de Grafo no Orientado

Definicion

Un grafo no orientado G es un par ordenado de conjuntos G = (V,E), donde:

V es un conjunto finito, V = {x1, . . . , xn}, cuyos elementos se llaman vertices.

E es un conjunto finito, E = {e1, . . . , en} de elementos de V × V cuyoselementos se denominan aristas.

Para la figura: V = {x1, x2, x3, x4, x5, x6} y E = {e1, e2, e3, e4, e5}, es decir, E ={{x1, x2}, {x2, x3}, {x3, x5}, {x3, x5}, {x4, x6}}

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos no Orientados (No dirigidos)

Terminologıa

Terminologıa en Grafos no Orientados

Si e = {x, y} es una arista de G, entonces x e y se dicen los extremos de laarista.

Dos aristas e y e′ se dicen adyacentes o vecinas si tienen al menos un extremocomun.

Definicion

Dado un grafo G = (V,E), el grado de un vertice x ∈ V , que se nota d(x), es igual alnumero de aristas incidentes a x.

Para la figura el grado del vertice x es d(x) = 4 y el grado del vertice y es cero.d(y) = 0.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Cadenas y Ciclos

Cadena

Definicion

Una cadena C en un Grafo G = (V,E) que une dos vertices x e y en V es unasucesion de aristas de la forma: C = {{x, z1}, {z1, z2}, . . . , {zk, y}}, tambien sepuede notar C como: C = {x, z1, z2, . . . , zk, y}

El numero de aristas de C se llama la longitud de la cadena.

Se dice que C es una cadena simple si no tiene aristas repetidos.

Se dice que C es una cadena elemental si en la sucesion no se repite ningunvertice.

Una cadena C es Hamiltoneana si es elemental y pasa por todos los vertices deV .

Una cadena C es Euleriana si es elemental y pasa por todas las aristas de Gexactamente una vez.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Cadenas y Ciclos

Ciclo

Definicion de Ciclo

Definicion

Un ciclo C en un Grafo G = (V,E) es una cadena simple cerrada

Un ciclo C en un Grafo G = (V,E) se dice ciclo Hamiltoneano si contiene todoslos vertices de G una y solo una vez.

Un ciclo C en un Grafo G = (V,E) se dice ciclo Euleriano si pasa por todas lasaristas de G una y solo una vez.

Definicion

Sea G = (V,E) un grafo no dirigido. Se dice que G es fuertemente conexo sipara cualquier par de vertices x e y existe una cadena que los une.

Para el caso dirigido la definicion anterior se cumple si existe un camino que unea cuaquier par de vertices x e y.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos Especiales

Arboles y Arborescencias

Arbol (caso no orientado)

Definicion

Un grafo T = (V,E) se dice que es un arbol si cumple las siguientes condiciones:

T es conexo

T no tiene ciclos

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos Especiales

Propiedades de los arboles

Propiedades

Sea T = (V,E) un grafo no orientado. Se deben satisfacer las siguientes propiedadespara que T sea un arbol.

1 T es conexo y tiene n− 1 aristas, donde n es el numero de vertices, |V | = n.

2 T no tiene ciclos.

3 Existe una cadena que une a todo par de vertices en T .

4 T es maximal para la propiedad de no tener ciclos, es decir, si aumentamos unanueva arista en T se forma un unico ciclo.

5 T es maximal para la conexidad, es decir, si quitamos una arista de T , el grafoya no es fuertemente conexo.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos Especiales

Arborescencias

Arborescencia (caso orientado)

Definicion

Sea G = (V,E) un grafo orientado, se dice que es un vertice r ∈ V es una raız de G,si para cualquier vertice x distinto de r, existe un camino que va de r a x.

Definicion

Sea A = (V,E) un grafo orientado, se dice que A es una arborescencia si:

1 A tiene una raız.

2 El grafo no dirigido asociado a A es un arbol.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos Especiales

Propiedades de las arborescencias

Propiedades

Sea A = (V,E) una arborescencia de raiz r. Se cumplen las siguientes propiedades

1 d−(r) = 0, el grado interior de r es cero.

2 d−(x) = 1, para todo vertice x 6= r.

3 Existe un unico camino que une r con cualquier otro vertice x ∈ V , x 6= r.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos Especiales

Grafo completo

Definicion de Grafo Completo

Definicion

Sea G = (V,E) un grafo, se dice que G es completo si:

1 No tiene arcos (aristas) multiples o ciclos (circuitos).

2 Tiene todas las conexiones posibles.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos Especiales

Arbol Generador

Definicion de arbol Generador

Definicion

Dado un grafo conexo G = (V,E), un subgrafo parcial T = (V,E′) se dice que es unarbol generador de G si T es un arbol. En la figura las aristas resaltadas en rojoforman el arbol generador.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos Especiales

Redes

Definicion de una Red

Definicion

Una red R = (V,E, c1, c2, . . . , cp; d1, d2, . . . , dq) que cumple las siguientescondiciones:

1 (V,E) forma un grafo de soporte

2 ci es una ponderacion definida sobre las aristas del grafo, matematicamenteexpresada por:

ci : E → Rei → c(ei) ∀i = 1, . . . , p

3 dj es una ponderacion definida sobre los vertices del grafo, matematicamenteexpresada por:

dj : V → Rxj → d(xj) ∀i = 1, . . . , q

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Grafos Especiales

Redes - Ejemplo

Ejemplo de una Red

En la siguiente red las ponderaciones sobre los arcos pueden representar: Tiempo,distancia, capacidad, costo, etc.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Problemas y Modelos de Optimizacion Combinatoria

Problema del arbol generador de peso mınimo - MST

Arbol Generador de peso mınimo

Dada una red no orientada R = (V,E, d), donde:

1 G = (V,E) forma un grafo conexo.

2 d es una ponderacion definida sobre las aristas del grafo.

El problema del MST consiste en construir un arbol generador T = (V,E′) que tengapeso mınimo.

Definicion

Sea T = (V,E′) un arbol de G. Se define el peso w(T ) del arbol como la suma de lasponderaciones de todos las aristas que conforman el arbol.

w(T ) =∑e

d(e)

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Problemas y Modelos de Optimizacion Combinatoria

MST - Ejemplo

Peso de un arbol generador

En la siguiente red las aristas resaltadas con rojo representa un arbol generador. Paraeste ejemplo el peso total del arbol es la suma de las ponderaciones de las aristas delarbol. w(T ) = 10 + 7 + 13 + 19 + 10 = 59

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Problemas y Modelos de Optimizacion Combinatoria

Arborescencia de caminos mas cortos

Consideraciones

Sea R = (V,E, d) una red orientada con ponderaciones d ≥ 0, sin circuitos y con raizr. La idea es calcular una arborescencia de caminos mas cortos desde la raız r haciatodos los vertices x 6= r de la red.

Notacion

π(x): Distancia mas corta desde la raız r hasta el vertice x.

G = (V,E), el grafo no dirigido asociado a R es fuertemente conexo.

ProblemaEl problema consiste en calcular el camino mas corto entre cualquier par de vertices dela red R.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Problemas y Modelos de Optimizacion Combinatoria

Problema del camino mas corto - Ejemplo

Arborescencia de caminos mas cortosEn la figura se muestra la red orientada y la arborescencia asociada a dicha red.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Problemas y Modelos de Optimizacion Combinatoria

Problema del Cartero Chino

Problema

Dada una red no orientada R = (V,E, c), donde c es una ponderacion sobre las aristasa valores positivos, R es un multigrafo no dirigido sin lazos. Se trata de encontrar unrecorrido circular que pase al menos una vez por cada arista de R y que tenga unalongitud mınima.

Definicion

En un multigrafo no dirigido G = (V,E), el numero de vertices de grado impar es unnumero par.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Problemas y Modelos de Optimizacion Combinatoria

Problema del agente viajero - TSP

Problema del TSP

Dada una red no orientada R = (V,E, c), donde:

1 G = (V,E) forma un grafo no dirigido completo.

2 c es una ponderacion definida sobre las aristas del grafo, que representa unadistancia

c : E → Rei → c(ei) ∀i = 1, . . . , p

3 V = {x1, x2, . . . , xn} representa n ciudades.

El problema del TSP consiste en buscar un tour para un viajero que:

1 Comience y termine en la ciudad x1.

2 Que pase una y solo una vez por las otras ciudades.

3 Que la distancia total recorrida sea mınima.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Problemas y Modelos de Optimizacion Combinatoria

TSP - Ejemplo 1

Tour para el problema TSP

En la siguiente red las aristas resaltadas con rojo representa el un tour para el problemadel agente viajero. Para este ejemplo el recorrido total es la suma de las distanciasrecorridas. d = 10 + 7 + 13 + 19 + 10 + 2 = 61

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Problemas y Modelos de Optimizacion Combinatoria

TSP - Ejemplo 2

Recorrido 2-Opt de varias ciudades del Ecuador

Tour para recorrer varias ciudades del Ecuador utilizando el algoritmo 2−Opt.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Problemas y Modelos de Optimizacion Combinatoria

Problema de Ruteo de Vehıculos Capacitado - CVRP

Problema

Dada una red no orientada R = (V,E, c, b), donde:

1 V = {0, 1, . . . , n} donde el vertice 0 se considera como el deposito de una flotade vehıculos y 1,2,...,n son los clientes.

2 cij es una ponderacion sobre las aristas a valores positivos, que representa eltiempo o distancia para recorrer una arista de E. Tambien se puede decir que esla distancia en la red real o fısica para trasladarse desde el cliente i hacia elcliente j. (Cij = cji)

3 bi es la demanda u oferta del vertice vi. b0=0

El problema consiste en: Dada una flota homogenea de vehıculos con capacidad k(bi ≤ K), se trata de construir un conjunto de ciclos que son las rutas para un camiontales que:

Todos los ciclos contengan al origen 0.

Todos los clientes deben pertenecer a exactamente un ciclo.

La suma de las demandas de los vertices en cada ciclo debe ser menor o igual aK.

La distancia recorrida por los camiones sea mınima.

logo

MAESTRIA EN GERENCIA DE SISTEMAS

Problemas y Modelos de Optimizacion Combinatoria

Problema de ruteo de vehıculos - Ejemplo

Ejemplo de rutas asignadas

En la figura se muestra la red y resaltado con diferentes colores las rutas posibles para losvehıculos. En la red los puntos bi son las demandas de los clientes y las ponderacionescij son las distancias para ir del cliente i al cliente j