1

Aula passada
Sistema complexo.
Uma representação é através de uma rede.
Em matemática, uma rede = grafo.
2
Aula 02 – Introdução a Teoria dos Grafos
BC0506 - Comunicação e Redes
rof. !es"s . #ena$%&alco
'esus.mena(ufa)c.edu.)r
1*$2+1,
-
Roteiro da aula
ist!rico
$ . pro)lema das ontes de /0nigs)erg.
Grafos
$ 1efiniç2es e ropriedades
$ Exemplos
Re"resentação de #rafos
$ #atri3 e lista de ad'ac4ncias
Ati$idade "r%tica
,
I. & "ro'lema das (ontes de )*ni#s'er#
5
As 7 Pontes de Königsberg
%idade de /0nigs)erg
6na antigua r"ssia, parte do antigo imperio 7lemão8
9icava em am)os os lados do :io regel.
;in&a 2 il&as centrais, com as áreas conectadas por <
pontes.
=
As 7 Pontes de Königsberg
(ro'lema+
,er% -ue e.iste um camin/o -ue "asse "or todas as
"ontes0 $isitando cada "onte uma 1nica $e23
<
As 7 Pontes de Königsberg
(ro'lema+
,er% -ue e.iste um camin/o -ue "asse "or todas as
"ontes0 $isitando cada "onte uma 1nica $e23
Encontre uma solução para este pro)lema
>
As 7 Pontes de Königsberg
Um camin/o e uma ?se@u4ncia de regi2esA visitadas.
ara passar de uma região para outra é necessário usar uma
"onte.
ExemploB
450206078 é um camin&o,
mas 4502078 não é um camin&o.
2
5
7
6
C
As 7 Pontes de Königsberg
(ro'lema+
Existe um camin&o @ue pase por todas as pontes, mas cada
ponte visitada uma "nica ve3D
9.em"lo+
450206078 é um camin&o @ue visita algumas pontes, uma
"nica ve3, mas não todas.
2
5
7
6
1+
As 7 Pontes de Königsberg
Em 1<-5, Euler mostrou @ue não e.iste uma solução para o
pro)lema.
7 demonstração foi )aseada em #rafos.
2
2
5
7
6
1
,
-
11
Grafos
%&amamos a estrutura matemática resultante de #rafo.
%ada aresta conecta um par de vértices.
Existem diferentes maneiras de desen&ar um grafoB
$ 1iferentes desen&os influenciam apenas na $isuali2ação.
$ 1iferentes desen&os não alteram as propriedades
matemáticas do grafo.
12
Grafos
%&amamos a estrutura matemática resultante de #rafo.
%ada aresta conecta um par de vértices.
Existem diferentes maneiras de desen&ar um grafoB
$ 1iferentes desen&os influenciam apenas na $isuali2ação.
$ 1iferentes desen&os não alteram as propriedades
matemáticas do grafo.
1-
Grafos
%&amamos a estrutura matemática resultante de #rafo.
%ada aresta conecta um par de vértices.
Existem diferentes maneiras de desen&ar um grafoB
$ 1iferentes desen&os influenciam apenas na $isuali2ação.
$ 1iferentes desen&os não alteram as propriedades
matemáticas do grafo.
1,
As 7 Pontes de Königsberg
1iferentes desen&os.
2 1
, -
2
1
,
-
2 1
,
-
15
As 7 Pontes de Königsberg
Se uma pessoa entra em um pedaço de terra e sai dele, é
preciso @ue o vértice correspondente ten&a um n1mero "ar
de arestas.
%om exeção dos vértices onde a camin&ada começa e
termina.
&l/ando o #rafo ao lado0 "or-ue
: im"oss;$el encontrar um
camin/o -ue cru2e cada "onte
uma 1nica $e23
2
1
,
-
1=
As 7 Pontes de Königsberg
9.erc;cio+ ;ente resolver o pro)lema
de 2 modosB
6a8 %onstruEndo uma nova ponte.
6)8 1erru)ando uma ponte existente.
2
1
,
-
1<
As 7 Pontes de Königsberg
9.erc;cio+ ;ente resolver o pro)lema
de 2 modosB
6a8 %onstruEndo uma nova ponte.
6)8 1erru)ando uma ponte existente.
2
1
,
-
2
1
,
-
6a8 F1,2,1,-,1,,,2,-,,G
1>
As 7 Pontes de Königsberg
9.erc;cio+ ;ente resolver o pro)lema
de 2 modosB
6a8 %onstruEndo uma nova ponte.
6)8 1erru)ando uma ponte existente.
2
1
,
-
2
1
,
-
2
1
,
-
2
1
,
-
6a8 F1,2,1,-,1,,,2,-,,G 6)8 F2,,,-,1,2,1,-G
6)8 F2,,,-,1,2,1,,G
1C
Caminho Euleriano
9uler demonstrou @ue, para @ue exista um camin&o @ue
percorra todos os vértices passando por cada aresta uma
"nica ve3B
H necess%rio @ue ou 0 ou 2 dos vértices ten&am um n"mero
impar de arestas.
Um Camin/o 9uleriano é um camin&o em um grafo @ue
visita uma aresta apenas uma ve3.
E assim começou o desenvolvimento da ;eoria dos Irafos.
2+
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
21
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
22
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
9.erc;cio+ Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
2-
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
2,
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
25
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
2=
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
2<
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
2>
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
2C
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
-+
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
-1
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
-2
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
--
Circuito Euleriano
Um Circuito 9uleriano é um camin&o Euleriano onde tanto
o $:rtice de ori#em como o de destino : o mesmo.
Jeste caso, é preciso @ue todos os vértices do grafo
ten&am um n"mero par de arestas.
ExercEcioB Knclua um novo vértice no pro)lema das < pontes
de modo a formar um %ircuito Euleriano.
2
1
,
-
2
1
,
-
5
%ircuitoB F1,5,2,1,2,,,5,-,1,,,-,1G
-,
II. Grafos+
<efiniç=es0 (ro"riedade e 9.em"los
-5
Defniçes
odemos definir um grafo por um par ordenadoB
G > ?@0AA
ondeB
@ é um con'unto de vértices, e
A é um con'unto de arestas.
-=
Defniçes
odemos definir um grafo por um par ordenadoB
G > ?@0AA
ondeB
@ é um con'unto de vértices, e
A é um con'unto de arestas.
2
1
-
,
5
=
<
L = M1,2,-,,,5,=,<N
7 = M M1,2N, M1,-N, M1,,N,
M2,-N, M2,5N, M2,<N,
M-,,N, M-,5N, M-,=N N
-<
Defniçes
Um camin/o do vértice s ao vértice t é uma se@u4ncia de
vértices Fs, u, v, O , tG, onde cada par de vértices
consecutivos é conectado por uma aresta.
1i3emos @ue o camin&o começa em s e termina em t.
2
1
-
,
5
=
<
9.em"lo+
F1,2,5,-,,G é um camin&o.
F1,2,-,,,5G não é um camin&o.
->
Defniçes
. comprimento de um camin/o é o total de arestas usadas
no camin&o.
2
1
-
,
5
=
<
9.em"lo+
. camin&o F1,2,5,-,,G tem
um comprimento de 6.
-C
Defniçes
Jo exemplo temos o tipo mais simples de grafoB
Jão orientado.
Jão possui m"ltiplas arestas nem loops.
2
1
-
,
5
=
<
9.em"lo de camin/os+
F1,2,5,-,,G
F,,-,5,2,1G
,+
Defniçes
Irafo simplesB
não$direcionado, não$ponderado
2
1
-
2
1
-
2
1
-
2
5
5
2
1
-
#ulti$grafo
6pseudo$grafo8
Irafo direcionado 6orientado8
Irafo ponderado
,1
Defniçes
Irafo não$direcionado
2
1
-
,
5
=
<
L = M1,2,-,,,5,=,<N
7 = M M1,2N, M1,-N, M1,,N,
M2,-N, M2,5N, M2,<N,
M-,,N, M-,5N, M-,=N N
(ares não ordenados
,2
Defniçes
Irafo direcionado
2
5 ,
-
1
L = M1,2,-,,,5N
7 = M M1,2N, M2,-N, M2,,N,
M-,,N, M-,5N, M,,2N N
(ares ordenados
,-
Grafos! Propriedades
7 &rdem de um grafo é o n"mero total de vértices.
9.em"lo+
. grafo possui < vértices,
neste caso, di3emos @ue ele
tem ordem <.
2
1
-
,
5
=
<
,,
Grafos! Propriedades
. Taman/o de um grafo é o n"mero total de arestas.
9.em"lo+
. grafo tem taman&o B.
2
1
-
,
5
=
<
,5
Grafos! Propriedades
. <iCmetro é o maior dos
menores camin&os entre
cada par de vértices.
2
1
-
,
5
=
<
,=
Grafos! Propriedades
. <iCmetro é o maior dos
menores camin&os entre
cada par de vértices.
Camin/os entre os $:rtices+
1$2B
1$-B
1$,B
1$5B
1$=B
1$<B
2$-B
2$,B
2$5B
2$=B
2$<B
2
1
-
,
5
=
<
-$,B
-$5B
-$=B
-$<B
,$5B
,$=B
,$<B
5$=B
5$<B
=$<B
,<
Grafos! Propriedades
. <iCmetro é o maior dos
menores camin&os entre
cada par de vértices.
Camin/os entre os $:rtices+
1$2B F1,2G
1$-B F1,-G
1$,B F1,,G
1$5B F1,2,5G
1$=B F1,-,=G
1$<B F1,2,<G
2$-B F2,-G
2$,B F2,-,,G
2$5B F2,5G
2$=B F2,-,=G
2$<B F2,<G
2
1
-
,
5
=
<
-$,B F-,,G
-$5B F-,5G
-$=B F-,=G
-$<B F-,2,<G
,$5B F,,-,5G
,$=B F,,-,=G
,$<B F,,-,2,<G
5$=B F5,-,=G
5$<B F5,2,<G
=$<B F=,-,2,<G
,>
Grafos! Propriedades
. <iCmetro é o maior dos
menores camin&os entre
cada par de vértices.
Camin/os entre os $:rtices+
1$2B F1,2G
1$-B F1,-G
1$,B F1,,G
1$5B F1,2,5G
1$=B F1,-,=G
1$<B F1,2,<G
2$-B F2,-G
2$,B F2,-,,G
2$5B F2,5G
2$=B F2,-,=G
2$<B F2,<G
2
1
-
,
5
=
<
-$,B F-,,G
-$5B F-,5G
-$=B F-,=G
-$<B F-,2,<G
,$5B F,,-,5G
,$=B F,,-,=G
6-D+ 4607020D8
5$=B F5,-,=G
5$<B F5,2,<G
6-D+ 4607020D8
<iametro > 7
,C
Grafos
Um grafo é cone.o se existe um camin&o entres @uais@uer
pares de vértices.
2
1
-
,
5
=
<
%onexo
2
1
,
5
=
<
Jão$conexo
5+
Grafos! Propriedades
7 Conecti$idade dos @:rtices é o n"mero mEnimo de
vértices cu'a remoção desconecta o grafo.
2
1
-
,
5
=
<
%onexo
2
1
,
5
=
<
Jão$conexo
Conecti$idade dos @:rtices > 5
-
51
Grafos! Propriedades
7 Conecti$idade das Arestas é o n"mero mEnimo de
arestas remoção desconecta o grafo.
2
1
-
,
5
=
<
%onexo
Jão$conexo
Conecti$idade das Arestas > 5
2
1
-
,
5
=
<
52
"ogo de #adre$ %&%
Irafos podem ser utili3ados para representar diversos
pro)lemasB
Em um ta)uleiro -x-, dese'a$se mapear
todos os movimentos @ue podem ser
reali3ados por um 'is"o @ue se move
nas casas )rancas.
5-
"ogo de #adre$ %&%
Irafos podem ser utili3ados para representar diversos
pro)lemasB
Em um ta)uleiro -x-, dese'a$se mapear
todos os movimentos @ue podem ser
reali3ados por um 'is"o @ue se move
nas casas )rancas.
. grafo P direita representa os
movimentos desse )ispo.
5,
"ogo de #adre$ %&%
9.erc;cio+
1esen&e um grafo @ue represente todos os movimentos da
torre.
55
"ogo de #adre$ %&%
9.erc;cio+
1esen&e um grafo @ue represente todos os movimentos da
torre.
5=
"ogo de #adre$ %&%
9.erc;cio+
1esen&e um grafo @ue represente todos os movimentos da
torre.
5<
III. Re"resentação de #rafos
5>
Representaç'o de grafos
1uas maneiras populares de representar um grafoB
678 #atri3 de ad'ac4ncia.
6Q8 Ristas de ad'ac4ncia.
G > ?@0AA
L = M1,2,-,,,5,=,<N
7 = M M1,2N, M1,-N, M1,,N,
M2,-N, M2,5N, M2,<N,
M-,,N, M-,5N, M-,=N N
2
1
-
,
5
=
<
5C
Representaç'o de grafos
?AA Eatri2 de adFacGncia.
2
1
-
,
5
=
<
5 5 5
5 5 5 5
5 5 5 5 5
5 5
5 5
5
5
5 2 7 6 5 6 D
5
2
7
6
5
6
D
=+
Representaç'o de grafos
?AA Eatri2 de adFacGncia.
2
1
-
,
5
=
<
5 2 7 6 5 6 D
5
2
7
6
5
6
D
0 5 5 5 0 0 0
5 0 5 0 5 0 5
5 5 0 5 5 5 0
5 0 5 0 0 0 0
0 5 5 0 0 0 0
0 0 5 0 0 0 0
0 5 0 0 0 0 0
=1
Representaç'o de grafos
?AA Eatri2 de adFacGncia.
. grafo é representado por
uma matri3 onde cada
elementos ?.0HA rece)e o
valor 5 se &ouver uma
conexão entre os nSs . e H,
e 0 caso contrário.
Qasta 1 )it para representar
cada aresta.
Se &ouveram poucas arestas
a matri3 será esparsa.
5 2 7 6 5 6 D
5
2
7
6
5
6
D
0 5 5 5 0 0 0
5 0 5 0 5 0 5
5 5 0 5 5 5 0
5 0 5 0 0 0 0
0 5 5 0 0 0 0
0 0 5 0 0 0 0
0 5 0 0 0 0 0
=2
Representaç'o de grafos
?AA Eatri2 de adFacGncia.
2
1
-
,
5
=
<
5 2 7 6 5 6 D
5
2
7
6
5
6
D
0 0 0 5 0 0 5
5 0 0 0 0 0 0
5 0 0 0 0 5 0
0 0 5 0 0 0 0
0 5 0 0 0 0 0
0 0 0 0 0 5 0
0 5 0 0 0 0 0
Irafo direcionado
=-
Representaç'o de grafos
?BA Iista de adFacGncia.
2
1
-
,
5
=
<
5+ ,, <
2+ 1
7+ 1, =
6+ -
5+ 2
6+ =
D+ 2
Irafo direcionado
=,
Representaç'o de grafos
#atri3 de ad'ac4nciaB Irafo de taman&o --.
=5
Representaç'o de grafos
#atri3 de ad'ac4nciaB Irafo de taman&o --.
==
Resumo
At: a-ui $imos+
;ipos de grafos.
.rdem = total de vértices.
;aman&o = total de arestas.
%onectividade dos vértices de das arestas.
Al#umas definiç=es im"ortantes+
%amin&o.
%omprimento do camin&o.
%onexidade
Re"resentação de #rafos.
=<
I@. Ati$idade (r%tica
=>
Ati(idade Pr)tica
Juestão 0+ 1esen&e um grafo @ue represente todos os
movimentos do cavalo em um ta)uleiro -x- e 5x5.
=C
Ati(idade Pr)tica
Juestão 0+ 1esen&e um grafo @ue represente todos os
movimentos do cavalo.
<+
Ati(idade Pr)tica
Juestão 0+ 1esen&e um grafo @ue represente todos os
movimentos do cavalo.
<1
Ati(idade Pr)tica
Juestão 0+ 1esen&e um grafo @ue represente todos os
movimentos do cavalo.
Ti"o+ grafo direcionado
&rdem+ >
Taman/o+ 1=
<2
Ati(idade Pr)tica
Juestão 5+ %alcule as seguintes informaç2es do grafoB
.rdem.
;aman&o.
1iTmetro
%onectividade de vértices
%onectividade de arestas.
:epresentação por lista
de ad'ac4ncias.
Existe um camin&o
EulerianoD
Se sim, indi@ue o camin&o.
2
1
5
,
=
>
-
<
<-
Ati(idade Pr)tica
.rdem = >.
;aman&o = 15.
1iTmetro = -.
2
1
5
,
=
>
-
<
<,
Ati(idade Pr)tica
%onectividade de vértices = 2
%onectividade de vértices é o n"mero mEnimo de vértices cu'a remoção desconecta o grafo.
2
1
5
,
6
>
-
<
<5
Ati(idade Pr)tica
%onectividade de arestas = 2
2
1
5
,
=
>
-
<
%onectividade de arestas é o n"mero mEnimo de arestas cu'a remoção desconecta o grafo.
<=
Ati(idade Pr)tica
9m um #rafo na=-direcionado0 a conecti$idade de arestas
e de $:rtices sem"re mantem os mesmos $alores3
%onectividade de vértices = 1 %onectividade de arestas = 1
<<
Ati(idade Pr)tica
%onectividade de vértices = 3 %onectividade de arestas = 3
9m um #rafo na=-direcionado0 a conecti$idade de arestas
e de $:rtices sem"re mantem os mesmos $alores3
<>
Ati(idade Pr)tica
:epresentação por lista
de ad'ac4ncias.
2
1
5
,
=
>
-
<
1B 2,,,5
2B 1,-,5,=
-B 2,=
,B 1,5,<,<
5B 1,2,,,=,<,>
=B 2,-,5,>
<B ,,,,5,>
>B 5,=,<
<C
Ati(idade Pr)tica
Existe um camin&o
EulerianoD
SimB
F1,2,-,=,2,5,=,>,5,1,,,5,<,,,<,>G
2
1
5
,
=
>
-
<
>+
Ati(idade Pr)tica
Juestão 2+ Um grafo é planar se ele pode ser desen&ado
sem cru3ar arestas
Lerifi@ue se um cu)o é planar
>1
Ati(idade Pr)tica
>2
Para casa!
. @ue é um camin&o UamiltonianoD
. @ue é um cicloVcircuito UamiltonianoD
2
1
5
,
=
>
-
<
%amin&o Euleriano %iclo Uamiltoniano