• Nenhum resultado encontrado

Melhores momentos AULA 19

N/A
N/A
Protected

Academic year: 2021

Share "Melhores momentos AULA 19"

Copied!
41
0
0

Texto

(1)

Melhores momentos

(2)

Subárvores

Uma subárvore de um grafo G é qualquer árvore T

que seja subgrafo de G Exemplo: 0 1 2 3 5 4 6

(3)

Subárvores

Uma subárvore de um grafo G é qualquer árvore T

que seja subgrafo de G

Exemplo: as aretas em vermelho formam uma subárvore 0 1 2 3 5 4 6

(4)

Árvores geradoras

Uma árvore geradora (= spanning tree) de um grafo é qualquer subárvore que contenha todos os vértices Exemplo: 0 1 2 3 5 4 6

(5)

Árvores geradoras

Uma árvore geradora (= spanning tree) de um grafo é qualquer subárvore que contenha todos os vértices

Exemplo: as aretas em vermelho formam uma árvore geradora 0 1 2 3 5 4 6

(6)

Árvores geradoras

Somente grafos conexos têm árvores geradoras Todo grafo conexo tem uma árvore geradora Exemplo: 0 1 2 3 5 4 6

(7)

Algoritmos que calculam árvores geradoras

É fácil calcular uma árvore geradora de um grafo conexo:

I a busca em profundidade e I a busca em largura

fazem isso.

Qualquer das duas buscas calcula uma arborescência

que contém um dos arcos de cada aresta de uma árvore geradora do grafo

(8)

Primeira propriedade da troca de arestas

Seja T uma árvore geradora de um grafo G

Para qualquer aresta e de G que não esteja em T,

T+e tem um único ciclo não-trivial Exemplo: T+e 0 1 2 3 5 4 6 e

(9)

Primeira propriedade da troca de arestas

Seja T uma árvore geradora de um grafo G

Para qualquer aresta t desse ciclo, T+e-t é uma

árvore geradora Exemplo: T+e-t 0 1 2 3 5 4 6 e t

(10)

Segunda propriedade da troca de arestas

Seja T uma árvore geradora de um grafo G.

Para qualquer aresta t de T e qualquer aresta e que atravesse o corte determinado por T-t, o grafo

T-t+e é uma árvore geradora Exemplo: T-t 0 1 2 3 5 4 6 t e

(11)

Segunda propriedade da troca de arestas

Seja T uma árvore geradora de um grafo G.

Para qualquer aresta t de T e qualquer aresta e que atravesse o corte determinado por T-t, o grafo

T-t+e é uma árvore geradora Exemplo: T-t+e 0 1 2 3 5 4 6 t e

(12)
(13)

Árvores geradoras de custo mínimo

(14)

Árvores geradoras mínimas

Uma árvore geradora mínima (= minimum

spanning tree), ou MST, de um grafo com custos nas arestas é qualquer árvore geradora do grafo que

tenha custo mínimo

Exemplo: um grafo com custos nas aretas

0 1 3 5 4 6 2 5 8 10 3 2 30 16 18 14 26 4 12

(15)

Árvores geradoras mínimas

Uma árvore geradora mínima (= minimum

spanning tree), ou MST, de um grafo com custos nas arestas é qualquer árvore geradora do grafo que

tenha custo mínimo

Exemplo: MST de custo 42 0 1 3 5 4 6 2 5 8 10 3 2 30 16 18 14 26 4 12

(16)

Problema MST

Problema: Encontrar uma MST de um grafo G com custos nas arestas

O problema tem solução se e somente se o grafo G é conexo Exemplo: MST de custo 42 0 1 3 5 4 6 2 5 8 10 3 2 30 16 18 14 26 4 12

(17)

Propriedade dos ciclos

Condição de Otimalidade: Se T é uma MST então toda aresta e fora de T tem custo máximo dentre as arestas do único ciclo não-trivial em T+e

Exemplo: MST de custo 42 0 1 3 5 4 6 2 5 8 10 3 2 30 16 18 14 26 4 12

(18)

Demonstração da recíproca

Seja T uma árvore geradora satisfazendo a condição de otimalidade.

Vamos mostrar que T é uma MST.

Seja T∗ uma MST tal que o número de arestas comuns entre T e T∗ seja máximo.

Se T = T∗ não há o que demonstrar.

Suponha que T 6= T∗ e seja e∗ uma aresta de custo mínimo dentre as arestas que estão em T∗ mas não

estão em T.

Seja e uma aresta qualquer que está no único ciclo em T+e∗ mas não está em T∗.

(19)

Demonstração da recíproca

Seja T uma árvore geradora satisfazendo a condição de otimalidade.

Vamos mostrar que T é uma MST.

Seja T∗ uma MST tal que o número de arestas comuns entre T e T∗ seja máximo.

Se T = T∗ não há o que demonstrar.

Suponha que T 6= T∗ e seja e∗ uma aresta de custo mínimo dentre as arestas que estão em T∗ mas não

estão em T.

Seja e uma aresta qualquer que está no único ciclo em T+e∗ mas não está em T∗.

(20)

Continuação

Logo, custo(e) ≤custo(e∗).

Seja f∗ uma aresta qualquer que está no único ciclo em T∗+e mas não está em T.

Como T∗ é uma MST então custo(f) ≤ custo(e). Se custo(f∗) =custo(e), então T∗−f∗+e é uma MST que contradiz a escolha de T∗. Logo,

custo(f∗) < custo(e). Finalmente, concluímos que

custo(f∗) < custo(e) ≤ custo(e∗) o que contradiz a nossa escolha de e∗.

(21)

Propriedade dos cortes

Condição de Otimalidade: Se T é uma MST então cada aresta t de T é uma aresta mínima dentre as que atravessam o corte determinado por T-t Exemplo: MST de custo 42 0 1 3 5 4 6 2 5 8 10 3 2 30 16 18 14 26 4 12

(22)

Algoritmo de Prim

(23)

Problema MST

Problema: Encontrar uma MST de um grafo G com custos nas arestas

O problema tem solução se e somente se o grafo G é conexo Exemplo: MST de custo 42 0 1 3 5 4 6 2 5 8 10 3 2 30 16 18 14 26 4 12

(24)

Propriedade dos cortes

Condição de Otimalidade: Se T é uma MST então cada aresta t de T é uma aresta mínima dentre as que atravessam o corte determinado por T-t Exemplo: MST de custo 42 0 1 3 5 4 6 2 5 8 10 3 2 30 16 18 14 26 4 12

(25)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(26)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(27)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(28)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(29)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(30)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(31)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(32)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(33)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(34)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(35)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(36)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(37)

Simulação

0

1

3

5

4

6

2

5

8

10

3

2

30

16

18

14

26

4

12

(38)

Franja

A franja (= fringe) de uma subárvore T é o

conjunto de todas as arestas que têm uma ponta em

T e outra ponta fora

Exemplo: As arestas em azul formam a franja de T

0 1 3 5 4 6 2 5 8 10 3 2 30 16 18 14 26 4 12

(39)

Algoritmo de Prim

O algoritmo de Prim é iterativo.

Cada iteração começa com uma subárvore T de G. No início da primeira iteração T é um árvore com apenas 1 vértice.

Cada iteração consiste em:

Caso 1: franja de T é vazia Devolva T e pare.

Caso 2: franja de T não é vazia

Seja e uma aresta de custo mínimo na franja de T

Comece nova iteração com T+e no papel de T

(40)

Relação invariante chave

No início de cada iteração vale que

existe uma MST que contém as arestas em T. Se a relação vale no início da última iteração então é evidente que, se o grafo é conexo, o algoritmo devolve uma MST.

Demonstração. Vamos mostrar que se a relação vale no início de uma iteração que não seja a última, então ela vale no m da iteração com T+e no papel de T.

A relação invariante certamente vale no início da primeira iteração.

(41)

Demonstração

Considere o início de uma iteração qualquer que não seja a última.

Seja e a aresta escolhida pela iteração no caso 2. Pela relação invariante existe uma MST T∗ que contém T.

Se e está em T∗, então não há o que demonstrar. Suponha, portanto, que e não está em T∗.

Seja e∗ uma aresta que está no único ciclo em T+e que está na franja de T.

Pela escolha de e temos que custo(e) ≤ custo(e∗). Portanto, T∗e+e é uma MST que contém T+e.

Referências

Documentos relacionados

Tendo em vista a projeção atual de caixa da Samarco, é provável que seus acionistas sejam chamados a cumprir suas obrigações do Acordo e, portanto, a Vale estima contribuir em torno

 O EBITDA ajustado de carvão diminuiu para -US$ 129 milhões no 3T15 contra -US$ 102 milhões no 2T15, principalmente como resultado de maiores custos de produção (US$ 35 milhões)

O aumento ocorreu principalmente devido a maiores volumes de venda de minério de ferro (US$ 872 milhões) e a preços mais altos de metais básicos (US$ 245 milhões), que

O EBITDA ajustado de minério de manganês e ferroligas totalizou US$ 6 milhões no 2T16, ficando US$ 5 milhões acima do US$ 1 milhão registrado no 1T16,

 O EBITDA ajustado de Minerais Ferrosos foi de R$ 8,101 bilhões no 3T16, ficando R$ 620 milhões acima dos R$ 7,481 bilhões alcançados no 2T16, principalmente como resultado dos

O aumento nos custos de pelotas deve-se, principalmente, a maiores custos de manutenção (US$ 9 milhões) e maiores custos de arrendamento (US$ 7 milhões). Despesas

 O EBITDA ajustado de Minerais Ferrosos foi de R$ 8,101 bilhões no 3T16, ficando R$ 620 milhões acima dos R$ 7,481 bilhões alcançados no 2T16, principalmente como resultado dos

O EBITDA ajustado de Minerais Ferrosos totalizou US$ 3,967 bilhões no 1T17, ficando 3,5% abaixo do registrado no 4T16, principalmente como resultado de menores volumes de vendas