• Nenhum resultado encontrado

Algoritmos para o problema da árvore de Steiner com coleta de prêmios

N/A
N/A
Protected

Academic year: 2021

Share "Algoritmos para o problema da árvore de Steiner com coleta de prêmios"

Copied!
87
0
0

Texto

(1)

Algoritmos para o problema da ´

arvore de

Steiner com coleta de prˆ

emios

Camila Mari Matsubara

Orientador: Prof. Dr. Jos´e Coelho de Pina Defesa de mestrado

Instituto de Matem´atica e Estat´ıstica Universidade de S˜ao Paulo

(2)

Sum´

ario

´

Arvore de Steiner

´

Arvore de Steiner com coleta de prˆemios

Algoritmo de ABHK

(3)

Sum´

ario

´

Arvore de Steiner

´

Arvore de Steiner com coleta de prˆemios

Algoritmo de ABHK

(4)

´

Arvore de Steiner

Dados: um grafo e um subconjunto R de v´ertices terminais.

(5)

´

Arvore de Steiner

Conecta os v´ertices terminais. Exemplo:

(6)

Custo da ´

arvore de Steiner

Dados custos nas arestas, o custo desta´arvore de Steiner ´e 7 + 4 + 2 + 4 + 3 + 5 + 3 = 28. 7 4 2 2 4 1 3 5 1 2 3

(7)

O problema da ´

arvore de Steiner

Dados:

GrafoG

Custosce≥ 0 nas arestas

SubconjuntoR de v´ertices terminais

Objetivo:

(8)

O problema da ´

arvore de Steiner

Exemplo: ´arvore com custo m´ınimo

4 + 2 + 2 + 1 + 3 + 1 + 2 = 15. 7 4 2 2 4 1 3 5 1 2 3

(9)

Caminho M´ınimo

Se |R| = 2 : problema docaminho m´ınimo.

7 4 2 2 4 1 3 5 1 2 3 : R

(10)

´

Arvore Geradora M´ınima

Se R = VG : problema da´arvore geradora m´ınima.

7 4 2 2 4 1 3 5 1 2 3 : R

(11)

Complexidade computacional

Fato: o problema da ´arvore de Steiner ´e NP-dif´ıcil.

Redu¸c˜ao polinomial do problema CEd(U, F )

(12)

Complexidade computacional

Exemplo de cobertura exata:

U = {1, 2, 3, 4, 5} e

F = {{1}, {1, 2, 3},{2, 3},{4, 5}, {1, 2, 4}, {1, 3, 5}}, a subfam´ılia {{1},{2, 3},{4, 5}} ´e umacobertura exata de U

(13)

Complexidade computacional

U = {1, 2, 3, 4, 5} e F = {{1, 2, 3}, {4, 5}, {1, 2, 4}, {1, 3, 5}, {2, 3}, {1}}, n0 1 2 3 4 5 {4, 5} {1, 3, 5} {1, 2, 4} {1, 2, 3} {2, 3} {1} 1 2 3 3 3 2

arestas com custo 5 t = |U|

(14)

Complexidade computacional

n0 1 2 3 4 5 {4, 5} {1, 3, 5} {1, 2, 4} {1, 2, 3} {2, 3} {1} 1 2 3 3 3 2

arestas com custo 5 t = |U|

(15)

Um pouco de hist´

oria...

Algoritmos de aproxima¸c˜ao:

2,000 Goemans e Williamson, 1995 1,833 Zelikovsky, 1993 1,746 Berman e Ramaiyer, 1992 1,693 Zelikovsky, 1997 1,667 Promel e Steger, 1997 1,644 Karpinski e Zelikovsky, 1997 1,598 Hougardy, 1999 1,550 Robin e Zelikovsky, 2005

(16)

Programa¸c˜

ao linear: Primal

minimize custo da ´arvore

sob as restri¸c˜oes corte de todoconjunto ativo

cont´em uma aresta

A

(17)

Programa¸c˜

ao linear: Dual

maximize largura das molduras dos conjuntos ativos

(18)

Algoritmo MinST-GW

1. Expans˜ao: enquanto h´a componente ativo

Incrementar molduras dos componentes ativos at´e uma aresta ficar justa

(19)

Execu¸c˜

ao: MinST-GW

(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)
(29)

Algoritmo MinST-GW

2. Poda:

(30)
(31)
(32)

Fator de aproxima¸c˜

ao

(33)

Sum´

ario

´

Arvore de Steiner

´

Arvore de Steiner com coleta de prˆemios

Algoritmo de ABHK

(34)

Custos e penalidades

Dados: um grafo, custos nas arestas e penalidadesnos v´ertices.

7 4 2 2 4 1 3 5 1 2 3 42 3 6 5 4 1 4 2 7 8

(35)

O problema da ´

arvore de Steiner com coleta de prˆ

emios

Dados:

Grafo G

Custos ce≥ 0 nas arestas

Penalidadesπv ≥ 0 nos v´ertices

Objetivo:

Encontrar uma ´arvoreT de G que minimizecustos das arestas + penalidades dos v´ertices fora

(36)

Custo da ´

arvore de Steiner com coleta de prˆ

emios

O custo deT ´e 4+4+3+1+2 +3+42+5+4= 68. 7 4 2 2 4 1 3 5 1 2 3 42 3 6 5 4 1 4 2 7 8

(37)

´

Arvore de Steiner com coleta de prˆ

emios

O custo deT0 ´e 4+4+3+1+2+2 +3+5+4= 28. 7 4 2 2 4 1 3 5 1 2 3 42 3 6 5 4 1 4 2 7 8

(38)

Vers˜

ao com raiz

O custo deTr ´e 7+4+2+3+1 +5+4+4+2= 32. 7 4 2 2 4 1 3 5 1 2 3 42 6 5 4 1 4 2 7 8 r

(39)

Complexidade computacional

O problema da ´arvore de Steiner com coleta de prˆemios tamb´em ´e

(40)

Um pouco de hist´

oria...

3 Bienstock, 1993

2−n−11 Goemans e Williamson, 1995

2 Johnson, Minkoff e Philips, 2000

2−2n Feofiloff, Fernandes, Ferreira e Pina, 2007

(41)

Programa¸c˜

ao linear: Primal

minimize custo da ´arvore +

penalidades dos v´ertices fora da ´arvore

A

(42)

Programa¸c˜

ao linear: Dual

maximize largura das molduras dos conjuntos ativos

sob as restri¸c˜oes molduras respeitam

(43)

Algoritmo PCST-GW

1. Expans˜ao: enquanto h´a pelo menos 2 componentes ativos

Incrementar molduras dos componentes ativos at´e: a. uma aresta ficar justa, ou

b. um componente ficar saturado, ou

c. o complemento de um componente ficar saturado

a. Adicionara aresta `a floresta e iniciar outra itera¸c˜ao, ou b. Desativaro componente e iniciar outra itera¸c˜ao (Z), ou c. Devolver a ´arvore induzida por este componente

(44)

Execu¸c˜

ao: PCST-GW

3 8 7 9 a b c d 9 e

(45)

Execu¸c˜

ao: aresta justa

3 8 7 9 a b c d 9 e

(46)

Execu¸c˜

ao: aresta justa

3 8 7 9 a b c d 9 e

(47)

Execu¸c˜

ao: componente saturado

3 8 7 9 a b c d 9 e

(48)

Execu¸c˜

ao: fim da expans˜

ao

3 8 9 a b d 7 9 e c

(49)

Algoritmo PCST-GW

2. Poda: enquanto h´a um conjuntoS que foi desativado (Z) tal que |δT(S)| = 1

(50)

Execu¸c˜

ao: fim da expans˜

ao

3 8 9 a b d 7 9 e c

(51)

Execu¸c˜

ao: ponte!

3 ponte! 8 9 a b d 7 9 e c

(52)

Execu¸c˜

ao: poda

3 8 9 a b d 7 9 e c

(53)

Algoritmo com raiz

(54)

Fator de aproxima¸c˜

ao

A ´arvoreT devolvida por R-PCST-GW satisfaz

(55)

Sum´

ario

´

Arvore de Steiner

´

Arvore de Steiner com coleta de prˆemios

Algoritmo de ABHK

(56)

ABHK - Vis˜

ao geral

O algoritmoR-PCST-GW lida bem quando ´arvore paga muita

penalidade

Estrat´egia

(57)

Primeira candidata

(58)

An´

alise da primeira candidata

(0)

TGW =R-PCST-GW(G , r , c,12π)

T =R-PCST-GW(G , r , c, π)

(59)

An´

alise da primeira candidata

(1) c(T ) + 2π(T ) ≤ 2 opt c(TGW) + 2 1 2π ! (TGW) ≤ 2opt1 2 c(TGW) + π(TGW) ≤ 2opt1 2

(60)

An´

alise da primeira candidata

(2) c(TGW) + π(TGW) ≤ 2opt1 2 ≤ 2 c(O) +1 2π(O) ! = 2c(O) + π(O) = 2opt− π(O)

(61)

An´

alise da primeira candidata

(3)

c(TGW) + π(TGW) ≤ 2opt− π(O)

δ= π(optO)

c(TGW) + π(TGW) 2optδopt

(62)

Segunda candidata: intui¸c˜

ao

Mas e seδ < ε?

Ideia ingˆenua:

Identificar v´erticesterminais, usandoR-PCST-GW

Utilizar um algoritmo para o problemaMinST como

(63)

Segunda candidata

Execute R-PCST-Expans˜ao(G , r , c,βπ) β > 1

Dβ =SS∈ZS

(64)

An´

alise da segunda candidata

(65)

An´

alise da segunda candidata

Demonstra-se que: c(TST) ≤ ρ(1 + (2β− 1)δ)opt π(Dβ) ≤ 1−δ β +δ ! opt

(66)

An´

alise da segunda candidata

c(TST) + π(TST) ρ(1 + (2β− 1)δ) + 1 −δ

β +δ

!

(67)

An´

alise da segunda candidata

Teorema

Seβ = 2−2ρ, ent˜ao o algoritmo R-PCST-ABHK tem

(68)

Fator de aproxima¸c˜

ao

Finalmente...

A ´arvoreT devolvida por R-PCST-ABHK satisfaz

(69)

Fatores de aproxima¸c˜

ao

MinST ρ Fator de R-PCST-ABHK Zelikovsky (1993) 1,83 1,9982

Robin e Zelikovsky (2005) 1,55 1,9839 Byrka et al.(2010) 1,39 1,9672

(70)

Curiosidade

AlgoritmoR-PCST-ABHK n˜ao tenta resolver o problema

(71)

Sum´

ario

´

Arvore de Steiner

´

Arvore de Steiner com coleta de prˆemios

Algoritmo de ABHK

(72)

R-PCST-ABHK × PCST-GW

Comparativo entre os fatores2−εe 2−2n:

MinST ρ 2−ε n >?

Zelikovsky (1993) 1,83 1,9982 1111 Robin e Zelikovsky (2005) 1,55 1,9839 124

Byrka et al.(2010) 1,39 1,9672 60 optMinST 1,00 1,8889 18

(73)

Resumindo...

Descri¸c˜ao e an´alise dos principais algoritmos de aproxima¸c˜ao:

MinST, PCST, R-PCST;

Padroniza¸c˜ao para conceitos, nota¸c˜ao e algoritmos; Descri¸c˜ao e an´alise do algoritmo R-PCST-ABHK.

(74)

Que interessante...

com ou sem raiz? prize-collecting;

(75)

Futuro

(2−ε)-aproxima¸c˜ao sem raiz; implementa¸c˜oes;

(76)

Referˆ

encias

1 Uma introdu¸ao sucinta a algoritmos de aproxima¸ao, 2001 M.Carvalho, M.Cerioli, R.Dahab, P.Feofiloff, C.Fernandes, C.Ferreira, K.Guimar˜aes, F.Miyazawa, J.Pina, J.Soares, Y.Wakabayashi

2 A general approximation technique for constrained forest problems, 1995

(77)

Referˆ

encias

Primal-dual approximation algorithms for the Prize-Collecting Steiner Tree Problem, 2007

P.Feofiloff, C. Fernandes, C.Ferreira, J.Pina

Improved approximation algorithms for Prize-Collecting Steiner Tree and TSP, 2011

(78)

Um exemplo ruim

Para k ≥ 2, um 2k-ciclo + um v´ertice:

1 1 1 1 1 1 1+z 1+z 1+z k = 3

(79)

Um exemplo ruim

Tα: custo = 2k − 2 1 1 1 1 1 1 1+z 1+z 1+z custo = 4

(80)

Um exemplo ruim

´

Arvore ´otima: custo = k(1 + z)

Fator de aproxima¸c˜ao → 2 quando k → ∞ e z → 0

1 1 1 1 1 1 1+z 1+z 1+z custo = 3+3z

(81)

An´

alise da segunda candidata T

ST

(82)

An´

alise da segunda candidata π(T

ST

)

´ E suficiente limitar π(Dβ). Vale que π(Dβ) ≤ 1 −δ β +δ ! opt

(83)

An´

alise da segunda candidata c(T

ST

)

Vale que

(84)

An´

alise da segunda candidata c(T

ST

)

detalhe

Hip´otese: Vale lema 5.5

Sejam T , y , LF e Z = R-PCST-Expans˜ao(G , r , c, π). D = ∪S∈ZS

I qualquer subconjunto de v´ertices de VG que cont´em r

A = D \ I = I \ D

Ent˜ao existe uma florestaK⊆ T que satisfaz:

1 VK cont´em todos os v´ertices em A;

2 Cada ´arvore na floresta K inclui exatamente um v´ertice de I ; 3 c(K) ≤ 2P

(85)

An´

alise da segunda candidata c(T

ST

)

fig 1 r A D D I I

O diagrama ilustra os subconjuntos I e D de VG. As arestas

(86)

An´

alise da segunda candidata c(T

ST

)

fig 2 r A D D I I

As arestas em linhas pontilhadas conectam v´ertices em I e as arestas s´olidas formam a ´arvore T .

(87)

An´

alise da segunda candidata c(T

ST

)

fig 3 r A D D I I r A D D I I (a) (b)

(a) Na primeira fase, as arestas de T que conectam dois v´ertices de I s˜ao removidas.

(b) Na segunda fase, os conjuntos pontilhados que foram

desativados durante a execu¸c˜ao de R-PCST-Expans˜ao e que n˜ao contˆem v´ertices de I s˜ao removidos.

Referências

Documentos relacionados

Nessa situação temos claramente a relação de tecnovívio apresentado por Dubatti (2012) operando, visto que nessa experiência ambos os atores tra- çam um diálogo que não se dá

Nela Ronaldo Fraga novamente evoca fruições e sentidos, por diversos ambientes e a exposição passa a ser intitulada Rio São Francisco navegado por Ronaldo Fraga: Cultura

O novo algoritmo para o problema UML seleciona a cada iterac¸˜ao uma estrela de menor custo amortizado, at´e que todos os objetos tenham sido classificados2. Os principais passos

é bastante restrita, visto que tanto suas duas entradas, quanto as galerias e condutos que interligam os pequenos salões são bastante estreitos, e a umidade na maioria dos salões

Porém estas atividades a serem excluídas devem ser criteriosamente analisadas, pois há atividades que não agregam valor diretamente ao cliente final, mas são

Esse tipo de análise só estaria correta nos casos onde o deslocamento do vídeo ocorresse da esquerda para a direita, caso o deslocamento ocorresse no sentido inverso,

2. Identifica as personagens do texto.. Indica o tempo da história. Indica o espaço da história. Classifica as palavras quanto ao número de sílabas. Copia do texto três

Em janeiro, o hemisfério sul recebe a radiação solar com menor inclinação e tem dias maiores que as noites, encontrando-se, assim, mais aquecido do que o hemisfério norte.. Em julho,