algoritmos em grafos n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Algoritmos em Grafos PowerPoint Presentation
Download Presentation
Algoritmos em Grafos

Loading in 2 Seconds...

play fullscreen
1 / 43

Algoritmos em Grafos - PowerPoint PPT Presentation


  • 75 Views
  • Uploaded on

Algoritmos em Grafos. Conceitos principais. Prof. André Renato 1º Semestre / 2012. O que é um grafo?. Um grafo G(V,E) é um conjunto finito não-vazio de V e um conjunto E de pares não ordenados de elementos distintos de V.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Algoritmos em Grafos' - leiko


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
algoritmos em grafos

Algoritmos em Grafos

Conceitos principais

Prof. André Renato

1º Semestre / 2012

o que um grafo
O que é um grafo?
  • Um grafo G(V,E) é um conjunto finito não-vazio de V e um conjunto E de pares não ordenados de elementos distintos de V.
  • Os elementos de V são denominados vértices e os elementos de E são denominados arestas.
  • A ordem de um grafo é a cardinalidade do conjunto de vértices V.
conceitos
Conceitos
  • Cada aresta e  E pode ser representada pelos vértices (v1,v2) que a formam.
  • Os vértices v1 e v2 são chamados de extremos da aresta e. Também são classificados como adjacentes.
  • A aresta e é dita incidente a v1 e v2.
  • Duas arestas que possuam um extremo em comum são ditas adjacentes.
conceitos1
Conceitos
  • Um subgrafo G2(V2,E2) de um grafo G1(V1,E1) é um grafo tal que V2  V1 e E2  E1.
  • Se além disso, G2 possuir toda aresta (v,w) de G1 de forma que ambos v e w estejam em G2, este é considerado induzido pelo conjunto de vértices V2.
conceitos2
Conceitos

1

2

1

2

3

3

4

5

4

1

2

3

4

conceitos3
Conceitos
  • Normalmente um grafo pode ser visualizado através da sua representação geométrica, na qual os vértices são representados por pontos (ou pequenos círculos) e as arestas por linhas que conectam estes pontos.
conceitos4
Conceitos
  • Como desenhar um grafo?
    • O único cuidado que devemos ter para representar corretamente um grafo é preservar a correta relação de arestas com os seus respectivos vértices incidentes.
conceitos5
Conceitos
  • Isomorfismo:
    • Dadas duas representações geométricas distintas, correspondem elas ao mesmo grafo?
    • É possível fazer coincidir os vértices de duas representações de modo a preservar as relações de adjacência?
    • Em caso afirmativo, os grafos são chamados de isomorfos entre si.
conceitos6
Conceitos

b

  • Isomorfismo:

a

1

4

f

c

2

3

8

7

d

6

5

e

h

g

j

p

i

k

l

o

n

m

conceitos7
Conceitos
  • Existem arestas cujos extremos sejam o mesmo vértice?
  • Sim; estas arestas são chamadas de laços (loopback).
  • Aplicações????

...

...

conceitos8
Conceitos
  • Pode existir grafos com mais de uma aresta incidente aos mesmos vértices?
  • Sim; neste caso, o grafo é chamado de multigrafo. As arestas são chamadas de paralelas.
  • Aplicações???
conceitos9
Conceitos
  • Uma aresta e, incidente a v1 e v2, provê uma relação reflexiva entre estas vértices. Ou seja, v1 está conectado a v2 da mesma forma que v2 está conectado a v1.
  • Uma aresta onde esta propriedade reflexiva não esteja preservada é pode ser chamada de arco e normalmente é representada por uma seta.

v1

v2

conceitos10
Conceitos
  • Neste caso a relação de v1 para v2 é distinta da relação de v2 para v1.
  • Grafos que possuam arcos são chamados de grafos direcionados (digrafos); os demais, de grafos não-direcioanados.
  • Uma aresta e = (v1,v2) pode ser entendida como um par de arcos (v1,v2) e (v2,v1).

v1

v2

v1

v2

conceitos11
Conceitos
  • Grau de um vértice v:
    • é a quantidade total de arestas incidentes a v;
    • Em grafos direcionados, existem o grau de entrada e o grau de saída;
    • Grau de entrada: é a quantidade de arcos que chegam a v;
    • Grau de saída: é a quantidade de arcos que partem de v;
conceitos12
Conceitos
  • Grau de um vértice v:
    • um vértice com grau de entrada zero é chamado de fonte;
    • um vértice com grau de saída zero é chamado de sumidouro;
conceitos13
Conceitos
  • Vértices que possuam grau igual a zero, são chamados de desconexos.
  • G será totalmente desconexo se não possuir arestas.
  • Um grafo será considerado conexo se e somente se for possível sair de v e chegar a w, para todo par de vértices (v,w) do grafo. Será desconexo, caso contrário.
  • O grafo será fortemente conexo, se for possível sair de v, chegar a w e voltar a v, para todo par de vértices (v,w) do grafo.
conceitos14
Conceitos
  • Verificar!!!!
conceitos15
Conceitos
  • Qual a quantidade mínima de arestas um grafo deve ter para não ser desconexo?
  • Qual a quantidade máxima de arestas um grafo pode ter?
  • Considerar |V| = n e |E| = m.
conceitos16
Conceitos
  • Grafos regulares são aqueles em que todos os vértices possuem o mesmo grau.
conceitos17
Conceitos
  • Seja G(V,E) um grafo conexo. Um corte de vértices de G é um subconjunto de vértices de G que, se forem removidos, tornam G desconexo.
  • É possível fazer uma analogia para um corte de arestas.
  • Conectividade de vértices e conectividade de arestas é a cardinalidade dos respectivos menores subconjuntos.
conceitos18
Conceitos

1

1

1

3

4

3

4

2

2

2

5

5

5

6

6

6

8

8

8

7

7

7

  • Seja um inteiro k positivo, diz-se que G é k-conexo em vértices (arestas) quando sua conectividade de vértices (arestas) é ≥ k.
  • O primeiro grafo é 1-conexo em vértices, 1- e 2-conexo em arestas.
  • 2-conexo -> biconexo
conceitos19
Conceitos
  • Uma articulação é um vértice v que, se removido, torna o grafo desconexo.
  • Uma ponte é uma aresta que causa o mesmo efeito.

Componentes biconexos

(blocos)

conceitos20
Conceitos
  • Grafos que possuam arestas entre todos os pares de vértices de V são chamados de grafos completos.
  • Um grafo completo pode ser representado pela notação Kn, onde n é a ordem do grafo.

K5

conceitos21
Conceitos
  • O complemento de um grafo G(V,E) é em grafo G que possuam todos os vértices de V e todas as arestas que faltam a E para que G seja completo.
conceitos22
Conceitos
  • Clique é um subgrafo G2 de G1, tal que G2 seja completo.
  • Clique maximal é o subgrafo G2 de maior ordem possível. Ou seja, é o maior subgrafo completo de G1.
conceitos23
Conceitos
  • Em um grafo G(V,E), uma partição é a divisão do conjunto V em dois ou mais subconjuntos com interseção vazia. A união desses subcojuntos deve resultar em V.
  • Além disso, as arestas de E só podem conectar vértices de subcojuntos distintos.
  • O caso mais usual é de grafos bi-partidos (bipartite).
conceitos25
Conceitos
  • Seja um grafo G(V,E) e um conjunto de cores C={ci}, uma coloração de G é uma atribuição de cores aos vértices de V, sem que vértices adjacentes tenham a mesma cor.
conceitos26
Conceitos
  • Uma k-coloração de G é uma coloração que utiliza k cores. Diz-se que G é k-colorível.
  • O número cromático X(G) de um grafo G é o menor número de cores k, para o qual existe uma k-coloração.
conceitos27
Conceitos
  • Seja G um grafo e R sua representação geométrica. R é dita plana quando não houver cruzamento de linhas.
  • Um grafo que possuir pelo menos uma representação plana é chamado de planar.
conceitos28
Conceitos
  • G é imersível em uma superfície S se possuir uma representação R desenhada em S, tal que duas linhas não se cruzem.
  • Neste caso, as linhas dividem a superfície em faces. Existem sempre uma face não limitada chamada de externa.

f3

f4

f2

f1

conceitos29
Conceitos
  • Fórmula de Euler para poliedros:

n + f = m +2

  • Cada face é limitada por, no mínimo 3 arestas. Cada aresta pertence a exatamente duas faces. Logo, 2m ≥ 3f.
  • Aplicando,

m ≤ 3n -6, para que um grafo seja planar.

conceitos30
Conceitos
  • Se a um grafo G(V,E) for associada uma função f:E=>R, diz-se que o grafo é ponderado em arestas.
  • Em outras palavras, cada aresta do grafo deve estar associada a um número real.

2

3

-0.5

-1

conceitos31
Conceitos
  • O valor associado a cada aresta é chamado de peso da aresta.
  • Uma aresta pode ter peso zero, dependendo do problema relacionado.
  • Um grafo também pode ter pesos associados aos vértices. Neste caso, é denominado ponderado em vértices.
conceitos32
Conceitos
  • Grafos que não possuam pesos, são chamado de não-ponderados.
  • Dependendo do problema a ser estudado, valores específicos (pesos) podem ser dados a vértices e arestas.
  • Outro atributos também podem ser associados a estes elementos.
conceitos33
Conceitos
  • Sejam G1(V,E1) e G2(V,E2) dois grafos que compartilham o mesmo conjunto de vértices, tal que E1 E2.
  • Um grafo G(V,E) é considerado grafo-sanduíche de (G1,G2) se E contiver E1 e estiver contido em E2.
conceitos34
Conceitos

G1

G2

G

G

G

G

G

G

G

aplica es
Aplicações
  • Roteamento

2

1

3

3

2

2

3

4

1

aplica es1
Aplicações
  • Escalonamento
aplica es2
Aplicações
  • Redes

10

2

3

2

2

4

3

2

1

3

5

3

1

2

exerc cios
Exercícios
  • Identificar:
  • Ordem do grafo
  • Graus dos vértices
  • Dois isomorfos
  • Subgrafo induzido por {1,3,4,5,8}
  • Dois subgrafos não-induzidos por {2,4,6,7,8}
  • O grafo é conexo, fortemente conexo ou desconexo?

3

2

4

8

1

5

6

9

7

exerc cios1
Exercícios
  • Identificar:
  • Conectividade de vértices e arestas
  • Pontes e articulações
  • Dois blocos
  • Cliques de tamanho 3 ou maior
  • K-coloração (a menor possível)
  • Um subgrafo planar de ordem 5 ou maior
  • Complemento do grafo

3

2

4

8

5

1

6

9

7

exerc cios2
Exercícios
  • Desenhar todos os grafos sanduíche:

3

3

2

4

2

4

5

5

1

1

6

6

8

8

7

7