Você está na página 1de 56

Teoria dos Grafos

Disciplina: Matemática Discreta


Professor: Aline Farias

Universidade Federal do Sul e Sudeste do Pará


Instituto de Geociências e Engenharias
Faculdade de Sistemas de Informação
alinefarias@unifesspa.edu.br

6 de julho de 2023

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 1 / 54


1 Grafos
2 Tipos de Grafos
Grafo Simples
Multigrafos
Pseudografos
Grafos não orientados
Grafo Orientado Simples
Multigrafos Orientados
Grafo Misto
3 Terminologia de Grafos
4 Modelos de Grafo
5 O grau de um vértice
6 União entre Grafos
7 Matrizes de Adjacência
8 Matrizes de Incidência
9 Isomorfismo de Grafos
10 Exercícios
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 2 / 54
Sumário
1 Grafos
2 Tipos de Grafos
Grafo Simples
Multigrafos
Pseudografos
Grafos não orientados
Grafo Orientado Simples
Multigrafos Orientados
Grafo Misto
3 Terminologia de Grafos
4 Modelos de Grafo
5 O grau de um vértice
6 União entre Grafos
7 Matrizes de Adjacência
8 Matrizes de Incidência
9 Isomorfismo de Grafos
10 Exercícios
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 3 / 54
Grafos

Os grafos são estruturas discretas que consistem em vértices e arestas


que ligam os vértices.
Problemas em quase todas as disciplinas concebíveis podem ser resol-
vidos usando modelos de grafos.
Na área da computação podemos citar, por exemplo, os links entre
os Websites, ou ainda determinar se dois computadores estão ligados
por um link de comunicação usando modelos de grafo de redes de
computadores.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 4 / 54


Grafos

Um grafo G = (V , E ) consiste em V , um conjunto não vazio de


vértices (ou nós) e E, um conjunto de arestas. Cada aresta tem um ou
dois vértices associados a ela, chamados de suas extremidades. Dizemos
que uma aresta liga ou conecta suas extremidades.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 5 / 54


Grafos

Uma Rede de Computadores

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 6 / 54


Sumário
1 Grafos
2 Tipos de Grafos
Grafo Simples
Multigrafos
Pseudografos
Grafos não orientados
Grafo Orientado Simples
Multigrafos Orientados
Grafo Misto
3 Terminologia de Grafos
4 Modelos de Grafo
5 O grau de um vértice
6 União entre Grafos
7 Matrizes de Adjacência
8 Matrizes de Incidência
9 Isomorfismo de Grafos
10 Exercícios
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 7 / 54
Grafo Simples

Um grafo no qual cada aresta conecta dois vértices diferentes e duas


arestas nunca conectam o mesmo par de vértices.

Uma rede de computadores

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 8 / 54


Multigrafos

Um grafo pode ter arestas múltiplas conectando os mesmos vértices:


multigrafos.

Uma Rede de Computadores com Links Múltiplos entre os Centros de Dados.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 9 / 54


Pseudografos

Grafos que incluem laços, e possivelmente arestas múltiplas que co-


nectam o mesmo par de vértices.

Uma Rede de Computadores com Links de Diagnóstico.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 10 / 54


Grafos não orientados

Grafos que possuem arestas ditas não orientadas.

Os exemplos anteriores são grafos não orientados.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 11 / 54


Multigrafos orientados

Quando existirem m arestas orientadas, cada uma delas associadas a


um par ordenados de vértices (u, v ), dizemos que (u, v ) é uma aresta de
multiplicidade m.

Uma Rede de Comunicações com Links de Comunicação de Mão Única.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 12 / 54


Sumário
1 Grafos
2 Tipos de Grafos
Grafo Simples
Multigrafos
Pseudografos
Grafos não orientados
Grafo Orientado Simples
Multigrafos Orientados
Grafo Misto
3 Terminologia de Grafos
4 Modelos de Grafo
5 O grau de um vértice
6 União entre Grafos
7 Matrizes de Adjacência
8 Matrizes de Incidência
9 Isomorfismo de Grafos
10 Exercícios
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 13 / 54
Terminologia de Grafos

Embora a terminologia usada para descrever grafos possa variar, três


questões – chave podem nos ajudar a entender a estrutura de um grafo:
1. As arestas de um grafo são não orientadas ou orientadas (ou ambas)?
2. Se o grafo for não orientado, estão presentes arestas múltiplas co-
nectando o mesmo par de vértices? Se o grafo for orientado, estão
presentes arestas orientadas múltiplas?
3. Existem laços presentes?

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 14 / 54


Terminologia de Grafos

Terminologia dos Grafos


Tipo Arestas Arestas Múltiplas Permitidas Laços Permitidos
Grafo simples Não orientadas Não Não
Multigrafo Não orientadas Sim Não
Pseudografo Não orientadas Sim Sim
Grafo orientado simples Orientadas Não Não
Multigrafo orientado Orientadas Sim Sim
Grafo misto Orientadas e não orientadas Sim Sim

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 15 / 54


Sumário
1 Grafos
2 Tipos de Grafos
Grafo Simples
Multigrafos
Pseudografos
Grafos não orientados
Grafo Orientado Simples
Multigrafos Orientados
Grafo Misto
3 Terminologia de Grafos
4 Modelos de Grafo
5 O grau de um vértice
6 União entre Grafos
7 Matrizes de Adjacência
8 Matrizes de Incidência
9 Isomorfismo de Grafos
10 Exercícios
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 16 / 54
Modelos de Grafo

Modelos de Grafos
▶ Grafos de Superposição de Nichos em Ecologia;
▶ Grafos de Relacionamento;
▶ Grafos de Influência;
▶ O Grafo de Hollywood;
▶ Torneios Round-Robin;
▶ Grafos de Colaboração;
▶ Grafos de Chamadas;
▶ O Grafo da Web;
▶ Grafos de Precedência e Processamento Concomitante;
▶ Mapas Rodoviários.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 17 / 54


Modelos de Grafo

O Grafo da Web

A World Wide Web pode ser modelada como um grafo orientado no


qual cada página da Web é representado por um vértice e no qual uma
aresta começa na página “a” da Web e termina na página “b” da Web
se existir um link em “a” que direcione para “b”.
Como novas páginas da Web são criadas e outras removidas em alguma
parte da Web a quase todo segundo, o grafo da Web muda numa base
contínua.
Atualmente, o grafo da Web tem mais de três bilhões de vértices e 20
bilhões de arestas. Muitas pessoas estão estudando as propriedades do
grafo da Web para entender melhor a natureza da Web.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 18 / 54


Modelos de Grafo

Exercícios

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 19 / 54


Modelos de Grafo

Exercícios

(a) Grafo Simples (b) Multigrafo (c) Pseudografo

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 19 / 54


Modelos de Grafo

Exercícios

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 20 / 54


Modelos de Grafo

Exercícios

(d) Multigrafo Orien- (e) Multigrafo Orien- (f) Multigrafo Orien-


tado tado tado

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 20 / 54


Sumário
1 Grafos
2 Tipos de Grafos
Grafo Simples
Multigrafos
Pseudografos
Grafos não orientados
Grafo Orientado Simples
Multigrafos Orientados
Grafo Misto
3 Terminologia de Grafos
4 Modelos de Grafo
5 O grau de um vértice
6 União entre Grafos
7 Matrizes de Adjacência
8 Matrizes de Incidência
9 Isomorfismo de Grafos
10 Exercícios
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 21 / 54
O grau de um vértice

O grau de um vértice de um grafo não orientado é o número de arestas


incidentes a ele, exceto que um laço em um vértice contribui duas vezes
ao grau daquele vértice. O grau do vértice v é indicado por gr(v).
O grau de qualquer grafo (soma dos graus dos vértices) deve ser um
número par !!! (Teorema do aperto de mãos)

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 22 / 54


O grau de um vértice

Exemplo:

Quais são os graus dos vértices nos grafos G e H mostrados na Figura?

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 23 / 54


O grau de um vértice

Exemplo:

Quais são os graus dos vértices nos grafos G e H mostrados na Figura?

Solução: Em G, gr (a) = 2, gr (b) = gr (c) = gr (f ) = 4, gr (d) = 1,


gr (e) = 3 e gr (g) = 0. Em H, gr (a) = 4, gr (b) = gr (e) = 6, gr (c) = 1 e
gr (d) = 5.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 24 / 54


O grau de um vértice

Um vértice de grau zero é dito ISOLADO.


Um vértice é PENDENTE se e somente se ele tem grau 1.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 25 / 54


Sumário
1 Grafos
2 Tipos de Grafos
Grafo Simples
Multigrafos
Pseudografos
Grafos não orientados
Grafo Orientado Simples
Multigrafos Orientados
Grafo Misto
3 Terminologia de Grafos
4 Modelos de Grafo
5 O grau de um vértice
6 União entre Grafos
7 Matrizes de Adjacência
8 Matrizes de Incidência
9 Isomorfismo de Grafos
10 Exercícios
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 26 / 54
União entre Grafos

A união de dois grafos simples G1 = (V1 , E1 ) e G2 = (V2 , E2 ) é o grafo


simples com conjunto de vértices V1 ∪ V2 e conjunto de arestas E1 ∪ E2 .
A união de G1 e G2 é indicada por G1 ∪ G2 .

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 27 / 54


Sumário
1 Grafos
2 Tipos de Grafos
Grafo Simples
Multigrafos
Pseudografos
Grafos não orientados
Grafo Orientado Simples
Multigrafos Orientados
Grafo Misto
3 Terminologia de Grafos
4 Modelos de Grafo
5 O grau de um vértice
6 União entre Grafos
7 Matrizes de Adjacência
8 Matrizes de Incidência
9 Isomorfismo de Grafos
10 Exercícios
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 28 / 54
Matrizes de Adjacência

Executar algoritmos de grafos usando representação de grafos por meio


de listas de arestas ou de listas de adjacências pode ser incômodo se
existirem muitas arestas no grafo.
Para simplificar os cálculos, os grafos podem ser representados usando
matrizes.
Um tipo de matriz utilizado para representar grafos é chamada de Ma-
triz de Adjacência.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 29 / 54


Matrizes de Adjacência

A Matriz de Adjacência A = [aij] de G é definida por:


{︃
aij = 1 se {vi , vj } for uma aresta de G
0 caso contrário

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 30 / 54


Matrizes de Adjacência
Exemplo:
Use uma matriz de adjacência para representar o grafo mostrado na Figura

Solução:
Podemos ordenas os vértices como a, b, c, d. A matriz que representa este
grafo é
0 1 1 1
⎡ ⎤
⎢1 0 1 0⎥
⎢ ⎥
⎣1 1 0 0⎦
⎢ ⎥

1 0 0 0
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 31 / 54
Matrizes de Adjacência
Exemplo:
Desenhe um grafo com a matriz de adjacência

0 1 1 0
⎡ ⎤
⎢1 0 0 1⎥
⎢ ⎥
⎣1 0 0 1⎦
⎢ ⎥

0 1 1 0
Solução:

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 32 / 54


Matrizes de Adjacência

A Matriz de Adjacência também pode ser usada para representar


grafos não orientados com laços e com arestas múltiplas.
Um laço em um vértice a é representado por um 1 na posição (i, j) da
matriz de adjacência.
Quando arestas múltiplas estiverem presentes, a matriz de adjacência
não é mais uma matriz zero – um, pois o elemento (i, j) desta matriz
é igual ao número de arestas que estão associadas a {ai , aj }.
Todos os Grafos não orientados, incluindo multigrafos e pseudografos,
têm matrizes adjacência simétricas

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 33 / 54


Matrizes de Adjacência
Exemplo:
Desenhe um grafo com a matriz de adjacência

0 3 0 2
⎡ ⎤
⎢3 0 1 1⎥
⎢ ⎥
⎣0 1 1 2⎦
⎢ ⎥

2 1 2 0
Solução:

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 34 / 54


Sumário
1 Grafos
2 Tipos de Grafos
Grafo Simples
Multigrafos
Pseudografos
Grafos não orientados
Grafo Orientado Simples
Multigrafos Orientados
Grafo Misto
3 Terminologia de Grafos
4 Modelos de Grafo
5 O grau de um vértice
6 União entre Grafos
7 Matrizes de Adjacência
8 Matrizes de Incidência
9 Isomorfismo de Grafos
10 Exercícios
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 35 / 54
Matrizes Incidência

Uma outra forma comum de representar grafos é usar matrizes de


incidência.
Seja G = (V , E ) um grafo não orientado. Suponha que v1 , v2 , ..., vn
sejam os vértices e e1 , e2 , ..., em sejam as arestas de G.
Então a matriz de incidência com relação a esta ordem de V e E é a
matriz nxm M = [mij ], em que
{︃
mij = 1 quando a aresta ei for incidente a vi
0 caso contrário

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 36 / 54


Matrizes Incidência
Exemplo:
Represente o grafo mostrado na Figura com uma matriz de incidência.

e1 e2 e3 e4 e5 e6
v1 ⎛
1 1 0 0 0 0⎞
v2 ⎜0 0 1 1 0 1⎟
⎜0 0 0 0 1 1⎟
⎜ ⎟
v3 ⎜ ⎟
v4 ⎝1 0 1 0 0 0⎠
v5 0 1 0 1 1 0

Solução:

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 37 / 54


Matrizes Incidência

A Matriz de Incidência também pode ser usada para representar ares-


tas múltiplas e laços.
As arestas múltiplas são representadas na matriz de incidência usando
colunas com elementos idênticos, pois estas arestas são incidentes ao
mesmo par de vértices.
Os laços são representados usando uma coluna com exatamente um
elemento igual a 1, correspondendo ao vértice que é incidente deste
laço.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 38 / 54


Matrizes Incidência
Exemplo:
Represente um pseudografo mostrado na Figura usando uma matriz de
incidência.

e1 e2 e3 e4 e5 e6 e7 e8
v1 ⎛
1 1 1 0 0 0 0 0⎞
v2 ⎜0 1 1 1 0 1 1 0⎟
⎜0 0 0 1 1 0 0 0⎟
⎜ ⎟
v3 ⎜ ⎟
v4 ⎝0 0 0 0 0 0 1 1⎠
v5 0 0 0 0 1 1 0 0

Solução:

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 39 / 54


Sumário
1 Grafos
2 Tipos de Grafos
Grafo Simples
Multigrafos
Pseudografos
Grafos não orientados
Grafo Orientado Simples
Multigrafos Orientados
Grafo Misto
3 Terminologia de Grafos
4 Modelos de Grafo
5 O grau de um vértice
6 União entre Grafos
7 Matrizes de Adjacência
8 Matrizes de Incidência
9 Isomorfismo de Grafos
10 Exercícios
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 40 / 54
Isomorfismo de Grafos

Frequentemente precisamos saber se é possível desenhar dois grafos da


mesma maneira.
Grafos com a mesma estrutura são conhecidos como GRAFOS ISO-
MORFOS.
A palavra isomorfismo possui as raízes gregas isos para “igual” e morphe
para “forma”.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 41 / 54


Isomorfismo de Grafos

Dois grafos simples G1 (V1 , E1 ) e G2 (V2 , E2 ) são ditos isomorfos entre


si se existe uma correspondência entre os seus vértices e arestas de tal
maneira que a relação de incidência seja preservada.
Em outros termos, temos |V 1| = |V 2| e existe uma função unívoca
f : V 1 → V 2, tal que (i, j) é elemento de E1 se e somente se (ƒ(i),f(j))
é elemento de E2 .
Isomorfismo de grafos simples é uma relação de equivalência.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 42 / 54


Isomorfismo de Grafos

Exemplo

Grafos isomorfos

Solução

f (a) = 1, f (b) = 2, f (c) = 3, f (d) = 8, f (e) = 5, f (f ) = 6, f (g) = 7,


f (h) = 4.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 43 / 54


Isomorfismo de Grafos

Exemplo

Grafos isomorfos

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 44 / 54


Isomorfismo de Grafos
Exemplo

Grafos isomorfos

Observe que nem sempre é fácil determinar o ISOMORFISMO entre


Grafos.
Não existe atualmente um algoritmo eficiente para resolver esse pro-
blema.
Poderíamos tentar todas as permutações possíveis, mas isso daria um
algoritmo de altíssima complexidade (O(n!))
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 45 / 54
Isomorfismo de Grafos

É difícil determinar se dois grafos simples são isomorfos.


Existem n! correspondências biunívocas possíveis entre os conjuntos de
vértices de dois grafos simples com n vértices.
Testar cada uma dessas correspondências para ver se ela preserva a
adjacência ou não, não é prático se n for um valor grande.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 46 / 54


Isomorfismo de Grafos

Para que dois grafos sejam isomorfos, no mínimo essas condições tem
que ser respeitadas:
Os dois têm o mesmo número de vértices.
Os dois têm o mesmo número de arestas.
Os dois têm o mesmo número de vértices de grau n, para qualquer
valor n entre 0 e o número de vértices que o grafo contém.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 47 / 54


Isomorfismo de Grafos

Exemplo
São Grafos isomorfos?

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 48 / 54


Isomorfismo de Grafos

Exemplo
São Grafos isomorfos?

Solução
Os grafos respeitam as condições apresentadas e mesmo assim não são
isomorfos.
Para determinar se um grafo é isomorfo, existe uma técnica (não fácil
de implementar!) que consiste em modificar a maneira de desenhar um
grafo para torná-lo igual ao outro.
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 49 / 54
Isomorfismo de Grafos

Considerações Finais
Como é bastante complexa essa técnica, vamos nos ater a grafos sim-
ples e fáceis de identificar o Isomorfismo.
Possivelmente, em disciplinas mais avançadas essa técnica poderá ser
vista com maiores detalhes.

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 50 / 54


Questions?

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 51 / 54


Sumário
1 Grafos
2 Tipos de Grafos
Grafo Simples
Multigrafos
Pseudografos
Grafos não orientados
Grafo Orientado Simples
Multigrafos Orientados
Grafo Misto
3 Terminologia de Grafos
4 Modelos de Grafo
5 O grau de um vértice
6 União entre Grafos
7 Matrizes de Adjacência
8 Matrizes de Incidência
9 Isomorfismo de Grafos
10 Exercícios
Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 52 / 54
Exercícios

Encontre a matriz adjacência dos Grafos abaixo

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 53 / 54


Exercícios

Encontre a matriz adjacência dos Grafos abaixo

Aline Farias (Unifesspa  2023-2) Aula 6 6 de julho de 2023 54 / 54

Você também pode gostar