Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos...

94
TEORIA DE GRAFOS Estructuras Discretas Ing. Jenny Paredes Aguilar

Transcript of Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos...

Page 1: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

TEORIA DE GRAFOS

Estructuras Discretas

Ing Jenny Paredes Aguilar

INTRODUCCION

Teoria de grafos se usa en numerosos problemascuantificables en las organizaciones intervienenuna serie de elementos entre los que se establecenunas relaciones

por ejemplo los problemas relacionados conposibilidades de comunicacioacuten (redes decomunicacioacuten y de transporte) relaciones deorden entre actividades (planificacioacuten deproyectos mediante PERT) o estructuras deproducto complejas (gestioacuten de inventariosmediante MRP)

Los grafos son una herramienta que permitemodelizar relaciones de esta naturaleza de modo quese puedan resolver problemas asociados a esascircunstancias frecuentemente de forma menoscostosa que utilizando otras teacutecnicas como laprogramacioacuten lineal

INTRODUCCIOacuteN

Grafos modelos matemaacuteticos de situaciones reales

Ejemplos

Mapa de carreteras plano de metro red de PCs

plano de un circuito eleacutectrico aacuterboles

genealoacutegicos etc

Aplicaciones

Compiladores y traductores Redes Planificacioacuten

etc

Origen 1736 (Los Puentes de Koumlnisberg Euler)

DEFINICIOacuteN

Un grafo G se define como un conjunto E de

pares no ordenados de elementos distintos

y otro conjunto de elementos V

El conjunto V es el conjunto de veacutertices del

grafo se denota por V(G)

El conjunto E es el conjunto de aristas del

grafo se denota por E(G)

G=(V E)

V=v1 v2 vn

E=vivj vnvm

EJEMPLO DE UN GRAFO

G = (V E)

V = Co M G J A

E = (Co G) (M G) (G J) (G A)(MJ)

DEFINICIOacuteN

Dos veacutertices vi vj son adyacentes si son los

extremos de una arista es decir si el par de

veacutertices V es un elemento de E

V es el nuacutemero de veacutertices

E es el nuacutemero de aristas

Un grafo es finito si V es finito

TIPOS DE GRAFOS

Multigrafo- es un grafo con varias aristas entre

dos veacutertices

TIPOS DE GRAFOS

Pseudografo tiene aristas cuyos extremos

coinciden (origen y fin en el mismo veacutertice) tales

aristas se denominan lazos

TIPOS DE GRAFOS

Digrafos Cuando E estaacute formado por pares

ordenados (es decir importa cual de los 2 veacutertices

del par se coloca primero) de elementos de V sus

elementos son llamados arcos y se habla de grafo

dirigido o diacutegrafo D = (V E) (grafo orientado)

TOPOLOGIA DE GRAFOS

Grafos Orientados- Un lado (ab) definido por los veacutertices a y b es diferente al lado (ba) Es decir el orden de los veacutertices importa en la definicioacuten del lado -gtGrafos Dirigidos

El Grado de um vertice- se define como numero total de arcos que inciden em dicho vertice Y para un grafo orientado se define

Semigrado interior de un vertice - es el numero de arcos con destino en un vertice un vertice con semigrado interior cero puede ser un origen del grafo

Semigrado Exterior de un vertice -es el numero de arcos con origen en el vertice Un vertice con semigrado exterior cero puede representar en determinadas situaciones un destino del grafo

TOPOLOGIA DE GRAFOS

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 2: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

INTRODUCCION

Teoria de grafos se usa en numerosos problemascuantificables en las organizaciones intervienenuna serie de elementos entre los que se establecenunas relaciones

por ejemplo los problemas relacionados conposibilidades de comunicacioacuten (redes decomunicacioacuten y de transporte) relaciones deorden entre actividades (planificacioacuten deproyectos mediante PERT) o estructuras deproducto complejas (gestioacuten de inventariosmediante MRP)

Los grafos son una herramienta que permitemodelizar relaciones de esta naturaleza de modo quese puedan resolver problemas asociados a esascircunstancias frecuentemente de forma menoscostosa que utilizando otras teacutecnicas como laprogramacioacuten lineal

INTRODUCCIOacuteN

Grafos modelos matemaacuteticos de situaciones reales

Ejemplos

Mapa de carreteras plano de metro red de PCs

plano de un circuito eleacutectrico aacuterboles

genealoacutegicos etc

Aplicaciones

Compiladores y traductores Redes Planificacioacuten

etc

Origen 1736 (Los Puentes de Koumlnisberg Euler)

DEFINICIOacuteN

Un grafo G se define como un conjunto E de

pares no ordenados de elementos distintos

y otro conjunto de elementos V

El conjunto V es el conjunto de veacutertices del

grafo se denota por V(G)

El conjunto E es el conjunto de aristas del

grafo se denota por E(G)

G=(V E)

V=v1 v2 vn

E=vivj vnvm

EJEMPLO DE UN GRAFO

G = (V E)

V = Co M G J A

E = (Co G) (M G) (G J) (G A)(MJ)

DEFINICIOacuteN

Dos veacutertices vi vj son adyacentes si son los

extremos de una arista es decir si el par de

veacutertices V es un elemento de E

V es el nuacutemero de veacutertices

E es el nuacutemero de aristas

Un grafo es finito si V es finito

TIPOS DE GRAFOS

Multigrafo- es un grafo con varias aristas entre

dos veacutertices

TIPOS DE GRAFOS

Pseudografo tiene aristas cuyos extremos

coinciden (origen y fin en el mismo veacutertice) tales

aristas se denominan lazos

TIPOS DE GRAFOS

Digrafos Cuando E estaacute formado por pares

ordenados (es decir importa cual de los 2 veacutertices

del par se coloca primero) de elementos de V sus

elementos son llamados arcos y se habla de grafo

dirigido o diacutegrafo D = (V E) (grafo orientado)

TOPOLOGIA DE GRAFOS

Grafos Orientados- Un lado (ab) definido por los veacutertices a y b es diferente al lado (ba) Es decir el orden de los veacutertices importa en la definicioacuten del lado -gtGrafos Dirigidos

El Grado de um vertice- se define como numero total de arcos que inciden em dicho vertice Y para un grafo orientado se define

Semigrado interior de un vertice - es el numero de arcos con destino en un vertice un vertice con semigrado interior cero puede ser un origen del grafo

Semigrado Exterior de un vertice -es el numero de arcos con origen en el vertice Un vertice con semigrado exterior cero puede representar en determinadas situaciones un destino del grafo

TOPOLOGIA DE GRAFOS

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 3: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

INTRODUCCIOacuteN

Grafos modelos matemaacuteticos de situaciones reales

Ejemplos

Mapa de carreteras plano de metro red de PCs

plano de un circuito eleacutectrico aacuterboles

genealoacutegicos etc

Aplicaciones

Compiladores y traductores Redes Planificacioacuten

etc

Origen 1736 (Los Puentes de Koumlnisberg Euler)

DEFINICIOacuteN

Un grafo G se define como un conjunto E de

pares no ordenados de elementos distintos

y otro conjunto de elementos V

El conjunto V es el conjunto de veacutertices del

grafo se denota por V(G)

El conjunto E es el conjunto de aristas del

grafo se denota por E(G)

G=(V E)

V=v1 v2 vn

E=vivj vnvm

EJEMPLO DE UN GRAFO

G = (V E)

V = Co M G J A

E = (Co G) (M G) (G J) (G A)(MJ)

DEFINICIOacuteN

Dos veacutertices vi vj son adyacentes si son los

extremos de una arista es decir si el par de

veacutertices V es un elemento de E

V es el nuacutemero de veacutertices

E es el nuacutemero de aristas

Un grafo es finito si V es finito

TIPOS DE GRAFOS

Multigrafo- es un grafo con varias aristas entre

dos veacutertices

TIPOS DE GRAFOS

Pseudografo tiene aristas cuyos extremos

coinciden (origen y fin en el mismo veacutertice) tales

aristas se denominan lazos

TIPOS DE GRAFOS

Digrafos Cuando E estaacute formado por pares

ordenados (es decir importa cual de los 2 veacutertices

del par se coloca primero) de elementos de V sus

elementos son llamados arcos y se habla de grafo

dirigido o diacutegrafo D = (V E) (grafo orientado)

TOPOLOGIA DE GRAFOS

Grafos Orientados- Un lado (ab) definido por los veacutertices a y b es diferente al lado (ba) Es decir el orden de los veacutertices importa en la definicioacuten del lado -gtGrafos Dirigidos

El Grado de um vertice- se define como numero total de arcos que inciden em dicho vertice Y para un grafo orientado se define

Semigrado interior de un vertice - es el numero de arcos con destino en un vertice un vertice con semigrado interior cero puede ser un origen del grafo

Semigrado Exterior de un vertice -es el numero de arcos con origen en el vertice Un vertice con semigrado exterior cero puede representar en determinadas situaciones un destino del grafo

TOPOLOGIA DE GRAFOS

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 4: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

DEFINICIOacuteN

Un grafo G se define como un conjunto E de

pares no ordenados de elementos distintos

y otro conjunto de elementos V

El conjunto V es el conjunto de veacutertices del

grafo se denota por V(G)

El conjunto E es el conjunto de aristas del

grafo se denota por E(G)

G=(V E)

V=v1 v2 vn

E=vivj vnvm

EJEMPLO DE UN GRAFO

G = (V E)

V = Co M G J A

E = (Co G) (M G) (G J) (G A)(MJ)

DEFINICIOacuteN

Dos veacutertices vi vj son adyacentes si son los

extremos de una arista es decir si el par de

veacutertices V es un elemento de E

V es el nuacutemero de veacutertices

E es el nuacutemero de aristas

Un grafo es finito si V es finito

TIPOS DE GRAFOS

Multigrafo- es un grafo con varias aristas entre

dos veacutertices

TIPOS DE GRAFOS

Pseudografo tiene aristas cuyos extremos

coinciden (origen y fin en el mismo veacutertice) tales

aristas se denominan lazos

TIPOS DE GRAFOS

Digrafos Cuando E estaacute formado por pares

ordenados (es decir importa cual de los 2 veacutertices

del par se coloca primero) de elementos de V sus

elementos son llamados arcos y se habla de grafo

dirigido o diacutegrafo D = (V E) (grafo orientado)

TOPOLOGIA DE GRAFOS

Grafos Orientados- Un lado (ab) definido por los veacutertices a y b es diferente al lado (ba) Es decir el orden de los veacutertices importa en la definicioacuten del lado -gtGrafos Dirigidos

El Grado de um vertice- se define como numero total de arcos que inciden em dicho vertice Y para un grafo orientado se define

Semigrado interior de un vertice - es el numero de arcos con destino en un vertice un vertice con semigrado interior cero puede ser un origen del grafo

Semigrado Exterior de un vertice -es el numero de arcos con origen en el vertice Un vertice con semigrado exterior cero puede representar en determinadas situaciones un destino del grafo

TOPOLOGIA DE GRAFOS

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 5: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO DE UN GRAFO

G = (V E)

V = Co M G J A

E = (Co G) (M G) (G J) (G A)(MJ)

DEFINICIOacuteN

Dos veacutertices vi vj son adyacentes si son los

extremos de una arista es decir si el par de

veacutertices V es un elemento de E

V es el nuacutemero de veacutertices

E es el nuacutemero de aristas

Un grafo es finito si V es finito

TIPOS DE GRAFOS

Multigrafo- es un grafo con varias aristas entre

dos veacutertices

TIPOS DE GRAFOS

Pseudografo tiene aristas cuyos extremos

coinciden (origen y fin en el mismo veacutertice) tales

aristas se denominan lazos

TIPOS DE GRAFOS

Digrafos Cuando E estaacute formado por pares

ordenados (es decir importa cual de los 2 veacutertices

del par se coloca primero) de elementos de V sus

elementos son llamados arcos y se habla de grafo

dirigido o diacutegrafo D = (V E) (grafo orientado)

TOPOLOGIA DE GRAFOS

Grafos Orientados- Un lado (ab) definido por los veacutertices a y b es diferente al lado (ba) Es decir el orden de los veacutertices importa en la definicioacuten del lado -gtGrafos Dirigidos

El Grado de um vertice- se define como numero total de arcos que inciden em dicho vertice Y para un grafo orientado se define

Semigrado interior de un vertice - es el numero de arcos con destino en un vertice un vertice con semigrado interior cero puede ser un origen del grafo

Semigrado Exterior de un vertice -es el numero de arcos con origen en el vertice Un vertice con semigrado exterior cero puede representar en determinadas situaciones un destino del grafo

TOPOLOGIA DE GRAFOS

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 6: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

DEFINICIOacuteN

Dos veacutertices vi vj son adyacentes si son los

extremos de una arista es decir si el par de

veacutertices V es un elemento de E

V es el nuacutemero de veacutertices

E es el nuacutemero de aristas

Un grafo es finito si V es finito

TIPOS DE GRAFOS

Multigrafo- es un grafo con varias aristas entre

dos veacutertices

TIPOS DE GRAFOS

Pseudografo tiene aristas cuyos extremos

coinciden (origen y fin en el mismo veacutertice) tales

aristas se denominan lazos

TIPOS DE GRAFOS

Digrafos Cuando E estaacute formado por pares

ordenados (es decir importa cual de los 2 veacutertices

del par se coloca primero) de elementos de V sus

elementos son llamados arcos y se habla de grafo

dirigido o diacutegrafo D = (V E) (grafo orientado)

TOPOLOGIA DE GRAFOS

Grafos Orientados- Un lado (ab) definido por los veacutertices a y b es diferente al lado (ba) Es decir el orden de los veacutertices importa en la definicioacuten del lado -gtGrafos Dirigidos

El Grado de um vertice- se define como numero total de arcos que inciden em dicho vertice Y para un grafo orientado se define

Semigrado interior de un vertice - es el numero de arcos con destino en un vertice un vertice con semigrado interior cero puede ser un origen del grafo

Semigrado Exterior de un vertice -es el numero de arcos con origen en el vertice Un vertice con semigrado exterior cero puede representar en determinadas situaciones un destino del grafo

TOPOLOGIA DE GRAFOS

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 7: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

TIPOS DE GRAFOS

Multigrafo- es un grafo con varias aristas entre

dos veacutertices

TIPOS DE GRAFOS

Pseudografo tiene aristas cuyos extremos

coinciden (origen y fin en el mismo veacutertice) tales

aristas se denominan lazos

TIPOS DE GRAFOS

Digrafos Cuando E estaacute formado por pares

ordenados (es decir importa cual de los 2 veacutertices

del par se coloca primero) de elementos de V sus

elementos son llamados arcos y se habla de grafo

dirigido o diacutegrafo D = (V E) (grafo orientado)

TOPOLOGIA DE GRAFOS

Grafos Orientados- Un lado (ab) definido por los veacutertices a y b es diferente al lado (ba) Es decir el orden de los veacutertices importa en la definicioacuten del lado -gtGrafos Dirigidos

El Grado de um vertice- se define como numero total de arcos que inciden em dicho vertice Y para un grafo orientado se define

Semigrado interior de un vertice - es el numero de arcos con destino en un vertice un vertice con semigrado interior cero puede ser un origen del grafo

Semigrado Exterior de un vertice -es el numero de arcos con origen en el vertice Un vertice con semigrado exterior cero puede representar en determinadas situaciones un destino del grafo

TOPOLOGIA DE GRAFOS

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 8: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

TIPOS DE GRAFOS

Pseudografo tiene aristas cuyos extremos

coinciden (origen y fin en el mismo veacutertice) tales

aristas se denominan lazos

TIPOS DE GRAFOS

Digrafos Cuando E estaacute formado por pares

ordenados (es decir importa cual de los 2 veacutertices

del par se coloca primero) de elementos de V sus

elementos son llamados arcos y se habla de grafo

dirigido o diacutegrafo D = (V E) (grafo orientado)

TOPOLOGIA DE GRAFOS

Grafos Orientados- Un lado (ab) definido por los veacutertices a y b es diferente al lado (ba) Es decir el orden de los veacutertices importa en la definicioacuten del lado -gtGrafos Dirigidos

El Grado de um vertice- se define como numero total de arcos que inciden em dicho vertice Y para un grafo orientado se define

Semigrado interior de un vertice - es el numero de arcos con destino en un vertice un vertice con semigrado interior cero puede ser un origen del grafo

Semigrado Exterior de un vertice -es el numero de arcos con origen en el vertice Un vertice con semigrado exterior cero puede representar en determinadas situaciones un destino del grafo

TOPOLOGIA DE GRAFOS

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 9: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

TIPOS DE GRAFOS

Digrafos Cuando E estaacute formado por pares

ordenados (es decir importa cual de los 2 veacutertices

del par se coloca primero) de elementos de V sus

elementos son llamados arcos y se habla de grafo

dirigido o diacutegrafo D = (V E) (grafo orientado)

TOPOLOGIA DE GRAFOS

Grafos Orientados- Un lado (ab) definido por los veacutertices a y b es diferente al lado (ba) Es decir el orden de los veacutertices importa en la definicioacuten del lado -gtGrafos Dirigidos

El Grado de um vertice- se define como numero total de arcos que inciden em dicho vertice Y para un grafo orientado se define

Semigrado interior de un vertice - es el numero de arcos con destino en un vertice un vertice con semigrado interior cero puede ser un origen del grafo

Semigrado Exterior de un vertice -es el numero de arcos con origen en el vertice Un vertice con semigrado exterior cero puede representar en determinadas situaciones un destino del grafo

TOPOLOGIA DE GRAFOS

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 10: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

TOPOLOGIA DE GRAFOS

Grafos Orientados- Un lado (ab) definido por los veacutertices a y b es diferente al lado (ba) Es decir el orden de los veacutertices importa en la definicioacuten del lado -gtGrafos Dirigidos

El Grado de um vertice- se define como numero total de arcos que inciden em dicho vertice Y para un grafo orientado se define

Semigrado interior de un vertice - es el numero de arcos con destino en un vertice un vertice con semigrado interior cero puede ser un origen del grafo

Semigrado Exterior de un vertice -es el numero de arcos con origen en el vertice Un vertice con semigrado exterior cero puede representar en determinadas situaciones un destino del grafo

TOPOLOGIA DE GRAFOS

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 11: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

TOPOLOGIA DE GRAFOS

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 12: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

TOPOLOGIA DE GRAFOS

Grafos no orientados

Un lado (ab) definido por los veacutertices a y b es

ideacutentico al lado (ba)-gt Grafos No dirigidos

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 13: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

TOPOLOGIA DE GRAFOS

Lados Orientados vs

No-Orientados

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 14: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

CUANTIFICACIOacuteN DE UN LADO

Se pueden asignar valores a los lados

representando asiacute atributos cuantitativos como

Intensidad de la relacioacuten

Capacidad informativa del lado

Voluacutemenes de flujo o traacutefico a traveacutes del lado

Distancias entre nodos

Probabilidades de pasar informacioacuten

Frecuencia de interaccioacuten

Costos asociados

Heuriacutesticas

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 15: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

CONCEPTOS

Isomorfismo Dos grafos son isomorfos si cada

par de veacutertices adyacentes corresponde con un

par de veacutertices adyacentes del otro

Sean G=(V E) y Grsquo=(Vrsquo Ersquo) y sea f V-gtVrsquo una

biyeccioacuten tal que uv isin E si y solo si

f(u)f(v) isin Ersquo esta biyeccioacuten se denomina

isomorfismo de G a Grsquo

Dos grafos isomorfos pueden ser representados

por figuras aparentemente diferentes

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 16: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

CONCEPTOS

Isomorfismo

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 17: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

CONCEPTOS

Orden del grafo G (nuacutemero de veacutertices)

Grado de un veacutertice (nuacutemero de lados a los que

estaacute conectado el veacutertice) Es el nuacutemero de aristas

que parten de eacutel El grado de un veacutertice se

conserva por isomorfismo Dado un veacutertice u de

G(V) su grado es gr(u)

En diacutegrafos se habla deGrado entrante (nuacutemero de lados que llegan al veacutertice)

Grado saliente (nuacutemero de lados que salen del veacutertice)

La suma del grado entrante maacutes el saliente da el

grado total del veacutertice

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 18: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

CONCEPTOS

Subgrafo

Sea G=(VE)un grafo un subgrafo de G es

cualquier grafo H=(V(H)E(H)) de modo

que V(H) estaacute contenido en V y E(H) estaacute

contenido en E

Un subgrafo se obtiene eliminando alguna(s)

arista(s) yo veacutertice(s) Si se suprime um veacutertice

se suprimen todas las aristas que tienen por

origen o fin dicho veacutertice

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 19: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

CONCEPTOS

Grafo regular (todos los veacutertices son del mismo

grado) si dicho grado es k el grafo se denominaraacute

k-regular El grafo G anterior es un grafo 3-

regular La regularidad de grafos se

conserva por isomorfismo

Grafo simple (no contiene ciclos y no hay maacutes

de 1 lado entre un par de veacutertices dado)

Grafo completo (todos los veacutertices estaacuten

conectados entre siacute) Cada par de veacutertices son los

extremos de una arista Dos grafos completos con

el mismo nuacutemero de veacutertices son isomorfos

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 20: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

CONCEPTOS

Un camino

En un grafo G es una sucesioacuten finita de

veacutertices y aristas alternos donde cada

arista

tiene por extremos los veacutertices adyacentes

(v0 v0v1 v1 v1v2 vn-1 vn-1vn vn)

A v0 y vn se les denomina extremos del camino

Longitud del camino

Es el nuacutemero de aristas que contiene La

distancia entre dos nodos es la longituddel

camino maacutes corto existente entre ellos

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 21: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

CONCEPTOS

Camino cerrado

Los extremos coinciden v0=vn

En un grafo (no un multigrafo) un camino puede

expresarse por la sucesioacuten de veacutertices

(v0 v1 vn-1 vn)

Camino simple

En la sucesioacuten de veacutertices no hay ninguno repetido

Un ciclo

Es un camino cerrado donde el primero y uacuteltimo

veacutertice son el mismo (camino simple cerrado) En un

multigrafo se considera ciclo a aquellos caminos

cerrados que no repiten aristas

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 22: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

CONCEPTOS

Un circuito

Es un camino cerrado que no repite aristas

Un grafo es conexo

Grafo en el cual es posible desde cualquier veacutertice

llegar a cualquier otro veacutertice presente en el

grafo (aunque para ello haya que pasar por otros

veacutertices) en caso contrario

diremos que es desconexo

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 23: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACIOacuteN DE GRAFOS

La representacioacuten graacutefica adecuada para la

interpretacioacuten y resolucioacuten de problemas en grafos

pequentildeos o medianos

La representacioacuten mediante matriz asociada o de

adyacentes especialmente uacutetil para el tratamiento

de problemas de grafos con programas

informaacuteticos

Otras representaciones como el diccionario de

grafo buscan definir el grafo de forma maacutes

compacta en teacuterminos de posiciones de memoria

Pueden ser uacutetiles para representar grafos de gran

tamantildeo

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 24: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 1 Dado un grafo G = (V E) con n

veacutertices v1 vn su matriz de adyacencia es

la matriz de orden ntimesn A(G)=(aij) donde aij es el

nuacutemero de aristas que unen los veacutertices vi y vj

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 25: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACIOacuteN DE GRAFOS

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 26: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un grafo es

simeacutetrica Si un veacutertice es aislado entonces la

correspondiente fila (columna) esta compuesta

soacutelo por ceros

Si el grafo es simple entonces la matriz de

adyacencia contiene solo ceros y unos

(matriz binaria) y la diagonal esta compuesta

soacutelo por ceros

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 27: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 2 Dado un grafo simple G = (V E)

con n=|V| veacutertices v1 vn y m=|E| aristas

e1 em su matriz de incidencia es la

matriz de orden nxm B(G)=(bij) donde bij=1 si

vi es incidente con ej y bij=0 en caso contrario

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 28: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACIOacuteN DE GRAFOS

La matriz de incidencia soacutelo contiene ceros y unos

(matriz binaria) Como cada arista

incide exactamente en dos veacutertices cada columna

tiene exactamente dos unos

El nuacutemero de unos que aparece en cada fila es

igual al grado del veacutertice correspondiente

Una fila compuesta soacutelo por ceros corresponde a

un veacutertice aislado

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 29: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACIOacuteN DE GRAFOS

Definicioacuten 145 Dado un grafo dirigido o

diacutegrafo D = (V E) con n veacutertices v1 vn

su matriz de adyacencia es la matriz de

orden ntimesn A(D)=(aij) donde aij es el nuacutemero

de arcos que tienen a vi como extremo inicial y a

vj como extremo final

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 30: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACIOacuteN DE GRAFOS

La matriz de adyacencia de un diacutegrafo no es

simeacutetrica Es una matriz binaria

El nuacutemero de unos que aparecen en una fila es

igual al grado de salida del correspondiente

veacutertice

nuacutemero de unos que aparecen en una

determinada columna es igual al grado de

entrada del correspondiente veacutertice

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 31: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACIOacuteN DE GRAFOS

Diccionario del grafo

Se enumeran los destinos de los arcos que parten

de cada nodo Diccionario inverso- enumeran los

origenes de los arcos que inciden en cada nodo

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 32: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACIOacuteN DE GRAFOS

La Lista de arcos proxima a la definicion formal

de un grafo expresada mas arriba permite una

representacion compacta delgrafo la lista de

arcos para el grafo queda

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 33: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACIOacuteN DE GRAFOS

Matriz de Veacutertices- Se utiliza cuando se desea

guardar la posicioacuten (x y) en el plano cartesiano

de cada veacutertice

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 34: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 35: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO

Puntos de corte

1048729 Veacutertices que si se quitan desconectan el

grafo En el ejemplo el veacutertice a

Lados de corte

1048729 Un lado que si se quita desconecta el

grafo En el ejemplo el lado (da)

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 36: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

PUNTOS DE CORTE

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 37: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

LADOS DE CORTE

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 38: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REPRESENTACION DE GRAFOS LISTAS DE

ADYACENCIA

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 39: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

LISTAS DE ADYACENCIA

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 40: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

LISTA DE ADYACENCIA

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 41: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

RECORRIDOS SOBRE GRAFOS

Recorrer un grafo consiste en visitar (pasar) por

cada uno de los nodos que son alcanzables a

partir de un nodo de inicio dado

El recorrido se puede hacer de 2

maneras DFS o BFS

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 42: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

DFS (DEPTH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Profundidadrdquo

Consiste en A partir de un veacutertice inicial dado

determinar sus veacutertices adyacentes de esos

veacutertices adyacentes elegir uno que no haya

sido visitado y a partir de alliacute iniciar nuevamente

el recorrido DFS

Como puede verse se trata de una definicioacuten

recursiva

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 43: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 44: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 45: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 46: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 47: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

BFS (BREATH FIRST SEARCH)

Literalmente ldquoBuacutesqueda del Primero en

Anchurardquo

La diferencia con el recorrido DFS consiste en

que en el recorrido DFS no se visitan

inmediatamente todos los nodos adyacentes a

un nodo en el BFS por el contrario si se hace

esto Luego de visitar todos los adyacentes de

un veacutertice dado entonces se elige uno de ellos

y se continuacutea de la misma forma

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 48: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 49: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

GRAFO COMPLEMENTARIO

El complementario Grsquo de un grafo G=(VA)

tiene

Los mismos veacutertices que G

Si uv G entonces uv Grsquo

Si uv G entonces uv Grsquo

Una forma de construirlo

Dibujar el corresp grafo completo Kn con n=|V|

Eliminar de Kn las aristas uv G

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 50: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

GRAFO COMPLEMENTARIO

Ejemplo Complementario de

1ordm Representar

K62ordm Marcar

las aristas

de G

3ordm

Eliminarlas

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 51: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

GRAFOS BIPARTITOS

Definicioacuten Sea G=(VA) Se dice que G es

bipartito si existen V1 V2 tales que

1 V1 V2= V

2 V1 cap V2= Oslash

3 Para toda vivj A se cumple vi V1 vj V2

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 52: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

GRAFOS BIPARTITOS

Ejemplos

iquestEs bipartito Siacute V1 = 25

V2=013467

aquellos grafos que se pueden colorear en

dos colores grafos bipartitos

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 53: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

GRAFOS BIPARTITOS

Idea de coacutemo pintarlo

Empezar por un veacutertice cualquiera de color C1

Dibujar todos los adyacentes de color C2

Seguir este proceso hasta haber terminado

Parece que No

es bipartito

pero hellip

iquestcoacutemo estar

seguros

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 54: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

GRAFOS BIPARTITOS

Teorema Una grafo es bipartito si y soacutelo si no

tiene ciclos de longitud impar

Ejemplo anterior No bipartito contiene ciclos

de longitud impar (en la figura aparece marcado

uno de long 3)

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 55: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

GRAFOS BIPARTITOS

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 56: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

GRAFOS BIPARTITOS COMPLETOS

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 57: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

Ciudad de Koumlnisberg en XVIII

Pregunta iquestseriacutea posible dar un paseo

pasando por cada uno de los siete puentes

sin repetir ninguno comenzando y

acabando en el mismo punto

RECORRIDOS EULERIANOS

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 58: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

RECORRIDOS EULERIANOS

Representacioacuten propuesta por Leonard Euler en

1736

iquestExiste un circuito que pase por todas las aristas

una sola vez

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 59: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

RECORRIDOS EULERIANOS

A estos circuitos se les llama circuitos eulerianos y a los grafos que los contienen grafos eulerianos

Grafo o multigrafo euleriano admite un recorrido que pasa por todas las aristas una sola vez empezando y terminando en el mismo veacutertice Los veacutertices siacute se pueden repetir

Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 60: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

RECORRIDOS EULERIANOS Ejemplo Grafo euleriano

Circuito euleariano abcdbfdeacefa Ejemplo El siguiente grafo es euleriano

Encuentra un circuito euleriano

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 61: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

RECORRIDOS EULERIANOS

iquestCoacutemo saber si un grafo (o multigrafo) es

euleriano

Teorema de Euler Un grafo conexo es

euleriano no tiene veacutertices de grado impar

Ejemplo

A tiene grado 3el grafo de los puentes no

es euleriano

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 62: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

RECORRIDOS EULERIANOS

Si el grafomultigrafo tiene soacutelo dos veacutertices de

grado impar se llama semi-euleriano Se puede

convertir en euleriano antildeadieacutendole una arista

Semi-euleriano

(____ grado

impar)

Euleriano

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 63: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

RECORRIDOS HAMILTONIANOS

Un grafo se dice hamiltoniano si existe un ciclo

que recorre todos sus veacutertices Al ciclo se le llama

ciclo hamiltoniano

Ejemplos

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 64: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

RECORRIDOS HAMILTONIANOS

No existe un meacutetodo sencillo para saber si un

grafo es no hamiltoniano problema muy

complejo

Ejemplo Este grafo es hamiltoniano

pero este no iexcldifiacutecil de probar

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 65: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

65

PROBLEMA DEL VENDEDOR VIAJERO

En un grafo G con pesos se pretende encontrar un

ciclo que pase por todos los veacutertices de forma que la

suma de los pesos de las aristas escogidas para formar

el ciclo sea lo menor posible

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 66: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

66

RUTA MAS CORTA

Un grafo con pesos es un grafo en el cual se asignan

valores a las aristas y que la longitud de un camino en

un grafo con pesos es la suma de los pesos de las

aristas en el camino Con frecuencia se desea

determinar la ruta mas corta entre dos veacutertices dados

Dijkstra escribioacute el algoritmo que resuelve este

problema

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 67: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 68: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 69: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 70: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 71: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 72: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 73: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

ALGORITMO DE DIJKSTRA

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 74: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 75: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 76: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 77: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 78: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 79: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 80: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 81: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 82: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 83: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 84: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO ALGORITMO DE DIJKSTRA

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 85: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

EJEMPLO ALGORITMO DE DIJKSTRA

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 86: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

MODELIZACION MEDIANTE GRAFOS

Mediante la teoria de grafos pueden

representarse gran numero de situaciones que

supongan relaciones entre diversos elementos

Ejemplos

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 87: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

POSIBILIDADES DE COMUNICACION

Mediante grafos de este tipo pueden resolver problemas de conectividad (arbol parcial minimo ) o problemas de caminos Donde se trata de encontrar camino de minima distancia

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 88: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REDES DE TRANSPORTE

Una red de transporte devera tener uno o varios vertices

origen y uno o varios vertices de destino y el resto de

vertices seran vertices de transbordo

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 89: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

REDES DE TRANSPORTE

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 90: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

RELACIONES DE ORDEN

Se puede representar mediante un grafo la relacionesde sucesion entre las actividades de un proyecto

El grafico muestra la secuencia de actividades pararealizar una tortilla de patatas

Es usual representar estas situaciones en grafos enlos que las actividades puedan estar representadaspor arcos (PERT) o por nodos (ROY)

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 91: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

RELACIONES DE ORDEN

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 92: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

RELACIONES DE ORDEN

Estos grafos se emplean frecuentemente para gestion de proyectos podemos determinar otros parametros como

Tiempo en que puede finalizarse el proyecto

Holgura de las actividades

Camino Critico (conjunto de actividades de holgura cero)

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 93: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

ESTRUCTURA DE UN PRODUCTO

Este tipo de grafos se utiliza en procedimientos de la

prevision de la demanda dependiente en el sistemade gestion de inventarios MRP( Material RequerimentPlanning )

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )

Page 94: Teoria de Grafos - uap.edu.pe · PDF fileINTRODUCCION Teoria de grafos se usa en numerosos problemas cuantificables, en las organizaciones, intervienen una serie de elementos entre

PROBELAMAS DE CAMINOS

Problemas de Caminos Minimos -

Algoritmos que permiten establecer la conexion

entre todos los nodos del grafo a minimo coste

(Algoritmo de Prim)

Encontrar el camino mas corto entre dos nodos

del grafo (Algoritmo de Dijkstra y de Bellman ndash

Kalaba Bellman-Ford)

Problemas de Flujo Total Maximo-

Trata de determinar cual es el flujo maximo que

puede circular por la red de transporte

(Algoritmo de Ford ndashFulKerson )