Escolar Documentos
Profissional Documentos
Cultura Documentos
inta a
Algoritmos de Aproximao
Mar
elo Henriques de Carvalho
Universidade Federal do Mato Grosso do Sul
Mr ia Rosana Cerioli
Ri ardo Dahab
Paulo Feolo
Cristina Gomes Fernandes
Carlos Eduardo Ferreira
Universidade de So Paulo
maio de 2001
ii
Pref
io
O desenvolvimento de algoritmos de aproximao e de provas de
inaproximabilidade uma das linhas de pesquisa que mais tm
res
ido
na rea de otimizao
ombinatria e teoria da
omputao. O objetivo
deste texto apresentar su
intamente uma viso sistemti
a das t
ni
as
utilizadas no projeto de algoritmos de aproximao e dar uma idia dos
limites intrnse
os da aproximabilidade.
Ainda que os tpi
os
obertos neste texto possam ser en
ontrados
em outros livros [Ho
97, MPS98, ACG 99, Vaz01, o presente texto se
justi
a pela es
assez de material em lngua portuguesa.
Alm disso,
tenha um
arter didti
o e seja til tanto aos que pro
uram uma introduo rea quanto aos que queiram estudar esse fas
inante tema mais
profundamente.
O assunto tem muitos pr-requisitos (teoria dos grafos, programao linear, teoria das probabilidades,
omplexidade
omputa
ional), que
pro
uramos
obrir
ompa
tamente em apndi
es.
Re omendamos que
iii
Pref io
iv
Os
aptulos de 3 a 5 apresentam os mtodos baseados em programao linear. A seo 3.1 e o
aptulo 4 tratam de algoritmos simples,
uja anlise depende apenas de
on
eitos e resultados bsi
os de programao linear. Ao leitor que tenha
onhe
imento super
ial no assunto,
re
omendamos a leitura do apndi
e C. A seo 3.2 des
reve um algoritmo no-trivial
uja anlise longa e elaborada, ainda que no envolva
on
eitos avanados. O
aptulo 5 apresenta uma t
ni
a elegante e sosti
ada, derivada do mtodo primal-dual de programao linear, que se
apia no
on
eito de folgas
omplementares.
O
aptulo 6 dis
ute algoritmos probabilsti
os por meio de um exemplo simples mas instrutivo. Um dos algoritmos apresentados neste
aptulo utiliza programao linear. A
reditamos que o
ontedo do
aptulo
seja a
essvel a qualquer leitor que
onhea os
on
eitos de varivel aleatria e esperana, e tenha noes bsi
as de programao linear.
No
aptulo 7, sobre programao semidenida, des
revemos uma
t
ni
a sosti
ada e relativamente re
ente que tem sido apli
ada
om
su
esso a diversos problemas.
dedi
ada ex
lusivamente a algoritmos de aproximao tem
omo prrequisitos noes de teoria dos grafos, programao linear e teoria de
omplexidade de algoritmos. O
ontedo
ompleto do livro adequado
para uma dis
iplina de ps-graduao
om durao de um semestre. Na
graduao, pode-se optar, dependendo da maturidade e interesse dos
alunos, por no
obrir o material da seo 3.2 e do
aptulo 7, e
obrir
apenas par
ialmente o
aptulo 8.
Pref io
Todos
em 1997. Aquele material serviu
omo verso ini
ial para duas sees do
presente livro.
Agrade
emos a Celina M. H. Figueiredo (UFRJ), Sulamita Klein
(UFRJ) e Luerbio Faria (UERJ) pela sua
ontribuio
om uma primeira verso da seo 2.3.
pelo suporte
Em espe
ial,
vi
Pref io
Sumrio
1 Introduo
1.1
Problemas de otimizao . . . . . . . . . . . . . . . . . . .
1.2
Algoritmos de aproximao
. . . . . . . . . . . . . . . . .
1.3
Notao bsi a
. . . . . . . . . . . . . . . . . . . . . . . .
2 Algoritmos Clssi os
2.1
Es alonamento
. . . . . . . . . . . . . . . . . . . . . . . .
2.2
2.3
Mo hila
2.4
Caixeiro viajante
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
3 Mtodo Primal
10
14
23
3.1
T ni a do arredondamento
. . . . . . . . . . . . . . . . .
23
3.2
T ni a mtri a . . . . . . . . . . . . . . . . . . . . . . . .
25
4 Mtodo Dual
4.1
35
5 Mtodo Primal-Dual
35
41
5.1
41
5.2
. . . . . . . . . . . .
44
5.3
Transversal mnima . . . . . . . . . . . . . . . . . . . . . .
46
5.4
Floresta de Steiner
49
. . . . . . . . . . . . . . . . . . . . . .
vii
SUMRIO
viii
6 Algoritmos Probabilsti os
63
6.1
Satisfatibilidade mxima . . . . . . . . . . . . . . . . . . .
64
6.2
Desaleatorizao
69
6.3
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
7 Programao Semidenida
72
77
7.1
Corte mximo . . . . . . . . . . . . . . . . . . . . . . . . .
77
7.2
Programas semidenidos . . . . . . . . . . . . . . . . . . .
82
7.3
Consideraes prti as . . . . . . . . . . . . . . . . . . . .
83
8 Inaproximabilidade
87
8.1
88
8.2
90
8.3
93
8.4
Limiares de aproximao . . . . . . . . . . . . . . . . . . .
96
101
B Vetores e Matrizes
107
C Programao Linear
113
121
125
Bibliograa
133
ndi e
149
Captulo 1
Introduo
Problemas de otimizao tm o objetivo de en
ontrar um ponto timo (mnimo ou mximo) de uma funo denida sobre um
erto domnio.
Os problemas de otimizao
ombinatria tm domnio nito. Embora
os elementos do domnio possam, em geral, ser fa
ilmente enumerados, a
idia ingnua de testar todos os elementos na bus
a pelo melhor mostrase invivel na prti
a pois o domnio tipi
amente muito grande.
Como exemplos
lssi
os de problemas de otimizao
ombinatria
podemos
itar o problema do
aixeiro viajante, o problema da mo
hila,
o problema da
obertura mnima por
onjuntos, o problema da oresta de Steiner e o problema da satisfatibilidade mxima. Todos surgem
naturalmente em apli
aes prti
as, tais
omo o projeto de redes de
tele
omuni
ao e de
ir
uitos VLSI, o empa
otamento de objetos em
ontainers,
roteamento de ve
ulos, et
. Outras reas de apli
ao in
luem a estatsti
a (anlise de dados), a e
onomia (matrizes de entrada/sada), a fsi
a
(estados de energia mnima), a biologia mole
ular (alinhamento de DNA
e protenas, infern
ia de padres), et
.
O desenvolvimento de algoritmos de aproximao surgiu em resposta di
uldade
omputa
ional de muitos dos problemas de otimizao
ombinatria: em termos t
ni
os, muitos so NP-dif
eis. Nessa situao, razovel sa
ri
ar a otimalidade em tro
a de uma aproximao
de boa qualidade que possa ser e
ientemente
al
ulada. Esse
ompromisso entre perda de otimalidade e ganho em e
in
ia o paradigma
dos algoritmos de aproximao. Convm observar que um algoritmo de
aproximao no simplesmente uma heursti
a: ele garante en
ontrar,
e
ientemente, um elemento do domnio
ujo valor guarda uma relao
pr-estabele
ida
om o valor timo.
Introduo
Johnson [Joh74,
de aproximao.
formalizaram
o on eito
de algoritmo
Graham [Gra66 sobre um problema de es
alonamento em mquinas paralelas e em um trabalho de Erds [Erd67 sobre grafos bipartidos. Na
d
ada de 90, o estudo de algoritmos de aproximao passou a re
eber
um tratamento mais sistemti
o,
om a formalizao e o uso de t
ni
as
e ferramentas apli
veis a toda uma gama de problemas.
importante men
ionar tambm o apare
imento de
ertos
dos negativos
resulta-
que provaram resultados desse tipo para vrios problemas usando
ara
terizaes probabilsti
as da
lasse NP.
O desenvolvimento de algoritmos de aproximao e de provas de
inaproximabilidade uma das linhas de pesquisa que mais
res
eu ultimamente na rea de otimizao
ombinatria e teoria da
omputao. Esta observao en
ontra respaldo na grande quantidade de artigos
de pesquisa que surgiram nos ltimos anos (veja nossa lista de refern
ias bibliogr
as).
et al.
Ausiello
et al.
[ACG
+ 99,
n ia da rea a grande quantidade de teses de doutorado on ludas na d ada de 90, algumas introduzindo teorias revolu ionrias [Aro94, Blu91, Kan92, Tre96, Wil93.
(I )
val(S )
viveis
instn ias
(feasible
solutions )
atribui um nmero
o
valor de S .
val(S )
a uma instn ia
(I )
ontrrio, a instn
ia
1
vivel.
ingls
instan e.
um
(I ) de solues
I , e uma funo que
S . O nmero val(S )
invivel;
instn ia
aso
para o termo
Um problema
de minimizao
de maximizao
est
plesmente
onde
S
denido se a instn ia
I.
vivel.
val(S ) 0
para toda
A(I ) de I .
Se o problema de minimizao e
val(A(I )) opt(I )
(1.1)
problema. O fator
val(A(I )) opt(I )
2
A expresso valor da soluo pode ser tro ada por usto da soluo no a-
opt(I )
Introduo
no lugar de (1.1).
0<1
. Um
algoritmo
Dada
uma funo
( )
Z, Q, R
Z, Q
R,
Q
Q>
que
ontm somente os positivos so indi
ados por um > . Assim, por
exemplo, o
onjunto dos ra
ionais no-negativos denotado por
dos ra
ionais positivos por
Q >.
Q
e o
Para outras onvenes de notao, envolvendo grafos, vetores e matrizes, programao linear, probabilidades e omplexidade omputa ional, onsulte, se ne essrio, os apndi es A, B, C, D e E respe tivamente.
Captulo 2
Algoritmos Clssi
os
Neste
aptulo des
revemos algoritmos de aproximao para quatro
dos mais
lebres problemas de otimizao
ombinatria.
Estes esto
2.1 Es
alonamento
Um problema bastante
onhe
ido nos
ontextos de produo industrial e de sistemas opera
ionais o de es
alonamento (s
heduling ) de
tarefas em mquinas.
s heduling problem )
onsiste no seguinte:
f1; : : : ; ng m
maxj t(Mj )
usto
em
t(Mj )
:=
blo os um
es alona-
do es alonamento. Com
i2Mj ti .
m, n e t,
Algoritmos Clssi os
M1
t1
M2
M3
t6
t2
t7
t5
t3
t4
t1 t2 t3 t4 t5 t6 t7
4 2 1 5 9 2 6
Figura 2.1:
Exemplo de es alonamento om
A durao da tarefa
7 tarefas em 3 mqui-
ti . O
ritrio de Graham produz o es
alonamento ff1; 6; 7g; f2; 5g; f3; 4gg, representado na gura. Esse es
alonamento tem
usto t1 + t6 + t7 = 12. Um outro es
alonamento
ff1; 7g; f2; 4; 6g; f3; 5gg, que tem
usto t3 + t5 = 10.
nas.
=2
[GJ79.
problema foi des
rito e analisado por Graham [Gra66 e usa um
ritrio
muito simples: alo
ar as tarefas uma a uma, destinando
ada tarefa
mquina menos o
upada.
vai re
eber determinada tarefa no depende dos tempos das tarefas que
ainda no foram atribudas a nenhuma mquina. Veja um exemplo na
gura 2.1.
opt(m; n; t)
2.1 Es alonamento
m mquinas.
Em frmulas,
opt(m; n; t) maxi ti
1 P ti
i
opt(m; n; t) m1 Pni=1 ti :
(2.1)
= 9;666 : : :
algoritmo.
O aso em que
n < m
n m.
o valor de
n, j que m n.
Conforme j observamos, o algoritmo pro
essa os dados sem
onhe
imento prvio da sua totalidade. Vrias situaes reais demandam esse
tipo de abordagem, entre elas o es
alonamento de tarefas em pro
essadores e a alo
ao de pginas na memria primria de
omputadores.
Algoritmos para tais apli
aes devem ser rpidos e forne
er solues
viveis
ujo valor seja prximo do valor timo. O algoritmo Es
alona-
Algoritmos Clssi os
S de onjuntos nitos,
S ubra E
T.
(T ) de usto
da
de
usto mnimo.
O MinCC NP-dif
il mesmo quando
ada
onjunto em
S no tem
mais que trs elementos [GJ79. Uma estratgia gulosa simples para o
problema
onsiste em sele
ionar repetidamente o
onjunto em
S que
mais promissor em termos de usto om relao ao nmero de elementos ainda no obertos que ele ontm.
ento devolva ;
seno seja Z em
E0
S0
EnZ
f S 2 S : S \ E 0 6= ; g
seja
0 a restrio de
a S0
T0 MinCC-Chvtal (E 0; S0 ;
0 )
devolva fZ g [ T 0
E.
H uma boa
(E; S; )
um
Z
Z P
jZ \ E j jE j jZ \ E j S2T jS \ E j
PS2T jS
\S E j jS \ E j
= PS2T
S
=
(T) :
Segue da que
opt(E; S; ) jE j jZ \Z E j :
(2.2)
n := jE j e Hn o nmero harmni
o:
Hn := 1 +
1 + 1 + + 1 :
2 3
n
MinCC-Chvtal
MinCC
Hn-apro-
uma Hn -apro-
(E; S; ), onde n := jE j.
Hn -aproximao
de (2.2),
(fZ g [ T 0) =
=
Z +
0 (T 0 )
nk opt(E; S;
) + Hn
opt(E; S;
)
n + n 1 1 + + n 1k + 1 + Hn
= Hn opt(E; S;
) :
1
opt(E; S; )
O(jE jjSj). 2
Hn
Algoritmos Clssi os
10
Hn opt(E; S;
), onde n := jE j. Mais pre
i" positivo, existe uma instn
ia do problema para a
qual o algoritmo produz uma
obertura de
usto Hn opt(E; S;
)=(1+ "):
basta tomar E := f1; : : : ; ng, S := fE; f1g; : : : ; fngg,
E := 1+" e
fig := 1=i para
ada i. Uma
obertura de
usto mnimo fE g e o
usto
desta
obertura 1+". Por outro lado, o algoritmo MinCC-Chvtal
produz a
obertura ff1g; : : : ; fngg,
ujo
usto Hn .
arbitrariamente prximo de
MinCC
(E; S; )
, a menos que P
Hn 1+ln n
ln n,
NP.
om
= jE j
, para o
aptulo 8.
2.3 Mo
hila
Nesta seo tratamos de um outro problema de otimizao bem
onhe
ido: o
problem ).
Esse problema
ontainers.
Problema
Os nmeros
vi e w i
pe tivamente de um objeto
i.
O nmero
Uma abordagem de programao dinmi a [CLR92 resolve o problema Mo hila: basta onstruir uma tabela
onde
Wij
o peso mnimo
de um sub onjunto de
Mo hila
2.3 Mo hila
11
repita
j j +1
W0j 1
para i de 1 a n faa
se vi j
ento Wij
min fWi 1;j ; wig
seno Wij
min fWi 1;j ; wi + Wi 1;j
at que Wnj > m
seja S um sub
onjunto de f1; : : : ; ng
om w(S ) = Wn;j 1 e v (S ) j 1
devolva S
W
0
1
2
3
4
5
0
0
0
0
0
0
0
1 2 3 4 5 6 7 8
1 1 1 1 1 1 1 1
4 4 1 1 1 1 1 1
2 4 6 1 1 1 1 1
1 1 1 3 5 7 1 1
1
1
1
1
vi g
10
1
1
1
1
1 1 1 2 3 3 3 5 7 9
1 1 1 2 3 3 3 5 7 9
S um onjunto
f1; : : : ; ig e tm valor
pelo menos
j.
Se
Algoritmos Clssi os
12
l
ulos.
Infelizmente, o nmero de exe
ues das linhas 3 a 10 pode no ser
polinomial em
enquanto que
W.
v :=
(n + 1)(v + 1)
, onde
i : wi m vi ;
(m; n; v; w)
wi > m
O(n + v )
Mo
hila-Exato
O(n(v + 1))
v
( om
v = 0 se todo
no ultrapassa
Esquema de aproximao
Seja
"
(0; 1)
(1 ")
Vamos ver
-aproximao
(m; n; v; w)
m; n; hvi e hwi.
#
3
4
5
6
7
ento devolva ;
seno # maxi : wi m vi
"#=n
para i de 1 a n faa ui
bvi=
S Mo
hila-Exato (m; n; u; w)
devolva S
2.3 Mo hila
13
Na linha 5 do algoritmo,
Como
temos que
Mo hila
SP
i2S
bx
(m; n; u; w)
wi
(m; n; v; w)
#,
opt(m; n; v; w) # :
(2.3)
(1 ")-apro-
i2S vi
P
ui
Pi2S
Pi2S ui
i2S ( vi 1)
= v(S ) jS j
v(S ) n
(2.4)
(2.5)
= v(S ) "#
(1 ")opt(m; n; v; w) :
(m; n; u; w)
hila
(2.6)
ui
6 onsome tempo
vi= n=",
para todo
Note que o algoritmo Mo hila-IK" um esquema que nos forne e, para ada
"
ra ional no intervalo
hila
(m; n; v; w)
n="
(0; 1)
(1 ")
-aproximao
on s heme )
, uma
( aptulo 8).
polynomial-time approximati-
Algoritmos Clssi os
14
(traveling
salesman problem ),
pro-
denotado
Problema
(G; )
Alm
disso, no se onhe e um algoritmo de aproximao om razo onstante para o problema, onforme veremos no aptulo 8.
Nesta seo,
ij de vrti
es.
dade triangular se
ada par
TSPM
(G; )
asso iado a
em que
desigual-
ij + jk
i, j
k.
(2.7)
15
T.
(S ) de usto de S , onde S
spanning tree ).
TSPM
(G; )
opt(G; ) (T ) :
(2.8)
2
O (n ),
onde
Vamos
O onsumo de
MST
[: F denota o
multi
onjunto que tem duas
pias de
ada elemento de ET \ F (apn-
de
T,
seja
+F
o multigrafo
(VT ; ET [: F )
, onde
ET
T +F
T +F
Um
i lo euleriano
em um grafo ou multigrafo
T 0.
T0
qualquer i-
Um multigrafo onexo
T0
tem
Euler
(v0 ; v1 ; : : : ; vm )
de vrti es do i lo
w0
n
v0
para i de 1 a m faa
se vi 2
= fw0 ; : : : ; wn g
ento n n + 1
wn
vi
Atalho
Algoritmos Clssi os
16
(w0 ; w1 ; : : : ; wn; w0 )
(wj ; wj+1)
(vi ; vi+1 ; : : : ; vi+p)
dene um
wj wj +1
no maior
P:
C no
(C ) (P ) :
(2.9)
T 0 (passo 2 da estratgia)
T.
e Lewis [RSL77.
de
T 0 VG , o i lo euleriano P
gerador. O ir uito
G.
(P ) = 2 (T ).
TSPM-RSL
uma 2-aproximao
um i lo euleriano em
T + ET , temos que
(C )
(P ) = 2 (T ) 2opt(G; ) :
17
O(jVG j2 ).
Algoritmo de Christodes
Um
emparelhamento
Um emparelhamento
3
em tempo O (n ), onde n
T.
um emparelhamento perfeito em
G[I ,
todo vrti e de
T geradora.
C um
ir
uito hamiltoniano de G.
TSPM-Christofides
TSPM.
3 opt(G;
).
2
uma 32 -
tro lado,
(C )
Na linha 6 do algoritmo,
Edmonds
Algoritmos Clssi os
18
opt(G; ) 2 (M ) :
(2.10)
2
(M )
(M 0 ) +
(M 00 ) =
(D)
(C ) = opt(G;
) ;
sendo que a primeira desigualdade vale porque
um emparelhamento
O(jVG j2 ).
O(jVG j3 ),
Proposto em 1976, TSPM-Christofides ainda o melhor algoritmo de aproximao
onhe
ido para o TSPM. O algoritmo TSPM-RSL
pode ser uma boa alternativa em
ertas
ir
unstn
ias: ele
onsome menos tempo que o TSPM-Christofides e bem mais simples, pois no
envolve a determinao de um emparelhamento perfeito de
usto mnimo.
Exer
ios
2.1
1.
Para ada
m,
(m; n; t)
tem
4=3
-aproxi-
(m; n; t)
4 opt(m; n; t)
3
2.3
Exer ios
2.4
19
blem )
(maximum
overage pro-
onsiste no seguinte:
mximo.
k 1 )k )-aproximaLembre-se de que 1
(1 k 1)k >
(1 (1
2.5
(E; S; )
om
=1
para todo
em
S,
para as quais o
usto da
obertura produzida pelo algoritmo MinCC-Chvtal pode
hegar arbitrariamente perto de
2.6
Lembre-se que
ln x
1 + ln n.
Hn
Hn opt(E; S; ), onde n := jE j.
a primitiva da funo
1=x
Deduza da que
uma
2.7
(m; n; v; w)
P
v := i : w m vi
de modo que
O(n + v ), onde
ujo valor de
vj =wj
mximo at
(m; n; v; w)
opt(m; n; v; w)
arbitrariamente
pequena.
2.9
problem )
onsiste no seguinte:
Problema Empa
otamento (n;
): Dados um inteiro positivo n e, para
ada i em f1; : : : ; ng, um nmero ra
ional
i no intervalo fe
hado [0; 1, en
ontrar uma partio B de
Algoritmos Clssi os
20
mnimo.
(n; )
Bk
para
4
5
6
7
8
i de 1 a n faa
se
i 1
(Bk )
ento Bk
Bk [ fig
seno k
k+1
Bk fig
devolva fB1 ; : : : ; Bk g
(G;
) TSPM
2opt(G;
)
do
para as quais o
(G; )
Construa uma
3
2 opt(G;
).
2.11 Considere as trs seguintes variantes do TSPM. Na primeira, bus
amos um
aminho hamiltoniano de
usto mnimo no grafo dado.
Na segunda, queremos um
aminho hamiltoniano de
usto mnimo
dentre os que
omeam em um dado vrti
e
s.
Modique o algoritmo de Christodes para que ele seja um algoritmo de aproximao om razo menor que
variantes.
2.12 Mostre que os algoritmos TSPM-RSL e TSPM-Christofides podem produzir pssimos resultados se apli
ados a instn
ias do TSP
que no satisfazem a desigualdade triangular.
Notas bibliogr
as
A primeira verso desse
aptulo teve por base o livro editado por
Ho
hbaum [Ho
97, o livro de Cormen
et al.
Notas bibliogrfi as
21
(1+")
" xo.
ional positivo
ido
omo
list s heduling.
das na literatura. Uma boa amostra dessas variantes e suas apli
aes
en
ontra-se no livro de Bru
ker [Bru98 e no livro editado por Chrtienne
et al.
[CJLL95.
(1 + ln n)
-aproximao, onde
Entre outras
et al.
[LLRS90, om ontri-
que baseiam-se em um
Ela usada
Algoritmos Clssi os
22
TSP em dimenso xa foi obtido por Arora [Aro98 e, logo em seguida,
independentemente, por Mit
hell [Mit99. Um algoritmo de aproximao
para o problema do
aminho hamiltoniano de
usto mnimo, nos moldes do algoritmo de Christodes, foi projetado por Hoogeveen [Hoo91
(exer
io 2.11).
Arora
et al.
Captulo 3
Mtodo Primal
Vimos no
aptulo anterior que t
ni
as bem
onhe
idas de projeto
de algoritmos,
omo a programao dinmi
a e o mtodo guloso, podem
resultar em bons algoritmos de aproximao. Neste
aptulo e nos prximos trs, mostramos
omo programao linear (apndi
e C) pode ser
usada na
riao de bons algoritmos de aproximao.
Programao linear uma ferramenta til pois existem bons algoritmos para resolver programas lineares. Alm disso, ela pode forne
er
boas delimitaes para o valor timo do problema em questo e,
omo
j vimos, tais delimitaes so essen
iais para a anlise da qualidade da
soluo produzida por um algoritmo de aproximao.
Para
riar um algoritmo de aproximao baseado em programao
linear, ne
essitamos de um programa linear que seja uma
relaxao
do
3.1 T
ni
a do arredondamento
Uma t
ni
a simples mas s vezes e
az a do
arredondamento.
Esta t
ni
a
onsiste em arredondar uma soluo tima de um programa linear que represente o problema original. A t
ni
a pode dar bons
resultados no s
om programas lineares,
omo veremos no
aptulo 7.
Nesta seo, vamos apli
ar a t
ni
a do arredondamento ao problema da
obertura mnima por
onjuntos, j dis
utido na seo 2.2.
23
Mtodo Primal
24
Problema
(E; S; )
x
P
S : e2S xS
xS
1
0
e em E ;
para
ada S em S :
(3.1)
para ada
S em S e, para
ada
e em E , uma restrio que
orresponde exign
ia de que e seja
oberto. O programa linear (3.1) limitado, pois
x 0 para qualquer
soluo vivel x de (3.1), e vivel j que o vetor
ara
tersti
o de S
Neste programa, tem-se uma varivel
xS
para ada
(teorema C.3, apndi e C), o programa (3.1) tem uma soluo tima ra ional. Como o vetor ara tersti o de qualquer obertura de
vivel
(E; S; )
opt(E; S;
)
x^
para toda soluo tima
x^ de (3.1).
(3.2)
x^ so inteiros, a sub-
de
de elementos de
3.2 T ni a mtri a
25
devolva
A oleo
perten e a no mximo
obertura de
E.
Teorema 3.1 : O algoritmo MinCC-Ho
hbaum uma -aproximao polinomial para o MinCC (E; S;
), onde o nmero
mximo de vezes que um elemento de E apare
e em
onjuntos
de S.
jSj variveis e jE j restries (as restri 0 so impl
itas) e, portanto, o tamanho do sistema (3.1)
(jSj + 1)jE j + h
i. Como programas lineares podem ser resolvidos em
O programa linear (3.1) tem
es
xS
tempo polinomial (fato C.4), a linha 1 do algoritmo pode ser exe
utada em tempo polinomial. As demais linhas
laramente tambm podem
ser exe
utadas em tempo polinomial em
polinomial.
jE j e jSj.
Assim, o algoritmo
3.2 T
ni
a mtri
a
x^ de um programa linear asso
iado ao problema
ombinatrio. Desta vez, x
^ um
vetor indexado pelas arestas de um grafo e
ada
omponente x
^e ser
interpretado
omo o
omprimento da aresta e.
Como na seo anterior, usaremos uma soluo tima
Dados um grafo
e um onjunto
Mtodo Primal
26
s a t um K -
aminho se fs; tg 2 K . Um
onjunto M de arestas um K -multi
orte se no existe K -
aminho no
grafo G M . O problema do multi
orte mnimo (minimum multi
ut
dizemos que um
aminho de
problem )
onsiste no seguinte:
Problema MinMCut (G; K;
): Dados um grafo G, um
onjunto K de pares de vrti
es e um
usto
e em Q para
ada
aresta e, en
ontrar um K -multi
orte M que minimize
(M ).
H um bem
onhe
ido algoritmo polinomial [AMO93 para o
aso
em que
jK j = 1.
jK j = 2,
tambm existe um
jK j = 3.
Denote por
EG que
minimize
sob as restries
x
x(EP )
xe
EG
1
0
P em P ;
para
ada e em EG :
para ada
vivel em (3.3) e
x 0
x indexado
(3.3)
para qualquer
opt(G; K;
)
x^
x^
(3.4)
de (3.3).
O algoritmo abaixo foi
on
ebido por Garg, Vazirani e Yannakakis [GVY96 e forne
e a melhor razo de aproximao
onhe
ida para
o MinMCut. Ele supe que
trivial.
3.2 T ni a mtri a
27
K-
tal que
(M )
(4ln 2k) x :
(3.5)
Teorema 3.2 : O algoritmo MinMCut-GVY uma (4ln 2k)aproximao polinomial para o MinMCut (G; K;
), sendo k :=
jK j > 0.
Demonstrao: Em virtude de (3.5) e (3.4), o
usto
orte
(M ) do multi-
(M )
jVG j.
Ainda assim, a linha 1 do algoritmo MinMCut-GVY pode ser exe utada em tempo polinomial em
xe
omo
omprimento da
e,
al
ule um
aminho de
omprimento mnimo de s a t para
ada
fs; tg em K . Se algum destes
aminhos, digamos P , tiver
omprimento
menor que 1, o vetor x no satisfaz a restrio de (3.3)
orrespondente
a P . Do
ontrrio, x satisfaz todas as restries de (3.3). Esse algoritmo de separao
onsome tempo polinomial em hGi (use o algoritmo de
separao (apndi
e C) para (3.3): interprete
aresta
hGi + h i.
Algoritmo
entral
G, um inteiro k 1, um
k pares de vrti
es, um vetor ra
ional
e um
vetor ra
ional no-negativo x tal que x(EP ) 1 para todo K -
aminho P .
O algoritmo Central re
ebe um grafo
onjunto
de no mximo
Dado o arter re ursivo do algoritmo, ne essrio renar a espe i ao (3.5): o algoritmo Central produz um
(M )
K -multi orte M
(2ln 2k)(1 + k1 jK j) x :
tal que
(3.6)
(S; T )
de
S
T
Mtodo Primal
28
VG
A
B
x(s; u)
V (s; )
((S ))
(A; (S ); B )
ter
extremos em
o.
ou seja,
u,
seja
V (s; ) := fv 2 VG : x(s; v) g :
#(s; )
de s:
e.
xe
o omprimento e
#(s; ) := A xA +
uv2(S ); u2S uv
(
x(s; u)) ;
pi
8
9
10
11
12
ento devolva ;
seno se
x = 0
ento devolva fe 2 EG : xe > 0g
seno sejam s e t os extremos de um K -
aminho
seja v1 ; : : : ; vn uma ordenao dos vrti
es
tal que x(s; v1 ) x(s; vn )
para i de 1 a n faa pi
x(s; vi )
1 + maxfi : pi = 0g
enquanto #(s; pj ) > ((2k )2p
1) k1
x
faa j
j +1
S V (s; pj 1 )
j
3.2 T ni a mtri a
29
T VG n S
B EG[T
GB (VG ; B )
KB K n ffs0 ; t0 g : S separa s0 de t0 g
MB Central (GB ; k; KB ;
B ; xB )
devolva (S ) [ MB
13
14
15
16
17
18
GB
0 0
um de s e t .
a
B , respe tivamente.
No m da linha 9, temos
x(s; t) 1.
((2k)2p
2jn
= x(s; s) = 0 pn
pn 1 k 1
1) k1
x > (2k 1) k1
x
x #(s; pn) :
pois
1) k1 x ((2k)2
p1
KB - aminho P
em
GB .
pj 1 < pj ;
#(s; pj 1 ) ((2k)2pj
#(s; pj ) ((2k)2pj
(3.7)
e
(3.8)
(3.9)
2jn
pj 1 = p1 = 0 < pj
j=2
#(s; pj 1) = #(s; p1 ) = #(s; 0) = 0 = ((2k)0 1) k1
x ;
#(s; pj ) ((2k)2p 1) k1
x
j>2
pj 1 6= pj
pj 1
1 1) 1
x
k
1) 1
x :
j = 2.
, temos que
enquanto que
. Como
Mtodo Primal
30
#(s; pj ) + k1
x
#(s; pj 1) + k1
x
Tomando-se
logaritmo
(2k)2(pj
natural
do
lado
pj 1 ) :
esquerdo
(3.10)
de
(3.10)
desenvolvendo-o, obtemos
ln(#(s;Z pj ) + k1
x) ln(#(s; pj 1) + k1
x) =
p d
=
ln(#(s; ) + k1
x) d
d
p
Zp1
((S ))
=
1 d ;
p 1 #(s; ) + k
x
#(s; ) + k1
x
(pj
j
pois a derivada de
((S )).
em relao a
no intervalo
1 ; pj )
2(pj
pj 1)ln2k
Z pj
pj 1
(2ln 2k) d :
Z pj
pj
((S ))
1 d
1 #(s; ) + k
x
Z pj
pj 1
(2ln2k) d :
#(s; )
3.2 T ni a mtri a
31
(3.11)
pj 1 < 21 :
h
(3.12)
ph
1
2.
h existe e
maior que 1 j que pn x(s; t) 1 e p1 = 0. Como #(s; ph )
x e
(2k)2ph 1 k, pois k 1 e ph 12 , ento #(s; ph) ((2k)2ph 1) k1
x.
1
Assim, j h depois da exe
uo da linha 11 e,
omo ph 1 <
2 pela
es
olha de h e porque p1 = 0, a desigualdade (3.12) vale.
Para isso, seja
Tal
K -multi orte.
Se
(3.13)
um
Mtodo Primal
32
((S ) [ MB ) =
=
((S )) +
B (MB )
(2ln 2k)(
A xA +
(S) x(S) + k1
x + (1 + k1 jKB j)
B xB )
= (2ln 2k)(
A xA +
(S) x(S) +
B xB + k1
x + k1 jKB j
B xB )
(3.14)
= (2ln 2k)(
x + k1
x + k1 jKB j
B xB )
1
1
(2ln 2k)(
x + k
x + k (jK j 1)
B xB )
(3.15)
1
(3.16)
(2ln 2k)(1 + k jK j)
x :
hGi, jK j
hxi. Em espe
ial, as linhas 10 e 11 do algoritmo
onsomem tempo
O(jVG j). Com estas informaes, f
il mostrar, por induo em jK j,
que o algoritmo
onsome tempo polinomial em hGi + h
i + hxi. 2
Exer
ios
3.1
apare e em onjuntos de
uma instn ia
(E; S; )
, que um ele-
(minimum
onsiste no seguinte:
Esse problema pode ser visto
omo um
aso parti
ular do MinCC.
Es
reva uma verso espe
ializada do MinCC-Ho
hbaum para o
Considere a variante do MinCC (E; S; ), onhe ida omo problema da multi obertura mnima por onjuntos (minumum set
Notas bibliogrfi as
33
:=
3.4
Compare
algoritmo
MinCC-Ho hbaum
om
algoritmo
Aplique a t
ni
a do arredondamento ao problema Mo
hila, introduzido no
aptulo 2, demonstrando a melhor razo de aproximao
que vo
puder para o algoritmo obtido.
Notas bibliogr
as
A primeira verso deste
aptulo baseou-se no livro editado por Ho
hbaum [Ho
97. O exer
io 3.3 foi tirado do livro de Vazirani [Vaz01.
Srinivasan [Sri99 obteve um outro algoritmo para o MinCC usando um tipo de arredondamento probabilsti
o (
aptulo 6). O problema
da multi
obertura por
onjuntos, apresentado no exer
io 3.3, foi
onsiderado e analisado por Rajagopalan e Vazirani [RV99.
Para vrios
ow problem ).
multi ommodity
abordagem feita por Leighton e Rao, obtiveram um algoritmo que essen
ialmente o que apresentamos na seo 3.2.
T
ni
as mtri
as so usadas em vrios trabalhos [AR98, CKR00,
ENRS95, KRAR95, LLR95. Alguns re
orrem, de uma maneira muito
sosti
ada, a propriedades mtri
as de
ertas imerses no
Rd ,
s ve-
(G; K;
)
jK j = 2
quando
jK j = 1
[Hu63, Ita78 e,
-aproximao
Mtodo Primal
34
polinomial om
para o problema
multiterminal- ut
ou
multiway-
ut :
e em Q
de vrti es e um usto
dados um grafo
G, um
onjunto L
e, en
ontrar um
em um omponente diferente.
Dahlhaus
et al.
[DJP 94 mostraram
L pelo
onjunto
(G; K;
)
Eles projetaram tambm uma (2
2=jLj)-
jK j = 3.)
L.
1;3438
[KKS
+ 99.
Captulo 4
Mtodo Dual
Neste
aptulo des
revemos
omo obter algoritmos de aproximao
para um problema de otimizao usando o dual de um programa linear
que representa o problema em questo.
G, uma
obertura
por vrti
es um
onjunto de vrti
es
om pelo menos um dos extremos
de
ada aresta. O problema da
obertura mnima por vrti
es
(vertex
over problem )
onsiste no seguinte:
35
Mtodo Dual
36
x
xu + xv
xv
minimize
1
0
(4.1)
uv em EG ;
para
ada v em VG :
O dual deste programa en
ontrar um vetor y indexado por EG que
maximize y (EG )
(4.2)
sob as restries y ( (v ))
v para
ada v em VG ;
ye 0 para
ada e em EG :
O programa (4.1) vivel pois o vetor
ara
tersti
o de VG satisfaz as
sob as restries
para ada
restries. O programa (4.2) vivel pois o vetor nulo satisfaz as restries. Assim, pelo teorema forte da dualidade (teorema C.3, apndi
e C),
o programa (4.2) tem soluo tima ra
ional. Alm disso, o vetor
ara
tersti
o de qualquer
obertura por vrti
es vivel em (4.1) e, portanto,
temos que
opt(G;
)
x^ = y^(EG ) ;
x^
(4.3)
de (4.2).
y^
tal
MinCV-Ho hbaum
produz uma
Exer ios
37
:=
v y^((v))
minfdi ; dj g
dv
= ij
" :=
"=0
y_f := y^f + " y_ e := y^e
y_ ((v)) = y^((v))
v
v
fi; j g
y_
y_ (EG ) = y^(EG ) + "
"=0
. Dena
e seja
e
Teorema 4.2 : O algoritmo MinCV-Ho
hbaum uma 2-aproximao polinomial para o MinCV.
Demonstrao: Ao nal do algoritmo,
(C )
v2C v
tal que
v2C y
est em
C.
, a varivel
i est em C e outra
Exer
ios
4.1
2
(S ) = 2opt(G;
)
(G; )
em que
Mostre que o algoritmo MinCV-Ho hbaum diferente do algoritmo sugerido no exer io 3.2, ou seja, exiba uma instn ia do
Mtodo Dual
38
Aplique o mtodo dual ao problema da obertura mnima por onjuntos (MinCC), denido na seo 2.2.
resultante uma
o nmero mximo de
-aproximao,
onde
Considere o
O MinCA um
aso parti
ular f
il do MinCC: existe um algoritmo polinomial que o resolve [Law76. Mostre que o mtodo dual
d uma
mximo em
4.5
G.
o grau
D uma prova alternativa do teorema 2.2 que use o dual do programa (3.1).
dual do programa (3.1)
ujo valor igual ao da
obertura produzida pelo algoritmo MinCC-Chvtal. Disso e do teorema fra
o da
dualidade (lema C.1), deduza o teorema 2.2.
Notas bibliogr
as
Como j men
ionamos, o problema da
obertura mnima por vrti
es (MinCV) um
aso espe
ial do problema da
obertura mnima
por
onjuntos (MinCC). Este ltimo foi extensivamente investigado por
Ho
hbaum [Ho
82 que apresentou,
omo vimos no
aptulo 3, uma
aproximao polinomial para o problema. Aqui,
de vezes que um elemento de
onsidera uma instn
ia
apare e em onjuntos de
(E; S; )
o nmero mximo
S, quando se
Notas bibliogrfi as
39
dual approximation.
Essa abordagem difere do mtodo dual aqui des
rito. Ela
onsiste em
en
ontrar solues duais super-timas (inviveis, portanto) que so ento
onvertidas em boas solues viveis.
40
Mtodo Dual
Captulo 5
Mtodo Primal-Dual
Este
aptulo apresenta o mtodo primal-dual
lssi
o e uma generalizao dele que tem sido usada
om bastante su
esso no projeto de
algoritmos de aproximao: o mtodo de aproximao primal-dual.
O mtodo primal-dual reduz, apoiando-se nas
ondies de folgas
omplementares, um problema de programao linear a uma seqn
ia de
problemas de viabilidade, poten
ialmente mais simples. Nas apli
aes
do mtodo em otimizao
ombinatria, esses problemas de viabilidade
so muitas vezes outros problemas de otimizao
ombinatria para os
quais so
onhe
idos algoritmos e
ientes, no raro
trios.
puramente ombina-
N.
A.
Sejam ainda
denotado por
P(A; b; )
: en ontrar um vetor
minimize
sob as restries
x
(Ax)i
xj
bi
0
41
x indexado por N
i em M ;
para
ada j em N :
para ada
que
(5.1)
P(A; b; )
Mtodo Primal-Dual
42
X (A; b)
X (A; b).
O problema
P(A; b;
)
P(A; b;
)
vivel se e somente se
P(A; b; )
X (A; b)
no
que
maximize
sob as restries
yb
(yA)j
yi
j
0
j em N ;
para
ada i em M :
para
ada
(5.2)
D(A;
; b) Ser usada a abreviatura D(A;
; b) para denotar esse programa linear e
Y (A;
) Y (A;
) para representar o
onjunto de suas solues viveis. O problema
D(A;
; b)
D(A;
; b)
xj = 0
e, para
ada ndi
e
ou
(yA)j = j
i em M , tem-se que
yi = 0
ou
(Ax)i = bi :
para todo
A idia geral do mtodo primal-dual a seguinte. O mtodo iterativo e no in io de ada iterao tem-se um vetor
vivel no programa
I (y )
J (y )
I (y) := fi 2 M : yi = 0g
J (y) := fj 2 N
: (yA)j = j g :
43
RP( )
P(A; b;
) D(A;
; b)
RP(A; b; y)
e
Se o problema
, respe
tivamente.
invivel ento, pelo lema de Farkas (le-
en ontrar um vetor
RD( )
Mtodo Primal-Dual
44
P(A; b; ) D(A; ; b)
aproximadas.
tem-se que
xj = 0
ou
(yA)j j :
x e y tm folgas -aproximadas no
ndi
e i em M , tem-se que
Dizemos que
yi = 0
ou
(Ax)i bi :
Lema 5.1 (das folgas aproximadas): Se os vetores no-negativos x e y satisfazem as
ondies de folgas -aproximadas no
primal e -aproximadas no dual, ento
x y b.
Demonstrao: Em virtude das folgas aproximadas,
(yA) x = y (Ax) y b ;
y. 2
x e a segunda
x (=) x^
y b (= ) y^ b ;
I (y )
I (y) := fi 2 M : yi = 0g
J (y; ) := fj 2 N
45
: (yA)j j g :
J (y; )
Considere o seguinte
trar um vetor
x e y.
f il
RAP()
RAD( )
Mtodo Primal-Dual
46
(=) y b (=) y^ b = (=) x^ ;
problem )
onsiste no seguinte:
Problema
(E; S; )
T.
(T ) o usto
S de usto mnimo.
(E; S;
):
x indexado por E que
minimize
x
(5.5)
sob as restries x(S ) 1 para
ada S em S ;
xe 0 para
ada e em E :
De fato, o vetor
ara
tersti
o x de qualquer transversal T um vetor
vivel de (5.5) de
usto
(T ). O
orrespondente programa dual
onsiste
em en
ontrar um vetor y indexado por S que
maximize y (S)
P
(5.6)
sob as restries
S : e2S yS
e para
ada e em E ;
yS 0 para
ada S em S :
Tome := maxS 2S jS j e seja y uma soluo vivel do problema (5.6).
O seguinte programa linear uma relaxao de MinTC
en ontrar um vetor
47
Sejam ainda
I (y) := fS 2 S : yS = 0g
J (y) := fe 2 E :
S : e2S yS
e g :
y, asso
iado
x indexado por E
ao proble-
tal que
x(S )
x(S )
xe
xe
Podemos tro
ar
1
0
S em S ;
para
ada S em S n I (y ) ;
para
ada e em J (y ) ;
para
ada e em E n J (y ) :
para
ada
=0
J (y) \ S
por
x(J (y) \ S )
x(J (y) \ S )
xe
xe
omo
1
0
S em S ;
S em S n I (y) ;
para
ada e em J (y ) ;
para
ada e em E n J (y ) :
para
ada
para ada
=0
(5.7)
S.
Se
y0
indexado por
S tal que
y0 (S) >
0
S : e2S yS
yS0
Se
0
0
0
;
para
ada
para
ada
e em J (y) ;
S em I (y) :
(5.8)
E , uma
oleo
e em Q para
ada e
em E e devolve uma transversal J de S tal que
(J ) opt(E; S;
). A
e um usto
(E; S; )
vivel.
S no vazio, e
Mtodo Primal-Dual
48
uma soluo
devolvido
y b x^ opt(E; S; ) ;
A transversal
(J ).
de
49
mtodo deixa para que estruturas espe
iais sejam exploradas para, por
exemplo, determinar os parmetros
e es olher o vetor
y0 .
Curio-
S.
um grafo e
R-oresta
de
elemento de
R uma
de
G.
de
Se
de
VG .
Uma
uma
oresta de Steiner
rvore de Steiner:
siste no seguinte:
R ontm um s onjun-
:= VG
R \ S 6= ;
para algum
por
R em R.
R n S 6= ; :
se e somente se
F (S ) 6= ;
1
para todo
em
S:
(5.9)
ondio onveniente.
Mtodo Primal-Dual
50
(S )
os ortes da forma
S inativo.
om
em
S.
Um sub onjunto de
que no
F uma
R-oresta se e somente se VT inativo para
ada
omponente T de F .
O seguinte programa linear uma relaxao de MinFS (G;
; R):
en
ontrar um vetor x indexado por E que
perten
e a
x
x((S ))
xe
minimize
sob as restries
1
0
para
ada
para
ada
S em S ;
e em E :
(5.10)
EF
maximize
sob as restries
Se
y(S)
P
e
0
S : e2(S ) yS
yS
ento
e em E ;
para
ada S em S :
para
ada
x^ uma
(5.11)
Portanto,
y(S)
opt(G;
; R) :
(5.12)
Essa delimitao inferior de opt(G;
; R) fundamental para o
l
ulo da
razo de aproximao do algoritmo que dis
utimos mais abaixo, devido
a Goemans e Williamson [GW95a.
Considere agora as
ondies de folgas aproximadas. A
ondio de
folgas
S : e2(S ) yS
= e
2
x((S )) 2
e a ondio de folgas
sempre que
(5.13)
yS > 0 :
xe > 0
(5.14)
51
indexado por
S.
O vetor
de
(F; y)
-aproximadas
S : e2(S ) yS
= e
para ada
e em F ;
(5.15)
SF
de
F ativo se VT
SF
F.
a oleo dos
x((S )) 1 de (5.10),
F.
onde
das variveis
variveis
omponente ativo.
A seguir, des
revemos o algoritmo formalmente, ainda que de maneira pou
o detalhada.
nente de
G.
(G;
; R)
R est
ontido em algum
ompo-
enquanto SF 6= ; faa
seja y 0 o vetor
ara
tersti
o de SF
seja o maior nmero tal que
P
0
S : e2(S ) (y + y )S
e para
ada aresta externa
SF
Mtodo Primal-Dual
52
7
8
9
10
11
12
S : f 2(S )
(y + y0)S = f
S no limitada por uma funo polijV j (por exemplo, jSj pode ser da ordem de 2jV j=2 ). Assim, o
A
ardinalidade da
oleo
nomial de
y no ser polinomial.
possvel on-
de
jSF j e jSF j < jV j.2 Vale a mesma observao para o vetor y0 na linha 4,
0
indexado por S e denido por yS = 1 se e somente se S 2 SF .
O
l
ulo de
o polinomial.
MinFS-GW
Anlise do algoritmo
No in
io de
ada iterao,
F0
G.
Ao
R-oresta.
1 (exer io 5.17).
53
Figura 5.1:
O grafo
Figura 5.3:
oresta
yS .
(Continua na prxima
gura.)
Antes de delimitar
mental entre
F1
(F1 ),
e a oleo
SF
em uma
Mtodo Primal-Dual
54
F de
de F ,
de
grau
em
se
jF1 (S )j = 1 ento S 2 SF :
uw;
(5.16)
S de F
tal que
F1 (S )
F1
quais
jF1 (S )j 1.
de
para os
SF [ ZF
so
S e outro
0
em S . Esse
on
eito de adja
n
ia dene um grafo, digamos H , sobre o
onjunto de vrti
es SF [ ZF . Como F e F1 so subgrafos de F0 , qualquer
ir
uito em H
orresponderia, de maneira natural, a um
ir
uito em F0 ,
o que impossvel, pois F0 uma oresta. Portanto, H uma oresta.
P
Segue da imediatamente que
S 2VH jH (S )j = 2jEH j 2(jVH j 1),
adja
entes
donde
F1
S e S0
om um extremo em
S 2SF [ZF
Em virtude de (5.16),
Portanto,
S 2SF
em
ZF .
no maior que
2 2
.
Figura 5.4:
55
Figura 5.5:
Figura 5.6:
In io da sexta iterao.
In io da stima iterao.
para o
MinFS.
No in io de ada
S 2S
jF1 (S )j yS 2y(S) ;
(5.17)
Mtodo Primal-Dual
56
Figura 5.7:
oresta
F0 .
Figura 5.8:
F1 .
=0
yS
a res ido de
se e somente se
2 SF .
Durante a
Portanto, o lado
jF1 (S )j
enquanto o lado direito a
res
ido de 2jSF j .
S 2SF
o in remento do lado esquerdo no maior que o do lado direito. Portanto a desigualdade (5.17) vale no in io da iterao seguinte.
Isso
prova (5.17).
Exer ios
57
=
=
P
P
S : e2(S ) yS
e
2
F
1
P
S 2S jF1 (S )j yS
(5.18)
2 y(S)
2opt(G;
; R) :
(5.19)
(5.20)
Exer
ios
5.1
5.2
RP(A; b; y) RD(A; b; y)
Y (A;
) y0
e
vivel.
0
y um vetor em
e
um vetor tal que y + y est em
0
Y (A;
) para todo positivo. Mostre que y est em Y (A; 0). Con0
lua que o vetor y devolvido na linha 5 dos mtodos Primal-Dual
Seja
Como
P(A; b; )
e que
D(A; ; b)
ilimitado.
5.5
positivo?
y + y0
est em
Y (A; )
para
Mostre que
Seja
Mostre que
5.7
Verique
que
mtodo
Primal-Dual
Aproximao-Primal-Dual para
5.8
Formule o
lssi o
= 1 = .
mtodo
omo um problema
Mtodo Primal-Dual
58
Formule o
de
usto mnimo.
5.10 Dados um
onjunto
um grafo
G,
F de arestas de
T -juno se T o
onjunto
grafo G[F . Formule o problema
de vrti es e um onjunto
dizemos que
uma
equivalente.
Problema MinTJ (G; T;
): Dados um grafo G, um sub
onjunto T de VG tal que jT j par e um
usto
e em Q
para
ada aresta e, en
ontrar uma T -juno F que minimize
(F ).
5.11 Formule o
omo um problema da
5.12 Para ada um dos problemas nos quatro exer ios anteriores, des reva um algoritmo que, dados um grafo
e um sub onjunto
S. O
onsumo de tempo de
ada algoritmo deve ser polinomial em hGi e
no deve depender de jSj.
de
EG ,
de ide se
MinTC
(E; S; )
(E; S;
)
2
equiva-
-aproximao
(E; S; )
equivalente. Mos-
Notas bibliogrfi as
59
sejam
9b
f1; : : : ; fk
os elementos de
foram in ludos em
para
9d
J , na ordem em que
i de k at 1 faa
J n ffi g uma transversal ento J
se
(G; ; R)
pusermos que
J n ffi g
L1 L2
ou
laminar.
5.18 Mostre
GW
que
razo
de
(G; ; R) 2 2=n
aproximao
, onde
n := jVG j.
do
algoritmo
MinFS-
(G; ; R)
hGi.
Notas bibliogr
as
Este
aptulo foi es
rito
om base nos livros de S
hrijver [S
h86,
Papadimitriou e Steiglitz [PS82, Ho
hbaum [Ho
97 e no artigo de Goemans e Williamson [GW95a.
O livro de Papadimitriou e Steiglitz [PS82 apresenta diversos algoritmos
ombinatrios
lssi
os que podem ser entendidos
omo uma mmi
a do mtodo primal-dual, in
luindo o algoritmo de Dijkstra [Dij59
Mtodo Primal-Dual
60
para en
ontrar
aminhos de
usto mnimo, o algoritmo de Ford e Fulkerson [FF56 para en
ontrar um uxo mximo, algoritmos primaldual para o problema do uxo de
usto mnimo, o mtodo hngaro de
Kuhn [Kuh55 para en
ontrar um emparelhamento de
usto mximo em
um grafo bipartido, e o algoritmo de Edmonds [Edm65a para en
ontrar
um emparelhamento de
usto mximo em um grafo.
O primeiro algoritmo de aproximao genuinamente primal-dual, ou
seja, o primeiro a usar uma soluo dual vivel para obter, iterativamente, uma soluo aproximada do problema primal, foi o algoritmo de
Bar-Yehuda e Even [BYE81 para o problema da
obertura mnima por
vrti
es. Trata-se, essen
ialmente, do algoritmo des
rito na seo 5.3. A
anlise dessa abordagem apare
e em um artigo de Ho
hbaum [Ho
82,
que obteve um algoritmo
om a mesma razo de aproximao usando o
mtodo dual.
A primeira
ner foi obtida
por Agrawal,
Esse traba-
lho introduziu modi
aes poderosas no mtodo primal-dual bsi
o, e
om isso deu um grande impulso s pesquisas sobre problemas
de projetos de redes (network
design problems ),
a [AG94, GGW98, GGP 94, GW95a, Rav94, RW95, WGMV95. Segundo Goemans e Williamson [Ho
97, esse trabalho de Agrawal, Klein
e Ravi foi o primeiro a fazer uso altamente sosti
ado do mtodo primaldual para projetar algoritmos de aproximao.
O problema da oresta de Steiner pode ser
lassi
ado
omo um
problema de projeto de redes. Esse tipo de problema
onsiste em exigir
um
erto grau de
onexo entre
ertos pares de vrti
es de um grafo. O
on
eito de funes prprias uni
a vrios desses problemas: o problema da oresta de Steiner, o problema do
aminho mnimo, o problema
da
onexo ponto-a-ponto, o problema da
T -juno
mnima, o proble-
Usando apenas
as propriedades que
ara
terizam funes prprias, Goemans e Williamson [GW95a, Ho
97 mostraram que todos esses problemas admitem
uma
-aproximao polinomial.
1;55
[WG94,
Notas bibliogrfi as
61
%).
Os mesmos autores
62
Mtodo Primal-Dual
Captulo 6
Algoritmos Probabilsti
os
Neste
aptulo vamos supor que temos nossa disposio um gerador de
bits
aleatrios (random
bits generator ),
ou seja, um algoritmo
om probabilidade
om
domized ).
probabilsti o (ran-
no apenas da instn
ia do problema mas tambm dos nmeros devolvidos por Rand. Dizemos que um algoritmo probabilsti
o
se existe um polinmio
polinomial
do problema,
p(hI i).
Vamos generalizar a denio de algoritmos de aproximao (seo 1.2) para englobar algoritmos probabilsti os.
Considere um algo-
por
63
Rand
Algoritmos Probabilsti os
64
esperada de A.
I.
Dizemos que
uma
razo de aproximao
-aproximao proA pode ser usada para produzir, om alta probabilidade, so-
lues aproximadas do problema. Suponha que o problema de minimizao e que a varivel aleatria
XI
"
opt(I )
XI
=
:
Pr[XI ( + ")opt(I ) (+E"[)opt(
I ) (+")opt(I ) +"
Para um dado
+" .
apli ado
( + ")opt(I )
( + ")opt(I )
.
Para
YI
, seja
:= dlog e
vezes instn ia
, onde
e es olha
Pr[YI
(0; 1)
no intervalo aberto
Suponha que
(
0 ; P0 ) 0o espao
de probabilidade
0
0 0
denida o produto (
; P ) (
; P ) de k
Denotando por
65
lity problem ),
Problema
C tem duas
variveis [GJ79.
Algoritmo de Johnson
Eis um algoritmo probabilsti
o para o problema MaxSat. O algoritmo atribudo a Johnson [Joh74. Ele to simples que ignora
C:
Algoritmo MaxSat-Johnson (V )
1
para
ada v em V faa
2
x_ v Rand ( 12 )
3
devolva x_
No algoritmo a
ima, o nmero de
hamadas a Rand e o
onsumo
de tempo das demais operaes
O(jV j).
XC
a varivel aleatria
(V )
(
; P) (
; P)
(
; P)
jV j
f0; 1g P
P(1) = P(0) = 21
Teorema 6.1 Se (V; C) uma instn
ia do problema MaxSat
XC
Seja
O espao de probabilidade de
o espao produto
vezes no produto,
sobre
, onde
o onjunto
apare e
a medida de probabilidade
dada por
XC
Algoritmos Probabilsti os
66
ZC
ZC := 1
:= 0
x_ v 0
[ZC =0
1 1=2k
da seguinte maneira:
mo satisfaz
ZC
em aso ontrrio.
variveis e no algoritmo
dade do evento
[ZC =1
ZC ,
1=2
1=2
, a probabili-
[ (1 21k )jCj
opt(V; C) jCj 2
C E ZC
e a probabilidade do evento
. Portanto, omo
E[XC = E[PC ZC =
Como
om probabilidade
no mximo
pelo menos
aleatrias
(V; C)
om
=1
e on luir o seguinte
resultado.
MaxSat-Johnson
de uma soluo tima de um programa linear. O arredondamento probabilsti
o de um nmero do intervalo aberto (0; 1)
onsiste em arredondar para
ima
om probabilidade e para baixo
om probabilidade 1
.
rounding )
dada uma
maximize
C 2C zC
sob as restries
v2C0
(1
xv ) +
v2C1
0
0
xv
zC
xv
zC
1
1
C em C ;
para
ada C em C ;
para
ada v em V :
para
ada
(6.1)
em
C,
faa
zC
:= 1
se
67
(x ; z )
x .
C satisfeitas
MaxSat
(V; C)
^ opt(V; C) ;
(^x; z^)
C zC
(6.2)
de (6.1).
(^x; z^)
jV j e jCj,
om o tamanho de
x^
z^
E[XC 1 (1 k1 )k opt(V; C) :
ZC
x^v , para v
em
dena
ZC
seja
C0 , e (1 x^v ), para v
ZC
da maneira usual:
C e 0 em aso
o produto de termos da
em
C1 .
(
; P1 ) (
; PjV j ),
Pi (1) = x^i e Pi (0) = 1 x^i para
ada i em V .
O espao de probabilidade
dado por
C,
onde
t o nmero
de
= f0; 1g e Pi
Algoritmos Probabilsti os
68
variveis de
ento
t1e
(6.3)
= 1 (1 z^C =t)
(1 (1 1=t)t )^zC
(1 (1 1=k)k )^zC :
t
(6.4)
(6.5)
Para justi ar (6.3), note que a mdia geomtri a de nmeros nonegativos no ultrapassa a sua mdia aritmti a. Disso temos que
v2C0
x^v
v2C1
. Observe
, pois
, temos que
, que se
t 1 e, por hiptese, t k.
E[XC =
=
=
E[PC ZC
P
E[ZC
PC
Pr[ZC =1
PC
XC :
C (1 (1 1=k)k )^zC
(1 (1 1=k)k )opt(V; C) ;
onde a ltima desigualdade segue de (6.2). 2
Como
(1 1=k)k
no passa de
1=e
k1
(1 1=k)k < 1=e < 0;37
para todo
, onde
. Desse
MaxSat-GW
uma 0;63-aproxi-
MaxSat.
Algoritmo
ombinado
O teorema 6.1 permite deduzir uma razo de aproximao melhor do
algoritmo MaxSat-Johnson quando todas as
lusulas tm pelo menos
6.2 Desaleatorizao
69
variveis. Sejam
XC , X_ C e X C
C satisfeitas por uma valorao produzida por MaxSat-Combinado-GW (V; C), MaxSat-Johnson (V )
1 _
e MaxSat-GW (V; C), respe
tivamente. Note que XC (X
2 C + XC ).
onde
(6.6)
(6.7)
6.2 Desaleatorizao
Em muitos
asos, possvel
onverter um algoritmo de aproximao probabilsti
o em um determinsti
o
om uma razo de aproximao
Algoritmos Probabilsti os
70
Para apli -lo, pre isamos saber al ular e ientemente ertas esperanas ondi ionais, que dependem do problema em fo o.
esse o erne
0;5
-aproximao polino-
No algoritmo a ima,
D um multi onjunto
iterao, D
ontm, alm de pares f;; ;g, que
hamaremos de pseudo
lusulas, apenas as
lusulas de C que a valorao par
ial x_ do algoritmo ainda no satisfez. Ademais, de
ada
lusula de
eliminadas as variveis
ujos valores
x_ j xou.
C em D, foram
XD
(V )
. Se
6.2 Desaleatorizao
71
i=0
maneira anloga.
esp
para ada
C em D faa
k jC1 j + jC0 j
se v 2 Ci
3
4
ento esp
esp + 1
seno se v 2 C1 i
ento esp
esp + (1
seno esp
esp + (1
devolva esp
5
6
7
8
9
2 k+1 )
2 k)
XC
(V )
MaxSat-Johnson
=1
1=2 x_ v = 0
1=2
1
1
E[XC = 2 E[XCjx_ v =1 + 2 E[XCjx_ v =0
E[XC
E[XCjx_ v =1 E[XCjx_ v =0
E[XC E[XCjx_ v1
XC
MaxSat-Johnson
x_ v1
MaxSat-Johnson-Desaleatorizado
x_ v1
mo MaxSat-Johnson
x_ v
Como, no algoritmo
om probabilidade
om probabilidade
, te-
mos que
Logo,
, onde o ltimo
mo
, atribua-se a
algoritmo
valor de
on lumos que
0;5opt(V; C)
, pois
(v; i; D)
onsome tempo
O(jV j).
Disso, f-
Algoritmos Probabilsti os
72
pro
edimento para o
l
ulo das esperanas
ondi
ionadas bem simples.
Em outros problemas, esses
l
ulos podem ser bastante
ompli
ados,
inviabilizando o pro
esso de desaleatorizao.
RandUni
[0; 1)
Nessa deni-
[0; 1)
()
om
se o nmero
Rand um nmero polinomial de vezes. Por isso razovel dizer que esta
nova denio uma generalizao da original. A desvantagem da nova
denio que ela requer manipulao nmeros reais.
Exer
ios
6.1
Algoritmo MaxSat-CaraCoroa (V )
b Rand( 12 )
v
V
x_ v b
x_
(V; C)
1
2
para ada
devolva
em
faa
0; 5
-aproximao probabilsti a
Exer ios
6.2
73
0;5
-apro-
Projete uma
0;5
G, um peso we em Q
Projete uma
0;5
Prove,
0;63
6.6
2
3
4
5
se
ento
seno
devolva
0;5
linomial para o MaxSat. Es
reva e
omente a verso desaleatorizada deste algoritmo. O que muda se alterarmos o
algoritmo para um outro valor no intervalo
6.7
(0; 1)
1
2
da linha 1 do
junto
peso
en ontrar uma valorao que maximize a soma dos pesos das lu-
Algoritmos Probabilsti os
74
sulas satisfeitas.
Considere
seguinte
algoritmo
para
Es alonamento (se-
Notas bibliogr
as
A dis
usso do algoritmo MaxSat-GW um resumo de um artigo de Goemans e Williamson [GW94; resumos semelhantes apare
em
no livro de Motwani e Raghavan [MR95b e no livro editado por Ho
hbaum [Ho
97. Os exer
ios 6.1, 6.3 e 6.4 foram extrados do livro de
Vazirani [Vaz01.
O livro de Motwani e Raghavan [MR95b um texto abrangente
sobre algoritmos probabilsti
os,
om muitos exer
ios e problemas de
pesquisa.
O algoritmo MaxSat-Johnson atribudo a Johnson [Joh74, embora este tenha es
rito a verso no-probabilsti
a do algoritmo. A primeira
0;75
0;797
-aproximao para o
0;784
0;833
-aproximao para
al.
[ABI86.
et
Notas bibliogrfi as
bits
uma seqn ia de
75
aleatrios.
bits
Freqentemente,
k-mutuamente independentes.
Para expli
ar este
on
eito, denote por b1 ; : : : ; bn os bits produzidos por
n
hamadas de Rand. Dizemos que b1 ; : : : ; bn so k-mutuamente independentes se, para qualquer subseqn
ia bi1 ; : : : ; bik de b1 ; : : : ; bn , a
k
probabilidade de que bi1 ; : : : ; bik
oin
ida
om qualquer das 2 seqn
ik
as de k bits 2
. Enquanto independn
ia plena requer um espao de
basta que os
bits
probabilidade omposto de
2n
de probabilidade om
independentes. Se
nk=2
bits
so
k-mutuamente
esperado
uma onstante.
76
Algoritmos Probabilsti os
Captulo 7
Programao Semidenida
Como vimos nos ltimos
aptulos, relaxaes lineares so muito
usadas na obteno de algoritmos de aproximao para problemas de
otimizao
ombinatria.
sua simpli
idade e existn
ia de algoritmos e
ientes para resolver programas lineares. Neste
aptulo, utilizamos outra
lasse de relaxaes
os
(maximum
ut problem ), denotado
wij
ex ede
=1
ij
no
[GJ79.
x indexado por V
1P
xi xi
77
que
wij (1 xi xj )
1 para
ada i em V ;
ij 2E
Gew
(7.1)
Programao Semidefinida
78
onde
:= VG
:= EG
1 P
2 ij 2E wij (1
Portanto,
xi xj )
= w((S )) :
(7.2)
xi
:= 1
se
opt(G; w) =
para qualquer soluo tima
x
1 P
2 ij 2E wij (1
xi xj )
(7.3)
de (7.1).
tor que maximize uma funo quadrti a sujeita a restries quadrti as. Obviamente no sabemos resolver este programa quadrti o e ientemente, do ontrrio teramos um algoritmo exato polinomial para o
Relaxao vetorial
Uma relaxao vetorial de (7.1)
onsiste em tro
ar
ada
omponente
de
Mais pre i-
indexada por
V
que
1P
2 ij 2E wij (1
maximize
(Y Y >)ii = 1
sob as restries
(Y Y >)ij )
para
ada
(7.4)
i em V :
Y.
ada omponente
de
xi xi
=1
omo
xi
orresponde
Yi? Yi? = 1.
de (7.1).
Seja
Con-
um vrti e qualquer e
Y,
digamos
N,
poderia ser
V.
Se
79
Y?k
=x
Y?i
=0
para ada
diferente de
k.
>
evidente que (Y Y )ij = Yi? Yj? = xi xj para
ada i e
ada j . Em
>
parti
ular, (Y Y )ii = xi xi = 1 e portanto Y vivel em (7.4). AdeP
P
mais,
wij (1 (Y Y >)ij ) =
wij (1 xi xj ). Assim, para qualquer
ij
soluo
P
ij
P
xi xj ) ij wij (1
tima
ij wij (1
Y^
(Y^ Y^ >)ij )
x
de (7.1), tem-se
a delimitao superior
opt(G; w)
1P
2 ij 2E wij (1
(Y^ Y^ >)ij ) :
(7.5)
Resta dis
utir a existn
ia de uma soluo tima do programa vetorial (7.4). O
onjunto das solues viveis de (7.4) um sub
onjunto
fe
hado e limitado do espao de todos os vetores reais indexados por
V V .
para qualquer
Como
ij wij
vivel tem-se
(1 (Y Y >)ij )
funo ontnua de
Y,
o programa (7.4)
indexados por
qualquer matriz
tais que
krk = 1.
esfera.
Rand
Esfera
Programao Semidefinida
80
R3 .
s pertena
fr : r y^ > 0g e
y^ e z^,
Graas
x no intervalo [ 1; 1,
1 ar
os(x) 0;878 1 (1
2
x) :
(7.6)
81
1
0;8
0;6
0;4
0;2
0
0;5
0;878 (1
0;5
Figura 7.2:
1
2
ento
E[X 0;878opt(G; w) :
E[X =
ij 2E
wij Pr[ ij 2 (S )
1 ar
os ((Y^ Y^ >)ij )
P
1
0;878 2 ij2E wij (1 (Y^ Y^ >)ij )
0;878opt(G; w) ;
P
ij 2E wij
(7.7)
O algoritmo MaxCut-GW supe um modelo de
omputao (apndi
e E) muito mais poderoso e menos realista que o dos
aptulos anteriores: o modelo
apaz de manipular nmeros reais arbitrrios e supe
que
ada operao aritmti
a
onsome uma quantidade de tempo que
no depende dos valores dos operandos. Veremos na prxima seo que
a linha 1 do algoritmo MaxCut-GW pode ser exe
utada em tempo
polinomial em
tando.
2
Programao Semidefinida
82
om
tempo
MaxCut-GW
que
minimize
sob as restries
PV
()
P
>
ij 2V V Wij (Y Y )ij
P
>
ij 2V V Akij (Y Y )ij
bk
para ada
k em M :
(W; A; b)
. f il per eber
adotando.
onexo om programas lineares) pode ser usado para resolver programas no-lineares ujo onjunto das solues viveis seja fe hado e onvexo
4 [GLS93, S h86.
vetorial PV
(W; A; b)
X 0
X positiva semidenida, o
X 0, se X = Y Y > para alguma matriz quadrada
real Y . Um programa semidenido
onsiste no seguinte: dada uma
matriz W indexada por V V , uma matriz A indexada por M (V V )
e um vetor b indexado por M , en
ontrar uma matriz X indexada por
Dizemos que uma matriz quadrada
4
0
Um
onjunto Y de vetores
onvexo se, para quaisquer y e y em Y e qualquer
no intervalo fe
hado [0; 1, o vetor y +(1 )y 0 est em Y. O
on
eito de
onjunto
V
83
que
P
ij Wij Xij
P
minimize
ij Akij Xij
sob as restries
bk
(W; A; b)
PV
uma
(W; A; b)
(W; A; b)
orrespondn ia
simples
entre
solues
(W; A; b)
(W; A; b)
Y Y> =X
(W; A; b)
(W; A; b)
Y
(W; A; b)
.
, ento a equao
Se
viveis
do
uma soluo
do PV
vivel do PSD
k em M
5
for limitado, o problema tem soluo tima.
para ada
0 :
, ento
Existem algoritmos elementares (apndi e B) que determinam, para qualquer matriz positiva semidenida
Y Y > = X.
X , uma matriz
real
tal que
tal que
problema vetorial.
O
onjunto das solues viveis de qualquer programa semidenido
onvexo e fe
hado. Ademais, o programa semidenido derivado do Max-
X 0, ou seja,
ra ionais.
W , A e b sejam
PSD
()
Programao Semidefinida
84
mais realista: basta exe utar todos os l ulos om alguma pre iso nita. (Determinar uma pre iso dos l ulos que produza razo de aproximao prxima de
0;878
pode tambm ser implementado [Joh87, Dev86, Knu98 de maneira aproximada a partir de um gerador de nmeros aleatrios
om distribuio
uniforme no intervalo
[0; 1)
O algoritmo dos elipsides, bem omo qualquer outro algoritmo usado para resolver programas semidenidos, forne e apenas solues aproximadas de tais programas. Isso inevitvel, j que as solues timas
(W; A; b)
de PSD
mo dos elipsides pode ser usado para produzir [GLS93, para qualquer
"
(W; A; b)
PSD
",
as restries de
Exer
ios
7.1
Verique que o onjunto das solues viveis do programa vetorial (7.4) no , em geral, onvexo.
7.2
7.3
Verique que o onjunto das solues viveis do programa semidenido orrespondente a (7.4) fe hado e limitado.
7.4
Des reva um programa vetorial uja soluo tima tem valor irra ional.
7.5
7.6
(V; C)
em que ada
Formule o Max Cut (exer
io 6.3)
omo um programa quadrti
o. Exiba uma relaxao vetorial deste programa e uma relaxao
semidenida dele.
7.8
S1 e S2 e queremos um
orte de
peso mximo que deixe os vrti
es de S1 em um mesmo
omponente e separe quaisquer dois vrti
es em S2 . Formule esse problema
Notas bibliogrfi as
85
Notas bibliogr
as
A apresentao desse
aptulo inspirou-se no artigo de Goemans e
Williamson [GW95b, nas notas de aula de Williamson [Wil98, no
book of Combinatori s
Hand-
0;5
(algoritmo
(G; w)
0;878opt(G; w)
0;878
0;796
0;758
0;859
0;931
-aproximao para
0;875
Karlo
(n1
k.
n vrti es e n-
86
Programao Semidefinida
Captulo 8
Inaproximabilidade
Por que alguns problemas de otimizao pare
em ser mais dif
eis
de aproximar do que outros? Como podemos medir ou
omprovar estes
diferentes graus de di
uldade?
desse tipo.
Cook [Coo71 mostrou que a
lasse NP
ontm problemas
ompletos,
ou seja, problemas que so pelo menos to dif
eis quanto qualquer outro problema na
lasse. Estes so os
hamados problemas NP-
ompletos
(apndi
e E).
6= NP.
Assim
omo problemas de de
iso so
lassi
ados
onforme a sua di
uldade
omputa
ional, problemas de otimizao so
lassi
ados
onforme o seu grau de aproximabilidade por algoritmos polinomiais. Neste
aptulo so denidas as
lasses PO, FPTAS, PTAS, APX e NPO de
problemas de otimizao.
Nos
aptulos anteriores foram estudados diversos algoritmos de
aproximao para vrios problemas NP-dif
eis. Para nenhum dos problemas estudados foi apresentada evidn
ia de que no existem algoritmos
om melhor razo de aproximao. Neste
aptulo mostramos que,
freqentemente, a di
uldade em se obter uma melhor razo de aproximao est intrinse
amente ligada questo P
6= NP?. Apresentamos
um problema de otimizao.
87
NP
Inaproximabilidade
88
existn ia de uma
-aproximao
polinomial para
improvvel. Por
NP
Sol
val(I; S )
Um
problema de otimizao
onsiste no seguinte:
Problema
Uma
(I )
soluo tima
val
. Denotamos por
NPO
opt(I )
I.
de
I;
APX
-aproximao
Um
esquema de aproximao
(approximation
"
e uma instn ia
s heme )
para um
(1
89
", ou seja,
Se o problema
1 Dizemos
approximation s heme )
A limitada
por
esquema de aproximao
NP.
NP, ento
NPO.
Como pode ser veri
ado, todos os problemas de otimizao estudados ao longo do presente texto esto em NPO. Assim, os algoritmos
de aproximao vistos distribuem esses problemas nas
lasses denidas
a
ima. Com ex
eo do teorema 8.2, todos os teoremas a seguir esto,
essen
ialmente, demonstrados nos
aptulos anteriores.
alonamento
1
est em PTAS.
Se o problema de maximizao e
Es-
O problema
PTAS
FPTAS
Inaproximabilidade
90
esto em
NPO
Empa otamento,
TSPM
esto em APX.
MaxCut,
6= NP?.
onstante.
NP.
uma
resolve o problema do ir uito hamiltoniano, denotado por PCH. O algoritmo o seguinte. Dado um grafo
G,
(K;
) do TSP, onde K o grafo
ompleto
om
onVG de vrti
es e
usto
e = 1 se a aresta e est em G e
e = jVG j
se e no est em G. Uma soluo vivel da instn
ia (K;
) do TSP
um
ir
uito hamiltoniano em K e o valor da soluo vivel o
usto
do
ir
uito. Aplique o algoritmo A instn
ia (K;
). A exe
uo do
onstrua a instn
ia
junto
hGi.
G hamiltoniano ento opt(K;
) = jVG j e, se G no hamiltoniopt(K;
) > jVGj. Donde, val((K;
); A(K;
)) jVG j se e
somente se G hamiltoniano. A existn
ia de um tal algoritmo polinoSe
ano, ento
mial mostra que PCH est em P. Como PCH NP-
ompleto [Kar72,
temos que P
NP.
NP.
91
A(1=3; ),
pode-se projetar
(n; v)
do problema, al ule
:= (Pi vi)=2
i := vi =
.
Podemos
Isso tudo
onsome uma quantidade de tempo limitada por uma funo
polinomial de
hni + hvi.
(n; v) sim
opt(n;
)
(n;
)
val((n;
); A(1=3; (n;
)))
val((n;
); A(1=3; (n;
))) (1 + 1=3) opt(n;
) = (4=3) opt(n;
) ;
Partio(n; v )
sim
val((n;
); A(1=3; (n;
))) = 2
Partio
Partio
= 2
I
(I )
I
(I ) := 0
I MaxSat
Se a resposta a Partio
de Empa otamento
Como
um nmero inteiro e
resposta
do
problema
se
somente
se
temos que P
Se
NP.
denido o-
; dena
um
exemplo em que isso o orre). Estamos supondo que os nmeros ra ionais so representados omo quo iente entre dois nmeros inteiros. Assim, por exemplo, se o nmero
3=17
o orre em
Seja um problema
de otimizao NP-dif
il no sentido forte tal que val(I; S ) um
nmero inteiro no-negativo para toda instn
ia I e todo S em
Sol(I ). Seja ainda p(n; m) uma funo polinomial tal que
Teorema 8.7
opt(I ) p(hI i; (I ))
para toda instn
ia I de . Se est em
Max
FPTAS
Na prova,
, ento P = NP.
1=3 pode ser substitudo por qualquer ra ional no intervalo (0; 1=2).
Max
(I )
Inaproximabilidade
92
. Utilizan-
resolver o problema
NP.
Como
so inteiros,
do resolve
que P
exatamente. Como
NP.
Problema Es
alonamentoInt (m; n; t): Dados inteiros positivos m e n e um tempo ti em Z para
ada i em f1; : : : ; ng,
en
ontrar uma partio fM1 ; : : : ; Mm g de f1; : : : ; ng que minimize maxj t(Mj ).
93
de
tido forte.
NP-dif il no sen-
NP.
PTAS, ento improvvel que existam esquemas de aproximao plenamente polinomiais para todos os problemas em PTAS.
Para a
Inaproximabilidade
94
de otimizao
0
um terno
(f; g; )
em que
f e g so algoritmos e
(AP2)
(AP3)
(AP4)
e uma instn ia
de
(1
ento
AP
(1
AP 0
reduo de
ando que
0 .
AP 0
Dizemos que
0
signi-
Teorema 8.11 : Se 1
3 . 2
AP 2 e 2 AP 3 ,
ento
1 AP
0 , ento est em
APX
0 , ento est em
PTAS
8.3 Completude
problemas de otimizao
PSfragpara
repla
ements
Algoritmo A ("; I )
1
"=
2
I 0 f (; I )
3
S 0 A0 (; I 0 )
4
S g(; I; S 0 )
5
devolva S
95
f (; I )
I0
A0 (; I 0 )
A("; I )
S0
g (; I; S 0 )
I0
0
uma instn ia de
, que
S0
est em Sol
(I 0 ) =
Sol
(f (; I ))
, que
(I )
(1 ) opt(I 0 ) val(I 0 ; S 0) = val(f (; I ); S 0 ) (1 + ) opt(f (; I )) :
est em Sol
, e que
(1
est em PTAS.
Um problema
em APX
problema em
Teorema 8.14
- ompleto.
APX
Um problema
O problema
, no ne essariamente em APX,
MaxSat
APX-dif il
NP.
se
impli-
n PTAS.
TSPM
TSP
NP.
MaxSat,
so
-dif eis.
APX
MinTC,
Inaproximabilidade
96
Um problema
em NPO
Teorema 8.16
TSP
NPO
n APX.
- ompleto.
em
6= NPO, ento
O problema
limiar de aproximao
(approximation
threshold )
de um pro-
para os
No aso de
6=
Mo
hila
Es
alonamento
Empa
otamento
MaxCut
MaxSat
MinCV
TSPM
(E; S;
)
(E; S;
)
TSP (G;
)
MinCC
MinTC
limiar de aproximao
Exer
ios
8.1
MaxCut, MaxSat, Mo hila, MinCC, MinCV, MinFS, MinMCut, MinTC, TSPM, e TSP esto em NPO.
Exer ios
8.2
97
8.3
Uma
estrela
(m; n; t)
om apenas duas
m = 2) NP-dif il.
(G; S; )
Se
asso iado
Problema D (I;
): Dados uma instn
ia I e um nmero ra
ional
, de
idir se existe S em Sol(I ) tal que
val(I; S )
.
Em aso de
val(I; S )
se
8.5
por
val(I; S )
D
D
Mostre que
V
Mostre que se
Seja
V
+
[ACG 99.
D V
est em NPO
nomialmente equivalentes
8.7
na denio de
Mostre que se
8.6
D
xo.
so poli-
D(;
)
((
+ 1)=
)
NP-
, ento P
-aproximao polinomial para um deles pode ser transformada em uma -aproximao polinomial para o outro.
uma
Problema
Empa otamentoInt
( ; n; v)
Dados inteiros
V
Inaproximabilidade
98
positivos
e n e, para
ada i em f1; : : : ; ng, um nmero inteiro vi em f0; : : : ;
g, en
ontrar uma partio B de
f1; : : : ; ng tal que v(B )
para todo B em B e jBj seja
mnimo.
8.9
-aproximao
TSP
(G; )
, ento P
NP, onde
tempo polinomial.
Notas bibliogr
as
A apresentao deste
aptulo baseou-se nos livros de Ausiello
al.
et
se
TSP
est em
, ento
APX
NP.
Notas bibliogrfi as
99
Papadi-
MAXNP
MAXSNP
NP. Hou-
+ 94;
en-
129=128
100
Inaproximabilidade
Apndi e A
Um
mentos de
vw
onde
so hamados
uma aresta,
e w de
v e w. Se
ada
grafo
ompleto.
vrti es
1 de elementos de
extremos
de arestas por
VG
EG
hGi
Cortes e graus
Para qualquer
onjunto
por
G (X ),
de vrti es de um grafo
ou simplesmente por
(X ),
G,
denotamos
VG n X . Um
orte (
ut )
qualquer
onjunto da forma (X ), onde X um sub
onjunto de VG .
Um
onjunto X de vrti
es separa um vrti
e x de outro y se x 2 X
enquanto y 2 VG n X . Nessas
ondies, dizemos tambm que o
orte
(X ) separa x de y.
que tm um extremo em
e outro em
no-ordenado omo
(X )
102
Se
um vrti e, es revemos
(v)
no lugar de
(fvg).
O nmero
Um vrti
e
nmero
isolado
se tem grau
grau mximo
em
Subgrafos
H subgrafo de um grafo G se VH VG e EH EG . Se
H subgrafo prprio de G. Se VH = VG ,
dizemos que H um subgrafo gerador (spanning subgraph ) de G.
Para qualquer
onjunto F de arestas de G, denotamos por G
Fo
subgrafo gerador de G
ujo
onjunto de arestas EG n F . Se F = ff g,
podemos es
rever G
f.
Dizemos que H um subgrafo induzido de G se EH o
onjunto
de todas as arestas de G que tm ambos os extremos em VH . O subgrafo
induzido de G que tem X por
onjunto de vrti
es denotado por G[X .
Para qualquer sub
onjunto Y de VG , denotamos por G
Y o grafo
G[VG n Y . Se Y = fyg, podemos es
rever G y.
O subgrafo de G induzido por um sub
onjunto F de EG o grafo
(V (F ); F ), onde V (F ) o
onjunto de todos os vrti
es que so extremo
de algum elemento de F . Podemos denotar esse subgrafo por G[F .
Se F um
onjunto de pares no-ordenados de elementos de VG ,
denotamos por G + F o grafo (VG ; EG [ F ) de G. Se F = ff g, podemos
es
rever G + f .
Um grafo
G F
G[X
G Y
G[F
G+F
que
extremos.
103
Um
hamiltoniano. Analogamente,
ir
uito hamiltoniano.
aminho
C denotado
por EC . O
omprimento de um
aminho ou
ir
uito C jEC j, ou seja,
o nmero de arestas de C .
O
onjunto de arestas de um
aminho ou
ir
uito
Conexo e
omponentes
onexo se, para todo par (v; w) de seus vrti
es, existe
um passeio
om origem v e trmino w .
laro que um grafo G
onexo
se e somente se G (X ) 6= ; para todo sub
onjunto no vazio e prprio X
de VG .
Um
omponente de um grafo G qualquer subgrafo
onexo ma2
ximal de G. s vezes
onvm
onfundir um
omponente
om o seu
Um grafo
Florestas e rvores
Uma
oresta
Se
rvore (tree ) uma oresta
onexa. Portanto,
ada
omponente de uma oresta uma rvore. Se T uma rvore, ento jET j = jVT j 1.
Para qualquer par (x; y ) de vrti
es em uma rvore, existe um e um s
aminho de x a y .
Uma oresta geradora de um grafo G qualquer subgrafo gerador
de G que seja uma oresta, isto , qualquer oresta F tal que VF = VG
e EF EG . Uma rvore geradora (spanning tree ) de um grafo G
qualquer subgrafo gerador de G que seja uma rvore. Todo grafo
onexo
Uma
Um subgrafo
de
G maximal
minimais
H0
de
EC
104
Grafos bipartidos
biparti
o de um grafo G qualquer partio fX; Y g de VG
(X ) = EG . Um grafo admite uma bipartio se e somente se
no tem
ir
uito de
omprimento mpar [BM76. Um grafo bipartido
Uma
tal que
(bipartite
graph )
Grafos planares
planar se for isomorfo a um mapa. Mais pre
isamente,
G planar se existe um mapa (V; E ) e uma bijeo de de VG
em V tal que, para todo par (v; w ) de vrti
es de G, tem-se vw 2 EG se
e somente se algum elemento de E tem extremos
(v) e (w).
Um mapa um par (V; E ) onde (1) V um
onjunto nito de pontos
do plano, (2) todo elemento de E um ar
o entre dois elementos de V ,
(3) elementos diferentes de E tm diferentes
onjuntos de extremos, (4) o
interior de um elemento de E no
ontm elementos de V nem pontos
que pertenam a outro elemento de E .
Um ar
o a unio de um nmero nito de segmentos de reta no
plano que seja homeomorfa ao intervalo fe
hado [0; 1 da reta; as imagens
de 0 e 1 sob esse homeomorsmo so os extremos do ar
o.
Um grafo
um grafo
Multigrafos
s vezes,
onvm admitir a existn
ia de arestas mltiplas em um
grafo, ou seja, a existn
ia de vrias
pias de uma mesma aresta. Dizemos nesse
aso que temos um multigrafo.
Custos e pesos
uma funo que asso
ia um nmero
e a
ada aresta
Para qualquer
onjunto F de arestas do grafo, denotamos
Suponha que
e de um grafo.
3
Um multi onjunto pode ter mais de uma pia de ada um de seus elementos; o
nmero de pias a
multipli idade
do elemento.
105
por
(F ) a soma dos f
para
em
(F ) :=
f 2F f
=;
( )
F:
denimos
, ento
106
Apndi e B
Vetores e Matrizes
Um
xQ
ra ional.
inteiro.
Como
x nulo se xj
=0
j;
xj
Se
xey
yj para ada j ,
dizemos que
Matrizes
Uma
matriz
M N , dizemos que M
matriz sobre
M N
ou indexada por
107
xy
x0
Vetores e Matrizes
108
A em (i; j ).
Uma linha de A um vetor sobre N : a linha i de A o vetor
ujo
omponente j Aij para
ada j em N . A
oluna j de A denida
analogamente. A
oluna j de A ser denotada por AMj ou A?j e a linha
i por AiN ou Ai? .
Se P e Q so sub
onjuntos de M e N , respe
tivamente, ento AP Q
a restrio de A a P Q, ou seja, a matriz sobre P Q
ujo
omponente
(p; q) vale Apq para
ada p em P e
ada q em Q.
Dizemos que a matriz ra
ional se todos os seus
omponentes so
ra
ionais e inteira se todos os seus
omponentes so inteiros.
>
A transposta de uma matriz A sobre M N a matriz A sobre
>
>
N M denida por Aij = Aji . Portanto, a linha i de A a
oluna i
>
de A.
laro que a transposta de A A. Uma matriz A simtri
a
>
se A = A.
Uma matriz quadrada se seus
onjuntos de ndi
es de linhas e
seja, o valor de
A?j
Ai?
AP Q
A>
Uma matriz
para
ada
i.
identidade
Produtos
x e y sobre um mesmo
onjunto N , o produto
x por y o nmero
xy
:=
j 2N
xj yj :
xy = y x. Por exemplo, se y P
o vetor
ara
tersti
o de um
Q de N , ento xy a soma q2Q xq , que
onven
ionamos
denotar por x(Q).
Suponha agora que A uma matriz sobre M N . O produto de A
por um vetor x sobre N o vetor
bvio que
sub onjunto
Ax
sobre
M
ujo
P
omponente i o produto da linha i de A por x, ou seja,
j Aij xj . O produto de um vetor y sobre M por A o vetor
o nmero
yA
109
i yi
N , o produto de A por B
AB
sobre
LN
ujo omponente
>
> >
evidente que (AB ) = B A .
(i; k)
Ai? B?k .
menos evidente que (AB ) C = A (BC ),
o produto de vetores
AB = BA = I .
Normas e tamanhos
Denotamos por
matriz
tal
kxk a norma
do vetor
x.
Assim,
x.
O tamanho de um nmero inteiro o nmero de
ara
teres (diga-
vetor
hi. O tamanho de
e denominador a soma dos
tamanhos de e . O tamanho de = denotado por h= i.
O tamanho de um vetor ou matriz ra
ionais a soma dos tamanhos
denotado por
hi
h= i
hAi.
tamanho de
denotado por
O
Assim, o tamanho de
hAi
Vetores e Matrizes
110
positiva semidenida
se existe uma
tal que
Y Y>:
O seguinte
elementar
Emm
=1
indexada por
e
E?j
= I?j
M M
elementar se existe
para ada
distinto de
m.
m em M
tal
Toda matriz
X = Y Y > ento
=Y Y>
Zmm = Xmm
Zmj = Zjm = 0
111
2
0
0
0
0
0
P
M nP
0
0
0
0
0
0
M nP
0
0
3
0
0
0
0 0 0
0 0 0
0 0 0
0
0
0
para ada
Z.
distinto de
:=
F XF>
P de M tal que ZP P
m em M n P , Zmm = 0
ZP;M nP
=0
e, para ada
mas
G Z_
Z_
Y Y>;
diagonal e
Z_ pp
Zpp.
Zmm < 0 para algum m em M . Seja u o vetor denido por um = 1 e ui = 0 para
ada i distinto de m. Ento
(uF ) X (uF ) = u (F X F >) u = uZ u = Zmm < 0. Em suma,
onde
yX y <
0;
yX y <
0;
para
para
y = uF . 2
Vetores e Matrizes
112
seja ra ional.
Algoritmo PosSemidef (X )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Z
F
X
G I
para m de 1 a n faa
se Zmm 6= 0
ento E
H I
para i de 1 a n faa Eim
Zim =Zmm
para i de 1 a n faa Him
Eim
Emm Hmm 1
Z E Z E>
F EF
G GH F G = GF = I
para m de 1 a n faa
se Zmm < 0
ento u
0
um 1
devolva uF
se Zmm = 0
ento j
1
enquanto j n e Zmj = 0 faa j
j+1
se j n
ento u
0
uj 1
um
Zjj =2Zmj
se Zmj > 0
ento um
um 1
seno um
um + 1
devolva uF
pZ
para i de 1 a n faa Zii
ii
devolva GZ
Figura B.2:
X
Y
X
indexada por
tal que
ra ional, o vetor
ra ional e a matriz
Apndi e C
Programao Linear
Este apndi
e um resumo da terminologia e de alguns fatos bsi
os de programao linear [Pad99, Chv83, S
h86, Feo01.
Veja nossas
minimize
sob as restries
Usaremos a abreviatura
onjuntos
x
(Ax)i
(Ax)i
(Ax)i
xj
xj
bi
bi
bi
0
0
P(A; b; )
i em M1 ;
i em M2 ;
para
ada i em M3 ;
para
ada j em N1 ;
para
ada j em N3 :
para
ada
para ada
(C.1)
Em-
ser vazia.
113
P(A; b; )
Programao Linear
114
solution )
Assim, uma
soluo vivel
(feasible
uma
X (A; b)
tm soluo tima.
Dualidade
dual do pl
transposta de A e os
P(A; b; )
o pl
P(
A> ;
onjuntos de ndi es so
; b), onde
a
N1 ; N2 ; N3 ; M1 ; M2 ; M3 .
A>
indexado por
que
maximize
sob as restries
D(A;
; b)
Y (A;
)
yb
(yA)j
(yA)j
(yA)j
yi
yi
j
j em N1 ;
j para
ada j em N2 ;
j para
ada j em N3 ;
0 para
ada i em M1 ;
0 para
ada i em M3 :
para
ada
(C.2)
Convm usar uma notao espe a para o dual: o pl (C.2) ser denotado por
D(A; ; b)
Y (A; ).
Problemas
anni
os
Se
M1 = M
x que
N1
=N
, o problema
um vetor
minimize
sob as restries
P(A; b; )
x
Ax
x
b;
0:
se reduz a en ontrar
(C.3)
115
anni o primal,
pois qualquer pl
P
x
Pj j j
minimize
sob as restries
Aij xj
xj
bi
0
i;
para
ada j :
para
ada
yb
yA
y
y que
;
0:
(C.4)
anni o dual.
Lema da dualidade
H uma relao fundamental entre as solues viveis de um pl e as
solues viveis de seu dual.
M1
=M
demonstrao do aso geral on eitualmente anloga mas tipogra amente indigesta: em virtude das restries de (C.1) e (C.2),
=
=
Programao Linear
116
onde
yb ;
fra o
da dualidade.
P(A; b; )
D(A;
; b)
P(A; b;
)
x em X (A; b) soluo
y em Y (A;
) tal que
x = y b :
teorema
o problema
Y (A; ).
Folgas
omplementares
A demonstrao do lema C.1 sugere o seguinte
on
eito. Dois vetores
x e y, indexados por M e N respe
tivamente, tm folgas
omplementares (
omplementary sla
kness ) se, para
ada j em N1 [ N3 , temos
e, para
ada
xj = 0
ou
yi = 0
ou
i em M1 [ M3 , temos
(yA)j = j
(C.5)
(Ax)i = bi :
(C.6)
H quem diga que (C.5) d as ondies de folgas omplementares primais e (C.6) as de folgas omplementares duais.
x = (yA) x e y (Ax) = y b.
a (C.5) e y (Ax) = y b equivale a (C.6). 2
se e somente se
Mas
x = (yA) x
x = y b
equivale
Teorema da dualidade
O teorema da dualidade d as
ondies em que um pl tem soluo
tima e garante que as solues timas do pl e de seu dual tm o mesmo
valor:
117
Teorema C.3
(da dualidade):
teorema forte
da dualidade,
pode ser resumido da seguinte maneira: a menos que os dois pls sejam
inviveis,
para
min
x = max
yb
x
y
quando um dos pls invivel, desde que estejamos dispostos a dizer que
min x = +1
max y b = +1
quando
o pl dual ilimitado, et .
algoritmo Simplex
gramas lineares.
tos
(A; b; )
(A; b; )
(A; b; )
tipo foi publi ado por Kha hiyan [Kha79, PS82, S h86, GLS93 e ou
e E.
Programao Linear
118
soluo e, em
aso armativo, devolve uma soluo tima ra
ional x. O tamanho de x limitado por 2hAi + 2hbi. O
onsumo de tempo do algoritmo limitados por um polinmio em
hAi + hbi + h
i.
P(A; b; )
A, b e
ra
ionais.
Numa tal
lasse de programas lineares, o nmero de linhas de A pode
ser uma funo exponen
ial do nmero de
olunas. Digamos que
o tamanho da maior linha de (A; b), ou seja, := maxi fhAi? i + hbi ig.
Mesmo que o nmero de linhas de A no seja limitado por um polinmio
em , possvel resolver o problema P(A; b;
) em tempo limitado por
um polinmio em e h
i se dispusermos de um bom algoritmo para o
ra aproximada, por problemas da forma
, om
seguinte
hxi.3
tal
P(A; b; )
tem tamanho
.
Se
h i so limitados por um
e temos um bom algoritmo de separao (veja o exer
P(A; b;
) pode ser resolvido em tempo limitado
por um polinmio em .
polinmio em
119
Problemas de viabilidade
O
do problema
y0
vetor de inviabilidade,
0
em Y (A; 0) tal que y b > 0 (veja exer
io C.4).
isto , um vetor
Lema C.5 (de Farkas): Para qualquer sistema (A; b;
), o
onjunto X (A; b) vazio se e somente se existe um vetor y0 em
Y (A; 0) tal que y0 b > 0.
O problema da viabilidade equivale ao
aso em que
P(A; b; )
= 0 no problema
o aso geral.
Exer
ios
C.1 Transforme um programa linear arbitrrio num programa
anni
o
equivalente.
b
e uma matriz A sem
omponentes negativos e sem linhas nulas.
os sub onjuntos de
jVG j).
nmero
indexada por
EG
onde
indexado
satisfaz as restries
Ax 1 ;
(C.7)
. Es-
Programao Linear
120
grafo
volver
hGi + hxi.
Sugesto:
que os
omponentes de
C.4
Seja
Apndi e D
uma funo P :
! [0; 1 para a qual P(
) :=
!2
P(! ) = 1.
Um espao dis
reto de probabilidade um par (
; P) onde
um
Uma
Variveis aleatrias
varivel aleatria sobre
uma funo X :
!
f1; : : : ; ng, onde
ada i um nmero real. Um evento o
on1 (S ) para algum sub
onjunto S de f1 ; : : : ; n g. Tradi
ionaljunto X
1 (S ) denotado por [X 2 S ou simplesmente
mente, um evento X
por [X = x, se S = fxg. De forma anloga, podemos usar a notao
[X 6= x, [X < x, [X x, [X > x e [X x.
1 (S )), denotado
A probabilidade do evento [X 2 S o nmero P(X
por Pr[X 2S . A esperana (ou valor esperado) da varivel aleatria X
Uma
o nmero
E[X :=
Pn
[ =i :
Lema D.1
Se (
; P) um espao
dis
reto de probabilidade e X uma varivel aleatria sobre
i=1 i Pr X
(desigualdade de Markov):
121
Pr[
E[
122
f1 ; P
: : : ; n g o
onjunto de valores de X , ento
E[X = i i Pr[X =i i Pr[X =i = Pr[X : 2
P
Demonstrao: Se
vezes
til
Pr[X E[X
1.
rees rever
desigualdade
de
Markov
assim:
Espao produto
Sejam
n
n
(!1; : : : ; !n)
Qn
P :
n ! [0; 1
P((!1; : : : ; !n)) := i=1 Pi (!i)
P
n
(
n; P)
espao produto
(
; P1 ) (
; Pn )
o onjunto de todas as
Seja
. Tal
bilidade sobre
-uplas
de
hamado
e denotado por
; 2 F
nA 2 F
A F i Ai 2 F
A1 ; A2 ; : : :
F
B
de
se
para todo
de onjuntos de
um onjunto
, a
em
uma
-lgebra
de sub onjuntos de
a interse o de todas as
P(SiAi ) = Pi P(Ai) :
Dizemos que
se
123
Os
on
eitos denidos para espaos dis
retos de probabilidade (evento, varivel aleatria, esperana, et
.) se estendem naturalmente a espaos
ontnuos de probabilidade.
Nos prximos exemplos,
A de
,
fA(!) = 0 se ! 62 A.
sub onjunto
Exemplo D.2 :
fA
fA (!)
Seja
o intervalo
[0; 1) F
e
b < 1.
P(A) :=
ento
(
; F; P)
A em F,
Seja
se
2Ae
-lgebra gerada
om 0 a <
[a; b)
fA(x) dx ;
um espao de probabilidade.
Exemplo D.3 :
=1
a esfera unitria em
Rn
entrada na ori-
: kxk=1g
y z
F (y; z ) := fx 2
: xy > 0 xz 0g
F R
fF (y; z) :
y; z 2
g
n :=
f
(x) dx
n
2k+1 k ;
2 k
2k+1 =
2k =
(k 1)!
(2k 1)!!
(2k 1)!! := (2k 1)(2k 3)(2k 5) (3)(1)
Z
fA(x) dx
P(A) := 1
gem, isto , o
onjunto
em
fx
2 Rn
, onsidere a fatia
da esfera.
Seja
. A rea
de
. Para quaisquer
de
depende da paridade
onde
. Se
em
F,
ento
(
; F; P)
um espao de
probabilidade.
P : 2
! [0; 1, denida de maneira similar sobre a
oleo 2
de todos
os sub
onjuntos de
, no 2 -aditiva. Na verdade, no existe funo P : 2 ! [0; 1
A funo
124
Rn e F uma -lgebra de
,
hamamos de distribuio uniforme
ontnua (ou simplesmente distribuio uniforme) qualquer medida de probabilidade
ontnua P sobre (
; F )
denida por
R
dx
P(A) := R
ffA((xx)) dx
Se
um sub onjunto de
A em F.
Distribuio normal
A
denida por
Z
1
P(A) := p
2
e
x2 =2 dx
Exer
ios
D.1 A
oleo de todos os sub
onjuntos de um
onjunto
lgebra de
-lgebra.
sobre um onjunto
D.3 Se
uma
-
-lgebras
sobre um onjunto
uma
-lgebra.
-lgebras
:= os(2v)p 2ln u
uniforme no intervalo
[0; 1)
, ento
uma
x1 ; : : : ; xn
s om
omponentes
x
si := p 2 i
x1 + + x2n
s 1 ; : : : ; sn
denidas
Apndi e E
Complexidade
Computa
ional
Este apndi
e dene a terminologia e os fatos bsi
os de
omplexidade
omputa
ional usados no texto.
Um tratamento ompleto do
assunto pode ser en
ontrado, por exemplo, nos livros de Aho, Hop
roft
e Ullman [AHU74, Cormen, Leiserson e Rivest [CLR92, Garey e Johnson [GJ79, Knuth [Knu68, Papadimitriou [Pap94 e Papadimitriou e
Steiglitz [PS82.
Palavras
Para resolver um problema usando um
omputador ne
essrio des
rever os dados do problema por meio de uma seqn
ia de
ara
teres.
Qualquer seqn
ia de
ara
teres ser
hamada de uma
palavra.
fa; b; ; dg omo onjunto de vrti es e ffa; bg; fa; g; fa; dg; fb; g; f ; dgg
denotado por
125
hwi,
o nmero de
hwi
126
tamanho de um objeto.
os ara teres `{', `}', `(', `)' e `,' dos exemplos anteriores. O tamanho
h i = Peh e i.
log jj
log jj + log j j
essen ialmente2
. Analogamente, se
do ra ional
Problemas
PCH
MST
de problemas so: o
sigla MST.
Problema
miltoniano?
PCH
(G)
tn ia
do problema.
ins-
de
problema de de iso.
Como veremos adiante, nossas estimativas sero feitas a menos de fatores ons-
tantes e portanto no far diferena dizer que o tamanho de uma palavra , digamos,
metade do nmero de
ara
teres.
dlog(jj + 1)e.
127
a algum ritrio um
problema de otimizao.
Os problemas PCH
algoritmo3
modelo de omputao
operaes elementares
empregado para medir a quantidade de tempo que
ada operao
onsome. Exemplo de operaes elementares tpi
as so operaes aritmti
as
entre nmeros e
omparaes.
O modelo de
omputao RAM (random
a ess ma hine )
[CR73
RAM
baseia-se na manipulao de ara teres. Esse modelo apaz de exe utar operaes envolvendo nmeros ra ionais. No
ritrio logartmi o
ost riterion ).
hi h i unidades de tempo.
ritrio uniforme,
riterion ),
ost
anterior se o tamanho dos operandos for limitado por uma funo polinomial do tamanho da instn
ia do problema. Este
ritrio de
onsumo
de tempo
onstante por operao elementar, juntamente
om operandos
de tamanho limitado, empregado em todo o texto, ex
eto no
aptulo 7.
Finalmente, pre
iso men
ionar um modelo de
omputao que
til, embora no seja realista e fuja de nossa
onveno sobre representao de objetos por palavras. Esse modelo, usado no
aptulo 7,
apaz de manipular nmeros reais arbitrrios. Supe-se que
ada operao envolvendo nmeros reais
onsome apenas uma unidade de tempo,
mesmo uma operao
omo raiz quadrada. Este modelo
hamado de
real-RAM [PS85.
3
real-RAM
128
do tamanho da instn ia do problema. Por exemplo, exprimimos o onsumo de tempo de algoritmos para o MST
h(G; )i.
(G; )
O(f (n))
algoritmo e iente
(G; )
6 MST
est
NP
omposta pelos problemas de de
iso para os quais uma resposta armativa possui um
erti
ado que pode ser veri
ado em tempo polinomial.
Mais pre
isamente, a
lasse NP formada pelos problemas de de
iso
para os quais existe um problema
tais que, para
ada instn
ia
(I; C )
4
sim.
O objeto
do problema
0
(I )
, existe um objeto
p(n)
om
dito um
(ou
texto.
Est in ludo aqui, impli itamente, o tempo ne essrio para que o algoritmo
129
0
para , um veri
ador
(I )
G do problema do
ir
uito hamiltoniano sim ento um
ir
uito hamiltoniano em G um objeto que
erti
a
a resposta: dados um grafo G e um
ir
uito H de G pode-se veri
ar
em tempo O (hGi) se H um
ir
uito hamiltoniano. Logo, o problema
perten
e a NP.
Claramente P
(I )
(I )
6= NP? .
6= NP?
o-NP
Os problemas em NP
NP \ o-NP.
NP-
ompletude
reduo8 de um problema a um problema 0 um algoritmo
A que resolve usando uma subrotina hipotti
a A0 que resolve 0 , de
0
tal forma que, se A um algoritmo polinomial, ento A um algoritmo
Uma
0
reduzido a , ento
. evidente que se
0
perten e a P e
=
pode ser
NP.
blema da satisfatibilidade
7
(satisability
problem ).
pro-
Este problema
T
130
(C)
Dada uma oleo C de lusulas booleanas, existe uma valorao que satisfaz todas as lusulas em C?
Problema
Sat
Teorema E.1
NP
- ompleto.
Um problema
, no ne essariamente em NP,
O problema Sat
NP-d il se a exis-
impli a em P
NP. Assim,
por exemplo, MaxSat NP-dif
il, j que um algoritmo polinomial para MaxSat pode ser adaptado para resolver Sat em tempo polinomial;
omo Sat NP-
ompleto, a existn
ia de um tal algoritmo impli
a em
P
Teorema E.2 :
tamento,
MinMCut,
dif eis.
Os problemas
Es alonamento, Empa o-
TSPM
TSP
so
NP
(G; )
MST
hGi loghGi.
e ,
hi + h i. Outro
exemplo no fortemente polinomial o algoritmo dos elipsides de Kha
hiyan [Kha79 que resolve problemas de programao linear e realiza um
nmero de operaes elementares que depende do tamanho dos nmeros
envolvidos (apndi
e C).
131
Algoritmos pseudopolinomiais
em
re em
I;
(I ) := 0
dena Max
I.
(3=17) = 17
que onso-
hI i e Max(I ).
em
PCH essen
ialmente esta verso de de
iso do TSP restrita a instn
ias
onde o
usto
do teorema 8.5).
Um problema
tido forte
, no ne essariamente em NP,
NP-d il no sen-
impli
a em P
sentido forte.
Teorema E.3 :
Max
(I )
132
Exer
io
E.1
Mostre que se
E.2
Mostre que se
ento
1 T 2 2 T 3
e
1 T 3
0
, ento
um problema de de iso,
est em P e
T 0
est em P.
E.3
Mostre que se
E.4
Mostre que se
0
E.5
um problema de de iso,
NP- ompleto e
0 T
0
est em NP e
, ento
T
NP-dif il.
Bibliograa
[ABCC98
D. Applegate,
R. Bixby,
V. Chvtal e W. Cook.
Do umenta
Mathemati a,
On
Pro eedings
http://www.mathematik.uni-bielefeld.de/do
umenta/
xvol-i
m/17/17.html. [p. 21
[ABI86
Journal of Algorithms,
[ACG 99
G.
Ausiello,
P.
7(4):567583, 1986.
Cres enzi,
G.
Gambosi,
[p. 74
V.
Kann,
A.
97, 99
[ACP95
S
ien
e,
[ADP80
150(1):155, 1995.
Theoreti al Computer
[p. 98, 99
M. Aggarwal e N. Garg.
Journal of
21:136153, 1980.
[p. 96
Pro eedings of the Fifth Annual ACMSIAM Symposium on Dis rete Algorithms (SODA), p. 233
network design. In
240, 1994.
[p. 60
133
BIBLIOGRAFIA
134
[AGK 98
S. Arora, M. Grigni, D.R. Karger, P.N. Klein e A. Woloszyn. A polynomial-time approximation s heme for weigh-
Pro
eedings of the Nineth ACMSIAM Symposium on Dis
rete Algorithms (SODA), p. 33
ted planar graph tsp. In
41, 1998.
[AHU74
[p. 22
Addison-Wesley, 1974.
237, 1998.
[AKR95
[p. 85
A. Agrawal, P. Klein e R. Ravi. When trees
ollide: an approximation algorithm for the generalizad Steiner problem
on networks.
1995.
[Ali95
24(2):440456,
[p. 60
F. Alizadeh.
[ALM 92
5:1351, 1995.
[p. 85
blems.
In
[p. 2, 99
[AMO93
[AR98
Network Flows.
Y. Aumann e Y. Rabani.
An
O(log k)
approximate min-
Journal on Computing,
[Aro94
SIAM
[p. 33
S. Arora.
sity, 1994.
[Aro95
27(1):291301, 1998.
[p. 2
Pro
eedings of the 36th Annual Symposium on Foundations of Computer S
ien
e (FOCS), p. 404413, 1995. [p. 2
In
BIBLIOGRAFIA
[Aro98
135
S. Arora. Polynomial time approximation s hemes for Eu lidean traveling salesman and other geometri problems.
[AS92
45(5):753782, 1998.
1992.
[AW00
[p. 22
John Wiley,
[p. 70
T. Asano e D.P. Williamson. Improved approximation alIn Pro
eedings of the Eleventh
ACM-SIAM Symposium on Dis
rete Algorithms (SODA),
[p. 74
Semi-
denite
other
relaxations
for
minimum
bandwidth
and
In Pro eedings of the 30th Annual ACM Symposium on Theory of Computing (STOC),
vertex-ordering problems.
p. 100105, 1998.
[Blu91
A. Blum.
[p. 85
ons.
[Bru98
[p. 2
Ma millan/Elsevier, 1976.
S heduling Algorithms.
On dependent rando-
P. Bru
ker.
[p. 21
[BTV99
[p. 74
R. Bar-Yehuda e S. Even. A linear time approximation algorithm for the weighted vertex over problem.
Algorithms,
[CFR98
2:198203, 1981.
Journal of
[p. 47, 60
Multi uts in
unweighted graphs with bounded degree and bounded treewidth. In R.E. Bixby, E.A. Boyd e R.Z. Ros-Mer
ado, editores, Pro
eedings of the 6th Conferen
e on Integer Programming and Combinatorial Optimization (IPCO), volume 1412
of Le
ture Notes in Computer S
ien
e, p. 137152. Springer,
1998.
[CG89
[p. 33
Journal of Complexity,
5:96106, 1989.
[p. 75
BIBLIOGRAFIA
136
[Chr76
[Chv79
V. Chvtal.
blem.
1979.
[p. 17, 21
4(3):233235,
[p. 8, 39
Linear Programming.
[Chv83
V. Chvtal.
[CJLL95
John Wiley
A Compendium of NP Optimization
URL: http://www.nada.kth.se/viggo
[p. 99
[p. 113
[p. 21
Problems, 2000.
/www
ompendium/.
[CKR00
Freeman, 1983.
Journal of Computer
60(3):564574, 2000.
Algorithms.
[p. 33, 74
Introdu tion to
130
[Cob65
A. Cobham. The intrinsi omputational di ult of fun tions. In Y. Bar-Hillel, editor,
sophy of S
ien
e,
[Coo71
[p. 128
130
[CR73
[CRW01
7:354
[p. 127
and Lagrangean relaxation. In Pro
eedings of the 8th Conferen
e on Integer Programming and Combinatorial Optimization Conferen
e (IPCO), 2001. A
eito para publi
ao.
[p. 61, 85
BIBLIOGRAFIA
[CS98
137
B. Chor e M. Sudan.
ness.
523, 1998.
[Dev86
[p. 85
L. Devroye.
Springer, 1986.
[p. 75, 84
Graph Theory.
[Die00
R. Diestel.
[Dij59
[DJP 94
Numeris he Mathematik,
p. 269271, 1959.
[p. 101
[p. 59
23(4):864894, 1994.
[Edm65a
J. Edmonds.
0; 1
-verti es.
Standards B,
[Edm65b
[p. 85
[p. 22, 60
of Mathemati
s,
[EK00
17:449467, 1965.
L. Engebretsen e M. Karpinski.
Canadian Journal
Eletroni
Colloquium on
Computational Complexity, 7(89), 2000. URL: http://www.
e
.uni-trier.de/e
/. [p. 96
[ENRS95
[Erd67
P. Erds. Grfok pros krljrs rszgrfjairl (On bipartite subgraphs of graphs, em hngaro).
18:283288, 1967.
[ES73
Matematikai Lapok,
[p. 2, 85
1973.
Journal
[p. 74
BIBLIOGRAFIA
138
[ES74
natori
s.
[Fei99
[p. 70
1999.
[Feo01
[p. 74
P. Feolo.
[FG95
network.
1956.
A ser pu-
[p. 113
8:399404,
[p. 33, 60
1995.
[FJ97
[p. 74, 85
k- ut and max
81, 1997.
[GGL95
bise tion.
of
ombinatori
s. Vol. 1, 2.
dam, 1995.
[GGP 94
Algorithmi a,
p. 67
[p. 85
Handbook
[p. 85
[GGU72
[GGW98
[p. 60, 61
BIBLIOGRAFIA
[GJ75
139
Journal on Computing,
[GJ78
4:397411, 1975.
the ACM,
[GJ79
25:499508, 1978.
SIAM
[p. 98
Journal of
[p. 91
[p. 6, 8, 12, 14, 19, 20, 35, 49, 65, 77, 96, 98, 125, 129, 131
[GLS93
Geometri Algo-
M.X. Goemans.
rial optimization.
1997.
[Gon89
Springer, 2. ed.,
Mathemati al Programming,
79:143161,
[p. 84
C.C. Gonzaga.
ming problems in
O(n3 L) operations.
In N. Megiddo, edi-
[Gon92
[Gra66
SIAM Review,
34(2):167227, 1992.
[p. 117
45:15631581, 1966.
[p. 2,
6
[Gra69
17:416429, 1969.
[p. 21
[Gui98
K.S. Guimares.
de Atualizao em Informti
a,
1998.
[GVY96
volume II,
XVII Jornada
p. 147. SBC,
[p. v, 20
N. Garg, V.V. Vazirani e M. Yannakakis. Approximate maxow and min-(multi) ut theorems and their appli ations.
25:235251, 1996.
[p. 26,
BIBLIOGRAFIA
140
[GVY97
N. Garg, V.V. Vazirani e M. Yannakakis. Primal-dual approximation algorithms for integral ow and multi ut in trees.
[GW94
Algorithmi a,
18:320, 1997.
3=4
-approximation
7:656666, 1994.
SIAM
[p. 67,
69, 74
[GW95a
Computing,
[GW95b
24(2):296317, 1995.
SIAM Journal on
Improved approxima-
tion algorithms for maximum
ut and satisability problems using semidenite programming.
42:11151145, 1995.
[GW98
[p. 79, 85
Primal-dual approxi-
Combinatori
a,
[GW01
18(1):3759, 1998.
[p. 61
Approximation algo-
rithms for max 3-
ut and other problems via
omplex semidenite programming. In Pro
eedings of the 33th Annual
ACM Symposium on Theory of Computing (STOC), 2001.
A
eito para publi
ao.
[Hal00
E. Halperin.
[p. 85
vertex
over problem in graphs and hypergraphs. In Pro
eedings of the Eleventh ACM-SIAM Symposium on Dis
rete
Algorithms (SODA), p. 329337, 2000. [p. 85
[Hs97
[HH86
Mathemati
s,
[Ho
82
15(1):3540, 1986.
[p. 38
D.S. Ho hbaum. Approximation algorithms for the set overing and vertex over problems.
puting,
11(3):555556, 1982.
BIBLIOGRAFIA
[Ho
97
141
Hard Problems.
J.A. Hoogeveen.
Letters,
[HPS94
10:291295, 1991.
Operations Resear h
[p. 22
Probabilisti ally
on algorithms.
136:175223, 1994.
[p. 99
[HS87
ti al results.
34(1):144162, 1987.
[p. 39
[HS88
D.S. Ho hbaum e D.B. Shmoys. A polynomial approximation s heme for ma hine s heduling on uniform pro essors:
ar
h,
[IK75
9:898900, 1963.
Operations Rese-
[p. 26, 33
ACM,
[Ita78
22:463468, 1975.
A. Itai.
Two- ommodity
25(4):596611, 1978.
[JMVW99
Journal of the
[p. 12, 96
ow.
[p. 26, 33
[Joh74
278, 1974.
[Joh87
M.E. Johnson.
Wiley, 1987.
[p. 75, 84
John
BIBLIOGRAFIA
142
[JRR95
[JV00
Network Models,
p. 225330. North-
[p. 21
K. Jain e V.V. Vazirani. Primal-dual approximation algorithms for metri fa ility lo ation and
k-median
problems.
17th International Symposium on Mathemati
al Programming (ISMP), 2000. URL: http://www.
.gate
h.edu/
people/home/kjain/. [p. 61, 74
[Kan92
On the Approximability of NP-
omplete Optimization Problems. PhD Thesis, Royal Institute of Te
hnology,
V. Kann.
Sweden, 1992.
[Kar72
[p. 2
puter Computations,
Complexity of Com-
91, 130
[Kar84
[Kar96
Combinatori a,
4:373395, 1984.
[p. 117
[KG98
[p. 85
1998.
[Kha79
[p. 85
20:191194, 1979.
[KKS 99
1999.
[p. 34
BIBLIOGRAFIA
[KMS98
143
Approximate graph
45(2):246265, 1998.
[KMSV99
[p. 85
SIAM
Journal on Computing,
[p. 95, 99
[Knu68
D.E. Knuth.
[Knu98
D.E. Knuth.
1998.
[KP99
28(1):164191, 1999.
The
3. ed.,
of Combinatorial Optimization,
[KRAR95
of
3(1):5971, 1999.
Journal
[p. 21
An approxima-
te max-ow min-
ut relation for undire
ted multi
ommodity ow, with appli
ations.
1995.
[KS95
Combinatori a,
Demonstraes Transparentes e
a Impossibilidade de Aproximaes. Livro do XX Colquio
Y. Kohayakawa e J. Soares.
15(2):187202,
[p. 33
H.W. Kuhn.
problem.
[p. 60
[KZ97
H. Karlo e U. Zwi k. A
7=8
E.L. Lawler.
Matroids.
[Lev73
mation Transmission,
[LK73
9:265266, 1973.
[p. 38
[p. 21
Operations Resear h,
BIBLIOGRAFIA
144
[LLR95
The geometry of
tori
a,
[LLRS90
15(2):215245, 1995.
Combina-
[p. 33
moys, editores.
[p. 21
1975.
[p. 21,
39
[Lov01
zation. In
Springer.
[LP86
[LR99
[p. 78, 85
Elsevier,
[Lub86
M. Luby.
[p. 33
46(6):787832, 1999.
[p. 74
M. Luby e A. Wigderson. Pairwise independen e and derandomization. Te hni al Report TR-035, International Computer S ien e Institute, 1995.
[Mit99
[p. 75
k-mst,
[p. 22
Le
tures on
Proof Veri
ation and Approximation Algorithms, volume
1367 of Le
ture Notes in Computer S
ien
e. Springer, 1998.
E. Mayr, H.J. Prmel e A. Steger, editores.
[p. iii, 2, 99
BIBLIOGRAFIA
[MR95a
145
S. Mahajan e H. Ramesh. Derandomizing semidenite programming based approximation algorithms. In Pro
eedings
of the 36th Annual Symposium on Foundations of Computer
S
ien
e (FOCS), p. 162169, 1995. [p. 85
[MR95b
R. Motwani e P. Raghavan.
Randomized Algorithms.
Cam-
[p. 74
[MT90
S. Martello e P. Toth.
[OM87
P. Orponen e H. Mannila.
On approximation preserving
redu
tions: Complete problems and robust measures. Te
hni
al Report C-28, University of Helsinki, 1987.
[Pad99
M. Padberg.
C.H. Papadimitriou.
Wesley, 1994.
[PS82
[p. 96
Springer,
[p. 113
Computational Complexity.
Addison-
[PS85
An Introdu
tion.
[PV00
Computational Geometry:
Springer, 1985.
[p. 127
On the approximabi-
In Pro
eedings of
the 32nd Annual ACM Symposium on Theory of Computing (STOC), p. 126133, 2000. [p. 99
lity of the traveling salesman problem.
[PY91
43:425440, 1991.
[p. 95, 99
P. Raghavan. Probabilisti onstru tion of deterministi algorithms: Approximating pa king integer programs.
Jour-
37:130143, 1988.
[p. 74
[Rav94
R. Ravi.
[p. 60
BIBLIOGRAFIA
146
[Rei00
G. Reinelt. TSPLIB
[RS97
R. Raz e S. Safra.
ra
terization of NP. In
1997.
[RSL77
[p. 10, 96
Journal on Computing,
[RT87
Combinatori
a,
[RV99
6:563581, 1977.
7:365374, 1987.
SIAM
[p. 16
Randomized rounding.
[p. 74
S. Rajagopalan e V.V. Vazirani. Primal-dual RNC approximation algorithms for set over and overing integer programs.
28(2):526541, 1999.
[p. 33, 61
[RW95
Pro
eedings
of the Sixth ACM-SIAM Symposium on Dis
rete Algorithms
(SODA), p. 332341, 1995. [p. 60
[RZ00
[p. 60
A. S hrijver.
S. Sahni e T. Gonzalez.
blems.
23:555565, 1976.
98
[Shm98
[p. 33
BIBLIOGRAFIA
[Sku98
147
M. Skutella.
s
heduling. In Pro
eedings of the 39th Symposium on Foundations of Computer S
ien
e (FOCS), p. 472481, 1998.
[p. 85
[Sku99
M. Skutella.
J. Spen
er.
1987.
[Sri99
SIAM,
[p. 70, 74
A. Srinivasan. Improved approximation guarantees for pa king and overing integer programs.
puting,
[Ste01
[p. 85
29(2):648670, 1999.
[p. 33
[p. 98
[Tre96
L. Trevisan.
V.V. Vazirani.
Approximation Algorithms.
PhD
[p. 2
D.P. Williamson e M.X. Goemans. Computational experien e with an approximation algorithm on large-s ale Eu lide-
[p. 60
[WGMV95 D.P. Williamson, M.X. Goemans, M. Mihail e V.V. Vazirani. A primal-dual approximation algorithm for generalized Steiner network problems.
1995.
[Wil93
Combinatori a,
[p. 60
On the Design of Approximation Algorithms for a Class of Graph Problems. PhD Thesis, MassaD.P. Williamson.
15:435454,
D.P. Williamson.
[p. 2
[p. 20, 85
ndi e
148
[WSV00
[Yan94
[Zwi99
1994.
[p. 74
[p. 74, 85
ndi
e
AP, 94
T, 129
0, 82
h i (tamanho), 101, 109, 125
>
algoritmo, 127
de aproximao, 4, 63
de separao, 118
dos elipsides, 82, 117
Edmonds, 17
(transposio), 108
( ), 101
e iente, 128
( ), 102
n, 122
Euler, 15
exato, 4
bx
, 13
kxk, 109
Ay, 108
AB , 109
xy, 108
yA, 108
AP Q , 108
A?j , 108
Ai? , 108
xQ , 107
G[F , 102
G[X , 102
G + F , 102
G F , 102
G Y , 102
T + F , 15
polinomial, 130
MST, 15
polinomial, 4, 128
probabilsti
o, 63, 72
polinomial, 63
pseudopolinomial, 131
Rand, 63
RandEsfera, 79
RandUni, 72
Simplex, 117
Alizadeh, 85
Alon, 74
anlise de pior
aso, 128
AP-reduo, 93
Aproximao-Primal-Dual, 45
A> , 108
APX, 88
aresta, 101
Agrawal, 60
mltipla, 104
Aho, 125
Arora, 2, 22, 99
-aproximao, 3
arredondamento, 23
probabilsti a, 63
probabilsti o, 66
-lgebra, 122
rvore, 103
149
NDICE
150
de Steiner, 49
geradora, 103
Asano, 74
lusula, 64
booleana, 64
satisfeita, 65
Atalho, 16
obertura, 8
mxima, 19
por arestas, 38
Babai, 74
por onjuntos, 8
Bar-Yehuda, 47, 60
bin pa king,
19
bipartio, 104
obre ( oleo), 8
Blum, 2
Coman, 21
Bondy, 101
oleo laminar, 59
Bru ker, 21
( ), 4, 105
omponente
aixeiro viajante, 14
mtri
o, 14
aminho, 102
hamiltoniano, 103
mnimo, 57
anni
o
pl, 115
Central, 28
erti
ado
urto, 128
polinomial, 128
Chor, 75
Chrtienne, 21
Christodes, 17, 21
Chvtal, 8, 39, 113
i
lo, 102
euleriano, 15
gerador, 103
ir
uito, 103
hamiltoniano, 103
lasse
APX, 88
o-NP, 129
FPTAS, 89
MAXNP, 99
MAXSNP, 99
NP, 128
NPO, 88
P, 128
PO, 88
PTAS, 89
ativo, 51
de grafo, 103
de matriz, 107
de vetor, 107
omprimento de
aminho, 103
ir
uito, 103
vetor, 109
onjunto
ativo, 49
onvexo, 82
o-NP, 129
onvexo, 82
Cook, 87, 129, 130
Cormen, 20, 125
orte, 101
mximo, 77
mnimo, 58
Cres
enzi, 2, 98, 99
ritrio
logartmi
o, 127
uniforme, 127
usto de
rvore, 15
aresta, 105
aminho, 15
ir
uito, 15
obertura, 8
emparelhamento, 15
es
alonamento, 5
oresta de Steiner, 49
subgrafo, 105
NDICE
151
transversal, 46
( ), 101
( ), 102
D(A;
; b), 42, 114
Dahlhaus, 26, 34
D'Atri, 96
desigualdade
polinomial, 89
polinomial, 89
estrela, 97
de Markov, 121
Euler, 15
triangular, 14
euleriano, 15
Devroye, 75
Even, 47, 60
Deza, 85
evento, 121
Diestel, 101
extremos de
Dijkstra, 27, 59
aresta, 101
distribuio
aminho, 102
normal, 124
dual, 114
de um pl, 114
Feige, 85
varivel, 114
oresta, 103
dualidade
lema, 115
teorema, 117
teorema forte, 117
teorema fra
o, 116
Edmonds, 17
elipsides, 117
de Steiner, 49
geradora, 103
minimal, 52
folgas
aproximadas, 44
omplementares, 42, 116
Ford, 60
fortemente NP-
ompleto, 131
FPTAS, 89
Fulkerson, 60
G[X , 102
Gabow, 61
Empa otamento-Next-Fit, 20
Gambosi, 2, 99
emparelhamento, 17
Garg, 26, 33
perfeito, 17
gerador, 103
Engebretsen, 96
Erds, 2, 74, 85
Goldrei h, 75
Es alonamento, 5, 21
Gonzaga, 117
Es alonamento-Graham, 6
es alonamento, 5
grafo, 101
bipartido, 104
ompleto, 101
espao
onexo, 103
gerador, 102
planar, 104
NDICE
152
Graham, 2, 6, 21
Khanna, 95
Grigni, 22
Kim, 12, 96
Klein, 22, 60
knapsa k problem,
Guimares, 20
10
Hn , 9
Hall, 38
Kuhn, 60
hamiltoniano
aminho, 103
Laurent, 85
ir uito, 103
Lawler, 21
Hstad, 96
Leighton, 33
46
Hoogeveen, 22
de Farkas, 119
Hougardy, 99
Lenstra, 21
Levin, 130
Lewis, 16
limiar de aproximao, 96
Ibarra, 12, 96
limitado, 114
ilimitado, 114
Lin, 21
invivel, 2
vivel, 2
Liu, 21
Lovsz, 21, 22, 39, 85, 117, 118, 129
invivel, 2, 114
Luby, 75
Itai, 74
Lund, 2, 99
J (y), 42
J (y; ), 45
Mahajan, 85
Jnger, 21
Markov, 121
K -
aminho, 26
K -multi
orte, 26
Kann, 2, 99
Karger, 22, 85
Karlo, 85
Karmarkar, 117
Karp, 87, 90, 91, 130
Karpinski, 96
Kellerer, 21
Kernighan, 21
Mannila, 96
Martello, 21
matriz, 107
elementar, 110
identidade, 108
indexada por, 107
inteira, 108
inversa, 109
inversvel, 109
positiva semidenida, 82, 110
quadrada, 108
ra
ional, 108
simtri
a, 108
NDICE
153
sobre, 107
MinMCut, 26
transposta, 108
MinMCut-GVY, 26
(I ), 91, 131
Max
MinPath, 57
MaxCC, 19, 73
MinTC, 46
MaxCut, 73, 77
MinTC-BE, 48
MaxCut-GW, 79
MinTJ, 58
maximal, 103
mo hila, 10
maximum
overage problem, 19
ut problem, 77
MAXNP, 99
MaxSat, 65
omputao, 127
MaxSat-GW, 67
MaxSat-Combinado-GW, 69
MaxSat-Johnson, 65
multi orte, 26
MAXSNP, 99
Mayr, 2, 99
mnimo, 26
multigrafo, 104
ontnua, 122
multiterminal-
ut, 34
multiway-
ut, 34
Murty, 101
mtodo
mutuamente independentes, 75
das esperanas
ondi
ionais, 70, 74
de aproximao
primal-dual, 44
no-negativo, 4
NP, 128
dual, 35
primal, 23
primal-dual, 43
MinCA, 38
\ o-NP, 129
MinCC, 8, 23, 38
NP
MinCC-Chvtal, 8, 33
NPO, 88
MinCC-Ho hbaum, 25
nmero harmni o, 9
MinCut, 58
minimum
edge
over problem, 38
multi
ut problem, 26
set
over problem, 8
set multi
over problem, 33
spanning tree problem, 126
vertex
over problem, 35
n, 122
operaes elementares, 127
opt(I ), 3
Orponen, 96
NDICE
154
Partio, 91
partition, 91
passeio, 102
primal, 43
vivel, 114
problema de/do/da
rvore geradora
mnima, 126
fe hado, 102
origem, 102
aminho mnimo, 57
trmino, 102
PCP, 99
peso de
arestas, 38
aresta, 105
onjuntos, 8, 23, 38
orte, 77
subgrafo, 105
D, 97
V, 97
60, 97
onexo ponto-a-ponto, 60
orte
pl, 113
mximo, 73, 77
anni o, 115
mnimo, 58
Plummer, 129
PO, 88
empa otamento
positivo, 4
unidimensional, 19
Pr[ , 121
emparelhamento perfeito
primal, 114
es alonamento
Prmel, 99
varivel, 114
problema, 126
de peso mnimo, 60
em mquinas idnti
as, 5, 21
oresta de Steiner, 49
APX- ompleto, 95
maximizao, 3, 88
APX-dif il, 95
minimizao, 3, 88
anni o, 115
mo hila, 10, 21
dual, 114
fortemente
NP-
ompleto, 131
por
onjuntos, 33
multi
orte mnimo, 26
ilimitado, 114
multiuxo uniforme, 33
invivel, 114
limitado, 114
satisfatibilidade, 129
mxima, 65
separao, 118
aproximado dual, 45
aproximado primal, 45
matrizes, 108
dual, 43
NDICE
vetores, 108
programa
dual, 42
155
reduo, 129
Reinelt, 21
relaxao
linear, 113
primal, 42
vetorial, 78
restries
quadrti
o, 78
semidenido, 82
vetorial, 82
programao
de inaproximabilidade, 87
Rinaldi, 21
dinmi a, 10
Rinnooy Kan, 21
linear, 113
semidenida, 77
Robins, 60
Prmel, 2
Protasi, 2, 96, 98, 99
provas veri
veis
probabilisti
amente, 99
(W; A; b), 83
Rosenkrantz, 16
RP(A; b; y), 43
-lgebra, 122
PSD
Safra, 96
pseudo- lusulas, 70
PTAS, 89
Saigal, 86
PV
(W; A; b), 82
Q, Q , Q > , 4
R, R , R > , 4
R-oresta, 49
ra
ionais
no-negativos, 4
Sat, 129
satisfatibilidade, 129
mxima, 65, 73
positivos, 4
RAD(A; b; y; ), 45
Raghavan, 74
programao, 77
separao
Rajagopalan, 33
RAM, 127
real, 127
Ramesh, 85
Simplex, 117
Rand, 63
Skutella, 85
RandEsfera, 79, 84
RandUni, 72
soluo
randomized rounding, 66
Rao, 33
RAP(A; b; y; ; ), 45
(I ), 2, 88
Sol
Ravi, 60
Spen er, 74
Raz, 96
Srinivasan, 33
razo de aproximao, 3
Stearns, 16
esperada, 64
RD(A; b; y), 43
real-RAM, 127
Steger, 2, 98, 99
Steiglitz, 59, 117, 125, 131
Steiner, 49
NDICE
156
val(S ), 2
val(I; S ), 88
49
subgrafo, 102
gerador, 102
valor, 2
induzido, 102
de uma soluo, 2
prprio, 102
esperado, 121
timo, 3
Szegedy, 2, 99
valorao, 65
t( ), 4, 105
T -juno, 58
Vandenberghe, 86
varivel, 64
aleatria, 121
tamanho de
de lusula booleana, 64
grafo, 101
dual, 114
primal, 114
Vempala, 99
isolado, 102
teorema
vrti es
da dualidade, 117
do uxo mximo
vetor, 107
e orte mnimo, 33
forte
de inviabilidade, 119
da dualidade, 117
fra o
inteiro, 107
da dualidade, 116
nulo, 107
Thompson, 74
ra ional, 107
Toth, 21
sobre, 107
transposta, 108
viabilidade, 119
transversal, 46
vivel, 2, 114
mnima, 46
35
vrti e, 101
14
w( ), 4, 105
Trevisan, 2
Wigderson, 75
mtri o, 14
74, 79, 85
TSPLIB, 21
Wolkowi z, 86
TSPM, 14
Woloszyn, 22
TSPM-Christofides, 17
X 0, 82
x( ), 4, 105
X (A; b), 42
TSPM-RSL, 16
Turing, 129
Ullman, 2, 125
VG , 101
v( ), 4, 105
y( ), 4, 105
Y (A;
), 42
Z, Z, Z>, 4
NDICE
Zelikovsky, 60
Zwi
k, 74, 85
157