Você está na página 1de 29

TEORIA DOS GRAFOS

Prof. Dr. Paulo Schroeder


Santos / SP
Introdução
• Situações rotineiras, além de fenômenos estudados pelas
ciências exatas, humanas e biológicas, podem ser descritas
por diagramas que representam um conjunto de pontos e um
conjunto de linhas que unem ou ligam alguns pares desses
pontos.
• Exemplos:
• os pontos podem representar cidades e, as linhas que ligam
esses pontos, as estradas entre essas cidades;
• os pontos podem representar pessoas e as linhas ligações de
parentesco,
• Os pontos podem representar os funcionários de uma
empresa e as linhas sua relação hierárquica.
• Os pontos podem representar roteadores de tráfego da
internet e as linhas os meios de transmissão entre eles.
Introdução
• A abstração matemática dessas situações nos leva ao
conceito de GRAFO.
• A Teoria dos Grafos tem sido aplicada em áreas
diferenciadas do conhecimento humano tais como: análise de
circuitos elétricos, análise numérica, química orgânica,
sociologia, física, psicologia, pesquisa operacional, topologia,
genética, analise de sistema operacional viário, redes de
distribuição de energia e de água e outras.
• A Teoria dos Grafos tem sua origem no confronto de
problemas práticos, ao contrario de muitos ramos da
Matemática, nascidos de especulações puramente teóricas.
• Acredita-se que a primeira pessoa a utilizar grafos foi o
matemático alemão Euler, no século XVII, na cidade de
Königsberg (atual Kaliningrado), antiga capital da Prússia
Oriental, o rio Pregel circunda uma ilha e separa a cidade em
quatro zonas que estavam ligadas por sete pontes!
Introdução
Königsberg (atual Kaliningrado)
Introdução
Representação esquemática de Königsberg (atual Kaliningrado)
Introdução
• Não há uma terminologia unificada sobre grafos. Cada autor,
praticamente, tem sua nomenclatura, notação e definição
própria.
• Grafo é uma noção simples, abstrata e intuitiva, usada para
representar a ideia de alguma espécie de relação entre os
“objetos”.
• Graficamente, aparece representado por uma figura com nós
ou vértices, significando os objetos, unidos por um traço
denominado aresta configurando a relação imaginada.
• Um Grafo é representado matematicamente por: G (V,E), onde
V é o conjunto de vértices e E é o conjuntos de arestas ou
ligações entre os vértices. (|V |= n , |E|= m ).
• A Teoria dos Grafos é mais uma coleção de problemas que
uma teoria.
Introdução
• Os problemas, muitos de caráter algorítmico, tornaram-se
célebres porque ocorrem em diversas áreas da computação e
em muitas aplicações industriais.
• Exemplos de problemas clássicos da teoria dos grafos. Alguns
fáceis, outros difíceis; alguns já foram resolvidos, outros não:
• Construir um grafo cujos vértices tenham determinados graus;
• Decidir se dois grafos dados são isomorfos;
• Encontrar um conjunto estável máximo num grafo dado;
• Encontrar uma coloração dos vértices de um grafo dado que
use número mínimo de cores.
• Encontrar uma coloração das arestas de um grafo dado que
use número mínimo de cores.
Introdução
• Encontrar uma cobertura por circuitos (ou seja, uma coleção
de circuitos que use cada aresta do grafo pelo menos uma
vez) mínima de um grafo dado.
• Encontrar uma decomposição em circuitos (ou seja, uma
coleção de circuitos que use cada aresta do grafo exatamente
uma vez) em um grafo dado.
• Encontrar um caminho de comprimento mínimo que passe por
todas as arestas de um grafo dado.
• Encontrar um circuito de comprimento máximo em um grafo
dado.
• Encontrar um caminho máximo que ligue dois vértices de um
grafo.
Introdução
• Encontrar um caminho mínimo que ligue dois vértices dados
de um grafo.
• Encontrar uma coleção máxima de caminhos sem arestas em
comum que ligue dois vértices dados em um grafo.
• Encontrar um subgrafo gerador (ou seja, um subgrafo que
contenha todos os vértices) conexo mínimo de um grafo dado.
• Encontrar um mapa plano (ou seja, um desenho no plano, sem
cruzamento de arestas) de um grafo dado.
Definições fundamentais
Grafo Simples: (ou grafo não orientado)
• Um grafo simples, G (V, E), é um ente matemático constituído
por um conjunto finito V, de elementos chamados vértices, um
conjunto E, de elementos que são subconjuntos binários de V
chamados arestas e uma função de incidência G que
associa a cada aresta de E um par não ordenado de vértices
de V, chamados extremos da aresta.
• Os grafos podem ser representados por diagramas; cada
vértice é representado por um ponto e cada aresta por uma
linha que une os pontos que são os seus extremos.
Definições fundamentais
Exemplo 1:
Considere as pessoas: Paulo, José, Danilo, Cláudia e Helena.
V = P, J, D, C, H
Subconjuntos binários de V: P, J; P, D,; P, C,; P, H; J,
D; J, C; J, H; D, C; D, H; C, H.
Como estamos tratando de conjuntos, temos:
P, J = J, P; P, D = D, P...
Função de incidência; relação de parentesco.
Paulo é irmão de José e pai de Danilo.
José é cunhado de Cláudia que é irmã de Helena.
E = P, J; P, D,; J, D; J, C; C, H,
Definições fundamentais
Assim, o grafo G (V, E):
V = P, J, D, C, H

E = P, J; P, D,; J, D; J, C; C, H
G é a relação de parentesco.
Possíveis representações gráficas do grafo G (V, E).

P D D
J J C
P D
C H H
P
C H
Definições fundamentais
Exemplo 2: 1 7

Considerando o diagrama: 4 5
2

3 6

a-) determinar G (V, E), onde G é qualquer. G (V, E):


V = 1, 2, 3, 4, 5, 6, 7
E = 1, 4; 2, 4; 3, 4; 4, 5; 4, 6; 5, 6; 5, 7

b-) construir outro diagrama para o mesmo grafo:


2 6
4
1
5
3 7
Definições fundamentais
Exemplo 3:
Construir dois diagramas para G (V, E), definido pelos conjuntos:
V = 1, 2, 3, 4, 5, 6, 7
E = 2, 3; 2, 4; 3, 4; 5, 6; 5, 7; 6, 7

3 6
4 7
1 ou 1
2 3 4 5 6 7
2 5
Definições fundamentais
Grafos Rotulados.
São os grafos para os quais são atribuídos nomes ou
designação aos vértices e/ou às linhas.

V1 V4

a1 a3 a4

V2 a2 V3
Definições fundamentais
Grafos Valorados.
São os grafos para os quais são atribuídos valores associados
aos seus elementos, quer sejam vértices ou arestas.
Os vértices são as cidades A, B, C, D e E e A 6 B
as arestas são as estradas que ligam as 3
5
cidades. Os números que aparecem nas 4 2
C
arestas podem indicar por exemplo, o custo 8 3
do transporte de mercadorias, em unidades 5
E D
ordenadas.
Este número é frequentemente referido como peso da ligação.
Essa classificação é dada de acordo com a necessidade, ou
não, da indicação do fluxo entre os vértices.
Na prática este número pode representar: custos, distância,
capacidade, tempo (trânsito, permanência), confiabilidade de
transmissão, probabilidade de ocorrer falhas, outros.
Definições fundamentais
Grafo Completo:
O grafo completo é um grafo simples onde E é formado por
todos os subconjuntos binários de V.

V = 1, 2, 3
E = 1, 2; 1, 3; 2, 3
1 3

V = 1, 2, 3, 4
E = 1, 2; 1, 3; 1, 4; 2, 3; 2, 4; 3, 4.

1 2 3 4
Definições fundamentais
Nem todos os grafos são simples. Há aqueles que supõem
laços que são arestas cujos extremos coincidem.
Por exemplo: O subconjunto 1, 1 = 1 passa a ser considera-
do conjunto unitário e não binário. Há, ainda, os que supõem
duas ligações distintas com o mesmo par de extremos.
2 A Ligações distintas

1
3 C B

Um grafo simples não tem laços nem duas ligações distintas


com o mesmo par de extremos.
Um grafo completo é um grafo simples onde cada vértice está
ligado a todos os outros.
Definições fundamentais
Vértices e arestas adjacentes:
Seja o grafo rotulado e seu diagrama:
V = A, B, C, D E = {a1, a2, a3, a4, a5, a6}
E = A, B; A, D,; B, D; B, C; C, D; {C}

B
a1
a4 a3 A Arestas a1 e a2 são adjacentes
a2 Arestas a1 e a3 são adjacentes
C a5 Arestas a1 e a4 são adjacentes
a6 D
Arestas a2 e a3 são adjacentes
Arestas a2 e a5 são adjacentes
Vértices A e B são adjacentes Arestas a3 e a4 são adjacentes
Vértices A e D são adjacentes Arestas a3 e a5 são adjacentes
Vértices B e D são adjacentes Arestas a4 e a5 são adjacentes
Vértices B e C são adjacentes Arestas a4 e a6 são adjacentes
Vértices C e D são adjacentes Arestas a5 e a6 são adjacentes
Vértices C e C são adjacentes Arestas a6 e a6 são adjacentes
Definições fundamentais
Definições sobre Vértices e arestas adjacentes:
• os vértices de uma aresta (mesmo que coincidam) são
chamados vértices adjacentes
• arestas com um extremo comum são chamados arestas
adjacentes.
• Dizemos, ainda, que uma aresta é incidente a seus extremos.
• Por exemplo: A aresta {C, D} é incidente a C e a D.
Definições fundamentais
Grau de um vértice.
O grau de um vértice v em G, cuja notação é gG (v), é o numero
de arestas incidentes a v, onde cada laço é contado duas vezes.
Para todo grafo vale:
“a soma dos graus de seus n vértices é igual ao dobro do
numero de arestas” (incluindo laços).
O diagrama de um grafo G
V1
(V, E) ao lado é:
Número de arestas = 6
6 . 2 = 12 (V) V2 V3
gG (v1) = 3
gG (v2) = 5 V4

gG (v3) = 2
gG (v4) = 2
Definições fundamentais
Cardinalidade: (número de elementos de um conjunto)
Notação: | V | = n e | E | = m

Se n = 1, dizemos que o grafo é trivial.


O tamanho de um grafo G (V, E) é dado por | V | + | E |.
O grafo vazio é um grafo tal que | V | + | E | = 0 (sem arestas e
vértices).
A cardinalidade dos conjuntos V e E é de extrema importância
para a avaliação da eficiência de algoritmos sobre grafos.
A relação entre duas cardinalidades determina grafos densos e
grafos esparsos.
Se os vértices de um grafo têm todos o mesmo grau, dizemos
que o grafo é regular.
Definições fundamentais
Grafos Conexos:
Um grafo G (V, E) é dito conexo se, para qualquer par de
vértices, existe um caminho continuo entre eles.
Por definição, um grafo trivial (um vértice isolado) é um grafo
conexo.

Exemplo: V1 V4
de V1 a V 2 caminho: (V1, a 1, V 2)
de V1 a V3 caminho: (V1, a1, V2, a2, V3)
a1 a3
de V1 a V 4 caminho: (V1, a 1, V 2,, a ,2,V ,3, a 3, V 4 )
de V2 a V3 caminho: (V2, a2, V3)
V2 a2 V3
de V2 a V 4 caminho: (V2, a 2, V3, a 3, ,V 4)
de V3 a V4 caminho: (V3, a3, V4)
Definições fundamentais

G2
G1

G3 G4

Exemplos de grafos conexos. Exemplos de grafos desconexos.


Definições fundamentais
Subgrafos:
Um grafo G’ (V’, E’) é um subgrafo de G (V, E) se V’  V e E’  E.

V1
V1

V2 V2
V2

V3 V4 V3 V4
V4

V5 V5
V5
G’2 é um subgrafo
V6 G’1 é um subgrafo conexo de G
conexo de G
Grafo G
Definições fundamentais
Grafo Orientado (dígrafo):
Grafo orientado é aquele cuja representação geométrica (em
diagrama) implica na atribuição de sentido às linhas.
No caso de grafos orientados usamos o termo arco em lugar de
aresta, cuja notação passa a ser a mesma dos pares ordenados;
o termo linha pode ser usado para designar aresta ou arco.
Vértices adjacentes aqui, podem receber as designações de
extremidade inicial e extremidade final.
Definições fundamentais
Exemplo 1:
Numa pequena empresa trabalham 12 funcionários F1, F2, F3,
...., F12 e a relação chefe-subalterno é expressa por:

F1

F3
F2

F4 F10 F9
F6

F5
F7 F8 F11 F12
Definições fundamentais
Exemplo 2:
As unidades C1, C2, C3,....C6 são ligadas entre si pela seguinte
rede de comunicação: quando há uma flecha de Ci a Cj significa
que é possível a comunicação direta de Ci a Cj.
C2

C5
C3 C1

C6

C4
Fim/aula1

Você também pode gostar