You are on page 1of 59

Optimizacion en Grafos

Erik Alex Papa Quiroz


Universidad Nacional Mayor de San Marcos

Curso de Optimizacion
Facultad de Ciencias Matematicas
Lima-Peru

26/08/2017
Resumen
1 Introduccion
2 Modelo
3 Referencias
1. Grafos
Un grafo (grafo no dirigido) es un par G = (V, E), donde V es un
conjunto finito no vaco de elementos llamados vertices (nodos) y
E es un conjunto de pares no ordenados de elementos de V
llamados aristas (arcos).
Se puede decir que si existe una arista unica e E asociada con
los vertices v y w, esta se escribe como e = {v, w}.
En este contexto, {v, w} no es un par ordenado y denota una
arista entre v y w.
e3

b
v3

e2
e4

e5 e1
e9 v4 b b
v2
b v1
e7
e6 e8
b e10
v5
G

Figure: Grafo G.
El grafo de la siguiente Figura representa las conexiones aereas
entre algunas ciudades del territorio Peruano. Los vertices en el
grafo representan a las ciudades, mientras que las aristas
representan a las rutas aereas entre ciudad y ciudad.
Huanuco Iquitos P ucallpa
P to.M aldonad

Huaraz Huancayo

T rujillo Cuzco

Ayacucho
Cajamarca
Lima
Arequipa
Chiclayo

P iura

T umbes T acn

Figure: Representacion de las conexiones aereas entre ciudades.


2. Grafo Dirigido

Un grafo dirigido (digrafo) es un par G = (V, E), donde V es un


conjunto finito no vaco de vertices (nodos) y E es un conjunto de
aristas (arcos) tales que cada arista e E esta asociada con un
par ordenado de vertices. Si hay una arista unica e asociada con
el par ordenado (v, w) de vertices, se escribe e = (v, w), que
denota una arista de v a w.
e9
v1 e5 v2
b b

e2 e3 e6
e1 e7

b
e4
v3
b v4

e8

Figure: Grafo dirigido G.


En la Figura anterior el grafo dirigido G consiste en el conjunto de
vertices
V = {v1 , v2 , v3 , v4 }
y el conjunto de aristas

E = {e1 , e2 , e3 , e4 , e5 , e6 , e7 , e8 , e9 }

tal que la arista e1 se asocia con el par ordenado de vertices


(v2 , v3 ) debido a que tiene como vertice origen a v2 y vertice
destino a v3 entonces e1 = (v2 , v3 ). La arista e8 se asocia con el
par ordenado de vertices (v4 , v3 ) debido a que tiene como vertice
origen a v4 y vertice destino a v3 entonces e8 = (v4 , v3 ).
Otro ejemplo de grafo dirigido:
v1
b

e1 e10
e3
v2 b b v3
e4

e2 v4 e5

e9 e6
v5 b b v6
e8 e7

Figure: Grafo dirigido.


3. Aristas Paralelas
Dos aristas en un grafo son paralelas si inciden sobre un mismo
par de vertices.

e1

v1 v2

e2

Figure: Aristas paralelas.


Dos aristas en un grafo dirigido G son paralelas si inciden desde
un mismo vertice inicial hacia un mismo vertice final.
En la Figura siguiente vemos que e1 y e2 son paralelas. Mientras
que e4 y e5 no lo son.
v1

e4 e5 e2 e1

v3 e3 v2

Figure: Grafo dirigido.


4. Grado de un vertice
Sea G un grafo, para cualquier vertice v de G, el grado de v,
denotado con (v), es el numero de aristas en G, que son
incidentes con v. En este caso, un lazo en un vertice v se
considera como dos aristas incidentes en v.
En la Figura inferior los grados de los vertices del grafo G son:
(v3 ) = (v4 ) = (v5 ) = (v6 ) = 2, (v1 ) = 3, (v2 ) = 5, (v7 ) = 0.

v5
v1

v3
b v7

v2
v4 v6
G

Figure: Grafo G.
Sea G = (V, E) un grafo dirigido, para cualquier v V se tiene:
I El grado de entrada de v es el numero de aristas de G que
llegan a v, y se denota con (v).
I El grado de salida de v es el numero de aristas de G que
parten de v, y se denota con + (v).
Si G tiene uno o mas lazos, cada lazo de un vertice v contribuye
con una unidad a (v) y a + (v).
En la Figura siguiente los grados de entrada de los vertices de G
son: (v1 ) = 2, (v2 ) = 1, (v3 ) = 1, (v4 ) = 3. Los grados de
salida son: + (v1 ) = 1, + (v2 ) = 3, + (v3 ) = 1, + (v4 ) = 2.
v2

v3

v1
v4

Figure: Grafo dirigido G.


5. Grafos Simples

Un grafo o grafo dirigido, se dice simple si no tiene lazos ni


aristas paralelas.
En la siguiente Figura tenemos que G es un grafo dirigido simple
y G0 es un grafo dirigido no simple.
v2 v2

e1
e1 e3 e2
e5 e2
e6
v1 e4
e4
v1
v3
e3 v3

G G

Figure: Grafos dirigidos G y G0 .


En la siguiente Figura tenemos que G es un grafo simple y G0 es
un grafo no simple.

e3
v2 v3
v3

e4 e2
e1
v4 e1 v1
e3 e4 v2
e7
e6 e8
v1 v4
v5

G G

Figure: Grafos G y G0 .
6. Grafos Completos

Un grafo no dirigido simple, se denomina grafo completo sobre n


vertices, denotado por Kn , si existe solamente una arista entre
cada par de vertices distintos.
En la Figura siguiente, tenemos los grafos completos
K1 , K2 , K3 , K4 y K5 .

v2
v2 v1 v2
v2

v1 v3

v1 v4 v3
b v1 v1 v3
v5 v4
K1 K2 K3 K4 K5

Figure: Grafo completo K1 , K2 , K3 , K4 , K5 .


7. Grafo etiquetado y ponderado

Un grafo o grafo dirigido G es etiquetado si se le asigna a sus


aristas o vertices valores (etiquetas). En particular G es llamado
ponderado, si a cada arista de G se le asigna un numero no
negativo denominado peso o longitud.
En la Figura, tenemos un digrafo etiquetado G y un grafo
ponderado H.

v3 v2 v3
v2 2 3
2

4 3 4
2 3 1

v1 12 v5 b v4 v1 2 1
2 v4
0 8 12
7
1 6 4 1
5 6
v7 v6
10 v6 v5
G H

Figure: Digrafo etiquetado G y grafo ponderado H.


8. Trayectorias

Sea G = (V, E) un grafo. Una sucesion alternada de vertices y


aristas (v0 , e1 , v1 , e2 , v2 , ..., vn1 , en , vn ) donde la arista ei es
incidente sobre los vertices vi1 y vi , para cada i = 1, 2, ..., n, se
llamara trayectoria y diremos que conecta o une el vertice v0 y el
vertice vn .
I Una trayectoria permite repeticiones de aristas y/o vertices.
I En un grafo simple se suele denotar la trayectoria como la
sucesion de vertices

(v0 , v1 , v2 , ..., vn1 , vn )


En el grafo G de la Figura siguiente tenemos la trayectoria
(v0 , e1 , v1 , e2 , v2 , e3 , v3 , e4 , v2 , e2 , v1 ) en el que se repite los vertices
v1 y v2 , asi como la arista e2 .

e1 e3

e2
v3
v0 v1 v2

e4

Figure: Grafo G.
La longitud de una trayectoria es el numero de aristas que la
forman.
En el grafo simple G de la Figura siguiente tenemos la trayectoria
(v1 , v2 , v3 , v1 , v5 , v4 , v2 , v3 ) de longitud 7.
v2

e6 e7

v4 e4 v5
e1 e2
e10 e8

e5 e3
v1 v3
e9

G
Una trayectoria simple es una trayectoria sin vertices repetidos.
En el grafo simple G de la Figura a seguir tenemos que
(v1 , v2 , v5 , v4 , v3 ) es una trayectoria simple y (v1 , v4 , v3 , v2 , v4 , v5 ) no
es una trayectoria simple.
v1 v2

v3

v5 v4
G

Figure: Grafo simple G.


9. Ciclos
Un ciclo es una trayectoria de longitud diferente de cero, sin
aristas repetidas , donde el primer y ultimo vertice son iguales.
En el grafo simple G de la Figura siguiente tenemos los ciclos:
(v1 , v2 , v3 , v4 , v2 , v5 , v1 ), (v1 , v2 , v5 , v1 ), (v2 , v4 , v3 , v2 ), etc .
v4 v3

v2 b

v1 v5

G
Un ciclo simple es un ciclo de v a v en el que no hay vertices
repetidos, excepto el inicio y el fin que son iguales a v.
En el grafo simple G de la Figura 17 tenemos que (v3 , v4 , v5 , v3 ) es
un ciclo simple y (v1 , v2 , v3 , v4 , v5 , v3 , v6 , v2 , v1 ) no es un ciclo simple.
v4 e4 v5
e3
v3 b
e5
e6
v6 e2
e7 v2
b e8
v7
e1
e9
v1

Figure: Grafo G.
Por ejemplo segun el grafo G de la Figura:
v5 v8

v6 v7
v4 v10
v2 v9
v3 v11

v1 v12
G

Figure: Grafo G.
Trayectoria Tray. Simple? Ciclo? C. Simple
(v4 , v2 , v5 , v6 , v7 , v8 , v9 , v10 ) Si No No
(v7 , v8 , v9 , v7 ) No Si Si
(v6 , v7 , v9 , v12 , v1 , v2 , v6 ) No Si Si
(v1 , v2 , v5 , v6 , v7 , v8 , v9 , v12 , v1 ) No Si Si
(v3 ) Si No No
10. Grafo Conexo
Un grafo G es conexo si dado dos vertices cualesquiera v y w en
G, existe una trayectoria de v a w.
En la Figura siguiente tenemos que el grafo G1 es conexo y el
grafo G2 no es conexo, pues por ejemplo no existe una trayectoria
del vertice v12 al vertice v3 .
v11 v12 v11 v12

v5 v5
v10 v13 v9 v10 v13 v9

v6 v6
v8 v8
v7 v7
v2 v3 v2 v3

v1 v4 v1 v4

G1 G2

Figure: Grafos G1 y G2 .
11. Subgrafo

Sea G = (V, E) un grafo. (V 0 , E0 ) es un subgrafo de G si


a) V 0 V y E0 E.
b) Para toda arista e0 E0 , si e0 incide en v0 y w0 , entonces v0 ,
w0 V 0 .
Consideremos el grafo:

v3 e3 v4
e10 e11
e2 e4
v9 e12 v10
v2 v5
e8 v7 v8 e9

e1 e5

e6
v1 v6
e7

G
El grafo G1 es un subgrafo del grafo G, mientras el grafo G2 no es
un subgrafo del grafo G pues la arista e13 no pertenece al grafo G.
v3 e3 v4 v3 e3 v4
e10 e11 e13 e11
e2 e4
v9 e12 v10 v9 e12 v10
v2 b v5
e8 v7 v8 v8 e9

e1 e5

e6 e6
v1 v6 v1 v6
e7 e7

G1 G2

Figure: Grafos G, G1 y G2 .
12. Trayectoria y Ciclo de Euler

La teora de grafos tiene su origen en un artculo llamado La


solucion de un problema referente a la geometra de posicion, el
cual fue publicado por el matematico Suizo Leonhard Euler en
1736. En este artculo aparece la solucion al problema de los
siete puentes de la ciudad de Konigsberg.
El rio Pregel divida la ciudad de Konigsberg en cuatro areas de
tierras separadas, y haba siete puentes que le permitan a los
habitantes de la ciudad de Konigsberg cruzar el rio para poder
trasladarse de una parte a otra de la ciudad.

Zona C

Zona A Zona D
ro

Zona B

El problema consista en realizar un paseo que atravesase cada


uno de los siete puentes exactamente una vez.
Sea G un grafo sin vertices aislados, una trayectoria de Euler es
una trayectoria que pasa por todas las aristas una sola vez.
En la Figura consideremos los grafos G y G0 . Se observa que
(v1 , e1 , v2 , e2 , v3 , e4 , v2 , e3 , v3 , e5 , v4 ) es una trayectoria de Euler en
G, pues pasa por todas las aristas de G una sola vez. Mientras
que en el grafo G0 no podemos obtener una trayectoria de Euler,
pues no se puede conectar todas las aristas de G0 .

v2 v5
e2 e4
e2
e1 v3 v4 e5
v1 v2 e3 v3 v4
b b
e1 e5
e3 e6
e4
v1 v6
G
G

Figure: Grafos G y G0 .
Un grafo G sin vertices aislados , se dice ciclo de Euler cuando
en una trayectoria de Euler el primer y ultimo vertice son iguales.
En la Figura siguiente tenemos que:
I En el grafo G, (v1 , v2 , v3 , v2 , v4 , v5 , v4 , v1 ) es un ciclo de Euler.
I El grafo G0 no admite ciclo de Euler, pues cualquier ciclo
utilizara la arista e4 dos veces.
e3 v4 v1

v4 e4 e6 v2
e4 e3
e5 e7
v5 v3 e1
v3
e2 e1
e2

v1 v2

G G

Figure: Grafos G y G0 .
Se dice que un grafo G es euleriano si posee un ciclo de Euler.
En la Figura vemos que G es un grafo euleriano pues posee un
ciclo de Euler (v6 , v3 , v5 , v4 , v3 , v2 , v1 , v7 , v6 ). Mientras G0 no es un
grafo euleriano pues no posee un ciclo de Euler.

v2

v4
v5

v2
v1 v3 b v3
v6
v5
v8
v1
v4
v6 v7 v7

G G

Figure: Grafos G y G0 .
Teorema

I Si un grafo G tiene un ciclo de Euler; entonces G es conexa y


todo vertice tiene grado par.
I Si G es un grafo conexo y cada vertice tiene grado par;
entonces G tiene un ciclo de Euler.
12. Trayectorias y Ciclos Hamiltonianos

En 1859, el matematico Irlandes Sir William Rowan Hamilton


(1805-1865) invento un juego llamado el juego icosaedrico. El
juego era un dodecaedro regular de madera con 20 esquinas
(vertices) en las que aparecan inscritos los nombres de ciudades
importantes. El objetivo de este juego era encontrar una
trayectoria que recorra las aristas del dodecaedro regular
pasando una sola vez por cada vertice.
Sea G un grafo, una trayectoria de Hamilton es una trayectoria
simple que contiene a todos los vertices de G.
v4

v2 v6
b
v3 v5

v8 v7
b

v2 v3 v4 v5
v1 v6
v1 v7
v9 v8

G G

Figure: Grafos G y G0
Se observa que (v1 , v2 , v3 , v4 , v5 , v6 , v7 , v8 , v9 ) es una trayectoria de
Hamilton en G, pues es una trayectoria simple y contiene a todos
los vertices de G. Mientras que en el grafo G0 no podemos
obtener una trayectoria de Hamilton, pues no existe una
trayectoria que pase por el vertice v7 .
Sea G un grafo con n 3 vertices, decimos que G tiene un ciclo
de Hamilton si existe un ciclo en G que contenga todos los
vertices de V.
En el grafo G de la Figura tenemos que (v1 , v2 , v3 , v4 , v5 , v6 , v7 , v1 )
es un ciclo de Hamilton.

v1 b b v2

v6 v4
b b b v3

v7 b b v5

Figure: Grafo G.
Se dice que el grafo G es Hamiltoniano si posee un ciclo de
Hamilton.
En la Figura vemos que G es un grafo Hamiltoniano pues posee
un ciclo de Hamilton (v1 , v2 , v3 , v4 , v5 , v1 ).
v1 v2

v3

v5 v4
G

Figure: Grafo G.
A diferencia de los teoremas para ciclos de Euler no se conocen
condiciones necesarias y suficientes de verificacion rapida para
que un grafo tenga un ciclo de Hamilton.
Teorema

I G tiene un ciclo Hamiltoniano si para cada vertice u, v (no


adyacentes) se cumple: |u| + |v| > n.
I G tiene un ciclo Hamiltoniano si para todo vertice v : |v| n/2.
Ejemplo:
Considere el siguiente grafo

2 3

b 4 d 5 c

6 7 8 9
e f
10 15
11 12 13 14

16 17
g h i
18 19

j
Preguntas:

I G es conexo?
I Existe un ciclo de Euler?
I Existe un circuito Hamiltoniano?
I Existe una solucion al Problema del Agente Viajero?
Respuestas:

I G es conexo
I Existe un ciclo de Euler pues el grado de cada vertice es par.
I Existe un circuito Hamiltoniano a pesar que no se cumple
ninguna de las condiciones del teorema
I Existe una solucion al Problema del Agente Viajero dado por
el siguiente grafo:
a

d
c
f
b e

i
g h

Figure: Solucion del Agente Viajero.


4. Referencias

MORA ESCOBAR J. Temas de Optimizacion, Universidad Nacional de Colombia,


Facultad de Ciencias, 2008.
TAHA H. A. Investigacion de Operaciones, Pearson, Prentice Hall, Mexico, 2004.
GRIMALDI R. Matematicas Discreta y Combinatoria, Addison Wesley
Iberoamericana S.A., 1998.

You might also like