Buscar

Teoria dos Grafos - Parte 1 - Conceitos Basicos

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

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

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ê viu 3, do total de 31 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

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

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ê viu 6, do total de 31 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

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

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ê viu 9, do total de 31 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

Prévia do material em texto

Teoria dos Grafos 
 
Conceitos Básicos 
Prof. Rômulo Alencar 
romulo.alencar@unifor.br 
Prof. Rômulo Alencar Teoria dos Grafos 2 
Considerações 
 
 
 Estes slides foram elaborados com base no material 
de professores anteriores da disciplina, especialmente os 
Profs. Maikol Rodrigues, Tibérius Bonates e André Coelho, 
e nos livros indicados na bibliografia da disciplina, com 
foco principal no livro “Algoritmos – Teoria e Prática” de 
Cormen et al. 
Prof. Rômulo Alencar 
romulo.alencar@unifor.br 
Prof. Rômulo Alencar Teoria dos Grafos 3 
Conteúdo 
  Conceitos Básicos 
  Representação Computacional 
  Busca em Grafos 
  Ordenação Topológica 
  Conexidade 
  Fecho Transitivo 
  Árvores Geradoras Mínimas 
  Caminhos Mínimos 
  Fluxo em Redes 
Prof. Rômulo Alencar Teoria dos Grafos 4 
Introdução 
  Por que estudar grafos? 
 Abstraem de forma elegante os relacionamentos entre 
elementos de conjuntos discretos 
 Importante ferramenta matemática com aplicação em 
diversas áreas do conhecimento 
 Genética, química, telecomunicações, engenharia 
elétrica, computação, logística, dentre outros 
4 
Prof. Rômulo Alencar Teoria dos Grafos 5 
Introdução 
  O primeiro problema da Teoria dos Grafos foi formulado 
e resolvido pelo matemático Leonhard Euler, em 1736 
 No Rio Pengel, junto à cidade de Königsberg (hoje 
Kaliningrado), na então Prússia, existem ilhas, formando 
quatro regiões. Há um total de sete pontes as interligando. 
5 
É possível sair de uma das 
ilhas, passar uma única vez por 
cada uma das pontes e retornar 
ao ponto de origem ? 
Prof. Rômulo Alencar Teoria dos Grafos 6 
Introdução 
  As pontes de Königsberg 
 Abstração de detalhes irrelevantes 
 Área de cada ilha 
 Formato de cada ilha 
 Tipo da ponte, etc. 
6 
Prof. Rômulo Alencar Teoria dos Grafos 7 
As pontes de Königsberg 
É possível cruzar as 7 pontes numa 
caminhada contínua sem que se 
que passasse duas vezes por 
qualquer uma delas? 
 
 
 
Euler transformou os caminhos em 
retas e suas interseções em pontos 
criando possivelmente o primeiro 
grafo da história. 
 
Prof. Rômulo Alencar Teoria dos Grafos 8 
Introdução 
  As pontes de Königsberg 
 Não existe o trajeto desejado 
 Euler provou que o trajeto só existe se e somente se 
concorrer um número par de pontes em cada região 
8 
Prof. Rômulo Alencar Teoria dos Grafos 9 
Introdução 
  As pontes de Königsberg 
 Euler mostrou que não existe o trajeto proposto utilizando 
o modelo em grafos 
  Verifique nos grafos abaixo se o trajeto proposto é 
possível 
 
Prof. Rômulo Alencar Teoria dos Grafos 10 
Introdução 
  Outros desenvolvimentos isolados que despertaram o 
interesse pela área 
 Problema das 4 cores (De Morgan, 1850) 
 Problema do ciclo Hamiltoniano (Hamilton, 1859) 
 Teoria das árvores 
 Circuitos elétricos (Kirchoff, 1847) 
 Química orgânica (Cayley, 1857) 
10 
Prof. Rômulo Alencar Teoria dos Grafos 11 
Introdução 
  Problema das 4 cores 
 Qual a quantidade mínima 
de cores para colorir um 
mapa de tal forma que 
países/estados 
fronteiriços possuam 
cores diferentes? 
11 
Prof. Rômulo Alencar Teoria dos Grafos 12 
Introdução 
  Problema das 4 cores 
 É possível criar exemplos onde 3 cores são insuficientes 
 De Morgan conjecturou em 1850 que 4 cores são 
suficientes 
 Heawood mostrou em 1890 que 5 cores são suficientes 
 Appel e Haken provaram a conjectura de De Morgan 
somente em 1976 
12 
Prof. Rômulo Alencar Teoria dos Grafos 13 
Introdução 
  Problema das 3 casas 
 É possível conectar os 3 serviços às 3 casas sem haver 
cruzamento na tubulação? 
 A teoria dos grafos mostra que não é possível 
13 
 água luz telefone 
Prof. Rômulo Alencar Teoria dos Grafos 14 
Introdução 
  Problema do caminho mínimo 
14 
–  Uma empresa de transporte de 
cargas deseja oferecer aos 
motoristas de sua frota um 
mecanismo que os auxilie a 
selecionar o melhor caminho (o 
de menor distância) entre 
quaisquer duas cidades por ela 
servidas, de forma a que sejam 
minimizados os custos de 
transporte 
Prof. Rômulo Alencar Teoria dos Grafos 15 
Introdução 
  Problema do caixeiro viajante 
 Um caixeiro viajante deseja visitar um dado grupo de 
cidades e retornar ao ponto de partida, percorrendo a 
menor distância possível 
15 
Prof. Rômulo Alencar Teoria dos Grafos 16 
O Caixeiro Viajante 
  Amplamente conhecido 
  Fácil enunciado 
  Classificado como NP-Difícil 
 
  Grande aplicação prática 
  Enorme relação com outros modelos 
  Grande dificuldade de solução exata 
http://elib.zib.de/pub/mp-testdata/tsp/tsplib/tsplib.html 
Prof. Rômulo Alencar Teoria dos Grafos 17 
Importância do PCV 
  Com mais de 5 cidades, a solução anterior passa a ficar 
muito complicada... 
  Por exemplo, com 20 cidades a quantidade de possíveis 
ciclos hamiltonianos é (19!)/2, o que dá 
aproximadamente 6 x 1016 
  Não se conhecem algoritmos eficientes para resolver 
esse problema 
  Existem algoritmos heurísticos que dão soluções 
aproximadas 
Prof. Rômulo Alencar Teoria dos Grafos 18 
Heurística: Vizinho mais Próximo 
1 2 3 4 5 6 
1 - 2 1 4 9 1 
2 2 - 5 9 7 2 
3 1 5 - 3 8 6 
4 4 9 3 - 2 1 
5 9 7 8 2 - 2 
6 1 2 6 1 2 - 
Grafo Exemplo 
Prof. Rômulo Alencar Teoria dos Grafos 19 
Heurística: Vizinho mais Próximo 
Prof. Rômulo Alencar Teoria dos Grafos 20 
O problema do carteiro chinês 
  Problema discutido pelo matemático chinês Mei-Ku Kuan 
  Um carteiro deseja entregar suas cartas, percorrendo a 
menor distância possível e retornando ao ponto de 
partida 
  Ele deve passar por cada estrada pelo menos uma vez, 
mas deve evitar passar por muitas estradas mais de 
uma vez. 
Prof. Rômulo Alencar Teoria dos Grafos 21 
Introdução 
  Modelagem com grafos 
 Estamos interessandos nos objetos do problema e nas 
relações entre eles 
 Quem são os objetos nos problemas apresentados? 
 No problema da coloração: vértices são os estados, 
arestas são as divisas 
 No problema das casas: vértices são as casas e os 
serviços, arestas são as tubulações 
 No problema do caminho mais curto e do caixeiro 
viajante: vértices são as cidades, arestas são as vias 
de transporte 
21 
Prof. Rômulo Alencar Teoria dos Grafos 22 
Exercício 
  Um químico deseja embarcar os produtos A, B, C, D, E, 
F e G usando o menor número de containers. Alguns 
produtos não podem ser colocados num mesmo 
container porque reagem. Quaisquer dois produtos entre 
A, B, C e G reagem entre si. A reage com F e D. E 
também reage com F e D. Descreva o grafo que modela 
essa situação e use esse grafo para descobrir o menor 
número de containers necessários para embarcar os 
produtos com segurança. 
22 
Prof. Rômulo Alencar Teoria dos Grafos 23 
Definição de Grafos 
  Um grafo G = (V, E) é definido pelo par de conjuntos V e 
E, onde 
 V : conjunto não vazio dos vértices ou nós do grafo 
 E : conjunto de subconjuntos de V do tipo {u, v}, 
 u e v ∈ V , que constituem as arestas do grafo 
  Como a definição acima admite grafos com múltiplas 
arestas conectando dois vértices, são chamados 
também de multigrafos 
  A ordem de um grafo G é dada pela cardinalidade 
(quantidade de elementos) |V| do conjunto de vértices 
23 
Prof. Rômulo Alencar Teoria dos Grafos 24 
Definição de Grafos 
  Seja, por exemplo, o grafo G = (V,E) dado por 
V = { v | v é uma pessoa} 
E = { {u,v} | u é amigo de v} 
  O grafo pode ser determinado também pela enumeração 
dos elementos dos seus conjuntos 
V = { Maria, Pedro, Joana, Luiz} 
E = { {Maria,Pedro}, 
 {Maria,Joana}, 
 {Luiz,Pedro}, 
 {Joana, Pedro} } 
24 
Prof. Rômulo Alencar Teoria dos Grafos 25 
Grafo Não Dirigido 
  No exemplo anterior, a relação de amizade é simétrica, 
isto é, considera-se que, se uma pessoa é amiga de 
outra, a recíproca é verdadeira 
  Grafos com esta característica são ditos não dirigidos 
(não orientados) 
25 
Prof.Rômulo Alencar Teoria dos Grafos 26 
Grafo Dirigido 
  Considere agora o grafo definido por 
V = { v | v é pessoa da família Castro} 
E = { (u,v) | u é pai/mãe de v} 
  Os conjuntos resultantes são 
V={Emerson, Isadora, Renata, 
 Antônio, Cecília, Alfredo} 
E={(Isadora, Emerson), 
 (Antônio, Renata), 
 (Alfredo, Emerson), 
 (Cecília, Antônio), 
 (Alfredo, Antônio)} 
26 
Prof. Rômulo Alencar Teoria dos Grafos 27 
Grafo Dirigido 
  Obviamente, a relação expressa pelo grafo é assimétrica 
  O grafo é dito dirigido (orientado, dígrafo), e as 
conexões entre os vértices, chamadas de arcos, são 
representadas por pares ordenados ao invés de 
conjuntos 
27 
Prof. Rômulo Alencar Teoria dos Grafos 28 
Grafo Rotulado 
  Um grafo G=(V,E) é rotulado em 
vértices (arestas) quando a cada vértice (aresta) estiver 
associado um rótulo 
28 
Prof. Rômulo Alencar Teoria dos Grafos 29 
Grafo Ponderado 
  Um grafo G=(V,E) é ponderado (ou valorado) quando 
existe uma ou mais funções relacionando V e/ou E a 
valores numéricos 
  Para exemplificar, sejam 
V = {v | v é uma cidade com aeroporto} 
E = {(u,v,t) | há linha aérea ligando u a v, sendo t o tempo 
esperado de vôo} 
29 
Prof. Rômulo Alencar Teoria dos Grafos 30 
Grafo Simples 
  Um laço é uma aresta {v} ou um arco (v,v) que relaciona 
um vértice a ele próprio 
  Um grafo sem laços e sem ligações redundantes é um 
grafo simples 
  Como transformar o multigrafo abaixo em um grafo 
simples? 
30 
Prof. Rômulo Alencar Teoria dos Grafos 31 
Subgrafo 
  Um grafo Gs=(Vs, Es) é um subgrafo de G=(V,E) quando 
Vs ⊆ V e Es ⊆ E 
  O figura abaixo ilustra a obtenção de subgrafos através 
da remoção de vértices e arestas 
31

Outros materiais