Está en la página 1de 50

Teorı́a de

Grafos

Prof. Jorge Tipe


Sistemas Computacionales Prof. Jorge Tipe

Outline

Objetivos de la Sesión

Introducción

Definiciones

Modelos de Grafos

Caminos y Circuitos

Grafos Simples

2
Sistemas Computacionales Prof. Jorge Tipe

Objetivos de la Sesión

⌅ Plantear y resolver problemas a partir de la definición de


grafos.
⌅ Diferenciar los tipos de grafos.

3
Sistemas Computacionales Prof. Jorge Tipe

Introducción
Problema de los puentes de Königsberg

⌅ El primer artı́culo cientı́fico


relativo a grafos
⌅ Escrito por el Leonhard Euler en
1736.
⌅ La ciudad de Kaliningrado,
originalmente Königsberg, es
famosa por sus siete puentes que
unen ambas márgenes del rı́o
Pregel con dos de sus islas.

4
Sistemas Computacionales Prof. Jorge Tipe

Introducción
Problema de los puentes de Königsberg (2)

¿Es posible, partiendo de un lugar arbitrario, Searle


regresar
BOTTEGA
al lugar de partida cruzando
aaaa cada puente una sola vez?
5
Sistemas Computacionales Prof. Jorge Tipe

Introducción
Problema de los puentes de Königsberg (3)

grato

aristas



"
-
;

:
:-P:
¡
'

'

ü
-
-

,
• -

'
'
-
&
. .
,

Fimpar
, '

i
,
I .
.

6 - Mar
Sistemas Computacionales Prof. Jorge Tipe

arista : ed e-
Grafos no Dirigidos

Definition
Un grafo no dirigido G = (V , E ) consiste de:
⌅ V : Un conjunto finito no vacı́o de vértices (o nodos).
⌅ E : Un conjunto de aristas.
Se dice que una arista e que se asocia con el par de vértices v y w
es incidente sobre v y w , y se dice que v y w son incidentes sobre
e y son vértices adyacentes.

7
Ejemplos 1 :

ob

/
:-( YE )

|
6
G :

④ d Y = { aibqd }
ao

E- { ab ,
bc }
C

p 9- r

TKIYE)
H :

! ! ! F- { pif.fs.tn }
s tu

E
-1ps , qE ,
ru
} .

9- W
-

_ ( YE )
W
°

✗ = { p 9- ,
ir }
po

r
E- _

∅ .
Sistemas Computacionales Prof. Jorge Tipe

Grafos no Dirigidos
Ejemplo 2

Suponga que una red está formada por centros de datos y enlaces
de comunicación entre computadoras. Podemos representar la ubi-
cación de cada centro de datos por un punto y cada enlace de co-
municaciones por un segmento de lı́nea. Entonces, tenemos:

En grafos, los nodos representan los centros de datos y las aristas


los enlaces de comunicación.
10
Sistemas Computacionales Prof. Jorge Tipe

Grafos No Dirigidos
Multigrafo

Multi
Definition
grafo .

Grafos que poseen aristas múltiples o paralelas.

Figure: Red de computadoras con múltiples links entre los centros de


datos.

11
Sistemas Computacionales Prof. Jorge Tipe

Grafos No Dirigidos
Pseudografo

Definition
Un grafo que contienen bucles o lazos.

Figure: Red de computadoras con enlaces de diagnostico.

12
Sistemas Computacionales Prof. Jorge Tipe

Grafos Dirigidos

Definition
Un grafo dirigido (o digrafo) G = (V , E ) consiste de:
⌅ V : Un conjunto finito no vacı́o de vértices (o nodos).
⌅ E : Un conjunto de aristas.
Cada arista dirigida es asociada a un par ordenado de vértices
(u, v ). Se dice que la arista digirida empieza en el vértice u y
termina en el vértice v .

¡→
13
Sistemas Computacionales Prof. Jorge Tipe

Grafos Dirigidos
Ejemplo

En una red de computadoras, algunos enlaces pueden operar en


una sola dirección (dichos enlaces se denominan lı́neas dúplex
individuales). Este puede ser el caso si hay una gran cantidad de
tráfico enviado a algunos centros de datos, con poco o ningún
tráfico en la dirección opuesta. Esta red de computadoras se puede
dibujar como el siguiente grafo:

14
Sistemas Computacionales Prof. Jorge Tipe

Grafos Etiquetados o con Peso o


ponderados
Definition
Es un grafo G (V , E ), en el que a cada arista se le asigna un valor
real no negativo o peso.

15
Sistemas Computacionales Prof. Jorge Tipe

Grado de un vértice
graóllv)
:-&
Grafo no dirigido
grlv )
deglv )
d (v )
gradlv) =
Y
Definition
Sea G un grafo no dirigido. Para cualquier vértice v de G , el grado
de v , se denota grad(v ), es el número de aristas en G que son
incidentes con v . Un lazo en un vértice v se considera como dos
aristas incidentes en v por lo tanto contribuye 2 unidades al grado
de un vértice.

juro gradla) -4
-

16 O
Sistemas Computacionales Prof. Jorge Tipe

Grado de un vértice
Grafo no dirigido (2)

Ejemplo
Determine los grados de cada vértice de los sgtes grafos:

A B

E C

17
Sistemas Computacionales Prof. Jorge Tipe

Grado de un vértice
Grafo no dirigido (2)

Ejemplo
Determine los grados de cada vértice de los sgtes grafos:

A B ⌅ grad(A) = 2

E C

18
Sistemas Computacionales Prof. Jorge Tipe

Grado de un vértice
Grafo no dirigido (2)

Ejemplo
Determine los grados de cada vértice de los sgtes grafos:

A B ⌅ grad(A) = 2
⌅ grad(B) = 4
E C ⌅ grad(C ) = 1
⌅ grad(D) = 3
⌅ grad(E ) = 2
D

19
Sistemas Computacionales Prof. Jorge Tipe

Grado de un vértice
Grafo no dirigido (3)

Ejemplo
Determine los grados de cada vértice de los sgtes grafos:

d e
2 6
c 3 4
1 5
a b

20
Sistemas Computacionales Prof. Jorge Tipe

Grado de un vértice
Grafo no dirigido (4)

THE HANDSHAKING THEOREM


M= / El
Theorem
Sea G = (V , E ) una grafo no dirigido con m aristas. Entonces,
X
2m = grad(v )
v 2V

varias aristas#
Tenga en cuenta que esto se aplica incluso si hay GEAGEA y y
bucles presentes.

2×5=3-13-14 ✓

21 ,
ideal : 0--0

FIFÍ A
°

.
◦ .

° °
final
# aristas 0+1+1 m
G
= . . .

=D -12+2
Maristas Egrados 2m
. .
.

idea ?

* : -21 -

# aristas )
Ís
# =

Ingram )
aristas )
i.
≤ gralri-u.at# .

G
Sistemas Computacionales Prof. Jorge Tipe

Grado de un vértice
Grafo no dirigido (5)

Ejemplo
¿Cuántosl N grafo de 10 vértices donde cada
aristas hay en una
vértice es de grado seis?

2-gralr) = 2 ( # aristas )
VEV
60 = 2C # aristas )

#aristas = 30 .

22
Sistemas Computacionales Prof. Jorge Tipe

Grado de un vértice
Grafo no dirigido (5)

Ejemplo
¿Cuántos aristas hay en una grafo de 10 vértices donde cada
vértice es de grado seis?
Debido a que la suma de los grados de los vértices es 6 · 10 = 60,
entonces 2m = 60 donde m es el número de aristas. Por lo tanto,
m = 30.

23
Sistemas Computacionales Prof. Jorge Tipe

Grado de un vértice
Grafo no dirigido (6) Zgralrl =
par
✓ c- ⊖

Inti ,
-1 . . . +
IK + P, + Pat . . -
+ Pe
=
par


intizt . . .
+ IK =
Par
Theorem K es
par .

Un grafo no dirigido tiene un número par de vértices de grado


impar.

24

Problemas : no hay aristas múltiples ,
ni
lagos
① ¿ Existe un
grajo simple que tenga 99 vértices
,
tal que
cada vértice
Tenga grado 3 ?
No .

Porque si todos los vértices Tienen grado 3 todos serían de

grado impar 99 es
par .
( .

② ¿ vértices Tal
Existe un
grupo simple que tenga 100 ,
que
cada vértice
Tenga grado 3 ?

SÍ :
EXIJ-fi.iq#-XIgrgo de 100 vértices

③ ¿ Existe un
grupo simple que tenga 101 vértices ,
Tal
que
cada vértice
Tenga grado 4 ?
7*7-9 ↓§☒→¡ •

19×5+6=101
④ ¿ Existe simple de 3 vértices
un
grajo cuyos grados
sean
0,2 ,
2 ?

*
A
◦ → 2
Sistemas Computacionales Prof. Jorge Tipe

Modelos de Grafos
Social Networks

Los grafos se utilizan ampliamente para modelar estructuras sociales


basadas en diferentes tipos de relaciones entre personas o grupos de
personas. Estas estructuras sociales, y los grafos que las represen-
tan, se conocen como redes sociales. En estos modelos de grafos,
los individuos u organizaciones están representados por vértices; las
relaciones entre individuos u organizaciones están representadas por
aristas.
⌅ Acquaintanceship and Friendship Graphs
⌅ Influence Graphs
⌅ Collaboration Graphs

31
Sistemas Computacionales Prof. Jorge Tipe

Modelos de Grafos
Communication Networks

Podemos modelar diferentes redes de comunicaciones utilizando vértices


para representar dispositivos y aristas para representar el tipo par-
ticular de enlaces de comunicaciones de interés.

32
Sistemas Computacionales Prof. Jorge Tipe

Modelos de Grafos
Information Networks

Los grafos se pueden usar para modelar varias redes que vinculan
determinados tipos de información. Por ejemplo, podemos modelar
la web usando un grafo o citas en diferentes tipos de documentos.
⌅ Web Graph
⌅ Citation Graph

33
Sistemas Computacionales Prof. Jorge Tipe

Modelos de Grafos

⌅ Software Design Applications


I Module Dependency Graphs
I Precedence Graphs and Concurrent Processing
⌅ Transportation Networks
I Rutas de aerolı́neas
I Carreteras
⌅ Biologocial Networks
I Niche Overlap Graphs in Ecology
I Protein Interaction Graphs

34
Sistemas Computacionales Prof. Jorge Tipe

Camino o Trayectoria

Definition

0151
y
Sean x, y vértices de un grafo no dirigido G = (V , E ). Un camino,
denotado como ⇡n : x Lt = y en G es una sucesión alternada finita de
vértices y aristas de G , que comienzan en el vértice x y termina en
vértice y que contiene n aristas

⇡n : x = x0 , e1 , x1 , e2 , x2 , e3 , . . . , en 1 xn 1 , e n , x n =y

Xo Xr Xz . . .
Xn
⌅ La longitud del camino ⇡ es n donde n es el número de aristas
que contiene el camino ⇡.

35
Sistemas Computacionales Prof. Jorge Tipe

Circuito
Tipo de camino

Definition
Una trayectoria o camino es un circuito si inicia y termina en el
vértice x, es decir, ⇡n : x a-
"

=# y y n es mayor que 0.

Terminologı́a
En algunos textos también se los define como caminos cerrados o
ciclo.

36
Sistemas Computacionales Prof. Jorge Tipe

Camino o Circuito Simple

Definition
Un camino o circuito es simple si BARKER
se visita una arista una única vez.
Belda
Es decir, •
si ningún vértice aparece más de una vez.

× .IM
'
×
-
.
ÉI .
y
camino que camino simple
37 no es simple
Sistemas Computacionales Prof. Jorge Tipe

Caminos y Circuitos
Ejemplos 2
de
ABC : camino
longitud
Ae , Bey C

Ejemplo
Encontrar ⇡2 , ⇡3 , ⇡4 , ⇡5 . Alguno de ellos es ciclo (simple)?
e,

A ez B
d e
ey y 2 6
E C
c 34
1 5
a b
D

38
Sistemas Computacionales Prof. Jorge Tipe

Grafo Conexo

Definition
EEEE
Un grafo G es conexo si dados cualesquiera dos vértices v y w en
G , existe un camino de v a w . En caso contrario se dice que el
grafo es disconexo. Si el grafo es disconexo, las diversas partes
conexas son las componentes del grafo.
o componente conexa

discone "
µ 7¥90
39
Sistemas Computacionales Prof. Jorge Tipe

No
Grafos Simples lago :

aristas € No
múltiples
:

Definition
Son aquellos grafos donde sólo hay una arista entre los vértices
como máximo, y en los que no hay bucles o lazos que conectan
algún vértice consigo mismo.

40
?⃝
Sistemas Computacionales Prof. Jorge Tipe

Grafos Simples
Tipos de Grafos Simples

⌅ Grafos Completos
⌅ Grafos Ciclo
⌅ Grafos Rueda
amamantamiento
⌅ N-Cubo
⌅ Grafos Bipartidos
⌅ Grafos Bipartidos Completos

41
Sistemas Computacionales Prof. Jorge Tipe

Kn
Grafos Simples
Grafos Completos
graban -1
Egralr) -21#a)
-

VEV
nln -11=21#a)
Definition
vértices
Todos sus nodos son adyacentes a todos los nodos del grafo.
Se denotan en la forma Kn

nro aristas =
n(n
2
1)
=L ? )
donde n es el número de vértices.

42
Sistemas Computacionales Prof. Jorge Tipe

Grafos Simples
Grafos Completos (2)

43
Sistemas Computacionales Prof. Jorge Tipe

Grafos Simples
Grafo Ciclo

Definition
Un Ciclo, denotado por Cn , para n 3, consta de n vértices.
/
Un grafo Cn consta de vertices v1 , v2 , . . . , vn y aristas
{v1 , v2 }, {v2 , v3 }, . . . , {vn1 , vn } y {vn , v1 }.

44
Sistemas Computacionales Prof. Jorge Tipe

Grafos Simples 10 11 00 01 001

E:
N-Cubo

"
Definition
Un n-Cubo o también llamado n-dimensional hipercubo, denotado
por Qn , es el grafo que tiene vértices que representan las 2n cadenas
de bits de longitud n. Dos vértices son adyacentes si y solo si las
cadenas que representan difieren en solo un bit.

46 ¿ cuántas aristas Tiene Qn ? n .


Él
¿ ☒y es conexo ?

01-1--0 0111 11-11


- -

0111 -

1111 -
1011 - 1001

0000
¡ \
0100
10,00
01%
1 1 00

río 1
Sistemas Computacionales Prof. Jorge Tipe

Grafos Simples
Grafos Bipartidos o bipartitos

Definition
Cuando N puede descomponerse en dos subconjuntos V1 y V2 tales
que no haya dos nodos de V1 que sean adyacentes, ni tampoco dos
de V2 que sean adyacentes.
V2

00
V1

47

Sistemas Computacionales Prof. Jorge Tipe

Grafos Simples

¥;
:*
Grafos Bipartidos (2)

Ejemplo
¿Cuál de ellos es un grafo bipartido?

ÜS
48
Sistemas Computacionales Prof. Jorge Tipe

Grafos Simples
Grafos Bipartidos (2)

Ejemplo
¿Cuál de ellos es un grafo bipartido?

49
C6 es es bipartido siendo V1 = {v1 , v3 , v5 } y V2 = {v2 , v4 , v6 }. C3
no es bipartido.
Problema } :

¿

T.IT#n...
es
ooo

bipartito ?
÷

.

¿ es

¡
bipartito ?
sí No
Sistemas Computacionales Prof. Jorge Tipe

Grafos Simples
Grafos Bipartidos Completos

Definition
Si G = (N, A) es un grafo bipartito, denotado como Km,n , con
N = V1 [ V2 y V1 \ V2 = ;. Donde, (u, v ) es una arista para todo
par de vértices u 2 V1 , v 2 V2 .

|
# aristas
Ka }
,
de km n
=
MN
,

50
Sistemas Computacionales Prof. Jorge Tipe

Grafos Simples
Grafos Bipartidos Completos (2)

Ejemplo
c
a

K2,3
51
Sistemas Computacionales Prof. Jorge Tipe

Grafos Simples
Grafo Regular
É¥ | 9
s -
es

regular
Definition
Un grafo G = (V , E ) es regular de grado k o k-regular si cada vértice
tiene grado k; es decir, un grafo es regular si todos los vértices tienen
el mismo grado.: K .

52
¿ Existe un 3- regular de 12 vértices
grupo
?
¥§§ ¥7
no sea conexo
que

¿ Existe un 3- regular de 12 vértices


grupo
que
sea conexo ?

Ejercicio

También podría gustarte