Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Laboratório de Otimizaçãoe Combinatória
O problema da árvore geradora com muitas folhas
Dissertação de MestradoAluno: Márcio Félix Reis
Orientador: Prof. Dr. Orlando Lee
8 de maio de 2014
Este projeto teve apoio da CAPES.
O problema da árvore geradora com muitas folhas
Agenda
1 Introdução
2 Preliminares
3 Algoritmos aproximados
4 Algoritmos aproximados para grafos cúbicos
5 Algoritmo exato
6 Experimentos e resultados
7 Conclusões
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 2 / 63
O problema da árvore geradora com muitas folhas
Introdução
Agenda
1 Introdução
2 Preliminares
3 Algoritmos aproximados
4 Algoritmos aproximados para grafos cúbicos
5 Algoritmo exato
6 Experimentos e resultados
7 Conclusões
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 3 / 63
O problema da árvore geradora com muitas folhas
Introdução
Problema da árvore geradora com muitas folhas(PAGMF)
Problema: Dado um grafo, encontrar uma árvore geradora de comnúmero máximo de folhas.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 4 / 63
O problema da árvore geradora com muitas folhas
Introdução
Problema da árvore geradora com muitas folhas(PAGMF)
Problema: Dado um grafo, encontrar uma árvore geradora de comnúmero máximo de folhas.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 4 / 63
O problema da árvore geradora com muitas folhas
Introdução
Aplicações e objetivo
Aplicações:I Redes de computadores.I Sistemas distribuídos.I Layout de circuitos.
NP-difícil [Garey e Johnson, 1979].
Objetivo:I Estudar algoritmos de aproximação para o PAGMF e um caso
particular.I Verificar o comportamento na prática dos algoritmos.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 5 / 63
O problema da árvore geradora com muitas folhas
Preliminares
Agenda
1 Introdução
2 Preliminares
3 Algoritmos aproximados
4 Algoritmos aproximados para grafos cúbicos
5 Algoritmo exato
6 Experimentos e resultados
7 Conclusões
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 6 / 63
O problema da árvore geradora com muitas folhas
Preliminares
Algoritmos de aproximação
Seja A um algoritmo e I uma instância viável,val(A(I)) é o valor de uma solução viável devolvida por A,
opt(I) é o valor da solução ótima,
A é um algoritmo de aproximação com fator α seval(A(I)) ≤ αopt(I),∀ I.
α é um valor em função do tamanho da entrada.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 7 / 63
opt(I) val(A(I)) αopt(I)
O problema da árvore geradora com muitas folhas
Preliminares
Algoritmos de aproximação
Seja A um algoritmo e I uma instância viável,val(A(I)) é o valor de uma solução viável devolvida por A,
opt(I) é o valor da solução ótima,
A é um algoritmo de aproximação com fator α seval(A(I)) ≤ αopt(I),∀ I.
α é um valor em função do tamanho da entrada.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 7 / 63
opt(I) val(A(I)) αopt(I)
O problema da árvore geradora com muitas folhas
Preliminares
Esquema de aproximação
É um algoritmo que recebe um parâmetro ε positivo e uma instância Ie devolve uma solução viável A(ε, I) tal que
val(A(ε, I)) ≤ (1 + ε)opt(I), ∀ I.
Esquema de aproximação polinomial .
Geralmente é o que queremos.
PAGMF é APX-difícil [Galbiati, Maffioli e Morzenti, 1994].
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 8 / 63
opt(I) val(A(ε, I)) (1 + ε)opt(I)
O problema da árvore geradora com muitas folhas
Preliminares
Esquema de aproximação
É um algoritmo que recebe um parâmetro ε positivo e uma instância Ie devolve uma solução viável A(ε, I) tal que
val(A(ε, I)) ≤ (1 + ε)opt(I), ∀ I.
Esquema de aproximação polinomial .
Geralmente é o que queremos.
PAGMF é APX-difícil [Galbiati, Maffioli e Morzenti, 1994].
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 8 / 63
opt(I) val(A(ε, I)) (1 + ε)opt(I)
O problema da árvore geradora com muitas folhas
Preliminares
Esquema de aproximação
É um algoritmo que recebe um parâmetro ε positivo e uma instância Ie devolve uma solução viável A(ε, I) tal que
val(A(ε, I)) ≤ (1 + ε)opt(I), ∀ I.
Esquema de aproximação polinomial .
Geralmente é o que queremos.
PAGMF é APX-difícil [Galbiati, Maffioli e Morzenti, 1994].
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 8 / 63
opt(I) val(A(ε, I)) (1 + ε)opt(I)
O problema da árvore geradora com muitas folhas
Preliminares
Esquema de aproximação
É um algoritmo que recebe um parâmetro ε positivo e uma instância Ie devolve uma solução viável A(ε, I) tal que
val(A(ε, I)) ≤ (1 + ε)opt(I), ∀ I.
Esquema de aproximação polinomial .
Geralmente é o que queremos.
PAGMF é APX-difícil [Galbiati, Maffioli e Morzenti, 1994].
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 8 / 63
opt(I) val(A(ε, I)) (1 + ε)opt(I)
O problema da árvore geradora com muitas folhas
Preliminares
Algoritmos de α-aproximação
[Lu e Ravi, 1996]:I α = 3, O(n7).
I α = 5, O(n4).
[Lu e Ravi, 1998]:I α = 3.
I Quase linear.
[Solis-Oba, 1998]:I α = 2.
I Algoritmo guloso.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 9 / 63
O problema da árvore geradora com muitas folhas
Preliminares
Algoritmos de α-aproximação para casos particulares
Grafos cúbicosNP-difícil [Lemke, 1988].
APX-difícil [Bonsma, 2011].
α = 7/4 [Lorys e Zwozniak, 2002].
α = 5/3 [Correa, Fernandes, Matamala e Wakabayashi, 2007].
α = 3/2 [Bonsma e Zickfeld, 2008].
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 10 / 63
O problema da árvore geradora com muitas folhas
Preliminares
Grafos bipartidosProblema: dados um grafo bipartido e X,Y conjuntos de umapartição, encontrar uma árvore geradora, tal que o número defolhas em X é máximo.
NP-difícil [Li e Toulouse, 2006].
Grafos k-regulares bipartidosNP-difícil para k ≥ 4 [Fusco e Monti, 2007].
Algoritmo guloso, α = 2− 2(k−1)2 [Fusco e Monti, 2007].
I Para k = 3, α = 3/2.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 11 / 63
O problema da árvore geradora com muitas folhas
Preliminares
Grafos bipartidosProblema: dados um grafo bipartido e X,Y conjuntos de umapartição, encontrar uma árvore geradora, tal que o número defolhas em X é máximo.
NP-difícil [Li e Toulouse, 2006].Grafos k-regulares bipartidos
NP-difícil para k ≥ 4 [Fusco e Monti, 2007].
Algoritmo guloso, α = 2− 2(k−1)2 [Fusco e Monti, 2007].
I Para k = 3, α = 3/2.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 11 / 63
O problema da árvore geradora com muitas folhas
Preliminares
Uma variante
Grafos orientadosO que se procura é uma arborescência geradora enraizada em rcom número máximo de folhas.
I r é um vértice na arborescência com grau de entrada igual a 0.
I folha é um vértice na arborescência com grau de saída igual a 0.
α = O(√OPT ) [Drescher e Vetta, 2010].
α = 92 [Daligault e Thomassé, 2009].
Grafos orientados acíclicosα = 4 e α = 2 [Schwartges, Spoerhase e Wolff, 2012].
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 12 / 63
O problema da árvore geradora com muitas folhas
Preliminares
Uma variante
Grafos orientadosO que se procura é uma arborescência geradora enraizada em rcom número máximo de folhas.
I r é um vértice na arborescência com grau de entrada igual a 0.
I folha é um vértice na arborescência com grau de saída igual a 0.
α = O(√OPT ) [Drescher e Vetta, 2010].
α = 92 [Daligault e Thomassé, 2009].Grafos orientados acíclicos
α = 4 e α = 2 [Schwartges, Spoerhase e Wolff, 2012].
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 12 / 63
O problema da árvore geradora com muitas folhas
Preliminares
Problema do Conjunto Conexo Dominante Mínimo(PCCDM)
Sejam G um grafo conexo e S um conjunto de vértices de G.
S é dominante se ∀ v 6∈ S ⇒ ∃ uv ∈ E(G), u ∈ S.
S é conexo se induz um subgrafo conexo.
ProblemaDado um grafo, encontrar um conjunto conexo dominante decardinalidade mínima.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 13 / 63
O problema da árvore geradora com muitas folhas
Preliminares
Problema do Conjunto Conexo Dominante Mínimo(PCCDM)
Sejam G um grafo conexo e S um conjunto de vértices de G.
S é dominante se ∀ v 6∈ S ⇒ ∃ uv ∈ E(G), u ∈ S.
S é conexo se induz um subgrafo conexo.
ProblemaDado um grafo, encontrar um conjunto conexo dominante decardinalidade mínima.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 13 / 63
O problema da árvore geradora com muitas folhas
Preliminares
Exemplo
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 14 / 63
O problema da árvore geradora com muitas folhas
Preliminares
RelaçãoSolução do PCCDM e solução do PAGMF
Acredita-se que não existe algoritmo de aproximação com fatorconstante para o PCCDM [Guha e Khuller, 1998].
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 15 / 63
O problema da árvore geradora com muitas folhas
Preliminares
RelaçãoSolução do PCCDM e solução do PAGMF
Acredita-se que não existe algoritmo de aproximação com fatorconstante para o PCCDM [Guha e Khuller, 1998].
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 15 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Agenda
1 Introdução
2 Preliminares
3 Algoritmos aproximados
4 Algoritmos aproximados para grafos cúbicos
5 Algoritmo exato
6 Experimentos e resultados
7 Conclusões
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 16 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo 5-aproximado [Lu e Ravi, 1996]
Exemplo:
2-mudanças.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 17 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo 5-aproximado [Lu e Ravi, 1996]
Exemplo:
2-mudanças.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 17 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo 5-aproximado [Lu e Ravi, 1996]
Exemplo:
2-mudanças.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 17 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo 5-aproximado [Lu e Ravi, 1996]
Exemplo:
2-mudanças.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 17 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo 5-aproximado [Lu e Ravi, 1996]
Exemplo:
2-mudanças.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 17 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo 3-aproximado [Lu e Ravi, 1998]
Seja T uma árvore de G. Dizemos que T é frondosa se V̄3(T ) énão vazio e todo vértice em V2(T ) é adjacente a exatamente doisvértices de V̄3(T ).
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 18 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo 3-aproximado [Lu e Ravi, 1998]
Seja T uma árvore de G. Dizemos que T é frondosa se V̄3(T ) énão vazio e todo vértice em V2(T ) é adjacente a exatamente doisvértices de V̄3(T ).
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 18 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Definições
Uma floresta F de G é frondosa se é composta por árvoresfrondosas disjuntas de G.
F é frondosa maximal se não é subgrafo de outra florestafrondosa de G.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 19 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo
Exemplo:
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 20 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo
Exemplo:
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 21 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo
Exemplo:
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 22 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo
Exemplo:
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 23 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo
Exemplo:
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 24 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo
Exemplo:
T0
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 25 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo
Exemplo:
T0
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 26 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo
Exemplo:
T0
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 27 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo
Exemplo:
T0 T1
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 28 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Fator de aproximação
Lema 3.1
Seja T uma árvore frondosa de G. Então |V (T )| ≤ 3|V1(T )| − 5.
depoisantes
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 29 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Fator de aproximação
Lema 3.1
Seja T uma árvore frondosa de G. Então |V (T )| ≤ 3|V1(T )| − 5.
depoisantes
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 29 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Fator de aproximação
Lema 3.2
Seja F uma floresta frondosa maximal de G que é composta por kárvores frondosas disjuntas T1, . . . , Tk de G. Então
|V1(T ′)| ≤ |V (F )| − k + 1
para qualquer árvore geradora T ′ de G.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 30 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Fator de aproximaçãoLema 3.3
Seja F uma floresta de G que tem k árvores não unitárias disjuntas.Seja T uma árvore geradora de G tal que F é um subgrafo de T .Então |V1(T )| ≥ |V1(F )| − 2(k − 1).
x1
x2
x3 x4
T1 T2 T3
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 31 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Fator de aproximaçãoLema 3.3
Seja F uma floresta de G que tem k árvores não unitárias disjuntas.Seja T uma árvore geradora de G tal que F é um subgrafo de T .Então |V1(T )| ≥ |V1(F )| − 2(k − 1).
x1
x2
x3 x4
T1 T2 T3
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 31 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Fator de aproximação|V (T )| ≤ 3|V1(T )| − 5 (lema 3.1)Pelo lema 3.1 sabemos que
|V (F )| =k∑
i=1|V (Ti)|
≤ 3|V1(F )| − 5k.
|V1(T ′)| ≤ |V (F )| − k + 1 (lema 3.2)|V1(T )| ≥ |V1(F )| − 2(k − 1) (lema 3.3)Assim,
|V1(T ′)| ≤ |V (F )| − k + 1≤ 3|V1(F )| − 5k − k + 1≤ 3(|V1(T )|+ 2(k − 1))− 6k + 1= 3|V1(T )| − 5≤ 3|V1(T )|.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 32 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Fator de aproximação|V (T )| ≤ 3|V1(T )| − 5 (lema 3.1)Pelo lema 3.1 sabemos que
|V (F )| =k∑
i=1|V (Ti)|
≤ 3|V1(F )| − 5k.
|V1(T ′)| ≤ |V (F )| − k + 1 (lema 3.2)|V1(T )| ≥ |V1(F )| − 2(k − 1) (lema 3.3)
Assim,|V1(T ′)| ≤ |V (F )| − k + 1
≤ 3|V1(F )| − 5k − k + 1≤ 3(|V1(T )|+ 2(k − 1))− 6k + 1= 3|V1(T )| − 5≤ 3|V1(T )|.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 32 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Fator de aproximação|V (T )| ≤ 3|V1(T )| − 5 (lema 3.1)Pelo lema 3.1 sabemos que
|V (F )| =k∑
i=1|V (Ti)|
≤ 3|V1(F )| − 5k.
|V1(T ′)| ≤ |V (F )| − k + 1 (lema 3.2)|V1(T )| ≥ |V1(F )| − 2(k − 1) (lema 3.3)Assim,
|V1(T ′)| ≤ |V (F )| − k + 1≤ 3|V1(F )| − 5k − k + 1≤ 3(|V1(T )|+ 2(k − 1))− 6k + 1= 3|V1(T )| − 5≤ 3|V1(T )|.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 32 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo 2-aproximado [Solis-Oba, 1998]
Regras
Ti
...
x
Ti
x
...
y
Ti
x
y
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 33 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados
Algoritmo 2-aproximado [Solis-Oba, 1998]
Regras
Ti
...
x
Ti
x
...
y
Ti
x
y
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 33 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados para grafos cúbicos
Agenda
1 Introdução
2 Preliminares
3 Algoritmos aproximados
4 Algoritmos aproximados para grafos cúbicos
5 Algoritmo exato
6 Experimentos e resultados
7 Conclusões
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 34 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados para grafos cúbicos
Algoritmo 7/4-aproximado [Lorys e Zwozniak, 2002]
Regras
Ti
x
y
u1 u2
Ti
x
u1 u2
Ti
x
z
u1 u2
y
a) b) c)
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 35 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados para grafos cúbicos
Algoritmo 3/2-aproximado [Bonsma e Zickfeld, 2008]
1)
2)
3) Conjunto conexo dominante minimal|V1(T ∗)| ≤ (n− x(G) + 2)/2|V1(T )| ≥ (n− x(G) + 4)/3
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 36 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados para grafos cúbicos
Algoritmo 3/2-aproximado [Bonsma e Zickfeld, 2008]
1)
2)
3) Conjunto conexo dominante minimal|V1(T ∗)| ≤ (n− x(G) + 2)/2|V1(T )| ≥ (n− x(G) + 4)/3
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 36 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados para grafos cúbicos
Algoritmo 3/2-aproximado [Bonsma e Zickfeld, 2008]
1)
2)
3) Conjunto conexo dominante minimal
|V1(T ∗)| ≤ (n− x(G) + 2)/2|V1(T )| ≥ (n− x(G) + 4)/3
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 36 / 63
O problema da árvore geradora com muitas folhas
Algoritmos aproximados para grafos cúbicos
Algoritmo 3/2-aproximado [Bonsma e Zickfeld, 2008]
1)
2)
3) Conjunto conexo dominante minimal|V1(T ∗)| ≤ (n− x(G) + 2)/2|V1(T )| ≥ (n− x(G) + 4)/3
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 36 / 63
O problema da árvore geradora com muitas folhas
Algoritmo exato
Agenda
1 Introdução
2 Preliminares
3 Algoritmos aproximados
4 Algoritmos aproximados para grafos cúbicos
5 Algoritmo exato
6 Experimentos e resultados
7 Conclusões
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 37 / 63
O problema da árvore geradora com muitas folhas
Algoritmo exato
Algoritmos exatos
[Fujie, 2003]:I Branch and bound.
I até 100 vértices.
[Lucena, Maculan e Simonetti, 2010]:I 3 diferentes algoritmos:
F Fujie melhorado.F reformula para arborescência de Steiner.F reformula para grafos orientados.
I até 200 vértices.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 38 / 63
O problema da árvore geradora com muitas folhas
Algoritmo exato
Algoritmo exato [Lucena, Maculan e Simonetti, 2010]Sejam G um grafo e r um vértice arbitrário.Constroi um grafo orientado D, obtido de G.
r
Problema da arborescência geradora com muitas folhasDados D e r, encontrar uma arborescência geradora enraizada em rcom número máximo de folhas.
Solução do PAGMF.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 39 / 63
O problema da árvore geradora com muitas folhas
Algoritmo exato
Algoritmo exato [Lucena, Maculan e Simonetti, 2010]Sejam G um grafo e r um vértice arbitrário.Constroi um grafo orientado D, obtido de G.
r
Problema da arborescência geradora com muitas folhasDados D e r, encontrar uma arborescência geradora enraizada em rcom número máximo de folhas.
Solução do PAGMF.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 39 / 63
O problema da árvore geradora com muitas folhas
Algoritmo exato
Formulaçãomax
∑i∈V
zi (1)
sujeito a:∑
a∈δ−(i)
ya = 1, i ∈ V \{r}, (2)
∑a∈A(S)
ya ≤ |S| − 1, S ⊂ V, |S| ≥ 2, (3)
(P) ∑a∈δ+(i)
ya + (ni − 1)zi ≤ (ni − 1), i ∈ V \{r}, (4)
∑a∈δ+(r)
ya + (nr − 1)zr ≤ nr, (5)
ya ∈ {0, 1}, a ∈ A, (6)
zi ∈ {0, 1}, i ∈ V. (7)
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 40 / 63
O problema da árvore geradora com muitas folhas
Algoritmo exato
Fortalecendo o modelo
Com exceção de r as folhas não podem ter arestas de saída.
ya + zi ≤ 1, a = (i, j) ∈ A, i ∈ V \{r} (8)
As seguintes desigualdades podem ser vistas como umageneralização de (4).∑a∈F
ya+∑
a=(j,i)∈A:(i,j)∈F
ya+(|F |−1)zi ≤ |F |, i ∈ V, F ⊆ δ+(i)∪{(r, i)}, |F | ≥ 2 (9)
Testes mostraram que a inclusão de (8) e (9) tende a fortalecer omodelo.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 41 / 63
O problema da árvore geradora com muitas folhas
Algoritmo exato
Fortalecendo o modelo
Com exceção de r as folhas não podem ter arestas de saída.
ya + zi ≤ 1, a = (i, j) ∈ A, i ∈ V \{r} (8)
As seguintes desigualdades podem ser vistas como umageneralização de (4).∑a∈F
ya+∑
a=(j,i)∈A:(i,j)∈F
ya+(|F |−1)zi ≤ |F |, i ∈ V, F ⊆ δ+(i)∪{(r, i)}, |F | ≥ 2 (9)
Testes mostraram que a inclusão de (8) e (9) tende a fortalecer omodelo.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 41 / 63
O problema da árvore geradora com muitas folhas
Algoritmo exato
Fortalecendo o modelo
Com exceção de r as folhas não podem ter arestas de saída.
ya + zi ≤ 1, a = (i, j) ∈ A, i ∈ V \{r} (8)
As seguintes desigualdades podem ser vistas como umageneralização de (4).∑a∈F
ya+∑
a=(j,i)∈A:(i,j)∈F
ya+(|F |−1)zi ≤ |F |, i ∈ V, F ⊆ δ+(i)∪{(r, i)}, |F | ≥ 2 (9)
Testes mostraram que a inclusão de (8) e (9) tende a fortalecer omodelo.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 41 / 63
O problema da árvore geradora com muitas folhas
Algoritmo exato
Separação
Número exponencial de desigualdades em (3) e (9).
Separação de (3):I
∑a∈A(S) ya ≤ |S| − 1, S ⊂ V, |S| ≥ 2
I se inteiro BFS.I se fracionário PL ou corte mínimo.
Separação de (9):I ∑
a∈F ya +∑
a=(j,i)∈A:(i,j)∈F ya + (|F | − 1)zi ≤ |F |, i ∈ V, F ⊆ δ+(i)∪ {(r, i)}, |F | ≥ 2
I ordenação e verificação.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 42 / 63
O problema da árvore geradora com muitas folhas
Algoritmo exato
Implementação
Critérios de parada:I tempo de execução máximo de 1200s.I diferença da melhor solução inteira e limitante < 1− ε.
Escolha de r.
Solução inteira inicial.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 43 / 63
O problema da árvore geradora com muitas folhas
Algoritmo exato
Algoritmo guloso ingênuo
Exemplo:
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 44 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Agenda
1 Introdução
2 Preliminares
3 Algoritmos aproximados
4 Algoritmos aproximados para grafos cúbicos
5 Algoritmo exato
6 Experimentos e resultados
7 Conclusões
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 45 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Experimentos
Implementações em linguagem C++.Cplex v. 12.4 para modelo de programação linear.Máquina com processador Intel Core i5 com 2,67 GHz, 4GB dememória RAM, SO Ubuntu 10.04 32 bits.Instâncias testadas:
I Caso geralI Grafos cúbicosI Grafos cúbicos com mín. de triângulos e diamantes (TeD)
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 46 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Instâncias caso geral41 instâncias30 a 200 vértices5 a 70% densidadefornecidas pelo Prof. Luigi [Lucena, Maculan e Simonetti, 2010]
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 47 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Instâncias caso geral41 instâncias30 a 200 vértices5 a 70% densidadefornecidas pelo Prof. Luigi [Lucena, Maculan e Simonetti, 2010]
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 47 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Instâncias grafos cúbicos
42 instâncias30 a 200 vértices
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 48 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Instâncias grafos cúbicos
42 instâncias30 a 200 vértices
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 48 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Instâncias grafos cúbicos TeD
42 instâncias30 a 200 vérticesaproximadamente 50% dos vértices pertencem a triângulos oudiamantes
a) b)
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 49 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Resultados
Algoritmo média máximo #opt5-aprox. 1,09 1,19 13-aprox. 1,10 1,30 12-aprox. 1,08 1,23 3guloso 1, 02 1, 08 16
média, máximo: LPval(A) .
#opt: no. de vezes que foi solução ótima.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 50 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Resultados para o caso geral|V | d LP LD Tempo (s) 5-aprox. 3-aprox. 2-aprox. guloso
30
10 15,92 15 0,03 15 12 15 1520 23,88 23 0,22 21 20 20 2330 26,47 26 0,40 24 23 23 2550 27,90 27 0,42 25 25 25 2770 28,79 28 0,02 26 28 28 28
50
5 19,80 19 0,08 17 18 19 1910 38,44 38 11,77 35 33 33 3620 43,98 43 1,96 41 39 39 4330 45,99 45 2,23 38 41 42 4550 47,94 47 1,97 44 45 45 4770 48,69 48 0,05 45 46 46 48
70
5 43,99 43 69,62 40 36 37 4010 57,99 57 3,08 50 47 47 5620 63,99 63 16,48 53 55 55 6230 65,99 65 11,45 60 60 60 6550 67,99 67 10,86 62 64 64 6770 68,51 68 274,30 66 66 66 67
100
5 77,49 75 - 66 62 65 7210 87,99 87 12,64 78 78 78 8720 92,99 92 144,68 85 86 86 9230 95,51 94 - 87 89 89 9350 96,99 96 477,83 93 94 94 9670 97,98 97 177,26 94 95 95 97
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 51 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Resultados para o caso geral
|V | d LP LD Tempo (s) 5-aprox. 3-aprox. 2-aprox. guloso
120
5 96,54 92 - 84 74 78 9110 107,91 106 - 96 96 97 10520 113,22 112 - 100 102 103 11130 115,04 114 - 107 109 109 11450 117,12 116 - 113 113 113 11670 117,99 117 413,92 115 115 115 117
150
5 127,37 121 - 107 104 105 11910 137,87 134 - 123 121 123 13420 143,61 141 - 131 133 134 14030 145,82 143 - 137 138 138 14350 147,17 146 - 141 142 142 14670 148,45 147 - 143 145 145 147
200
5 177,29 168 - 150 150 150 16810 188,24 182 - 167 168 169 18220 194,29 190 - 181 182 182 19030 196,12 193 - 187 187 187 19350 198,01 195 - 192 191 191 19570 198,55 197 - 193 196 196 197
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 52 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Comparação grafos cúbicos com melhor limitanteencontrado
Algoritmo média média TeD máximo máximo TeD5-aprox. 1,15 1,22 1,30 1,443-aprox. 1,16 1,15 1,24 1,252-aprox. 1, 07 1, 12 1, 13 1, 21
guloso 1,10 1,14 1,20 1,277/4-aprox. 1, 08 1,13 1, 14 1, 21
3/2-aprox. 1,11 1, 11 1,23 1, 18
média, máximo: LPval(A) .
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 53 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Resultados para o caso grafos cúbicos|V | i LP LD Tempo (s) 5-ap. 3-ap. 2-ap. guloso 7/4-ap. 3/2-ap.
30
1 16 16 0,69 14 14 15 15 14 152 16 16 0,88 13 13 15 14 15 153 16 16 0,05 13 15 15 15 14 144 16 16 1,18 15 14 15 15 16 155 16 16 0,01 13 13 16 16 16 136 16 16 0,31 13 15 15 15 14 14
50
1 26 26 1177,54 23 23 24 23 24 232 26 26 855,79 22 24 24 22 24 233 26 26 337,45 23 24 24 23 25 234 26 26 426,16 24 24 24 24 24 235 26 26 104,81 24 23 24 23 24 246 26 26 123,94 20 23 23 23 24 24
70
1 36 34 - 33 30 34 34 33 332 36 33 - 34 29 33 31 33 323 36 32 - 30 30 35 32 34 334 36 35 - 30 32 35 35 34 315 36 33 - 30 31 34 33 35 316 36 31 - 31 31 34 30 32 33
100
1 51 48 - 44 42 49 48 47 462 51 47 - 42 44 49 47 47 483 51 44 - 47 44 46 44 47 454 51 46 - 47 41 48 46 47 465 51 45 - 44 42 46 45 48 476 51 46 - 46 44 48 46 47 47
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 54 / 63
O problema da árvore geradora com muitas folhas
Experimentos e resultados
Resultados para o caso grafos cúbicos
|V | i LP LD Tempo (s) 5-ap. 3-ap. 2-ap. guloso 7/4-ap. 3/2-ap.
120
1 61 56 - 53 55 58 56 57 552 61 53 - 55 53 56 53 57 543 61 56 - 53 51 59 56 56 564 61 55 - 55 52 57 55 56 565 61 57 - 53 52 58 57 57 546 61 58 - 56 52 58 58 57 56
150
1 76 70 - 69 67 71 70 71 702 76 66 - 68 69 70 66 72 683 76 71 - 66 65 71 71 71 694 76 70 - 67 65 71 70 70 705 76 70 - 66 65 71 70 71 736 76 70 - 67 66 72 70 71 70
200
1 101 88 - 91 85 94 88 94 932 101 89 - 86 85 93 89 92 933 101 88 - 90 86 92 88 97 884 101 94 - 91 86 94 94 96 935 101 90 - 88 88 94 90 96 906 101 92 - 85 87 95 92 94 93
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 55 / 63
O problema da árvore geradora com muitas folhas
Conclusões
Agenda
1 Introdução
2 Preliminares
3 Algoritmos aproximados
4 Algoritmos aproximados para grafos cúbicos
5 Algoritmo exato
6 Experimentos e resultados
7 Conclusões
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 56 / 63
O problema da árvore geradora com muitas folhas
Conclusões
Conclusões e trabalhos futurosConclusões
Estudamos algoritmos de aproximação para o problema e umcaso particular.Implementamos alguns dos algoritmos aproximados.Implementamos um algoritmo exato.Conseguimos casos de teste e geramos outros.Guloso: melhores resultados para o caso geral.2-aproximado: melhores resultados para grafos cúbicos.
Sugestões de trabalhos futurosRazão de aproximação do algoritmo guloso.Usar 5-aproximado e guloso para solução inicial.Verficar comportamento do algoritmo 5/3-aproximado[Correa, Fernandes, Matamala e Wakabayashi, 2007].
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 57 / 63
O problema da árvore geradora com muitas folhas
Conclusões
Conclusões e trabalhos futurosConclusões
Estudamos algoritmos de aproximação para o problema e umcaso particular.Implementamos alguns dos algoritmos aproximados.Implementamos um algoritmo exato.Conseguimos casos de teste e geramos outros.Guloso: melhores resultados para o caso geral.2-aproximado: melhores resultados para grafos cúbicos.
Sugestões de trabalhos futurosRazão de aproximação do algoritmo guloso.Usar 5-aproximado e guloso para solução inicial.Verficar comportamento do algoritmo 5/3-aproximado[Correa, Fernandes, Matamala e Wakabayashi, 2007].
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 57 / 63
O problema da árvore geradora com muitas folhas
Referências
Referências I
P. Bonsma.Max-leaves spanning tree is APX-hard for cubic graphs.Journal of Discrete Algorithms, 2011.Disponível online.
P. Bonsma and F. Zickfeld.A 3/2-approximation algorithm for finding spanning trees with manyleaves in cubic graphs.In WG’08, pages 66–77. Springer-Verlag, 2008.
J. R. Correa, C. G. Fernandes, M. Matamala, and Y. Wakabayashi.A 5/3-approximation for finding spanning trees with many leaves incubic graphs.In WAOA’07, pages 184–192, 2007.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 58 / 63
O problema da árvore geradora com muitas folhas
Referências
Referências II
T. Fujie.An exact algorithm for the maximum leaf spanning tree problem.Computers & Operations Research, 30:1931–1944, 2003.
E. G. Fusco and A. Monti.Spanning trees with many leaves in regular bipartite graphs.Lecture Notes in Computer Science, 4835:904–914, 2007.
G. Galbiati, F. Maffioli, and A. Morzenti.A short note on the approximability of the maximum leavesspanning tree problem.Information Processing Letters, 52:45–49, 1994.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 59 / 63
O problema da árvore geradora com muitas folhas
Referências
Referências III
M. R. Garey and D. S. Johnson.Computers and Intractability: A Guide to the Theory ofNP-Completeness.Freeman, San Francisco, CA, USA, 1979.
S. Guha and S. Khuller.Approximation algorithms for connected dominating sets.Algorithmica, 20(4):374–387, 1998.
P. Lemke.The maximum-leaf spanning tree problem in cubic graphs isNP-complete.IMA Preprint Series, (428), July 1988.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 60 / 63
O problema da árvore geradora com muitas folhas
Referências
Referências IV
(Ben) P. C. Li and M. Toulouse.Variations of the maximum leaf spanning tree problem for bipartitegraphs.Information Processing Letters, 97(4):129–132, 2006.
K. Lorys and G. Zwozniak.Approximation algorithm for the maximum leaf spanning treeproblem for cubic graphs.In ESA’02, pages 686–697, 2002.
H. Lu and R. Ravi.The power of local optimization: Approximation algorithms formaximum-leaf spanning tree.In Thirtieth Annual Allerton Conference on Communication,Control and Computing, pages 533–542, 1996.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 61 / 63
O problema da árvore geradora com muitas folhas
Referências
Referências V
H. Lu and R. Ravi.Approximating maximum leaf spanning trees in almost linear time.Journal of Algorithms, 29:132–141, 1998.
A. Lucena, N. Maculan, and L. Simonetti.Reformulations and solution algorithms for the maximum leafspanning tree problem.Computational Management Science, 7(3):289–311, 2010.
R. Solis-Oba.2-approximation algorithm for finding a spanning tree withmaximum number of leaves.In Lecture Notes in Computer Science, pages 441–452. Springer,1998.
Márcio F. Reis (IC/Unicamp) 8 de maio de 2014 62 / 63
Laboratório de Otimizaçãoe Combinatória
O problema da árvore geradora com muitas folhas
Dissertação de MestradoAluno: Márcio Félix Reis
Orientador: Prof. Dr. Orlando Lee
8 de maio de 2014
Este projeto teve apoio da CAPES.