Buscar

PAA-12-conectividadeGrafosDigrafos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 59 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 59 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 59 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Profa. Thaís Alves Burity Rocha 
GRAFOS 
Agenda 
 Introdução 
 Conectividade 
 Passeio 
 Caminho 
 Trilha 
 Circuito 
 Ciclo 
 Dígrafos 
 
 
 
Conectividade: Introdução 
 Exemplos de problemas que podem ser modelados com 
grafos 
 Planejamento eficiente de roteamento de pacotes de dados 
na internet 
 
 Definir melhor a rota de distribuição de correspondência 
nos postos de distribuição da ECT (Empresa de Correios e 
Telégrafos) 
 
 A aplicação prática de grafos está relacionada com a 
possibilidade de caminhar, visitar e/ou definir 
conectividade entre vértices e arestas 
 
Grafos: Caminho mínimo 
Problema das 4 cores 
 Trata da determinação do número mínimo de cores 
necessárias para colorir um mapa de forma que 
países/estados vizinhos tenham cores diferentes 
 
 Em 1852, Francis Guthrie conjecturou que 4 era esse 
número mínimo 
 
 Somente em 1976 se conseguiu provar que a 
conjectura estava realmente correta, obtendo-se o 
teorema 
Teorema das 4 cores 
 Dado um mapa 
plano, quatro 
cores são 
suficientes para 
colori-lo de forma 
que estados 
vizinhos não 
partilhem a mesma 
cor 
Teorema das 5 cores 
 Teorema de Heawood: Cinco cores são suficientes 
para colorir qualquer mapa no plano 
 
 Coloração e Número cromático 
 Uma coloração (de vértices) de um grafo é a 
atribuição de uma cor a cada vértice de tal forma que 
dois vértices adjacentes não tenham a mesma cor 
O número cromático do grafo é o menor número de 
cores necessárias para se obter uma coloração 
 Não existe um algoritmo eficiente para esse problema 
Coloração e Número cromático 
 Exemplo 
 
 
 
 
 Número cromático: 2 
 Conjuntos de vértices independentes: {A, D} e {B, C} 
 
 Existem vários problemas práticos cuja solução consiste 
em dividir os vértices de um grafo na menor 
quantidade de conjuntos de vértices independentes 
A B 
C D 
Passeio (walk) 
 Um passeio em um grafo G = (V, E) é uma sequência 
alternada de vértices e arestas que começa e termina 
com vértices 
 A sequência v1, …, vk , ∀ v1, …, vk ∈ V, é um passeio de v1 
a vk , se (vj, vj+1) ∈ E, 1 ≤ j ≤ |k – 1| 
 Um passeio com k vértices possui k – 1 arestas, no mínimo 
 Neste caso teríamos as seguintes arestas: (v1, v2) , (v2, v3), …, (vk-
1, vk) 
 O comprimento de um passeio é o número de arestas 
do passeio 
 No caso de grafos ponderados, a definição de comprimento leva 
em consideração o peso das arestas 
Passeio (walk): Exemplo 
 
 
 
 
 
 
 
 Passeio: A sequência {u, 1, 4, 3, 5, 4, 3, 5, v} 
 Comprimento: 8 
 u1, 14, 43, 35, 54, 43, 35, 5v 
1 
5 4 
2 
3 
v 
u 
Caminho (path) 
 Um caminho ou caminho simples em um grafo é 
um passeio em que todos os seus vértices são 
distintos 
 
 O comprimento de um caminho é o número de 
arestas do caminho 
 
 
 
 
 
Caminho (path): Exemplo 
 
 
 
 
 
 
 
 Caminho: Sequência {u, 1, 4, 5, v} 
 Comprimento: 4 
 
 Observe que a sequência {u, 1, 4, 3, 5, 4, 3, 5, v} do 
exemplo anterior é um passeio, mas não constitui um 
caminho 
1 
5 4 
2 
3 
v 
u 
Trilha (trail), circuito e ciclo 
 Uma trilha (ou trajeto) em um grafo é um passeio em 
que todas as arestas são distintas 
 
 Um circuito (ou trajeto fechado) em um grafo é um 
trajeto em que o vértice inicial e o vértice final são 
iguais 
 
 Um ciclo é um circuito em que todos os vértices são 
distintos, com exceção do primeiro e do último 
 Um triângulo é um ciclo de tamanho 3 
 Possui 3 vértices e 3 arestas 
 Um grafo acíclico é aquele que não possui ciclos 
Exercício 1 
 Forneça exemplos de: 
 Passeio que não é nem trilha nem caminho 
 Passeio que é trilha e não é caminho 
 Circuito que não é ciclo 
 Triângulo 
a 
e 
d 
c 
f 
b 
Exercício 1: Solução 
 Passeio que não é nem trilha nem caminho 
 Trilha: arestas distintas 
 Caminho: vértices distintos 
 {a, b, d, c, b, d} 
a 
e 
d 
c 
f 
b 
Exercício 1: Solução 
 Passeio que é trilha e não é caminho 
 Trilha: arestas distintas 
 Caminho: vértices distintos 
 {a, b, c, e, f, c} 
a 
e 
d 
c 
f 
b 
Exercício 1: Solução 
 Circuito que não é ciclo 
 Trilha: arestas distintas 
 Circuito: trilha com mesmo vértice de início e fim 
 Ciclo: vértices distintos 
 {a, b, c, e, f, c, d, a} 
a 
e 
d 
c 
f 
b 
Exercício 1: Solução 
 Triângulo 
 Ciclo de tamanho 3 
 Ciclo: arestas e vértices distintos 
 {a, b, d, a} 
a 
e 
d 
c 
f 
b 
Grafos conectados (conexos) 
 Um grafo é conectado se e somente se existe um 
caminho entre qualquer par de vértices do grafo 
 Caso contrário, o grafo é dito desconexo ou 
desconectado 
 Exemplo de grafo conectado: 
6 
2 
3 
5 
4 
1 
Exercício 2 
 É verdade que todo grafo conexo com n vértices 
tem pelo menos n-1 arestas? 
 
Exercício 2: Solução 
 Um grafo conexo é aquele em que é possível 
determinar um caminho entre qualquer par de 
vértices 
 
 Um caminho é um passeio cujos vértices são distintos 
 
 O comprimento de um passeio com k vértices é k-1, 
no mínimo 
 Esse mesmo conceito se aplica para caminho 
 
Exercício 3 
 É possível que um grafo e o seu complemento sejam 
ambos desconectados? 
 
Exercício 3: Solução 
 O complemento de um grafo G é um grafo G nos mesmos 
vértices tais que dois vértices de G são adjacentes se e 
somente se eles não são adjacentes em G 
 
 Já um grafo desconexo é aquele em que não existe um 
caminho entre qualquer par de vértices 
 
 Com base nessas definições, é possível concluir que um 
grafo e seu complemento não podem ser ambos 
desconexos! 
 Ora, se o grafo é desconexo, o seu complemento vai ser um 
grafo completo! 
_ 
_ 
Grafo Euleriano 
 Um grafo conectado G é dito euleriano se existe uma trilha 
fechada (circuito) contendo cada uma das arestas de G 
 O problema das pontes (lembram da primeira aula?) é 
equivalente a identificar se o grafo correspondente é euleriano 
 Um caminho euleriano em um grafo G é um caminho que usa 
cada aresta de G exatamente uma vez 
 
 Teorema: Um grafo conectado G é euleriano se e somente 
se o grau de cada vértice é par 
 
 Todo grafo eureliano é conexo 
Grafo Euleriano: Exemplo 
 
 
 
 
 
 
 
 É possível identificar um circuito envolvendo todas as arestas do 
grafo 
 Todas as arestas são distintas 
 O vértice inicial e o vértice final são iguais 
 { a, b, c, d, b, e, d, a, e, f, g, h, f, a} 
 Todos os vértices tem grau par! 
 
a 
e d 
c 
b h 
g 
f 
1 
2 
3 
4 
5 
6 
7 
8 
9 10 
11 
12 13 
Exercício 4 
 K5 é euleriano? 
a 
e 
d 
c 
b 
K5 
Exercício 4: Solução 
 Sim 
 Todos os vértices tem grau par! 
 a 
e 
d 
c 
b 
1 
2 
3 
4 
5 9 
6 
7 
10 
8 
Grafo Hamiltoniano 
 Um grafo hamiltoniano é um grafo que contém ciclo 
envolvendo todos os seus vértices 
 Exemplo: 
 Ciclo: {a, c, d, e, b, a} 
 
 
 
 
 Podemos determinar precisamente se um grafo é Eureliano 
ou não, mas o mesmo não pode ser dito sobre grafo 
Hamiltoniano 
 Problema NP-Completo! 
a 
e 
d 
c 
b 
Exercício 5 
 Esse grafo é hamiltoniano? 
a 
d c 
b 
f 
e 
Exercício 5: Solução 
 Sim 
 Ciclo: {a, b, c, d, e, f, a} 
a 
d c 
b 
f 
eExercício 6 
 Esse grafo é hamiltoniano? 
a 
e d 
c 
b 
Exercício 6: Solução 
 Sim 
 Ciclo: {a, b, e, d, c, a} 
a 
e d 
c 
b 
Exercício 7 
 Esse grafo é hamiltoniano? 
 
a 
e d 
c 
b 
Exercício 7: Solução 
 Não! 
 Qualquer tentativa de conectar todos os vértices 
implicará na passagem pelo vértice c mais de uma 
vez! 
a 
e d 
c 
b 
Grafos Hamiltoniano: Aplicação 
 Problema do caixeiro viajante 
 Suponha que a área de venda de um caixeiro viajante 
inclua várias cidades, muitas das quais, aos pares, 
estão conectadas por rodovias 
O trabalho do caixeiro requer que ele visite cada 
cidade pessoalmente 
 Sob que condições seria possível ele estabelecer uma 
viagem circular (que o leve de volta ao ponto de 
partida), de forma que ele visite cada cidade 
exatamente uma vez? 
Dígrafos 
 Também chamados de grafos dirigidos ou 
orientados 
 Conjunto finito V não-vazio de vértices 
 Conjunto finito A de pares ordenados de vértices 
 Pares ordenados de vértices são chamadas de arcos 
em vez de arestas 
 Um arco (v, w) pode ser referenciado como vw 
simplesmente 
 D = (V, A) 
Dígrafos: Exemplo 
 
 
 
 
 
 
 V = {a, b, c, d} 
 A = {ab, bb, bc, cb, cb, ca, dc} 
a 
b c 
d 
Dígrafos 
 Dígrafo simples: 
 Todos os arcos são distintos 
 Não existem laços 
 
 Para obter o grafo correspondente de um dígrafo: 
 Eliminar as direções dos arcos 
 Não necessariamente o grafo correspondente a um 
dígrafo simples é simples 
Dígrafos: Exemplo 
a 
b c 
d 
Dígrafo simples 
a 
b c 
d 
Grafo correspondente 
não é simples 
Versão direcionada de um grafo 
 Cada aresta não direcionada (u,v) em G é 
substituída por duas arestas direcionadas (u,v) e 
(v,u) 
0 
1 2 
0 
1 2 
Dígrafos: Representação por matriz de 
adjacências 
1 2 3 4 
1 0 1 1 0 
2 0 0 1 1 
3 0 0 0 1 
4 0 0 0 0 
1 
4 3 
2 
a12 
a23 
a24 
a13 
a34 
Dígrafos: Representação por matriz de 
adjacências 
1 
4 5 
2 3 
6 
1 2 3 4 5 6 
1 0 1 0 1 0 0 
2 0 0 0 0 1 0 
3 0 0 0 0 1 1 
4 0 1 0 0 0 0 
5 0 0 0 1 0 0 
6 0 0 0 0 0 1 
Dígrafos: Representação por lista de 
adjacências 
1 2 3 
2 4 3 
3 4 
4 
1 
4 3 
2 
a12 
a23 
a24 
a13 
a34 
Dígrafos: Representação por lista de 
adjacências 
1 
4 5 
2 3 
6 
1 2 4 
2 5 
3 6 
4 
5 
6 
5 
2 
4 
6 
Dígrafos: Representação por lista de 
incidências 
1 
4 3 
2 
a1 
a3 
a4 
a2 
a5 
1 2 3 4 5 
1 +1 +1 0 0 0 
2 -1 0 +1 +1 0 
3 0 -1 -1 0 +1 
4 0 0 0 -1 -1 
Dígrafos: Grau de vértices 
 Os vértices de um dígrafo possuem: 
 Grau de entrada (indeg(v)) : número de arcos que chegam 
no vértice 
 Grau de saída (outdeg(v)) : número de arcos que partem 
do vértice 
 Da mesma forma: 
 Sequência de graus de entrada 
 Sequência de graus de saída 
 Proposição: 
 ∑ indeg(vi) = ∑ outdeg(vi) = |A| 
 A é o conjunto de arcos 
Dígrafos: Exemplo de grau de vértices 
 indeg(a) = 1 
 outdeg(a) = 1 
 indeg(b) = 4 
 outdeg(b) = 2 
 
 Sequência indeg = 4, 2, 1, 0 
 Sequência outdeg = 3, 2, 1, 1 
 
 ∑indeg = 4 + 2 + 1 + 0 = 7 
 ∑outdeg = 3 + 2 + 1 + 1 = 7 
 |A| = 7 
a 
b c 
d 
Dígrafos: Isomorfismo 
 Dois dígrafos são isomórficos se: 
 Existe um isomorfismo entre os respectivos grafos 
correspondentes 
 A ordem dos vértices em cada arco é preservada 
 Exemplo: 
 Checar com base nos valores de indeg e outdeg 
D1 D2 
Exercício 8 
 
 
 
 
 
 
 D1 e D2 são isomórficos? 
a 
b c 
d 
D1 
a 
b c 
d 
D2 
Exercício 8: Solução 
 
 
 
 
 
 
 D1 e D2 são isomórficos? 
 Não, pois a direção do arco que conecta c e d não é 
preservada 
a 
b c 
d 
D1 
a 
b c 
d 
D2 
Dígrafos: Conectividade 
 Os conceitos de passeio, caminho, ciclos, etc. são 
semelhantes: 
 Deve respeitar a orientação dos arcos 
 
 Exemplo: 
 Trilha: {d, c, b, c, a} 
 Ciclo: {c, a, b, c} 
a 
b c 
d 
Dígrafos conectados 
 Um dígrafo D é conectado se o grafo correspondente é 
conectado 
 Um grafo é conectado se e somente se existe um caminho 
entre qualquer par de vértices do grafo 
 
 Um dígrafo D é fortemente conectado se para 
quaisquer dois vértices v e w, existe um caminho entre 
v e w 
 
 Um dígrafo D é Euleriano se e somente: 
 Fortemente conectado 
 indeg(vi) = outdeg(vi), para todo vértice i 
Dígrafos conectados: Exemplo 1 
 
 
 
 
 
 O dígrafo é conectado 
 O dígrafo não é fortemente conectado 
 O dígrafo não é Euleriano 
a 
b c 
d 
Dígrafos conectados: Exemplo 2 
 
 
 
 
 
 O dígrafo é conectado 
 O dígrafo é fortemente conectado 
 O dígrafo é Euleriano 
a 
b c 
Exercício 9 
 Trace um grafo que tenha: 
 Vértices: {1, 2, 3, 4, 5} 
 Arestas: {a1, a2, a3, a4, a5, a6} 
 Funções: 
 g(a1) = 1-2 
 g(a2) = 1-3 
 g(a3) = 3-4 
 g(a4) = 3-4 
 g(a5) = 4-5 
 g(a6) = 5-5 
Exercício 9: Solução 
 Trace um grafo que tenha: 
 Vértices: {1, 2, 3, 4, 5} 
 Arestas: {a1, a2, a3, a4, a5, a6} 
 Funções: 
 g(a1) = 1-2 
 g(a2) = 1-3 
 g(a3) = 3-4 
 g(a4) = 3-4 
 g(a5) = 4-5 
 g(a6) = 5-5 
1 
5 
2 a1 
a2 
a5 
4 
3 
a3 
a4 a6 
Exercício 10 
 Com relação ao grafo obtido: 
 Encontre dois vértices que não sejam adjacentes 
 Encontre um vértice que seja adjacente a ele mesmo 
 Encontre um laço 
 Encontre duas arestas paralelas 
 Encontre o grau do vértice 3 
 Encontre um caminho de comprimento 5 
 Encontre um ciclo 
 Este grafo é completo? 
 Este grafo é conexo? 
Exercício 10: Solução 
 Encontre dois vértices que não sejam adjacentes 
 2 e 3 
 Encontre um vértice que seja adjacente a ele 
mesmo 
 5 
 Encontre um laço 
 a6 
 Encontre duas arestas paralelas 
 a3 e a4 
1 
5 
2 a1 
a2 
a5 
4 
3 
a3 
a4 a6 
Exercício 10: Solução 
 Encontre o grau do vértice 3 
 3 
 Encontre um caminho de comprimento 5 
 Não é possível, dado que em um caminho todos os vértices 
devem ser distintos 
 Encontre um ciclo 
 a3, a4 
 Este grafo é completo? 
 Não 
 Este grafo é conexo? 
 Sim 
 
 
1 
5 
2 a1 
a2 
a5 
4 
3 
a3 
a4 a6

Outros materiais