teoria dos grafos - infprestes/courses/graph theory/grafosa8.pdf · teoria dos grafos dígrafos...

21
Teoria dos Grafos Edson Prestes

Upload: others

Post on 08-Oct-2020

17 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos Grafos

Edson Prestes

Page 2: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos

Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Se G possui os arcos (x,y) e (x,w), então sabemos que G possui duas arestas que saem de x e alcançam y e w, portanto temos

Esta função possui inversa denomidada por . Neste caso para um vértice y, esta função indica de quais vértices partem arcos que chegam a y. Considerando o exemplo anterior, temos.

e

A generalização da função é a função, o que consiste em

Page 3: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos

Dado o dígrafo G abaixo calcule as funções e para cada vértice de G

Page 4: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

�̂{x} = V ⇥x � V

Teoria dos GrafosDígrafos

Baseado nisto podemos definir a função fechamento transitivo de um vértice x, denotada por, , onde

A função de fechamento transitivo inversa é definida como

Ou seja, um dígrafo G=(V,A) é fortemente conexo se

Page 5: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos

Dado o dígrafo abaixo, calcule e

Page 6: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos - Componentes Fortes

Determine os componentes fortemente conexos maximais do dígrafo abaixo

Inicialmente pegamos um vértice e calculamos e Finalmente, calculamos .

Este último resultado nos fornece os vértices V’ que compõe o subgrafo fortemente conexo maximal ao qual x pertence.

Em seguida, realizamos o mesmo processo para até que

Page 7: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos - Componentes Fortes

Inicialmente iremos pegar o vértice A. Temos

O primeiro subgrafo é formado pelos vértices V'={a,d} e pelos arcos que os conectam.

O segundo subgrafo é determinado a partir de V-V'={b,c,e}. Escolhendo o vértice c, temos

O segundo subgrafo portanto é aquele formado pelos vértices {b,c} e pelos arcos que os interligam.

Page 8: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos - Componentes Fortes

Observe que restou apenas o vértice e do conjunto de vértices original.

Portanto ele é seu próprio subgrafo conexo maximal.

Os subgrafos fortemente conexos maximais são destacados abaixo

Page 9: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos - Componentes Fortes

Determine os componentes fortemente conexos maximais do grafo abaixo

Page 10: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos – Componentes Fortes

Page 11: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos – Contagem de Caminhos/Passeios

Considere o dígrafo abaixo e sua matriz de adjacência M

Matriz de adjacência M

Determine a quantidade de passeios de comprimento 1, 2, 3 e 4.

Page 12: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos – Contagem de Caminhos/Passeios

Note que a matriz M já indica a quantidade de passeios de comprimento 1.

A quantidade de passeios de comprimento 2 é obtida calculando M2=M.M.

M2=

Page 13: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos – Contagem de Caminhos/Passeios

A quantidade de passeios de comprimento 3 é obtida calculando M3=M2.M.

M= M2=

M3=

Page 14: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos – Cobertura e Conjunto Independente

Relembrando, dado um grafo G=(V,A), um conjunto S é independente se S não contiver vértices adjacentes entre si e for maximal.

Uma cobertura de vértices de G é um subconjunto C de vértices de G que contém no mínimo um vértice de cada aresta de G.

A relação entre cobertura e conjunto independente é a seguinte. Dado um grafo G=(V,A), o conjunto independente maximal I associado a uma cobertura minimal C, é obtido através de I=V-C.

Para enumerar coberturas e conjuntos independentes será utilizado um método proposto por Maghout.

Page 15: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos – Cobertura e Conjunto Independente

Considere o dígrafo abaixo

Este método atua sobre em cima da matriz de adjacência de um grafo ou dígrafo sem loops. Portanto, se o dígrafo/grafo em questão possuir laços devemos omití-los em sua matriz de adjacência.

Para cada vértice devemos criar uma variável lógica e para cada aresta devemos criar a seguinte soma .

Page 16: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos – Cobertura e Conjunto Independente

Em seguida devemos calcular o seguinte produtório

Para o dígrafo ao lado, temos o seguinte produto

Devemos lembrar que a expressão x+xy, onde x e y são duas variáveis lógicas, pode ser simplificada da seguinte maneira

x+xy = x(1+y) = x

onde 1 corresponde ao valor true.

Page 17: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos – Cobertura e Conjunto Independente

Analisando a multiplicação dos últimos três termostemos,

Observamos que para x e ai, variáveis lógica, temos

Usando esta informação no produto inicial, temos

Page 18: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos – Cobertura e Conjunto Independente

Após este processo, encontramos 4 termos que representam 4 coberturas minimais.

As coberturas são obtidas a partir das varíaveis associadas a cada termo.

Logo, temos {b,c,d},{b,c,e},{b,a,d} e {a,e,d} como coberturas minimais.

Page 19: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos – Cobertura e Conjunto Independente

Tendo as coberturas minimais {b,c,d},{b,c,e},{b,a,d} e {a,e,d}, encontramos os conjuntos independentes a partir de cada cobertura da seguinte forma.

Para cada cobertura C, o conjunto independente maximal correspondente é V-C, i.e., o conjunto independente é formado por todos os vértices de G que não aparecem na cobertura

Logo, temos os seguintes conjuntos independentes.

{a,e},{a,d},{c,e},{b,c}

Page 20: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosDígrafos – Cobertura e Conjunto Independente

Calcule as coberturas minimais e os conjuntos independentes de vértices do dígrafo abaixo

Page 21: Teoria dos Grafos - INFprestes/Courses/Graph Theory/GrafosA8.pdf · Teoria dos Grafos Dígrafos Dado um dígrafo G, podemos definir uma função multívoca entre os vértices de G

Teoria dos GrafosTrabalho

Use o método de Mahgout para calcular os matching maximais do grafo abaixo. Note que você precisa da definição de grafo linha!