algoritmos de aproximac¸ao˜ - instituto de …fkm/lectures/aprox.pdffl´avio keidi miyazawa...

312
UNIVERSIDADE DE CAMPINAS - UNICAMP I NSTITUTO DE COMPUTAC ¸˜ AO - IC Algoritmos de Aproximac ¸˜ ao Fl´ avio Keidi Miyazawa Campinas, 2001-2018 Fl´ avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac ¸˜ ao Campinas, 2001-2018 1 / 312

Upload: others

Post on 11-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

UNIVERSIDADE DE CAMPINAS - UNICAMPINSTITUTO DE COMPUTACAO - IC

Algoritmos de Aproximacao

Flavio Keidi Miyazawa

Campinas, 2001-2018

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 1 / 312

Page 2: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Sumario

Sumario I1 Sumario2 Problemas de Otimizacao Combinatoria3 Complexidade Computacional4 Motivacao5 Aproximacao Absoluta6 Fator de Aproximacao7 Escalonamento de Tarefas8 Cobertura por Vertices9 Cobertura por Conjuntos

10 Esquemas de Aproximacao11 FPTAS para o Problema da Mochila12 Caixeiro Viajante13 Programacao Linear e Inteira14 Metodo Primal15 Fator de aproximacao assintotico16 APTAS para Problema do Empacotamento

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 2 / 312

Page 3: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Sumario

Sumario II17 Introducao a Dualidade em Programacao Linear18 Metodo Dual19 Introducao ao Metodo Primal-Dual20 Metodo de Aproximacao Primal-Dual21 Problema de Localizacao de Facilidades22 Dual Fitting23 Problema da Floresta de Steiner24 Teoria das Probabilidades25 Algoritmos Aproximados Probabilısticos26 Satisfatibilidade Maxima27 Programacao Semidefinida e Problema do Corte Maximo28 PTAS para Escalonamento de Tarefas29 Inaproximabilidade, Classes de Complexidade e PCP30 Tecnica Metrica e Problema do K-Multicorte31 Equilıbrio de Nash, Busca Local e Jogo Multicast

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 3 / 312

Page 4: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problemas de Otimizacao Combinatoria

Problemas de Otimizacao Combinatoria

I Domınio Finito (enumeravel)I Funcao de Otimizacao: Custos, Comprimentos, QuantidadesI Objetivo: Minimizacao ou Maximizacao

Exemplo: Problema do Caixeiro Viajante (TSP)I Entrada:

- Grafo nao orientado: G = (V ,E),- Custos nas arestas: ce ≥ 0, ∀e ∈ E .

I Objetivo:Encontrar um tour (ciclo hamiltoniano) de custo mınimo que visitacada vertice exatamente uma vez.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 4 / 312

Page 5: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problemas de Otimizacao Combinatoria

Encontre o ciclo hamiltoniano de custo mınimo

B

C

A

D9

3

9

5

10

6

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 5 / 312

Page 6: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problemas de Otimizacao Combinatoria

ciclo hamiltoniano de custo mınimo: 27

B

C

A

D9

3

9

5

10

6

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 6 / 312

Page 7: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problemas de Otimizacao Combinatoria

Algoritmo Ingenuo para o TSP: Tentar todos os tours.Complexidade: O(n!), onde n = |V |.Algoritmo Bom = Algoritmo Polinomial (Cobham’64&Edmonds’65)Provavelmente nao existam algoritmos eficientes para o TSPOutros exemplos difıceis:

I Atribuicao de Frequencias em Telefonia CelularI Empacotamento de Objetos em ConteineresI Escalonamento de Funcionarios em Turnos de TrabalhoI Escalonamento de Tarefas em ComputadoresI Classificacao de ObjetosI Coloracao de MapasI Projetos de Redes de ComputadoresI Varios outros...

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 7 / 312

Page 8: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Complexidade Computacional

Complexidade Computacional

Problemas de Decisao

I Exemplo: Dado grafo G, existe um ciclo hamiltoniano em G ?

I Exemplo: Dado grafo completo G = (V ,E), funcao de peso nasarestas c : E → Z+ e um inteiro positivo K , existe um ciclohamiltoniano em G, de peso no maximo K ?

I Exemplo: Dado um mapa M e um inteiro K , posso colorir M comK cores sem conflitos ?

I Exemplo: Dado grafo completo G = (V ,E), pesos nas arestasc : E → Z+, vertices s e t e um inteiro positivo K , existe umcaminho em G, de s para t , de peso no maximo K ?

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 8 / 312

Page 9: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Complexidade Computacional

Reducao polinomial entre problemasP1 e polinomialmente redutıvel a P2 (P1 P2) se

I ∃ Ti que transforma instancia I1 de P1 para instancia I2 de P2

I ∃ Ts que transforma solucao S2 de I2 para solucao S1 de I1I Ti e Ts tem complexidade de tempo polinomial

I1

S2:=A2(I2)

S2

I2I2:=Ti(I1)

S1:=Ts(S2)S1Solução

Instância

Consequencias:Se P2 e “polinomial” entao P1 e “polinomial”.Se P1 e “exponencial” entao P2 e pelo menos “exponencial”.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 9 / 312

Page 10: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Complexidade Computacional

Reducao polinomial entre problemas de decisao

P1 e polinomialmente redutıvel a P2 (P1 P2) seI ∃ T que transforma instancia I1 de P1 para instancia I2 de P2

I I1 tem solucao se e somente se I2 tem solucaoI T e polinomial

Consequencias:Se P2 e “polinomial” entao P1 e “polinomial”.Se P1 e “exponencial” entao P2 e pelo menos “exponencial”.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 10 / 312

Page 11: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Complexidade Computacional

Classes de Complexidade:P, NP, NP-Completo, NP-Difıcil

X ∈ P:X pode ser decidido em tempo polinomial.

X ∈ NP:X tem certificado curto e verificavel em tempo polinomial.

X ∈ NP-Completo:X ∈ NP e ∀Y ∈ NP, Y X .

X ∈ NP-Difıcil:∀Y ∈ NP, Y X , onde X nao necessariamente pertencea NP.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 11 / 312

Page 12: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Complexidade Computacional

P

NP−Difíceis

NP−Completos

Polinomiais

NP

Vários Problemas Práticos

Conjectura: P=NP ?Premio de 1 milhao de US$.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 12 / 312

Page 13: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Complexidade Computacional

Problemas em P

I Dado um conjunto de numeros S, existe n ∈ S tal quen =

∑i∈S\n i ?

I Decida se um dado grafo G e conexo ?

I Dado grafo completo G = (V ,E), pesos nas arestas c : E → Z+,vertices s e t e um inteiro positivo K , existe um caminho em G, des para t , de peso no maximo K ?

I Posso colorir um mapa com 4 cores sem conflitos ?

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 13 / 312

Page 14: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Complexidade Computacional

Problemas em NP-Completo

I Dado um conjunto de numeros S, existe N ⊆ S tal que∑i∈N i =

∑i∈S\N i ?

I Dado grafo G, existe um ciclo hamiltoniano em G ?

I Dado grafo completo G = (V ,E), pesos nas arestas c : E → Z∗ eum inteiro positivo K , existe um ciclo hamiltoniano em G, de pesono maximo K ?

I Dado grafo completo G = (V ,E), pesos nas arestas c : E → Z,vertices s e t e um inteiro positivo K , existe um caminho em G, des para t , de peso no maximo K ?

I Posso colorir um mapa com 3 cores sem conflitos ?

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 14 / 312

Page 15: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Complexidade Computacional

Problemas NP-difıceisI Varios problemas praticos sao NP-difıceis

Exemplos:I Problema do Caixeiro ViajanteI Atribuicao de Frequencias em Telefonia CelularI Empacotamento de Objetos em ConteineresI Escalonamento de Funcionarios em Turnos de TrabalhoI Escalonamento de Tarefas em ComputadoresI Classificacao de ObjetosI Coloracao de MapasI Projetos de Redes de ComputadoresI Varios outros...

I P6=NP⇒ nao existem algoritmos eficientes para problemasNP difıceis

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 15 / 312

Page 16: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Complexidade Computacional

Comparando tempos polinomiais e exponenciaisf (n) n = 20 n = 40 n = 60 n = 80 n = 100n 2,0×10−11seg 4,0×10−11seg 6,0×10−11seg 8,0×10−11seg 1,0×10−10segn2 4,0×10−10seg 1,6×10−9seg 3,6×10−9seg 6,4×10−9seg 1,0×10−8segn3 8,0×10−9seg 6,4×10−8seg 2,2×10−7seg 5,1×10−7seg 1,0×10−6segn5 2,2×10−6seg 1,0×10−4seg 7,8×10−4seg 3,3×10−3seg 1,0×10−2seg2n 1,0×10−6seg 1,0seg 13,3dias 1,3×105sec 1,4×1011sec3n 3,4×10−3seg 140,7dias 1,3×107sec 1,7×1019sec 5,9×1028sec

Supondo um computador com velocidade de 1 Terahertz (mil vezesmais rapido que um computador de 1 Gigahertz).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 16 / 312

Page 17: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Complexidade Computacional

Comparando tempos polinomiais e exponenciaisf (n) Computador atual 100×mais rapido 1000×mais rapido

n N1 100N1 1000N1n2 N2 10N2 31.6N2n3 N3 4.64N3 10N3n5 N4 2.5N4 3.98N42n N5 N5 + 6.64 N5 + 9.973n N6 N6 + 4.19 N6 + 6.29

Fixando o tempo de execucao

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 17 / 312

Page 18: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Motivacao

Algoritmos de AproximacaoI Abordagem para tratar problemas NP-difıceis− Problemas NP-difıceis precisam de alguma solucao

I Algoritmos eficientes (polinomiais)− Maioria dos algoritmos de aproximacao sao rapidos− Adequados para instancias grandes onde exatos sao proibitivos

I Garantia de “proximidade” com a solucao otima− Analise formal da qualidade das solucoes geradas− Analises formais indicam como medir qualidade de solucoes

viaveis quaisquerI Novas classes de complexidade em NP-difıcil− Problemas em NP-completo sao polinomialmente equivalentes,mas− problemas de otimizacao apresentam dificuldades distintas

sob o ponto de vista de aproximacaoI Agregar valor teorico a heurısticas (conhecidas)− Area academica valoriza analises formais

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 18 / 312

Page 19: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Motivacao

I Inspiracao para o desenvolvimento de heurısticas− Heurısticas aproveitam propriedades estruturais de algoritmosaproximados

I Desenvolvimento de teorias recentes− Area que tem recebido grande atencao pela comunidadeacademica− Novas tecnicas no desenvolvimento de algoritmos− Teorias revelando inaproximabilidade de problemas

I Desenvolvimento de algoritmos exatos− Algoritmos exatos usam solucoes viaveis para limitar busca− Algoritmos exatos baseados em enumeracoes e algoritmos de

aproximacaoI Teoria dos Jogos− Mesmo tipo de analise para o Preco da Anarquia

I Analise de algoritmos online− Algoritmos onde nao ha informacao sobre proximos eventos

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 19 / 312

Page 20: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Motivacao

Experimentos Computacionais

I Williamson’93Problema do Emparelhamento: Grafos de ate 131.000 vertices,em torno de 2% do otimo

I Goemans & Willamson’94Problema do Corte Maximo: Grafos de ate 200 vertices, em tornode 4% do otimo

I Homer & Peinado’94Problema do Corte Maximo: Grafos de ate 13.000 verticesImplementacao distribuida do algoritmo de Goemans &Williamson

I Hall’95Problema da Arvore de Steiner: Grafos de ate 1000 nos / 60.000arestas em torno de 7% do otimo

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 20 / 312

Page 21: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Motivacao

I Hu & WeinProblema da Floresta de Steiner: Grafos com ate 64 vertices, emtorno de 5% do otimo

I Johnson, Minkoff, Phillips’00Problema da Arvore de Steiner com Penalidades: Grafos com ate76.000 vertices. Solucoes proximas da otima

I Barahona & Chudak’99Facility Location Problem: Tecnica hıbrida em grafos com 3000facilidades e 3000 clientes, em torno de 1% do otimo

I Mihail, Mostrel, Dean & Shallcross’95Survivable Network Design Problem: Software da Bellcore.Solucoes proximas da otima.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 21 / 312

Page 22: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Motivacao

Grandes Desafios

I Instancias em circuitos VLSIJohnson’90: Problema do Caixeiro Viajante em Grafos com1.2 milhao de vertices (e aumentando)Outras instancias grandes ocorrem em cristalografia

I Limitantes carosPara muitas instancias nao e nem possıvel se resolver programaslineares/semidefinidos em tempo razoavel (muito usados paradesenvolver algoritmos de aproximacao)

I Mundo real tem diversas instancias grandesAtualmente sao resolvidos em partes.Exemplos: Projetos de circuitos VLSI, escalonamento detrabalhadores, localizacao de equipamentos emtelecomunicacoes...

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 22 / 312

Page 23: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Motivacao

Principais Tecnicas

I Metodos CombinatoriosI Programacao DinamicaI Metodos baseados em Progamacao LinearI Metodos ProbabilısticosI Programacao SemidefinidaI Tecnicas de Inaproximabilidade

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 23 / 312

Page 24: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Motivacao

Alguns Problemas

I Escalonamento de Tarefas (Scheduling)I Cobertura por Conjuntos (Set Cover)I Problema da Mochila (Knapsack)I Empacotamento de Barras (Bin Packing)I Caixeiro Viajante (TSP)I Floresta de SteinerI Satisfatibilidade Maxima (Max-SAT)I Corte Maximo (Max-CUT)I Clique Maximo (Max-Clique)I Localizacao de Facilidades

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 24 / 312

Page 25: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Motivacao

Medidas em Algoritmos de Aproximacao

I Aproximacao AbsolutaI Fator de AproximacaoI Fator de Aproximacao AssintoticoI Fator de Aproximacao Probabilıstico

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 25 / 312

Page 26: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

Aproximacao Absoluta

Dado um algoritmo A e instancia I,I OPT(I) e o tamanho da solucao otimaI A(I) e o tamanho da solucao gerada por A sobre I

A tem aproximacao absoluta k se

|A(I)− OPT(I)| ≤ k ∀ instancia I.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 26 / 312

Page 27: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

Coloracao de Grafos PlanaresDef.: Um grafo G = (V ,E) e dito ser planar se e possıvel desenha-lono plano, tal que duas arestas so se interceptam em pontos de V quesao suas extremidades em comum.

Problema COLORACAO-PLANAR: Dado um grafo planar simplesG = (V ,E), colorir os vertices de G com o menor numero de cores,onde vertices adjacentes devem ter cores distintas.

Teorema: COLORACAO-PLANAR e NP-difıcil.

Teorema: Existe uma 1-aproximacao absoluta para o problema daCOLORACAO-PLANAR (Appel & Haken’76)Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 27 / 312

Page 28: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

Uma 3-aproximacao absoluta

Ideia do algoritmo: Inducao com o seguinte teorema

Teorema: Se G e planar simples, entao G tem pelo menos um verticede grau ≤ 5Prova. O Teorema de Euler para grafos planares conexos, diz que

|E | = |V |+ |F | − 2,onde F e o conjunto de faces de uma imersao de G no plano.Exercıcio: Prove este teorema.

Usando este teorema, podemos provar que

|E | ≤ 3|V | − 6 (Exercıcio)

Usando a relacao do numero de arestas e a soma total de graus, oresultado segue (Exercıcio).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 28 / 312

Page 29: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

ALGORITMO 6-CORES G = (V ,E)1 Se E = ∅ entao,2 cor(v) := 1, ∀v ∈ V .3 senao, se G e bipartido, V = (X ,Y ) entao4 cor(x):= 1, ∀x ∈ X e cor(y):= 2, ∀y ∈ Y .5 senao,6 seja v ∈ V tal que grau(v) ≤ 57 Pinte G′ := G − v recursivamente.8 Seja c ∈ 1, . . . ,6 cor nao presente nos adjacentes de v9 cor(v) := c.

Teorema: 6-Cores e uma 3-aproximacao absoluta.Prova. Se E = ∅ ou G e bipartido,

6-Cores(G) = OPT(G)caso contrario, OPT(G) ≥ 3

6-Cores(G)− OPT(G) ≤ 3.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 29 / 312

Page 30: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

Uma 2-aproximacao absoluta

Teorema: Descreva um algoritmo 5-Cores que e uma 2-aproximacaoabsoluta.Prova. Exercıcio.Ideia: Baseado no algoritmo 6-Cores. Seja v o vertice removido.• Se vizinhos de v usam ≤ 4 cores, pinte v com cor faltante.• Caso contrario, considere uma imersao de G no plano.S.P.G. seja 1, . . . ,5 os vizinhos de v , numerados no sentido horarioem torno de v e seja i e j dois vizinhos nao consecutivos (na ordemcıclica) de v .Tente recolorir i com a cor de j trocando as duas cores a partir de i .Se for possıvel, voce tera uma cor disponıvel para v . Caso contrario,procure repintar outros vertices.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 30 / 312

Page 31: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

Coloracao de Arestas

Problema COLORACAO DE ARESTAS: Dado um grafo G, colorir asarestas de G com o menor numero de cores, onde arestas adjacentesdevem ter cores distintas.

Aplicacoes: Escalonamento com horarios, coloracao de fios emcircuitos, etc.

Teorema: (Holyer’81) O problema de Coloracao de Arestas eNP-difıcil.

Teorema: (Vizing’64) E possıvel colorir as arestas de G com ∆(G) + 1cores, onde ∆(G) e o maior grau de um vertice em G.

Corolario: Existe um algoritmo com aproximacao absoluta 1 para oproblema de Coloracao de Arestas.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 31 / 312

Page 32: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

Resultados Negativos: Sensibilidade a escala

Problema da Mochila

Problema MOCHILA: Dados itens S = 1, . . . ,n com peso vi etamanho si inteiros, i = 1, . . . ,n, e inteiro B, encontrar S′ ⊆ S quemaximiza

∑i∈S′ vi tal que

∑i∈S′ si ≤ B.

Teorema: Se P 6= NP entao nao existe algoritmo de tempo polinomialcom aproximacao absoluta k para o problema da Mochila, paraqualquer k fixo.Prova. Suponha existir algoritmo A e k talque |OPT(I)− A(I)| ≤ k ,

e k limitado por polinomio de n.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 32 / 312

Page 33: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

Seja I := S = (1, . . . ,n), v = (v1, . . . , vn), (s1, . . . , sn),B umainstancia qualquer.Seja I′ := S = (1, . . . ,n), v = (v ′1, . . . , v

′n), (s1, . . . , sn),B uma

instancia onde v ′i := (k + 1) · vi .

OPT(I)

A(I)

OPT(I’)

A(I’)

K

K’

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 33 / 312

Page 34: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

(k + 1)OPT(I) = OPT(I′)Seja Sol a solucao de I correspondente ao gerado por A em I′.

|OPT(I′)− A(I′)| ≤ k

=⇒|(k + 1) · OPT(I)− (k + 1)Sol | ≤ k

=⇒(k + 1) · |OPT(I)− Sol | ≤ k .

=⇒|OPT(I)− Sol | ≤ k

k + 1.

=⇒|OPT(I)− Sol | ≤ 0.

=⇒OPT(I) = Sol

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 34 / 312

Page 35: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

Problema do Clique Maximo

Def.: Dado um grafo G = (V ,E), um conjunto S ⊆ V e um clique se∀u, v ∈ S ⇒ u, v ∈ E.

Problema CLIQUE: Dado um grafo G, encontrar um clique em G decardinalidade maxima.

Teorema: (Karp’72) CLIQUE e um problema NP-difıcil.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 35 / 312

Page 36: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

Inaproximabilidade absoluta do Clique Maximo

Def.: Seja Gm grafo com m copias de G e vertices de copias distintasligados.

Fato: Se o maior clique de G tem tamanho k entao, o maior clique deGm tem tamanho k ·m.

Teorema: Se P 6= NP entao nao existe algoritmo de tempo polinomialcom aproximacao absoluta k para o problema do Clique, paraqualquer valor k limitado por polinomio de n.Prova.Suponha existir algoritmo A e constante k tal que

|OPT(G)− A(G)| ≤ k ∀ instancia I

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 36 / 312

Page 37: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Aproximacao Absoluta

Entao

|OPT(Gk+1)− A(Gk+1)| ≤ k|(k + 1) · OPT(G)− A(Gk+1)| ≤ k

Seja Sol o maior clique em uma copia feita por A(Gk+1).Sol tem tamanho pelo menos A(Gk+1)

k+1 .=⇒

|(k + 1) · OPT(G)− (k + 1)Sol | ≤ k .

=⇒|(k + 1)(OPT(G)− Sol)| ≤ k .

=⇒|OPT(G)− Sol | ≤ k

k + 1.

=⇒|OPT(G)− Sol | ≤ 0.

=⇒Sol = OPT(G)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 37 / 312

Page 38: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Fator de Aproximacao

Fator de Aproximacao

Dado um algoritmo A e instancia I,I OPT(I) e o tamanho da solucao otimaI A(I) e o tamanho da solucao gerada pelo algoritmo AI A e algoritmo de aproximacao com fator α se

A(I) ≤ α · OPT(I) ∀I, para minimizacao

A(I) ≥ α · OPT(I) ∀I, para maximizacao

I A tem fator α justo se ∀ε > 0 temos que

∃I tal que A(I) > (α− ε)OPT(I), para minimizacao

∃I tal que A(I) < (α + ε)OPT(I), para maximizacao

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 38 / 312

Page 39: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Escalonamento de Tarefas

Escalonamento de TarefasProblema ESCALONAMENTO: Dados uma lista de tarefasL = (J1, . . . , Jn), cada uma com tempo t(Ji) e m maquinas identicas,encontrar uma particao de L, (M1, . . . ,Mm), tal que maxi t(Mi) emınimo.Teorema: ESCALONAMENTO e NP-difıcil.

Algoritmo de Graham: Escalonar a proxima tarefa na maquina commenos tempo.

GRAHAM (m,n, t)1 para j de 1 a m faca Mj ← ∅2 para i de 1 a n faca

3 seja k uma maquina tal que∑i∈Mk

ti e mınimo

4 Mk ← Mk ∪ i5 devolva M1, . . . ,Mm

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 39 / 312

Page 40: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Escalonamento de Tarefas

Exemplo:

L= ( )

Algoritmo Graham

Graham(L) = 16

OPT(L) = 10

Escalonamento Ótimo

2 3 1 5 4 5 10

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 40 / 312

Page 41: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Escalonamento de Tarefas

Teorema: Graham(L) ≤ 2 OPT(L) .Prova.Seja Jk a ultima tarefa terminada no escalonamento.

k

Graham(L)Graham(L)−tk

OPT(L) ≥ maxi t(Ji) ≥ t(Jk )

OPT(L) ≥ 1m

∑i

t(Ji) ≥ Graham(L)− t(Jk )

I.e., 2 · OPT(m,n, t) ≥ Graham(L).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 41 / 312

Page 42: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Escalonamento de Tarefas

Algoritmo LPT - Longest Processing Time

LPT (m,n, t)1 Ordene as tarefas tal que t1 ≥ t2 ≥ . . . ≥ tn.2 devolva Graham (m,n, t)

Teorema: LPT(m,n, t) ≤ 32 OPT(m,n, t) .

Prova.Seja k a tarefa que terminou por ultimo no escalonamento LPT.

Se n ≤ m ou tk =LPT(m,n, t) entao LPT(m,n, t) = OPT(m,n, t).

Senao, temos que OPT(m,n, t) ≥ 2tk . I.e., tk ≤ OPT(m,n,t)2 .

Sabemos que: LPT(L) ≤∑

i tim + tk ,

∑i ti

m ≤ OPT(L) e tk ≤ OPT(m,n,t)2

Assim, LPT(L) ≤ OPT(L) + OPT(m,n,t)2 = 3

2OPT(m,n, t)

Esta analise e justa ?Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 42 / 312

Page 43: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Escalonamento de Tarefas

Teorema: LPT(m,n, t) ≤ 43 OPT(m,n, t) .

Prova. Por contradicao. Suponha que exista instancia tal queLPT(L)OPT(L) >

43 . Considere tal instancia com menor numero de tarefas.

Por ser contra-exemplo com menor numero de tarefas, temos que tn ea ultima tarefa a ser executada.

LPT(L) ≤∑

i tim + tn e OPT(L) ≥

∑i ti

m

Assim, LPT(L) ≤ OPT(L) + tn.

Isto e, 43 <

LPT(L)OPT(L) ≤ 1 + tn

OPT(L) .

O que nos da: OPT(L) < 3tn.

Como tn e a menor tarefa, todas as maquinas tem no maximo 2tarefas. Segue que o escalonamento obtido por LPT e otimo, dandouma contradicao (Exercıcio).Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 43 / 312

Page 44: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Escalonamento de Tarefas

Lema: O fator 43 do algoritmo LPT e justo.

Prova. Exercıcio.

Considere m = 4 e n = 9 tarefas, onde t1 = t2 = 7, t3 = t4 = 6,t5 = t6 = 5, t7 = t8 = 4, e t9 = 4. Extrapole para uma instancia comm maior e veja o limite de LPT

OPT .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 44 / 312

Page 45: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Escalonamento de Tarefas

Notas adicionais

Algoritmo k -GRAHAM (m,n, t)1 considere que t1, . . . tk sao as k maiores tarefas da instancia2 obtenha um escalonamento otimo Sk das k primeiras tarefas3 escalone as n − k tarefas restantes sobre Sk usando Graham4 devolva o escalonamento obtido

Teorema: k-Graham(L) ≤ (1 + ξ) OPT(L), onde ξ = 1−1/m1+k/m .

Teorema: Dado ε > 0, existe um algoritmo com fator de aproximacao(1 + ε) para o problema de ESCALONAMENTO.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 45 / 312

Page 46: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Vertices

Cobertura por VerticesProblema COBERTURA POR VERTICES: Dados grafo G = (V ,E),encontrar C ⊆ V tal que u, v ∩ C 6= ∅ ∀u, v ∈ E e |C| e mınimo.

Aplicacao: Dado um museu, dispor um numero mınimo de guardasque cubram todas os corredores do museu.

Resultados Negativos

Teorema: COBERTURA POR VERTICES e NP-difıcil.

Teorema: Se existir uma α-aproximacao para o problema da cobertura porvertices com α < 7/6 entao P=NP (Hastad’97).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 46 / 312

Page 47: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Vertices

Encontre uma cobertura por vertices:

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 47 / 312

Page 48: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Vertices

Cobertura por Vertices:

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 48 / 312

Page 49: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Vertices

Lema: Algoritmo guloso que iterativamente remove (escolhe) o vertice demaior grau tem fator de aproximacao Ω(log(n))Prova. Exercıcio. Ideia: Considere o grafo bipartido abaixo e aremocao dos vertices na particao do lado de baixo.

1 2 3 4 5 6 7 8

3 4 5 6 7 8

2 3 4 5 6 7 8

Construa grafos com a mesma ideia e n grande.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 49 / 312

Page 50: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Vertices

Algoritmo Guloso por ArestaIdeia: Encontrar um emparelhamento maximal.COBERTURA-VERTICES-GULOSO (G)1 C ← ∅2 enquanto E 6= ∅3 escolha (i , j) ∈ E4 C ← C ∪ i , j5 remova todas as arestas adjacentes a i e j6 retorne CTeorema: Cobertura-Vertices-Guloso e uma 2-aproximacao (Gavril).Prova. Arestas escolhidas formam um emparelhamento maximal.

C

Qualquer cobertura por vertices deve ter cardinalidade ≥ |C|/2.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 50 / 312

Page 51: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Conjuntos

Cobertura por Conjuntos

Def.: Dada uma colecao S de subconjuntos de E dizemos que S cobre E , oue uma cobertura de E , se ∪S∈SS = E .

Problema COBERTURA POR CONJUNTOS: Dados conjunto E ,subconjuntos S de E , custos c(S), S ∈ S, encontrar cobertura S′ ⊆ S

que minimiza c(S′).Resultados Negativos

Teorema: COBERTURA POR CONJUNTOS e NP-difıcil.

Teorema: Nao ha algoritmo de aproximacao com fator (1− ε) ln |E |,para qualquer ε > 0, para o problema da cobertura por conjuntos, amenos que P = NP (Dinur, Steurer’14).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 51 / 312

Page 52: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Conjuntos

Encontre uma cobertura por conjuntos:

1

34

56

7

8

9

2

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 52 / 312

Page 53: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Conjuntos

Cobertura por conjuntos:

1

34

56

7

8

9

2

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 53 / 312

Page 54: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Conjuntos

Detecao de Virus

Aplicacao (Williamson/IBM): Sao determinadas algumas sequenciaspara cada vırus, cada sequencia com 20 ou mais bytes, em um totalde 900 sequencias. O objetivo e encontrar o menor conjunto desequencias que detecta todos os 500 vırus.

I Conjuntos: Cada sequencia determina um conjunto de vırus quecontem a sequencia.

I Conjunto Base: Conjunto de todos os vırus.

Algoritmo Guloso: 190 subsequenciasLimitante para solucao otima: 185 subsequencias

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 54 / 312

Page 55: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Conjuntos

Estrategia Gulosa:Pegar sempre o conjunto de menor peso relativo.

MINCC-CHVATAL (E , S, c)

1 se E = ∅2 entao devolva ∅3 senao seja Z em S tal que cZ/|Z ∩ E | e mınimo4 E ′ ← E \ Z5 S′ ← S ∈ S : S ∩ E ′ 6= ∅ 6 seja c′ a restricao de c a S′

7 T ′ ← MINCC-CHVATAL (E ′, S′, c′)8 devolva Z ∪ T ′

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 55 / 312

Page 56: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Conjuntos

Lema: Se Z ∈ S e tal que c(Z )/|Z | e mınimo, entaocZ|Z |≤ OPT(E , S, c)

|E |Prova.Seja S∗ uma cobertura otima.

cZ|Z ||E | ≤

cZ|Z |∑

S∈S∗ |S|

≤∑

S∈S∗cS|S||S|

=∑

S∈S∗ cS

= c(S∗)

= OPT(E , S, c) .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 56 / 312

Page 57: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Conjuntos

Teorema: O algoritmo MINCC-CHVATAL e uma Hn-aproximacaopolinomial para o MINCC (E , S, c), onde n := |E | e

Hn := 1 + 12 + 1

3 + · · ·+ 1n .

Prova. Prova por inducao em |E |.Se |E | = 0, o teorema e claramente valido.Considere instancia (E , S, c), |E | > 0.

c(Z ∪ T ′) =

= cZ + c′(T ′)≤ |Z |

n OPT(E , S, c) + H|E ′|OPT(E ′, S′, c′)

≤ |Z |n OPT(E , S, c) + Hn−|Z |OPT(E , S, c)

=(1

n+

1n

+ · · ·+ 1n

+ Hn−|Z |

)OPT(E , S, c)

≤(1

n+

1n − 1

+ · · ·+ 1n − |Z |+ 1

+ Hn−|Z |

)OPT(E , S, c)

= Hn OPT(E , S, c) .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 57 / 312

Page 58: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Conjuntos

Teorema: O fator de aproximacao do algoritmo MINCC-CHVATAL e justo.Prova.

E := 1, . . . ,n,S := E , 1, . . . , n,

c(E) := 1+ε ec(i) := 1/i para cada i .

Cobertura de custo mınimo e E.OPT(E , S, c) = 1+ε.

MINCC-CHVATAL produz conjunto 1, . . . , n.MINCC-CHVATAL(E , S, c) = Hn.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 58 / 312

Page 59: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Cobertura por Conjuntos

ExercıcioMostre que o fator de aproximacao do algoritmo que escolhe (eremove) a cada iteracao o vertice de maior grau, e uma O(log n)aproximacao para o problema da cobertura por vertices.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 59 / 312

Page 60: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Esquemas de Aproximacao

Esquemas de AproximacaoDef.: Esquema de aproximacao de tempo polinomial (PTAS):famılia de algoritmos Aε, ε > 0, para um problema tal que Aε e uma

(1 + ε)-aproximacao para um problema de minimizacao,(1− ε)-aproximacao para um problema de maximizacao.

Exemplo de complexidades de tempo: O(n1ε ), O(n25

1ε ) e O(1

εn3).

Def.: Esquema de aproximacao de tempo polinomial completo (FPTAS):PTAS Aε tal que Aε tem tempo polinomial em 1

ε .

Exemplo de complexidades de tempo: O(1εn

2) e O( 1ε2

n5).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 60 / 312

Page 61: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

FPTAS para o Problema da Mochila

Problema da MochilaProblema MOCHILA: Dados itens S = 1, . . . ,n com valor vi etamanho si inteiros, i = 1, . . . ,n, e inteiro B, encontrar S′ ⊆ S quemaximiza

∑i∈S′ vi tal que

∑i∈S′ si ≤ B.

Estrategia:Mudar escala dos valores e aplicar algoritmo exato.

Def.: Seja A(i , v) ≡ comprimento total mınimo de subconjunto de1, . . . , i com valor exatamente v (∞ se nao existir tal conjunto).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 61 / 312

Page 62: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

FPTAS para o Problema da Mochila

V

V ′ = bnεc

vi

v ′i

Mudanca de escala e arredondamentoPerda em valor de cada item: V

n/ε .

No pior caso: n Vn/ε = εV ≤ εOPT

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 62 / 312

Page 63: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

FPTAS para o Problema da Mochila

ALGORITMO MOCHILA-EXATO(B,n, s, v)1 V ← maxi vi2 para i ← 0 ate n faca A(i ,0)← 03 para w ← 1 ate nV faca A(0,w)←∞4 para i ← 1 ate n faca5 para w ← 1 ate nV faca6 se vi ≤ w entao7 A(i ,w)← min(A(i − 1,w), si + A(i − 1,w − vi))8 senao9 A(i ,w)← A(i − 1,w)

Complexidade de Tempo: O(n2 · V ).

Solucao na posicao (n,w): w = maxw ′ : A(n,w ′) ≤ B.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 63 / 312

Page 64: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

FPTAS para o Problema da Mochila

Itens∖

Val. 0 1 2 . . . w−vi . . . w . . . nV

∅ 0 ∞ ∞ . . . ∞ . . . ∞ . . . ∞1. . .1 0 . . . . . . . . .

1. . .2 0 . . . . . . . . ....

... . . . . . . . . .

1. . .i−1 0 . . . A(i−1,w−vi) . . . A(i−1,w) . . .

1. . .i 0 . . . A(i ,w) . . ....

... . . . . . . . . .

1. . .n 0 . . . . . . . . .

A(i ,w) =

min((A(i−1,w) , si +A(i − 1,w−vi)) se vi ≤ wA(i − 1,w) C. c.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 64 / 312

Page 65: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

FPTAS para o Problema da Mochila

ALGORITMO MOCHILA-IKε(B,n, s, v)1 V ← maxi vi2 K ← εV

n3 v ′i ←

⌊ viK

⌋∀i % I.e., v ′i =

⌊nε

viV

⌋4 Execute Mochila-Exato(B,n, s, v ′)

Teorema: Mochila-IKε e um FPTAS.Prova. Seja

S a solucao encontrada por Mochila-IKε,O∗ uma solucao otima de I eOPT o valor de uma solucao otima.

Kv ′i ≤ vi ≤ K (v ′i + 1)

vi ≤ K (v ′i + 1) =⇒ Kv ′i ≥ vi − K

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 65 / 312

Page 66: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

FPTAS para o Problema da Mochila

Portanto, ∑i∈S

vi ≥∑i∈S

K · v ′i

≥∑i∈O∗

K · v ′i

≥∑i∈O∗

(vi − K ) =∑i∈O∗

vi − |O∗|K

≥∑i∈O∗

vi − nK =∑i∈O∗

vi − εV

≥ OPT− ε · OPT = (1− ε) · OPT.

Complexidade de Tempo: O(n2V ′)=O(n2⌊

VK

⌋)=O(n3 1

ε ).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 66 / 312

Page 67: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Caixeiro Viajante

Caixeiro Viajante

Problema TSP: Dados um grafo G e um custo ce em Q≥ para cadaaresta e, determinar um circuito hamiltoniano C que minimize c(C).

B

C

A

D9

3

9

5

10

6

Grafo G

B

C

A

D9

3

9

5

10

6

Circuito Hamiltoniano de G de custo 27

Aplicacoes:• Perfuracao e solda de circuitos impressos.• Determinacao de rotas de custo mınimo.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 67 / 312

Page 68: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Caixeiro Viajante

Resultados NegativosTeorema: Dado um grafo G, o problema de decidir se G tem um circuitohamiltoniano e NP-completo.

Teorema: Nao existe uma α-aproximacao para o TSP, para qualquer valor α,computavel polinomialmente, a menos que P=NPProva. Suponha existir α-aproximacao para o TSP.

Dado G = (V ,E) seja G′ = (V ′,E ′, c′) tal que• V ′ = V• E ′ = V × V

• c′(e) =

1 se e ∈ E ,α|V | caso contrario

Se G tem circuito hamiltoniano, OPT(G′) = |V |

caso contrario, OPT(G′) > α|V |.

=⇒ Decidimos existencia de circuito hamiltoniano em G.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 68 / 312

Page 69: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Caixeiro Viajante

Caixeiro Viajante Metrico

Def.: Os custos de um grafo satisfazem desigualdade triangular se

c(i , j) ≤ c(i , k) + c(k , j), ∀i , j , k ∈ V

i j

k

c(i,j)

c(i,k) c(k,j)

Problema TSP-Metrico: Dados um grafo G com desigualdadetriangular e um custo ce em Q≥ para cada aresta e, determinar umcircuito hamiltoniano C que minimize c(C).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 69 / 312

Page 70: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Caixeiro Viajante

Estrategia:Encontrar ciclo gerador e fazer “shortcuts” (atalhos).

ALGORITMO ATALHO(P),Trilha fechada P = (v0, . . . , vm)1 w0 ← v0

2 n← 03 para i de 1 a m faca4 se vi /∈ w0, . . . ,wn5 entao n← n + 16 wn ← vi

7 retorne w0, . . . ,wnv

v

v3

v41

2

v

v

v3

v41

2

0v

v5

v5

0v

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 70 / 312

Page 71: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Caixeiro Viajante

Teorema: Uma arvore geradora de custo mınimo pode ser encontradaem tempo polinomial.Teorema: G tem ciclo euleriano⇔ G e conexo e grau(v)=par, ∀v ∈ V.

Teorema: Encontrar um ciclo euleriano pode ser feito em tempo polinomial.

TSPM-ROSENKRANTZ-STEARNS-LEWIS (G, c)

1 T ← MINIMUM-SPANNING-TREE (G, c)

2 T ′ ← T u ET

3 P ← CICLO-EULERIANO (T ′)4 C ← ATALHO (P)

5 devolva C

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 71 / 312

Page 72: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Caixeiro Viajante

91 2

4

8

67

3

5

10

0

Ciclo Euleriano

T T+ET

0

1 2

3

54

Atalho

Teorema: TSPM-Rosenkrantz-Stearns-Lewis e uma 2-aproximacao.Prova.

c(T ) ≤ OPT(G) =⇒ c(T + ET ) ≤ 2OPT(G).Atalhos nao pioram o custo da solucao.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 72 / 312

Page 73: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Caixeiro Viajante

Algoritmo de ChristofidesEstrategia:Aumentar a arvore apenas o suficiente para encontrar ciclo euleriano.

Teorema: O problema de encontrar um emparelhamento perfeito depeso mınimo pode ser resolvido em tempo polinomial.

TSPM-CHRISTOFIDES (G, c)

1 T ← MINIMUM-SPANNING-TREE (G, c)

2 seja I o conjunto dos vertices de grau ımpar de T3 M ← EMPARELHAMENTO-PERFEITO-M INIMO (G[I], c)

4 T ′ ← T u M5 P ← CICLO-EULERIANO (T ′)6 C ← ATALHO (P)

7 devolva C

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 73 / 312

Page 74: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Caixeiro Viajante

AtalhoCiclo Euleriano

T T+M

6

0 1

2

4

5

78

9

100 1

2

33

4

5

67

Teorema: TSPM-Christofides e uma 32 -aproximacao.

Prova. Um circuito em I define dois emparelhamentos alternantes emI.Assim, c(M) ≤ 1

2OPT(G).Portanto c(C) ≤ c(T ) + c(M) ≤ OPT(G) + 1

2OPT(G) = 32OPT(G).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 74 / 312

Page 75: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Programacao Linear e Inteira

Problema PL: Dados matriz A = (aij) ∈ Qm×n, vetores c = (ci) ∈ Qn eb = (bi) ∈ Qm, encontrar vetor x = (xi) ∈ Qn (se existir) que

minimize c1x1 + c2x2 + · · ·+ cnxn

sujeito a

a11x1 + a12x2 + · · ·+ a1nxn ≤ b1a21x1 + a22x2 + · · ·+ a2nxn ≥ b2

......

...am1x1 + am2x2 + · · ·+ amnxn = bmxi ∈ Q

Teorema: PL pode ser resolvido em tempo polinomial.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 75 / 312

Page 76: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Problema PLI: Dados matriz A = (aij) ∈ Qm×n, vetores c = (ci) ∈ Qn

e b = (bi) ∈ Qm, encontrar vetor x = (xi) ∈ Zn (se existir) que

minimize c1x1 + c2x2 + · · ·+ cnxn

sujeito a

a11x1 + a12x2 + · · ·+ a1nxn ≤ b1a21x1 + a22x2 + · · ·+ a2nxn ≥ b2

......

...am1x1 + am2x2 + · · ·+ amnxn = bmxi ∈ Z

Teorema: PLI e um problema NP-difıcil.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 76 / 312

Page 77: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Def.: Chamamos o conjunto de pontos P,

P :=

x ∈ Qn :

a11x1 + a12x2 + · · ·+ a1nxn ≤ b1...

......

am1x1 + am2x2 + · · ·+ amnxn ≥ bm

como sendo um poliedro.Def.: Se yi ∈ P e αi ∈ Q, i = 1, . . . ,n dizemos quey = α1y1 + α2y2 + · · ·+ αnyn e uma combinacao convexa dos pontos y ′i s seαi ≥ 0 e α1 + · · ·+ αn = 1Def.: Os vertices de P sao os pontos de P que nao podem ser escritos comocombinacao convexa de outros pontos de P

v2

v5

v1

v3

v4

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 77 / 312

Page 78: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Teorema: Uma solucao que e vertice do PL pode ser encontrada emtempo polinomial.

Algoritmos polinomiais para resolver PL:I Algoritmo dos elipsoides eI Metodo dos pontos interiores.

Algoritmos exponenciais para resolver PL:I Metodo simplex (tempo medio polinomial).

Formulacao atraves de Variaveis BinariasConsidere um evento e e variaveis xe formuladas como:

xe =

1 se evento e ocorre,0 se evento e nao ocorre.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 78 / 312

Page 79: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Emparelhamento em Grafos Bipartidos

Def.: Dado um grafo G = (V ,E), dizemos que M ⊆ E e umemparelhamento de G se M nao tem arestas com extremos em comum.

Problema EMPARELHAMENTO-BIPARTIDO: Dados um grafo bipartidoG = (V ,E), e custos nas arestas c : E → Z, encontraremparelhamento M ⊆ E que maximize c(M).Aplicacao: Encontrar atribuicao de candidatos para vagasmaximizando aptidao total.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 79 / 312

Page 80: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Formulacao para Emparelhamento em Grafos BipartidosFormulacao em Programacao Inteira

maximize∑e∈E

cexe

sujeito a

e∈δ(v)

xe ≤ 1 ∀v ∈ V

xe ∈ 0,1 ∀e ∈ E

Relaxacao Linear

maximize∑e∈E

cexe

sujeito a

e∈δ(v)

xe ≤ 1 ∀e ∈ E

0 ≤ xe ≤ 1 ∀e ∈ E

Teorema: Os vertices do poliedro relaxado do emparelhamentobipartido sao inteiros.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 80 / 312

Page 81: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Exemplo:

Considere o seguinte grafo bipartido com custos unitarios:

e1

e2e4

e3

Programa Linearmaximize xe1 + xe2 + xe3 + xe4

sujeito a

xe1 + xe2 ≤ 1,xe3 + xe4 ≤ 1,xe1 + xe3 ≤ 1,xe2 + xe4 ≤ 1,0 ≤ xe1 ≤ 1,0 ≤ xe2 ≤ 1,0 ≤ xe3 ≤ 1,0 ≤ xe4 ≤ 1

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 81 / 312

Page 82: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Temos 4 variaveis binarias no programa linearcorrespondente:

X = (xe1 , xe2 , xe3 , xe4)Os seguintes vetores sao solucoes otimas do programa linear:

X ′ = (1,0,0,1) X ′′ = (0,1,1,0) X ′′′ = (12,12,12,12

)

X’’X’ X’’’

I X ′ e X ′′ sao vertices do poliedro do emparelhamentoI X ′′′ e solucao otima, mas e combinacao convexa de X ′ e X ′′

(X ′′′ = 12X ′ + 1

2X ′′).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 82 / 312

Page 83: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Fluxo Maximo e Corte MınimoDef.: Dado um grafo orientado G = (V ,E), capacidades c : E → Q+ evertices s e t , um fluxo de s para t e um vetor f ∈ QE , tal que∑

u

f (u, v)−∑

w

f (v ,w) = 0 ∀v ∈ V − s, t,

0 ≤ f (e) ≤ c(e) ∀e ∈ E ,

O valor do fluxo f e o valor∑

v f (s, v)Problema FLUXO-MAXIMO: Dado grafo orientado G = (V ,E),capacidades c : E → Q+ e vertices s e t , encontrar um fluxo de valormaximo de s para t .Teorema: Se as capacidades ce sao inteiras, entao os vertices dopoliedro do fluxo sao inteiros.Def.: Dado S ⊆ V , s ∈ S e t /∈ S, a capacidade do corte (S,S) e igual a∑

(u,v)∈(S,S) c(v ,w).Teorema: (Menger) Se ce = 1, ∀e, entao numero maximo de caminhosaresta disjuntos e igual ao numero mınimo de arestas necessarias paradesconectar s e t .Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 83 / 312

Page 84: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Teorema: O valor do fluxo maximo de s para t e igual a capacidadedo menor corte separando s e t.

3

6

5

1

1

42

3

11

61

3

6

5

1

1

42

3

11

61

s t

G(V,E,c)

s t

Corte de capacidade 51

1

21

12

2

1

0

1

1

4

s t

fluxo de valor 5

Corolario: O numero maximo de caminhos aresta disjuntos de s a t eigual ao numero mınimo de arestas a serem removidas paradesconectar s e t.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 84 / 312

Page 85: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Problema da MochilaProblema MOCHILA: Dados itens S = 1, . . . ,n com valor vi etamanho si inteiros, i = 1, . . . ,n, e inteiro B, encontrar S′ ⊆ S quemaximiza

∑i∈S′ vi tal que

∑i∈S′ si ≤ B.

maximize∑i∈[n]

vixi

sujeito a

∑i∈[n]

sixi ≤ B

xi ∈ 0,1 ∀i ∈ [n]

onde [n] = 1, . . . ,n.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 85 / 312

Page 86: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Coberturas, Empacotamentos e Particoes

Seja E um conjunto e C uma colecao de subconjuntos de E .

Seja Ce := C ∈ C : e ∈ C e S ⊆ C tal que xC = 1⇔ C ∈ S.

• S e uma cobertura se∑C∈Ce

xC ≥ 1 ∀e ∈ E ,

• S e um empacotamento se∑C∈Ce

xC ≤ 1 ∀e ∈ E ,

• S e uma particao se ∑C∈Ce

xC = 1 ∀e ∈ E .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 86 / 312

Page 87: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Problema da Cobertura por ConjuntosProblema COBERTURA POR CONJUNTOS: Dados conjunto E ,subconjuntos S de E , custos c(S), S ∈ S, encontrar cobertura S′ ⊆ S

que minimiza c(S′).minimize

∑S∈S

cSxS

sujeito a

∑S∈Se

xS ≥ 1 ∀e ∈ E

xS ∈ 0,1 ∀S ∈ S

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 87 / 312

Page 88: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Problema da Localizacao de FacilidadesProblema LOCALIZACAO DE FACILIDADES: Dados potenciaisfacilidades F = 1, . . . ,n, clientes C = 1, . . . ,m, custos fi para“abrir” a facilidade i e custos cij ∈ Z para um cliente j ser atendido pelafacilidade i . Encontrar facilidades A ⊆ F minimizando custo para abriras facilidades em A e atender todos os clientesAplicacao: Instalar postos de distribuicao de mercadorias.

minimize∑i∈F

fiyi +∑ij∈E

cijxij

sujeito a

∑ij∈E

xij = 1 ∀j ∈ C,

xij ≤ yi ∀ij ∈ E ,yi ∈ 0,1 ∀i ∈ Fxij ∈ 0,1 ∀i ∈ F e j ∈ C.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 88 / 312

Page 89: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Otimizacao × SeparacaoDef.: Problema da Separacao: Seja P ⊆ Rn um conjunto convexo ey ∈ Rn, determinar se y ∈ P, caso contrario, encontrar desigualdade ax ≤ btal que P ⊆ x : ax ≤ b e ay > b.

y

ax bP

Teorema: O problema de otimizacao de um programa linear pode serresolvido em tempo polinomial se e somente se o problema daseparacao para o poliedro do programa linear pode ser resolvido emtempo polinomial.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 89 / 312

Page 90: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

ALGORITMO PLANOS DE CORTE(P, c)P poliedro (nao necessariamente explıcito),c funcao objetivo

1 Q ← Poliedro inicial2 y ←OPT-LP(Q, c)

3 enquanto y pode ser separado de Q faca4 seja ax ≤ b desigualdade de P que separa y5 Q ← Q ∩ x : ax ≤ b6 y ←OPT-LP(Q, c)

7 se Q = ∅ retorne ∅8 senao retorne y .

y0

P

objetivofunção

Q

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 90 / 312

Page 91: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

y1

Q

y2

P

y1

Q

P

y1

y2

Q

y3

P

y1

y2

Q

y3

y4

objetivofunção

P

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 91 / 312

Page 92: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Problema do EmparelhamentoDef.: Dado um grafo G = (V ,E), dizemos que M ⊆ E e umemparelhamento de G se M nao tem arestas com extremos em comum.

maximize∑e∈E

cexe

sujeito a

∑e∈δ(v)

xe ≤ 1 ∀v ∈ V ,

∑e∈E [S]

xe ≤ |S| − 12

∀S ⊆ V , |S| ımpar,

xe ∈ 0,1 ∀e ∈ E .

,

onde E [S] := e ∈ E : e tem ambos extremos em S.Teorema: Os vertices do poliedro relaxado do emparelhamento saointeiros (Edmonds’65).Teorema: O problema da separacao do poliedro relaxado doemparelhamento pode ser resolvido em tempo polinomial (Padberg &Rao’82).Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 92 / 312

Page 93: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Problema do Caixeiro ViajanteProblema TSP: Dados um grafo G = (V ,E) e um custo ce em Q≥para cada aresta e, determinar um circuito hamiltoniano C queminimize c(C).

minimize∑e∈E

cexe

sujeito a

∑e∈δ(v)

xe = 2 ∀v ∈ V∑e∈δ(S)

xe ≥ 2 ∀S ⊂ V , S 6= ∅

(restricoes de subcircuito)xe ∈ 0,1 ∀e ∈ E

onde E [S] := e ∈ E : e tem ambos extremos em S.Teorema: O problema da separacao relativo as restricoes desubcircuito pode ser resolvido em tempo polinomial.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 93 / 312

Page 94: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Problema da Floresta de Steiner

Seja G um grafo e R uma colecao de subconjuntos de VG.Def.: Uma R-floresta de G e qualquer floresta geradora F de G talque para todo R ∈ R, os elementos de R estao contidos em algumcomponente de F.

Problema Floresta de Steiner: Dados um grafo G, um custo ce emQ≥ para cada aresta e e uma colecao R de subconjuntos de VG,encontrar uma R-floresta F que minimize c(F ).Aplicacoes:

I Roteamento em circuitos VLSI.I Projeto de redes de conectividade.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 94 / 312

Page 95: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Linear e Inteira

Formulacao:

minimize∑e∈E

cexe

sujeito a

e∈δ(S)

xe ≥ 1 ∀S ⊂ V : ∃R ∈ R, ∅ 6= S ∩ R 6= R

(desigualdades de corte)xe ∈ 0,1 ∀e ∈ E

Teorema: O problema da separacao relativo as desigualdades decorte pode ser resolvido em tempo polinomial.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 95 / 312

Page 96: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Primal

Metodo Primal: ArredondamentoArredondamento da Solucao Primal

Problema COBERTURA POR VERTICES: Dados grafo G = (V ,E) ecustos c : V → Q≥, encontrar S ⊆ V tal que u, v ∩ S 6= ∅∀u, v ∈ E e c(S) e mınimo.

(P)minimize c xsujeito a xi + xj ≥ 1 para cada ij em E ,

xi ≥ 0 para cada i em V .

MINCV-NT (G = (V ,E), c)

1 seja x uma solucao otima racional de (P)

2 S ← v ∈ V : xv ≥ 1/23 devolva S

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 96 / 312

Page 97: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Primal

Teorema: MINCV-NT e uma 2-aproximacao (Nemhauser,Trotter’75;Hochbaum’83).Prova. MINCV-NT produz uma cobertura de vertices:(S := v ∈ V : xv ≥ 1/2 e xi + xj ≥ 1 ∀ij ∈ E) =⇒ S e cobertura.

c(S) =∑i∈S

ci

≤∑i∈S

ci2 xi

= 2∑i∈S

ci xi

≤ 2∑i∈V

ci xi

= 2 c x≤ 2 OPT

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 97 / 312

Page 98: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Primal

Generalizacao para Cobertura por ConjuntosProblema COBERTURA POR CONJUNTOS: Dados conjunto E ,subconjuntos S de E , custos c(S) ∈ Q≥, S ∈ S, encontrar coberturaS′ ⊆ S que minimiza

∑S∈S′ c(S).

(P)

minimize c x

sob as restricoes∑S∈Se

xS ≥ 1 para cada e em E ,

xS ≥ 0 para cada S em S .

onde Se = S ∈ S : e ∈ S

MINCC-HOCHBAUM (E , S, c)

1 seja x uma solucao otima racional de (P)

2 para cada e em E faca fe ← |S ∈ S : e ∈ S|3 β ← maxe∈E fe4 T ← S ∈ S : xS ≥ 1/β5 devolva TFlavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 98 / 312

Page 99: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Primal

Teorema: O algoritmo MINCC-HOCHBAUM e uma β-aproximacaopolinomial para o MINCC (E , S, c), onde β e o numero maximo devezes que um elemento de E aparece em conjuntos de S.Prova. O custo da cobertura T produzida pelo algoritmo e

c(T ) =∑S∈T

cS

≤∑S∈T

cSβ xS

= β∑S∈T

cS xS

≤ β c x≤ β OPT(E , S, c) ,

onde a primeira desigualdade vale pois β xS ≥ 1 para todo S em T .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 99 / 312

Page 100: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Fator de aproximacao assintotico

Fator de Aproximacao AssintoticoAdequado quando o limiar de aproximacao e atingido apenaspara instancias “pequenas” do problemaDado um algoritmo A para um problema de minimizacao e instancia I,

I OPT(I) e o tamanho da solucao otimaI A(I) e o tamanho da solucao gerada pelo algoritmo AI A tem um fator de aproximacao assintotico α se

R∞A := inf

r ≥ 1 : ∃N > 0,

A(I)OPT(I)

≤ r ,OPT(I) > N≤ α

Definicao analoga pode ser feita para problemas de maximizacao.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 100 / 312

Page 101: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Notacao: Dados conjunto B ⊆ 1, . . . ,n e uma funcao qualquers : N→ R, denotamos por s(B) o valor

∑i∈B

si .

Problema EMPACOTAMENTO (n, c) Dados inteiro positivo n e, paracada i em 1, . . . ,n, um numero racional si no intervalo [0,1],encontrar uma particao B de 1, . . . ,n tal que s(B) ≤ 1 para todo Bem B e |B| seja mınimo.

Teorema: Nao existe α-aproximacao para o problemaEMPACOTAMENTO com α < 3/2, a menos que P = NP.Prova. Exercıcio. Dica: O problema de decisao da Particao eNP-completo.

Fato: Dado instancia L para o problema do EMPACOTAMENTO,

s(L) ≤ OPT(L)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 101 / 312

Page 102: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Teorema: (Fernandez de la Vega e Lucker’81) Existe algoritmopolinomial Aε, ε > 0, para o problema do EMPACOTAMENTO tal que

Aε(L) ≤ (1 + ε)OPT(L) + 1,para toda instancia L.

Vamos provar o seguinte resultado:

Teorema: (Fernandez de la Vega e Lucker’81) Existe algoritmo linearAε, ε > 0, para o problema do EMPACOTAMENTO tal que

Aε(L) ≤ (1 + ε)OPT(L) + βε,para toda instancia L, onde βε so depende de ε.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 102 / 312

Page 103: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

NF (n, c)

1 k ← 12 Bk ← ∅3 para i de 1 a n faca4 se si ≤ 1− s(Bk )

5 entao Bk ← Bk ∪ i6 senao k ← k + 17 Bk ← i8 devolva B1, . . . ,Bk

Teorema: NF e uma 2-aproximacao polinomial para EMPACOTAMENTO.Prova. Exercıcio.

Lema: Se B = B1, . . . ,Bk e um empacotamento de L tal ques(Bi) ≥ 1− ε

2 , para i = 1, . . . , k − 1 e ε ∈ (0,1) entaok ≤ (1 + ε) · OPT(L) + 1

Prova. Exercıcio.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 103 / 312

Page 104: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Restringindo itens no tamanho e nos tipos

L tem no maximo k tipos diferentes de items cada um com tamanhopelo menos ε onde k e ε sao constantes.

0

2

1

0

3i1

i2

i3

i4

5ii1 i1i1 i4 i4i3

P

Representacao de um padrao em um vetor

k tipos diferentes em L cada item com tamanho pelo menos ε⇓

numero de padroes diferentes e constante.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 104 / 312

Page 105: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Algoritmo RSTk ,ε(L)

1. Produza todos os padroes P1,P2, . . . ,Pw possıveis de seempacotar items de L em um bin unitario.

2. Seja x∗ uma solucao otima do seguinte LP com no maximo kvariaveis nao nulas:

minimize∑

xis.a. P1 ·x1+P2 ·x2+· · ·+Pw ·xw = M,

xi ∈ Q∗

onde M e o vetor de multiplicidade dos itens de L.

3. Obtenha um empacotamento P da lista L arredondando paracima as variaveis x∗

4. Retorne P

Observacao: Na pratica, passo 2 pode ser feito pelo metodo deGeracao de Colunas de maneira muito rapida.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 105 / 312

Page 106: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Lema: RSTk ,ε(L) ≤ OPT(L) + kProva. Como ha no maximo k tipos diferentes em L, o LP

minimizew∑

i=1

xi

s.a. P1 ·x1+P2 ·x2+· · ·+Pw ·xw = M,

xi ∈ Q∗

tem k linhas e portanto existe uma solucao que e um ponto extremalcom no maximo k variaveis nao nulas.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 106 / 312

Page 107: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Restringindo itens no tamanho

L tem items com tamanho pelo menos ε.

Ideia: Linear RoundingAgrupar os itens por tamanho em k sublistas e arredondar os itens decada sublista por cima.

Def.: Temos AB (BA) se ∃ funcao injetoraf :A→ B tal que s(i) ≤ s(f (i)).

Fato: Se AB entao OPT(A)≤OPT(B)

Def.: Seja A a lista com os itens da lista A arredondados para o maioritem da lista A.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 107 / 312

Page 108: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Linear Rounding: Suponha todos itens em L sao grandes (si > ε)Particione a lista em grupos de mesmo tamanho earredonde os itens de cada grupo, exceto os do maior grupo

L

ListaOriginal

RoundingLR

Linear

G0 G1 G2 Gk. . .

. . .G0 GkG2G1

εOPT

Ideia: OPT(LR) ≤ (1 + ε)OPT(L)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 108 / 312

Page 109: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Seja L ordenado de maneira nao crescente e L = (G0‖G1‖ . . . ‖Gk )onde k e Gi sao tais que |Gi |=q, i =0,. . ., k−1 e |Gk |≤q.

Fato: Gi Gi−1.

Fato: OPT(G1‖G2‖ . . . ‖Gk ) ≤ OPT(L)Prova. Note que

(G1‖G2‖ . . . ‖Gk ) (G0‖G1‖ . . . ‖Gk−1)

(G0‖G1‖ . . . ‖Gk−1‖Gk )

= L

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 109 / 312

Page 110: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Algoritmo RSε(L)1. Ordene L em ordem nao crescente de tamanho.

2. Dado q = dn · ε2e, particione L em grupos L = (G0‖G1‖ . . . ‖Gk )onde k e Gi sao tais que

|Gi |=q, i =0,. . ., k−1 e |Gk |≤q

3. Seja J ← (G1‖G2‖ . . . ‖Gk ).

4. P1..k ← RSTk ,ε(J)

5. P0 ← NF(G0)

6. Retorne P0‖P1..k

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 110 / 312

Page 111: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Lema: RSε(L) ≤ (1 + ε) · OPT(L) + βεProva. Como J L

RSTk ,ε(J) ≤ OPT(J) + kε≤ OPT(L) + kε

NF(G0) ≤ q = dn · ε2e≤ n · ε2 + 1≤ ε · s(L) + 1≤ ε · OPT(L) + 1

Portanto

RS(L) = RSTk ,ε(J)+NF(G0)

≤ (OPT(L)+kε)+ (ε · OPT(L)+1)

= (1+ε) · OPT(L)+βε

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 111 / 312

Page 112: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Algoritmo Aε(L)

1. Divida a lista L em L′ e L′′:L′ := i ∈ L : s(i) > ε/2 e L′′ := L \ L′.

2. P ′1 ←RSε/2(L′)

3. Empacote os itens de L′′ usando a estrategia NF testando nosbins gerados em P ′1 (se necessario use bins novos).

4. Retorne o empacotamento gerado no passo anterior.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 112 / 312

Page 113: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

APTAS para Problema do Empacotamento

Teorema: Aε(L)≤ (1 + ε)OPT(L)+βεProva. Seja B1, . . . ,Bk os bins gerados por Aε. Temos dois casos:

Caso 1: NF gerou novos bins ao empacotar L′′.Entao

s(Bi) ≥ (1− ε/2), para todo i = 1, . . . , k − 1.

Portanto Aε(L) ≤ (1 + ε)OPT + 1.

Caso 2: NF nao gerou novos bins ao empacotar L′′.Logo

Aε(L) = RS(L′) ≤ (1 + ε)OPT + βε

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 113 / 312

Page 114: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao a Dualidade em Programacao Linear

Dualidade em Programacao LinearConsidere o seguinte PL:

minimize c1x1 + c2x2 + c3x3

sujeito a

a11x1 + a12x2 + a13x3 ≥ b1

a21x1 + a22x2 + a23x3 = b2

a31x1 + a32x2 + a33x3 ≤ b3

x1 ≥ 0, x3 ≤ 0

Vamos delimitar o valor otimo do LP:Multiplique as restricoes por y1 ≥ 0, y2 e y3 ≤ 0:

y1(a11x1 + a12x2 + a13x3) ≥ y1b1

y2(a21x1 + a22x2 + a23x3) = y2b2

y3(a31x1 + a32x2 + a33x3) ≥ y3b3

Somando estas inequacoes obtemos:

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 114 / 312

Page 115: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao a Dualidade em Programacao Linear

y1(a11x1 + a12x2 + a13x3) ≥ y1b1y2(a21x1 + a22x2 + a23x3) = y2b2y3(a31x1 + a32x2 + a33x3) ≥ y3b3

(y1a11 + y2a21 + y3a31)x1 +(y1a12 + y2a22 + y3a32)x2 +(y1a13 + y2a23 + y3a33)x3 ≥ (y1b1 + y2b2 + y3b3) = yb

Comparando com a funcao objetivo cx = c1x1 + c2x2 + c3x3, se

c1x1 ≥ (y1a11 + y2a21 + y3a31)x1

c2x2 = (y1a12 + y2a22 + y3a32)x2

c3x3 ≥ (y1a13 + y2a23 + y3a33)x3

Nestas condicoes, temos cx ≥ yb e portanto yb e limitante de cx

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 115 / 312

Page 116: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao a Dualidade em Programacao Linear

Como x1 ≥ 0 e x3 ≤ 0, podemos simplificar as condicoes para tercx ≥ yb como:

c1 ≥ y1a11 + y2a21 + y3a31

c2 = y1a12 + y2a22 + y3a32

c3 ≤ y1a13 + y2a23 + y3a33

Naturalmente, queremos dentre todos os valores de y , o que melhordelimita cx ≥ yb, i.e., com yb maximo. Assim, obtemos o seguinteproblema dual:

maximize y1b1 + y2b2 + y3b3

sujeito a

y1a11 + y2a21 + y3a31 ≤ c1y1a12 + y2a22 + y3a32 = c2y1a13 + y2a23 + y3a33 ≥ c3y1 ≥ 0, y3 ≤ 0

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 116 / 312

Page 117: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao a Dualidade em Programacao Linear

Convencao para nomear estes sistemas:Problema Primal

minimize c1x1 + c2x2 + c3x3

sujeito a

a11x1 + a12x2 + a13x3 ≥ b1a21x1 + a22x2 + a23x3 = b2a31x1 + a32x2 + a33x3 ≤ b3x1 ≥ 0, x3 ≤ 0

Problema Dual

maximize y1b1 + y2b2 + y3b3

sujeito a

y1a11 + y2a21 + y3a31 ≤ c1y1a12 + y2a22 + y3a32 = c2y1a13 + y2a23 + y3a33 ≥ c3y1 ≥ 0, y3 ≤ 0

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 117 / 312

Page 118: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao a Dualidade em Programacao Linear

ExercıcioFaca exatamente a mesma analise feita anteriormente para se obterum dual (como limitante de um programa linear), mas em vez de partirde um problema de minimizacao, comece com um problema demaximizacao, e obtenha seu dual como um problema de minimizacao.

ExercıcioFaca o programa dual da formulacao relaxada dos seguintesproblemas:

I Problema da Cobertura de VerticesI Problema da Cobertura por ConjuntosI Problema de Localizacao de FacilidadesI Problema de Steiner

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 118 / 312

Page 119: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao a Dualidade em Programacao Linear

Problemas Primal e DualProblema Primal

(P)

minimize c xsujeito a (Ax)i ≥ bi para cada i em M1 ,

(Ax)i = bi para cada i em M2 ,(Ax)i ≤ bi para cada i em M3 ,

xj ≥ 0 para cada j em N1 ,xj ≤ 0 para cada j em N3 .

Problema Dual

(D)

maximize y bsujeito a (yA)j ≤ cj para cada j em N1 ,

(yA)j = cj para cada j em N2 ,(yA)j ≥ cj para cada j em N3 ,

yi ≥ 0 para cada i em M1 ,yi ≤ 0 para cada i em M3 .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 119 / 312

Page 120: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao a Dualidade em Programacao Linear

Lema: Seja (P) um programa primal de minimizacao e (D) seuproblema dual de maximizacao, entao cx ≥ yb para todo x ∈ P ey ∈ D.

Folgas ComplementaresDois vetores x e y , indexados por M e N respectivamente, temfolgas complementares se,

xj = 0 ou (yA)j = cj ∀j ∈ N1 ∪ N3 (folgas complementares primais)eyi = 0 ou (Ax)i = bi ∀i ∈ M1 ∪M3 (folgas complementares duais).

Lema: (das folgas complementares) Se (P) e um programa linear e(D) seu programa dual, x e y solucoes viaveis de (P) e (D) entao

(c x = y b) ⇔ (x e y satisfazem folgas complementares)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 120 / 312

Page 121: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao a Dualidade em Programacao Linear

Teorema: (da dualidade) Se (P) e um programa linear deminimizacao e (D) seu programa dual (de maximizacao), entao valeexatamente uma das possibilidades:

1. (P) e (D) sao viaveis e OPT-LP(P)=OPT-LP(D).2. (P) e viavel e (D) e inviavel e OPT-LP(P) = −∞.3. (P) e inviavel e (D) e viavel e OPT-LP(D) =∞.4. (P) e (D) sao inviaveis.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 121 / 312

Page 122: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao a Dualidade em Programacao Linear

Lema: (de Farkas) Exatamente um dos programas restritos temsolucao:

(RP)∃ x ∈ QN

(Ax)i ≥ bi ∀i ∈ M ,xi ≥ 0 ∀j ∈ N .

(RD)

∃ y ∈ QM

yb > 0(yA)j ≤ 0 ∀j ∈ N ,

yi ≥ 0 ∀i ∈ M .Prova.Considere o programa linear (P) e seu dual (D):

(P)min 0x

(Ax)i ≥ bi ∀i ∈ M ,xi ≥ 0 ∀j ∈ N .

(D)max yb

(yA)j ≤ 0 ∀j ∈ N ,yi ≥ 0 ∀i ∈ M .

Note que (P) e viavel se e so se (RP) e vıavel e o programa (D) esempre viavel pois y = 0 satisfaz as restricoes.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 122 / 312

Page 123: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao a Dualidade em Programacao Linear

Como (D) e viavel, apenas as alternativas 1. ou 3. do Lema daDualidade podem ocorrer.

Caso 1: (P) e viavel e OPT-LP(P)=OPT-LP(D).

(P) viavel⇒ (RP) e viavel.(∀y ∈ (D), yb ≤ OPT-LP(D)= OPT-LP(P)=0

)⇒ (RD) e inviavel.

Caso 3: OPT-LP(D) =∞ e (P) e inviavel.

(P) inviavel⇒ (RP) e inviavel.(OPT-LP(D) =∞

)⇒(∃y ∈ (D) : yb > 0

)⇒ (RD) e viavel.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 123 / 312

Page 124: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Dual

Metodo Dual: Arredondamento

Arredondamento pela Solucao Dual

Se x e y sao solucoes otimas de (P) e (D), entao

xj > 0 =⇒ (yA)j = cj (folgas complementares primais)

Estrategia:

Resolver o programa dual e selecionar j onde (yA)j = cj .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 124 / 312

Page 125: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Dual

Problema COBERTURA POR VERTICES: Dados grafo G = (V ,E) ecustos c : V → Q≥, encontrar S ⊆ V tal que u, v ∩ S 6= ∅∀u, v ∈ E e c(S) e mınimo.

Formulacoes Primal e Dual

(P)min c x

xi + xj ≥ 1 ∀ij ∈ E ,xi ≥ 0 ∀i ∈ V .

(D)

max y(EG)∑e∈δ(v)

ye ≤ cv ∀v ∈ V ,

ye ≥ 0 ∀e ∈ E .

MINCV-HOCHBAUM (G, c)

1 seja y uma solucao otima de (D)

2 C ← v ∈ VG :∑

e∈δ(v)

ye = cv

3 devolva C

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 125 / 312

Page 126: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Dual

Exemplo:

e1 e2

1v v4

v32ve3

min xv1+xv2+xv3+xv4

xv1+xv2 ≥ 1(P) xv2 +xv4≥ 1

xv2+xv3 ≥ 1xv ≥ 0

max ye1+ye2+ye3

ye1 ≤ 1 (Dv1)ye1+ye2+ye3≤ 1 (Dv2)

(D) ye3≤ 1 (Dv3)ye2 ≤ 1 (Dv4)

ye ≥ 0Valor da solucao otima de (D) ⇒ y(E) = 1

y = (ye1 = 1, ye2 = 0, ye3 = 0)

Desigualdades de (D) justas: (Dv1) e (Dv2)

Solucao aproximada: v1, v2Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 126 / 312

Page 127: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Dual

Teorema: O algoritmo MINCV-HOCHBAUM produz uma cobertura porvertices.Prova. Se uv ∈ E entao (

∑e∈δ(u)

ye = cu ou∑

e∈δ(v)

ye = cv ) pois y e

otimo.

Teorema: O algoritmo MINCV-HOCHBAUM e uma 2-aproximacaopolinomial para o MINCV.Prova. Ao final do algoritmo, C e tal que

c(C) =∑v∈C

cv =∑v∈C

∑e∈δ(v)

ye

≤ 2∑

e∈EG

ye (∗)

≤ 2 OPT(G, c) .

(*) vale pois, ∀e ∈ E temos que ye aparece no maximo duas vezes nasoma.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 127 / 312

Page 128: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Dual

Metodo Dual: Selecao de Dual Maximal

Def.: Se y e uma solucao viavel para um programa dual, y e maximal

se nao existe solucao viavel y, com yi ≥ yi en∑

i=1

yi >

n∑i=1

yi .

Estrategia: Selecao atraves de Dual Maximal1. Encontre uma solucao dual viavel, maximal2. Selecione os objetos satisfeitos com igualdade no dual

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 128 / 312

Page 129: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Dual

Problema COBERTURA POR CONJUNTOS: Dados conjunto E ,subconjuntos S de E , custos c : S→ Q≥, encontrar cobertura S′ ⊆ S

que minimiza∑

S∈S′ c(S).

min∑S∈S

cSxS

(P)∑S∈Se

xS ≥ 1 ∀e ∈ E

xS ≥ 0 ∀S ∈ S,

onde Se := S ∈ S : e ∈ S

max∑e∈E

ye

(D)∑e∈S

ye ≤ cS ∀S ∈ S

ye ≥ 0 ∀e ∈ E

MINCC-HOCHBAUM (S,E , c)

1 seja y uma solucao viavel maximal de (D)

2 S′ ← S ∈ S :∑e∈S

ye = cS

3 devolva S′

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 129 / 312

Page 130: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Dual

Seja y um vetor maximal de (D) e S′ obtida de y pela algoritmoMINCC-HOCHBAUM.

Lema: S′ e uma cobertura por conjuntos.Prova. Se S′ nao e cobertura por conjuntos, entao existe e ∈ E naocoberto. Logo podemos “aumentar” ye ate que alguma desigualdadedual fique justa. Contrariando a maximalidade de y .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 130 / 312

Page 131: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo Dual

Seja β := max|Se| : e ∈ E, onde Se = S ∈ S : e ∈ S.

Teorema: MINCC-HOCHBAUM e uma β-aproximacao para o problemada cobertura por conjuntos.Prova. Seja S′ o conjunto devolvido pelo algoritmo e y o vetor usadono passo 1 para gerar S′.

c(S′) =∑S∈S′

c(S) =∑S∈S′

∑e∈S

ye

≤∑e∈E

|Se|ye

≤∑e∈E

βye = β∑e∈E

ye

≤ β∑e∈E

ye = β OPT-LP

≤ β OPT

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 131 / 312

Page 132: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

Metodo Primal-Dual

I Baseado em Folgas Complementares e Problemas de ViabilidadeI Muitas vezes produz algoritmos combinatorios

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 132 / 312

Page 133: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

Metodo Primal-Dual Classico

(P)min c x

(Ax)i ≥ bi ∀i ∈ M ,xi ≥ 0 ∀j ∈ N .

(D)max yb

(yA)j ≤ cj ∀j ∈ N ,yi ≥ 0 ∀i ∈ M .

Folgas ComplementaresSe x e y sao solucoes otimas de (P) e (D), entao

xj = 0 ou (yA)j = cj (folgas complementares primais)yi = 0 ou (Ax)i = bi (folgas complementares duais)

Estrategia:Dado vetor y viavel de (D),

I obter x viavel de (P) satisfazendo folgas complementares com you

I obter y ′ tq. y ′′←y +y ′ e viavel em (D) e y ′′b>yb;repita processo com y ′′

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 133 / 312

Page 134: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

Folgas ComplementaresSe x e y sao solucoes otimas de (P) e (D), entao

xj = 0 ou (yA)j = cj (folgas complementares primais)yi = 0 ou (Ax)i = bi (folgas complementares duais)

Dado vetor y viavel de (D),I(y) := i ∈ M : yi = 0 e J(y) := j ∈ N : (yA)j = cj .

(Viabil.) (Ax)i ≥ bi ∀i ∈ M ,xi ≥ 0 ∀j ∈ N .

+ (F.C.) (Ax)i = bi ∀i ∈ M \ I(y) ,xj = 0 ∀j ∈ N \ J(y) .

Problema Restrito Primal

(RP)

(Ax)i ≥ bi ∀i ∈ I(y) ,(Ax)i = bi ∀i ∈ M \ I(y) ,

xj ≥ 0 ∀j ∈ J(y) ,xj = 0 ∀j ∈ N \ J(y) .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 134 / 312

Page 135: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

Pelo Lema de Farkas, (RP) e viavel ou (RD) e viavel, nao ambos(exercıcio).

(RP)

(Ax)i ≥ bi ∀i ∈ I(y) ,(Ax)i = bi ∀i ∈ M \ I(y) ,

xj ≥ 0 ∀j ∈ J(y) ,xj = 0 ∀j ∈ N \ J(y) .

⊕ (RD)y ′b > 0

(y ′A)j ≤ 0 ∀j ∈ J(y) ,y ′i ≥ 0 ∀i ∈ I(y) .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 135 / 312

Page 136: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

I(y) := i ∈ M : yi = 0 e J(y) := j ∈ N : (yA)j = cj .

(D)max yb

(yA)j ≤ cj ∀j ∈ N ,yi ≥ 0 ∀i ∈ M .

(RD)y ′b > 0

(y ′A)j ≤ 0 ∀j ∈ J(y) ,y ′i ≥ 0 ∀i ∈ I(y) .

Lema: Se y e viavel para (D) e y ′ e viavel para (RD), entao, existeθ > 0 tal que y ′′ ← y + θ y ′ e tambem e viavel para (D).

Prova. Exercıcio.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 136 / 312

Page 137: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

Metodo PRIMAL-DUAL (A,b, c)

1 seja y um vetor viavel de (D)2 enquanto RP(A,b, y) nao tem solucao faca3 seja y ′ uma solucao do RD(A,b, y)4 se y + θy ′ em (D) para todo θ positivo5 entao devolva y ′

6 senao seja θ maximo tal que y + θy ′ e viavel em (D)7 y ← y + θy ′

8 seja x uma solucao do RP(A,b, y)9 devolva x e y

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 137 / 312

Page 138: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

Problema do Fluxo Maximo

Problema FLUXO-MAXIMO: Dado um grafo orientado G = (N,A),capacidades c : A→ N e vertices s e t , encontrar um fluxo de valormaximo de s para t .

Simplificacao: adicionar aresta (t , s) sem restricao de capacidade.

s t

Objetivo: Encontrar fluxo que respeita conservacao de fluxo em todosos vertices e maximiza fluxo na aresta (t , s).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 138 / 312

Page 139: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

Por conveniencia, vamos chamar a formulacao do fluxo de Dual.

(D)

max yts∑e∈δ+(i)

ye −∑

e∈δ−(i)

ye = 0 ∀i ∈ N,

yij ≤ cij ∀ij ∈ A,yij ≥ 0 ∀ij ∈ A.

Primal: encontrar x = x ′‖x ′′, x ′ indexado por N e x ′′ indexado por Aque

(P)

min∑ij∈A

cij x ′′ij

x ′t − x ′s ≥ 1 ,x ′i − x ′j + x ′′ij ≥ 0 ∀ij ∈ A,

x ′′ij ≥ 0 ∀ij ∈ A.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 139 / 312

Page 140: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

Sobre o programa (P)

(P)

min∑ij∈A

cij x ′′ij

x ′t − x ′s ≥ 1 ,x ′i − x ′j + x ′′ij ≥ 0 ∀ij ∈ A,

x ′′ij ≥ 0 ∀ij ∈ A.Dado um corte S ⊂ N que separa s de t (i.e. s ∈ S e t /∈ S), defina

x ′i =

0 ∀i ∈ S1 ∀i ∈ N \ S

x ′′ij =

1 ∀ij ∈ δ+(S)0 ∀ij ∈ A \ δ+(S)

SS

s t1 1

0

00

0

0

0

1

1

1

1

10

00

0

0

1

Temos x = x ′‖x ′′ viavel para(P) definindo um corte comcapacidade dada pela funcaoobjetivo.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 140 / 312

Page 141: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

Problemas RestritosDado y , fluxo viavel seja

I := ij ∈ A : yij = 0 e J := ij ∈ A : yij = cij .Restrito Primal: encontrar x = x ′‖x ′′ viavel em (P) satisfazendo F.C.

(RP)

x ′t − x ′s ≥ 1 ,x ′i − x ′j + x ′′ij = 0 ∀ij ∈ A \ I,x ′i − x ′j + x ′′ij ≥ 0 ∀ij ∈ I,

x ′′ij ≥ 0 ∀ij ∈ J,x ′′ij = 0 ∀ij ∈ A \ J.

Restrito Dual: Se (RP) e inviavel, pelo Lema de Farkas, (RD) e viavel

(RD)

yts > 0 ,∑e∈δ+(i)

ye −∑

e∈δ−(i)

ye = 0 ∀i ∈ N,

yij ≤ 0 ∀ij ∈ J,yij ≥ 0 ∀ij ∈ I.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 141 / 312

Page 142: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

(RD) viavel⇒ ∃ caminho aumentador P = (y ′) de s para t ,representando um fluxo adicional.

s t

(2,1)

(2,2)

s t

0 1

01

−1

(3,2)

(1,1)

(2,1)

Caminho aumentador

(c,y)=(capacidade,fluxo viável)Valor do fluxo inicial = 3

Fluxo no caminho = 1

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 142 / 312

Page 143: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Introducao ao Metodo Primal-Dual

(2,2)

s t

(3,2)

(c,y)=(capacidade,fluxo viável)

(2,2)

(1,0)

(2,2)

Valor do fluxo resultante = 4

(RD) inviavel⇒ (RP) e viavelSeja S := v ∈ N : existe caminho aumentador de s para v e

x ′i =

0 ∀i ∈ S1 ∀i ∈ N \ S

x ′′ij =

1 ∀ij ∈ δ+(S)0 ∀ij ∈ A \ δ+(S)

Temos que x = x ′‖x ′′ e viavel em (RP)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 143 / 312

Page 144: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo de Aproximacao Primal-Dual

Metodo de Aproximacao Primal-Dual

Generalizacao do Metodo Primal-Dual Classico por F.C.aproximadas

(P)min c x

(Ax)i ≥ bi ∀i ∈ M ,xj ≥ 0 ∀j ∈ N .

(D)max yb

(yA)j ≤ cj ∀j ∈ N ,yi ≥ 0 ∀i ∈ M .

Folgas AproximadasDado 0 < α ≤ 1 ≤ β, x e y solucoes viaveis de (P) e (D)

x e y tem folgas α-Aproximadas no Primal sexj = 0 ou α cj ≤ (yA)j [ ≤ cj ]

x e y tem folgas β-Aproximadas no Dual seyi = 0 ou β bi ≥ (Ax)i [ ≥ bi ]

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 144 / 312

Page 145: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo de Aproximacao Primal-Dual

Lema: Se x e y sao nao-negativos e satisfazem as condicoes defolgas α-aproximadas no primal e β-aproximadas no dual, entaoα c x ≤ β y b.Prova.

α c x ≤∑j∈N

α cj xj

≤∑j∈N

(y A)j xj

=∑i∈M

yi (A x)i

≤∑i∈M

yi β bi

= β y b

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 145 / 312

Page 146: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo de Aproximacao Primal-Dual

Lema: (das Folgas Aproximadas) Se x e y sao solucoes viaveis de(P) e (D) satisfazendo folgas α e β aproximadas entao

x e uma βα -aproximacao em (P) e

y e uma αβ -aproximacao em (D).

Estrategia:Dado vetor y viavel de (D), valores α e β, onde 0 < α ≤ 1 ≤ β

I encontrar x viavel de (P) satisfazendo folgas α e β aproximadascom you

I encontrar y ′ tq. y ′′←y +y ′ e viavel em (D) e y ′′b>yb;repita processo com y ′′

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 146 / 312

Page 147: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo de Aproximacao Primal-Dual

Folgas Aproximadasxj = 0 ou (yA)j ≥ α cj (folgas aproximadas primais)

yi = 0 ou (Ax)i ≤ β bi (folgas aproximadas duais)

Dado vetor y viavel de (D),I(y) := i ∈ M : yi = 0 e J(y , α) := j ∈ N : (yA)j ≥ α cj .

(Viabil.) (Ax)i ≥ bi ∀i ∈ Mxj ≥ 0 ∀j ∈ N

+(F.A.) (Ax)i ≤ β bi ∀i ∈ M \ I(y)xj = 0 ∀j ∈ N \ J(y , α)

Problema Restrito Aproximado Primal

(RAP)

(Ax)i ≥ bi ∀i ∈ M ,(Ax)i ≤ β bi ∀i ∈ M \ I(y) ,

xj ≥ 0 ∀j ∈ J(y , α) ,xj = 0 ∀j ∈ N \ J(y , α) .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 147 / 312

Page 148: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo de Aproximacao Primal-Dual

(RAP) e inviavel⇒ (RP) e inviavel⇒ (RD) e viavel⇒ (RAD) e viavel.

(RAP)

(Ax)i ≥ bi ∀i ∈ M ,(Ax)i ≤ β bi ∀i ∈ M \ I(y) ,

xj ≥ 0 ∀j ∈ J(y , α) ,xj = 0 ∀j ∈ N \ J(y , α) .

~⊕ (RAD)y ′b > 0

(y ′A)j ≤ 0 ∀j ∈ J(y , α) ,y ′i ≥ 0 ∀i ∈ I(y) .

Metodo PRIMAL-DUAL (A,b, c)

1 seja y um vetor viavel de (D)2 enquanto RAP(A,b, y , α, β) nao tem solucao faca3 seja y ′ uma solucao do RAD(A,b, y , α)4 se y + θy ′ e viavel em (D) para todo θ positivo5 entao devolva y ′

6 senao seja θ maximo tal que y + θy ′ e viavel em (D)7 y ← y + θy ′

8 seja x uma solucao do RAP(A,b, y , α, β)9 devolva x e y

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 148 / 312

Page 149: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo de Aproximacao Primal-Dual

Problema da Transversal Mınima

Def.: Dado conjunto E e colecao S finita de subconjuntos de E, umconjunto T ⊆ E e uma transversal de S se T ∩ S 6= ∅, ∀S ∈ S.

Problema MINTC: Dados conjunto E , colecao finita S desubconjuntos de E e custos c : E → Q≥, encontrar transversal T de S

tal que∑

e∈T ce e mınimo.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 149 / 312

Page 150: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo de Aproximacao Primal-Dual

Formulacoes Primal e Dual:

(P)

min∑e∈E

cexe

∑e∈S

xe ≥ 1 ∀S ∈ S,

xe ≥ 0 ∀e ∈ E .

(D)

max∑S∈S

yS∑S∈Se

yS ≤ ce ∀e ∈ E ,

yS ≥ 0 ∀S ∈ S,

onde Se = S ∈ S : e ∈ S.

Estrategia: Obter x e y viaveis, com x binario, satisfazendo:

Folgas aproximadas primais:xe = 1⇒ αce ≤

∑S∈Se

yS ≤ ce para todo e ∈ E

Folgas aproximadas primais:yS > 0⇒ β ≥

∑e∈S

xe ≥ 1 para todo S ∈ S

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 150 / 312

Page 151: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo de Aproximacao Primal-Dual

Problemas Restritos AproximadosConsidere α := 1 e β := max|S| : S ∈ S. Seja y , viavel dual e

I(y) := S ∈ S : yS = 0 e J(y) := e ∈ E :∑S∈Se

yS ≥ ce .

Restrito Aproximado Primal: encontrar x viavel em (P) satisfazendo F.A.

(RAP)

∑e∈E

xe ≥ 1 ∀S ∈ S,∑e∈S

xe ≤ β ∀S ∈ S \ I(y),

xe ≥ 0 ∀e ∈ J(y),xe = 0 ∀e ∈ E \ J(y).

(RAD)

∑S∈S

y ′S > 0 ,∑S∈S

y ′S ≤ 0 ∀e ∈ J(y),

y ′S ≥ 0 ∀S ∈ I(y).

Restrito Aproximado Dual: Se (RAP) e inviavel entao (RP) e inviavel epelo Lema de Farkas, (RAD) e viavel

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 151 / 312

Page 152: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo de Aproximacao Primal-Dual

Algoritmo de Bar-Yehuda e Even

MINTC-BE (E , S, c)

1 J ← e ∈ E : ce = 0

2 yS ← 0, ∀S ∈ S

3 enquanto existe R ∈ S tal que J ∩ R = ∅ faca

4 aumente yR ate o maximo, mantendo validas as restricoes

5∑S∈Se

yS ≤ ce, ∀e ∈ R

6 seja f um elemento de R tal que∑S∈Sf

yS = cf

7 J ← J ∪ f

8 devolva J

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 152 / 312

Page 153: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo de Aproximacao Primal-Dual

Lema: Seja J o conjunto devolvido por MINTC-BE, x o vetorcaracterıstico de J e y o vetor dual construıdo pelo algoritmo. Entao,

1. J e uma transvesal,2. x satisfaz folgas aproximadas primais com α = 1

xe = 0 ou 1 · ce ≤∑S∈Se

yS ≤ ce

3. y satisfaz folgas aproximadas duais com β = max|S| : S ∈ S:

ye = 0 ou β ·1 ≥∑e∈S

xe ≥ 1

Prova.Para verificar (1), note que se R ∈ S e J ∩ R = ∅ entao ha uma folgapara aumentar yR.Para verificar (2), note que um elemento e ∈ J foi escolhido porsatisfazer

∑S∈Se

yS = ce

Para verificar (3), note que∑e∈S

xe ≤ |S| ≤ β.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 153 / 312

Page 154: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Metodo de Aproximacao Primal-Dual

Teorema: O algoritmo MINTC-BE e uma β-aproximacao polinomialpara o MINTC (E , S, c), onde β := maxS∈S |S|.

Prova. Segue do Lema das Folgas Aproximadas.

ExercıcioUsando a abordagem vista para o problema da Transversal Mınima,apresente uma 2-aproximacao para o problema da Cobertura porVertices.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 154 / 312

Page 155: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Problema de Localizacao de FacilidadesProblema LOCALIZACAO (facility location problem): Dados potenciaisfacilidades F = 1, . . . ,n, clientes C = 1, . . . ,m, custos fi para“abrir” a facilidade i e custos cij ∈ Z para um cliente j ser atendido pelafacilidade i . Encontrar facilidades A ⊆ F minimizando o custo paraabrir as facilidades em A e atender todos os clientes

Aplicacoes: Instalacao de postos de distribuicao de mercadorias,construcao de redes de telecomunicacao.

Teorema: O problema MINCC e um caso particular do problemaLOCALIZACAO.

Corolario: (Raz & Safra’97) O problema de LOCALIZACAO nao podeser aproximado em ε log |E |, para alguma constante ε > 0, a menosque P = NP.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 155 / 312

Page 156: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Problema de Localizacao de Facilidades Metrico

Custos satisfazem desigualdade triangular:

cij ≤ cij ′ + ci ′j ′ + ci ′j i , i ′ ∈ F e j , j ′ ∈ C

j j ′

ii ′

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 156 / 312

Page 157: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Vamos ver uma 3-aproximacao de Jain e Vazirani’01usando tecnica primal-dual:

Programa inteiro:

minimize∑i∈F

fiyi +∑ij∈E

cijxij

sujeito a

∑ij∈E

xij ≥ 1 ∀j ∈ C,

yi − xij ≥ 0 ∀ij ∈ E ,xij ∈ 0,1 ∀i ∈ F e j ∈ C,yi ∈ 0,1 ∀i ∈ F .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 157 / 312

Page 158: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Programa Relaxado Primal:

(P) tal que

min∑i∈F

fiyi +∑ij∈E

cijxij∑ij∈E

xij ≥ 1 ∀j ∈ C ,

yi − xij ≥ 0 ∀i ∈ F , j ∈ C ,xij ≥ 0 ∀i ∈ F , j ∈ C ,yi ≥ 0 ∀i ∈ F .

Programa Dual:

(D) tal que

max∑j∈C

αj

αj − βij ≤ cij ∀i ∈ F , j ∈ C ,∑j∈C

βij ≤ fi ∀i ∈ F ,

αj ≥ 0 ∀j ∈ C ,βij ≥ 0 ∀i ∈ F , j ∈ C .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 158 / 312

Page 159: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Metodo Primal-Dual com folgas aproximadas primais:

xij = 1 ⇒ 13cij ≤ αj − βij ≤ cij

yi = 1 ⇒ 13 fi ≤

∑j∈C βij ≤ fi

e folgas complementares duais:

αj > 0 ⇒∑

i∈F xij = 1

βij > 0 ⇒ yi = xij

Isto nos da uma 3-aproximacao para o problema da LOCALIZACAO.Entretanto, vamos usar um resultado mais forte para usa-lo noproblema da k -MEDIANA.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 159 / 312

Page 160: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Estrategia do algoritmo:I Inicialmente comece as variaveis duais nulas.

I Aumente uniformemente as variaveis α’s ate que uma variavel αjtenha seu crescimento limitado por uma aresta ij (αj − βij ≤ cij ).Neste caso a variavel βij tambem comeca a aumentar.

I Uma facilidade e justa quando tem a soma dos valores βincidentes a ela igual ao seu custo. Neste ponto as variaveisduais associadas param de crescer.

I O conjunto das facilidades abertas e um subconjunto dasfacilidades justas.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 160 / 312

Page 161: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

FACILITY-JV (F,C,C)Inicializacoes

1 A← C % Conjunto de clientes ativos

2 S ← ∅ % Conjunto de arestas especiais

3 R ← ∅ % Conjunto de arestas especiais inativas

4 Ft ← ∅ % Facilidades temporariamente abertas

5 para cada j em C faca αj ← 0

6 para cada i ∈ F e j ∈ C faca βij ← 0

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 161 / 312

Page 162: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Fase 17 enquanto A 6= ∅ faca8 aumente uniformemente αj e βij para j ∈ A e ij ∈ S \ R ate que9 (a) αj = cij para algum ij ∈ (F \Ft × A) \ S ou

10 (b) αj = cij para algum ij ∈ (Ft × A) \ S ou11 (c)

∑j∈C βij = fi para algum i ∈ F \ Ft .

12 se (a) foi satisfeita para algum ij entao13 S ← S ∪ ij14 senao se (b) foi satisfeita para algum ij entao15 τ(j)← i % testemunha de j16 A← A \ j17 senao se (c) foi satisfeita para algum i entao18 para cada j tal que ij ∈ S faca τ(j)← i19 A← A \ j : ij ∈ S20 R ← R ∪ ij : ij ∈ S21 Ft ← Ft ∪ iFlavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 162 / 312

Page 163: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Fase 222 H ← (VH ,EH) onde

23 VH := Ft24 EH := i ′i ′′ : i ′, i ′′ ∈ VH e ∃ j ∈ C, com i ′j ∈ S e i ′′j ∈ S

25 I ← (Conjunto independente maximal de H)

26 para todo j ∈ C faca

27 se τ(j) ∈ I entao

28 φ(j)← τ(j) ( (φ(j), j) e conexao direta)

29 senao

30 seja i ∈ I tal que (i , τ(j)) ∈ H

31 φ(j)← i ( ij e conexao indireta)

32 devolva (I, φ)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 163 / 312

Page 164: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Aumentando αj e βij de apenas um cliente

i

j

i

j

i

j

i

j

i

j

(1) (2) (3)

(5)(4)

αj = 0βj = 0

fi = 3cij = 4

βj = 0

fi = 3cij = 4αj = 4

βj = 0

fi = 3cij = 4αj = 3

βj = 3

fi = 3cij = 4αj = 7

βj = 1

fi = 3cij = 4αj = 5

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 164 / 312

Page 165: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Aumentando αj e βij de dois clientes

cij′′ = 4

i

j ′

j ′′

i

j ′

j ′′

i

j ′

j ′′

i

j ′

j ′′

(1) (2)

(4)(3)

fi = 3cij′ = 3

βij′ = 0βij′′ = 0

βij′ = 0βij′′ = 0

αj′ = 5αj′′ = 5βij′ = 2βij′′ = 1βij′′ = 0

αj′ = 4αj′′ = 4βij′ = 1

αj′ = 0αj′′ = 0

αj′ = 3αj′′ = 3

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 165 / 312

Page 166: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Para provar que FACILITY-JV e uma 3-aproximacao, usaremos oteorema das folgas aproximadas com as seguintes condicoes:

Folgas aproximadas primais:

xij = 1, ij indireto ⇒ 13cij ≤ αj − βij ≤ cij

xij = 1, ij direto ⇒ αj − βij = cij

yi = 1 ⇒∑

j∈C βij = fi

e folgas complementares duais:

αj > 0 ⇒∑

i∈F xij = 1

βij > 0 ⇒ yi = xij

Note que o unico lugar frouxo sao as folgas para as arestas indiretas.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 166 / 312

Page 167: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Lema: (Folga aproximada primal 1)

xij = 1 e ij e direta⇒ αj − βij =cij

Prova.Caso 1: βij = 0

Neste caso, αj cresceu apenas para cobrir o custo cij poisi ja estava aberta.

Caso 2: βij > 0

Neste caso, αj pode passar de cij , mas quando issoocorre, ij fica especial e βij cresce junto com αj mantendoa igualdade αj − βij =cij .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 167 / 312

Page 168: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Lema: (Folga aproximada primal 2)

xij = 1 e ij e indireta⇒ 13

cij≤αj − βij≤cij

Prova. Neste caso, note que βij = 0 e αj ≤ cij .Agora, vamos mostrar que cij ≤ 3αj .Seja i ′ := τ(j). Deve existir i ′ ∈ I e j ′ ∈ C tal que

Ii ′i ∈ Hi ′ i

j ′

j

cij ≤ ci ′j + ci ′j ′ + cij ′

≤ αj + αj ′ + αj ′

≤ αj + αj + αj (pois raio de j parou depois do de j ′)= 3αj

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 168 / 312

Page 169: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Lema: (Folga aproximada primal 3)

yi = 1 ⇒∑j∈C

βij = fi

Prova. Cada facilidade temporariamente aberta, em Ft , devesatisfazer a condicao (c) (linha 11) pelo comando da linha 21:∑

j∈C

βij = fi

O resultado segue pois o conjunto I das facilidades abertas (yi = 1) esubconjunto de Ft .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 169 / 312

Page 170: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema de Localizacao de Facilidades

Lema: (Folga aproximada dual 1)

αj > 0⇒∑i∈F

xij =1.

Prova. Exercıcio.

Lema: (Folga aproximada dual 2)

βij > 0⇒ yi =xij

Prova. Exercıcio (basta considerar casos quando yi = 0 e yi = 1).

Teorema: (Jain e Vazirani’01) FACILITY-JV e uma 3-aproximacao parao problema da LOCALIZACAO.

Prova. Segue do lema das folgas aproximadas e dos 5 lemasanteriores.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 170 / 312

Page 171: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Dual Fitting

Dual Fitting

Suponha (P) um problema primal do tipo(

min cx sujeito a x ∈ P).

Suponha (D) um problema dual do tipo(

max yb sujeito a y ∈ D).

Ideia:I Obter uma solucao inteira x para (P) e um vetor y (guiado para

ser um dual) mas y nao necessariamente viavel para (D).

I Apesar de y nao ser viavel, yb “paga” o valor da solucao primal.

I Obter fator f tal que y ← yf

e viavel para (D).

I Assim, cx ≤ y b = fy bf

= f y b ≤ f OPT.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 171 / 312

Page 172: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Dual Fitting

Problema COBERTURA POR CONJUNTOS: Dados conjunto E ,subconjuntos S de E , custos c : S→ Q≥, encontrar cobertura S′ ⊆ S

que minimiza∑

S∈S′ c(S).

Relaxacao e dual:

min∑S∈S

cSxS

(P)∑S∈Se

xS ≥ 1 ∀e ∈ E

xS ≥ 0 ∀S ∈ S,

onde Se := S ∈ S : e ∈ S

max∑e∈E

ye

(D)∑e∈S

ye ≤ cS ∀S ∈ S

ye ≥ 0 ∀e ∈ E

Ideia: Aumentar (a partir de 0) variaveis y de maneira a pagar por umasolucao inteira. Depois obter fator f que transforma y/f em dual viavel.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 172 / 312

Page 173: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Dual Fitting

Aumento uniforme de ye, para todo elemento ativo e ∈ A

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 173 / 312

Page 174: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Dual Fitting

MINCC-DUAL-FITTING (S,E , c)

1 faca S′ ← ∅2 faca A← E (conjunto de elementos ativos)3 faca ye ← 0 para todo e ∈ E4 enquanto A 6= ∅ faca5 aumente uniformemente ye para todo e ∈ A ate que∑

e∈R∩A

ye = cR para algum R ∈ S \ S′

6 S′ ← S′ ∪ R7 A← A \ R8 devolva (S′, y)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 174 / 312

Page 175: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Dual Fitting

Lema: Seja (S′, y) solucao devolvida por MINCC-DUAL-FITTING.Entao, ∑

S∈S′cS =

∑e∈E

ye

Prova. Exercıcio.

Fato: Note que y pode nao ser dual viavel.Prova. Exercıcio

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 175 / 312

Page 176: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Dual Fitting

Lema: Seja (S′, y) devolvido por MINCC-DUAL-FITTING eS = e1, . . . ,ek ∈ S′ e s.p.g., temos ye1 ≤ ye2 ≤ . . . ≤ yek . Entao

k∑i=l

yel = (k − l + 1)yel ≤ c(S)

Prova. Note que se yel aumentou ate um valor t , todos os outrosvalores yej para j = l , . . . , k tambem chegaram a t , sem violar o custode S.

1 kl...

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 176 / 312

Page 177: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Dual Fitting

Lema: Se y e devolvido por MINCC-DUAL-FITTING entaoy

Hne dual

viavel para (D), onde Hn = 1 + 12 + 1

3 + · · ·+ 1n

Prova. Seja R = e1, . . . ,ek ∈ S′ e s.p.g. ye1 ≤ ye2 ≤ . . . ≤ yek .Aplicando lema anterior para l = 1, . . . , k temos

l = 1, k ye1 ≤ c(R) ⇒ ye1c(R) ≤ 1

k

l = 2, (k − 1) ye2 ≤ c(R) ⇒ ye2c(R) ≤ 1

k−1...

l = k , yek ≤ c(R) ⇒ yekc(R) ≤ 1

Somando as desigualdades acimak∑

i=1

yei

c(R)≤ Hk

Assim,∑e∈R

ye

Hn≤ c(R).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 177 / 312

Page 178: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Dual Fitting

Teorema: O algoritmo MINCC-DUAL-FITTING e uma Hn-aproximacaopara o Problema da Cobertura por Conjuntos.

ExercıcioReescreva o algoritmo MINCC-DUAL-FITTING como um algoritmoguloso.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 178 / 312

Page 179: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema da Floresta de Steiner

Problema da Floresta de Steiner

Seja G um grafo e R uma colecao de subconjuntos de VG.

Def.: Uma R-floresta de G e qualquer floresta geradora F de G talque para todo R ∈ R, os elementos de R estao contidos em algumcomponente de F.

Problema Floresta de Steiner: Dados um grafo G, um custo ce emQ≥ para cada aresta e e uma colecao R de subconjuntos de VG,encontrar uma R-floresta F que minimize c(F ).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 179 / 312

Page 180: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema da Floresta de Steiner

Def.: Um conjunto S ⊂ V e chamado ativo se existe R ∈ R tal que

R ∩ S 6= ∅ e R \ S 6= ∅

S := S ⊂ V : S e conjunto ativo eSe := S ∈ S : e ∈ δ(S)

Formulacoes (P) e (D):

(P)

min∑e∈E

cexe∑e∈δ(S)

xe ≥ 1 ∀S ∈ S ,

xe ≥ 0 ∀e ∈ E .

(D)

max∑S∈S

yS∑S∈Se

yS ≤ ce ∀e ∈ E ,

yS ≥ 0 ∀S ∈ S .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 180 / 312

Page 181: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema da Floresta de Steiner

Se existir x inteiro viavel em (P) e y viavel em (D) satisfazendo folgasα e β aproximadas, com α = 1 e β = 2, temos

xe = 1 ⇒∑S∈Se

yS = ce (folgas aproximadas primais)

yS > 0 ⇒∑

e∈δ(S)

xe ≤ 2 (folgas aproximadas duais)

Entao, pelo lema das folgas aproximadas, x e uma 2-aproximacao. MasI Folgas aproximadas primais sao faceis de se obter.I Folgas aproximadas duais sao difıceis de se obter.

Estrategia: Usar uma nova folga aproximada dual mais flexıvelTrocar yS > 0 ⇒

∑e∈δ(S)

xe ≤ 2

por yS > 0 ⇒

∑S∈SF

∑e∈δ(S)

xe

|SF |≤ 2

onde SF e o conjunto dos componentes ativos da floresta sendoconstruıda, em cada iteracao do algoritmo.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 181 / 312

Page 182: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema da Floresta de Steiner

Componentes ativos em uma iteracaoObservacoes sobre o algoritmo:

I Constroi dual viavel que comeca com 0.I Usa numero limitado de conjuntos ativos.I Conjuntos ativos usados tem propriedade laminar.I Folgas aproximadas primais validas em cada iteracao.I Folgas aproximadas duais flexıveis validas em cada iteracao.I No fim do algoritmo, as arestas desnecessarias sao podadas.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 182 / 312

Page 183: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema da Floresta de Steiner

I F : Floresta sendo construıda.I SF : Componentes ativas de FI Aresta externa: exatamente um extremo em uma componente de SFI F0: Floresta F logo antes da poda.I F1: Floresta final apos a poda.

MINFS-GW (G, c,R)

1 F ← (V , ∅)2 para cada S em S faca yS ← 03 enquanto SF 6= ∅ faca4 aumente uniformemente yS ate o maximo ∀S ∈ SF mantendo5

∑S∈Se

yS ≤ ce para cada aresta externa e

6 seja f uma aresta externa tal que∑

S∈SfyS = cf

7 F ← F + f8 F0 ← F9 seja F1 uma R-floresta minimal de F0

10 devolva F1Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 183 / 312

Page 184: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema da Floresta de Steiner

Cırculos representam o crescimento das variaveis duais.Discos sao steiner nodes (nao tem requisitos de conectividade).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 184 / 312

Page 185: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema da Floresta de Steiner

Componentes inativos nao tem crescimento nas variaveis duais.No final, e feita a poda das arestas desnecessarias.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 185 / 312

Page 186: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema da Floresta de Steiner

Lema: No inıcio de cada iteracao temos∑S∈SF

|δF1(S)|

|SF |≤ 2 .

Prova. Seja C o conjunto de componentes de F no inıcio da iteracao.Seja H = (C,EH) tal que U,W∈EH ⇔ ∃u,w∈F1 : u∈U,w ∈W .

A

A

I

I

AA

Como F1 e minimal, todas as folhas de H sao ativas.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 186 / 312

Page 187: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema da Floresta de Steiner

SejaSF os componentes ativos de F eZF os componentes inativos de F com grau nao nulo.

Como H e floresta temos∑S∈SF

|δF1(S)|+∑

S∈ZF

|δF1(S)| =∑

S∈VH

|δH(S)|

= 2|EH |≤ 2(|SF |+ |ZF | − 1)

< 2|SF |+ 2|ZF |

Portanto ∑S∈SF

|δF1(S)| ≤ 2|SF |+ 2|ZF | −∑

S∈ZF

|δF1(S)|

≤ 2|SF | .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 187 / 312

Page 188: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema da Floresta de Steiner

Lema: No inıcio de cada iteracao, vale a desigualdade∑S∈S

|δF1(S)| yS ≤ 2∑S∈S

yS ,

Prova. Por inducao no numero de iteracoes:Inicialmente y = 0 e a desigualdade vale.Suponha que a desigualde vale no inıcio de uma iteracao.Durante a iteracao, yS e acrescido de θ se e somente se S ∈ SF .Assim, o lado esquerdo da desigualdade e acrescido de∑

S∈SF

|δF1(S)|θ

enquanto o lado direito e acrescido de

2|SF |θ.

Pelo lema anterior, a desigualdade vale.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 188 / 312

Page 189: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Problema da Floresta de Steiner

Teorema: O algoritmo MINFS-GW e uma 2-aproximacao para oMINFS.Prova.

c(F1) =∑e∈F1

ce

=∑e∈F1

∑S∈Se

yS (folgas 1-aprox. primais)

=∑S∈S

|δF1(S)| yS (invertendo as somas)

≤ 2∑S∈S

yS (pelo lema anterior)

≤ 2 OPT(G, c,R) .

ExercıcioMostre que e possıvel melhorar um pouco a analise do teoremaobtendo um fator de aproximacao de

(2− 1

n

), no lugar de 2.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 189 / 312

Page 190: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

AXIOMAS DE PROBABILIDADE

Def.: Um espaco de probabilidade tem 3 componentes:I Um espaco amostral Ω

I Uma famılia F de eventos, cada E ∈ F e t.q. E ⊆ Ω.I Funcao de probabilidade Pr : F → R+

E ∈ F e dito ser simples ou elementar se |E | = 1

Iremos considerar apenas espacos discretos de probabilidade.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 190 / 312

Page 191: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

Def.: Uma funcao de probabilidade e qualquer funcao Pr : F → R+

t.q.I ∀E ∈ F temos 0 ≤ Pr(E) ≤ 1I Pr(Ω) = 1I Para toda sequencia finita ou enumeravel de eventos mutuamente

exclusivos E1,E2, . . . , temos

Pr(E1 ∪ E2 . . .) = Pr(E1) + Pr(E2) + . . .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 191 / 312

Page 192: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

ExemploConsidere o lance de um dado de 6 lados.

I Ω = 1, . . . ,6

Exemplo de eventos que podemos considerarI E ′ = Evento do dado mostrar numero par.I E ′′ = Evento do dado mostrar numero menor ou igual a 3.I E ′′′ = Evento do dado mostrar numero primo.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 192 / 312

Page 193: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

Def.: Dois eventos E e F sao ditos serem independentes sse

Pr(E ∩ F ) = Pr(E) · Pr(F )

e eventos E1, . . . ,Ek sao mutuamente independentes sse∀I ⊆ 1, . . . , k temos

Pr(⋂i∈I

Ei) = Πi∈IPr(Ei).

Lema: (Limitante da Uniao) Dados eventos E1,E2, . . . temos

Pr(⋃i≥1

Ei) ≤∑i≥1

Pr(Ei)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 193 / 312

Page 194: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

Def.: Uma variavel aleatoria discreta (v.a.) sobre Ω e uma funcao

X : Ω→ λ1, . . . , λn, onde cada λi e um numero real.

Def.: Um evento (X ∈ S) e o conjunto X−1(S) para S ⊆ λ1, . . . , λn.

Notacao: Dado variavel aleatoria X e valor real a, o evento “X = a”representa o conjunto e ∈ Ω : X (e) = a.Analogamente para (X 6= x), (X < x), (X ≤ x), (X > x) e (X ≥ x).

Def.: A probabilidade do evento (X ∈ S) e o numero Pr(X−1(S)),denotado por Pr(X∈S).

Assim,Pr(X = a) =

∑e∈Ω: X(e)=a

Pr(e).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 194 / 312

Page 195: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

Def.: A esperanca (ou valor esperado) da variavel aleatoria X e onumero

E[X ] :=∑n

i=1 λi Pr(X=λi) .

ExemploConsidere o lancamento de dois dados e Xi o valor do i-esimo dado,i = 1,2. Seja X = X1 + X2. Entao

E [X ] = 2136

+ 3 · 236

+ · · ·+ 12 · 136

= 7

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 195 / 312

Page 196: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

LINEARIDADE DA ESPERANCA

Teorema: Para qualquer colecao finita de variaveis aleatoriasdiscretas X1, . . . ,Xn com esperancas finitas

E

[n∑

i=1

Xi

]=

n∑i=1

E [Xi ]

Observacao: Note que nao ha restricoes sobre a independencia dasvariaveis aleatorias X1, . . . ,Xn.

Lema: Dados variavel aleatoria X e constante c, temosE [c · X ] = c · E [X ].

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 196 / 312

Page 197: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

ExemploConsidere o exemplo do lance de dois dados.Seja X1 a v.a. do valor do primeiro dado.Seja X2 a v.a. do valor do segundo dado.Seja X a v.a. da soma dos valores dos dois dados.Note que X = X1 + X2. Assim,

E [X ] = E [X1 + X2]

= E [X1] + E [X2]

= 2 ·6∑

i=1

i · 16

= 7

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 197 / 312

Page 198: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

VARIAVEIS ALEATORIAS DE BERNOULLI E BINOMIAIS

Considere um experimento que tem probabilidade de sucesso p efalha de 1− p.Seja Y uma v.a. tal que

Y =

1 se experimento tem sucesso0 caso contrario

Entao, Y e dita ser v.a. de Bernoulli ou v.a. Indicadora.

Lema: Se Y e v.a. de Bernoulli com Pr(Y = 1) = p,entao E [Y ] = p.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 198 / 312

Page 199: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

Considere uma sequencia de n experimentos independentes, cada umcom probabilidade de sucesso igual a p.Se X e o numero de sucessos nos n experimentos, dizemos que Xtem distribuicao binomial.

Def.: Uma v.a. binomial (v.a.b.) X com parametros n e p, denotadopor B(n,p) e definida pela seguinte distribuicao de probabilidade comj = 0,1, . . . ,n:

Pr(X = j) =

(nj

)pj(1− p)n−j

ExercıcioMostre que

∑nj=0 Pr(X = j) = 1.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 199 / 312

Page 200: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

Lema: Se X e uma v.a. binomial B(n,p), entao E [X ] = n · p.Prova. Seja Xi v.a. de bernoulli do i-esimo experimento.Entao, X =

∑ni=1 Xi e portanto

E [X ] =n∑

i=1

E [Xi ]

= n · p

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 200 / 312

Page 201: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

DISTRIBUICAO GEOMETRICA

Def.: Uma v.a. X e dita ser geometrica (v.a.g.) com parametro p setem distribuicao

Pr(X = n) = (1− p)n−1 · p.

I.e., a probabilidade de jogar uma moeda n − 1 vezes com coroa (oufalha) e na n-esima dar cara (sucesso).

Lema: Se X e uma v.a.g. com parametro p, entao

E [X ] =1p.

Prova. Exercıcio.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 201 / 312

Page 202: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

Lema: (desigualdade de Markov) Se (Ω,Pr) e um espaco discreto deprobabilidade e X e uma variavel aleatoria sobre Ω cujos valores saotodos nao-negativos, entao

Pr(X≥λ) ≤ 1λ

E[X ]

para todo numero positivo λ.Prova. Se λ1, . . . , λn e o conjunto de valores de X , entao

E[X ] =∑

i

λi Pr(X=λi)

≥∑λi≥λ

λPr(X=λi)

= λPr(X≥λ) .

As vezes e util reescrever a desigualdade de Markov assim:

Pr(X≥λE[X ]) ≤ 1λ.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 202 / 312

Page 203: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Teoria das Probabilidades

Desigualdades uteisFato: Se m ≥ 1 e |t | ≤ m entao(

1 +tm

)m

≤ et .

Exemplo: Se n ≥ 1 entao(1 +

1n

)n

≤ e e(

1− 1n

)n

≤ 1e.

Veja outras emhttp://dl.acm.org/citation.cfm?doid=242581.242585

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 203 / 312

Page 204: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Algoritmos Aproximados Probabilısticos

Algoritmos Aproximados Probabilısticos

Vamos supor a existencia de uma funcao RAND. Dado ρ ∈ [0,1]RAND(ρ): devolve 1 com probabilidade ρ e 0 com probabilidade 1− ρ.Def.: Um algoritmo que usa a funcao RAND e chamado deprobabilıstico.

Def.: Um algoritmo probabilıstico e polinomial se o numero dechamadas de RAND e o consumo de tempo das demais operacoes elimitado por um polinomio no tamanho da instancia.

Def.: Dado instancia I e algoritmo probabilıstico A, seja XI a variavelaleatoria representando o valor da solucao produzida por A sobre I.Dizemos que A e uma α-aproximacao probabilıstica se

E[XI ] ≥ αOPT(I) no caso de problema de maximizacao eE[XI ] ≤ αOPT(I) no caso de problema de minimizacao.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 204 / 312

Page 205: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Algoritmos Aproximados Probabilısticos

Solucoes Aproximadas com Alta Probabilidade

Seja XI ≥ 0 uma variavel aleatoria cujo valor e o valor da solucaogerada pelo algoritmo A sobre I para um problema de minimizacao.Pela Desigualdade de Markov, temos

Pr(XI ≥ (α + ε)OPT(I)) ≤ E[XI ]

(α+ε)OPT(I)

≤ αOPT(I)(α+ε)OPT(I)

α+ε.

Dado λ ∈ (0,1), seja k := dlog αα+ε

λe e YI o melhor resultado obtido aoaplicar A sobre I k vezes. Entao

Pr(YI ≥ (α + ε)OPT(I)) ≤ λ.

λ pequeno⇒ solucoes dentro da aproximacao com alta probabilidade.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 205 / 312

Page 206: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Algoritmos Aproximados Probabilısticos

Arredondamento Probabilıstico

Problema COBERTURA POR CONJUNTOS: Dados conjunto E ,subconjuntos S de E , custos c : S→ Q≥, encontrar cobertura S′ ⊆ S

que minimiza∑

S∈S′ c(S).

Relaxacao:

min∑S∈S

cSxS

(P)∑S∈Se

xS ≥ 1 ∀e ∈ E

xS ≥ 0 ∀S ∈ S,

onde Se := S ∈ S : e ∈ S

Ideia: Resolver (P) e considerar cada xS como uma probabilidadepara obter S.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 206 / 312

Page 207: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Algoritmos Aproximados Probabilısticos

MINCC-AP1 (S,E , c)

1 seja x solucao (otima) de (P)

2 seja T ← ∅3 para cada S ∈ S faca4 inclua S em T com probabilidade xS

5 devolva T

Lema: Se T e devolvido por MINCC-AP1, entao E [∑S∈T

cS] ≤ OPT

Prova.

E [∑S∈T

cS] =∑S∈S

cS · Pr(S pertencer a T )

=∑S∈S

cS xS ≤ OPT

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 207 / 312

Page 208: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Algoritmos Aproximados Probabilısticos

Lema: Se T e devolvido por MINCC-AP1 e f e elemento de E, entaoPr(f nao ser coberto por T ) ≤ 1

e ≈ 0,37.

Prova. Seja f ∈ E e s.p.g. considere Sf = S1, . . . ,St os conjuntosque contem f .

Pr(f nao ser coberto por T )

= Pr(S1 /∈ T ) · Pr(S2 /∈ T ) · . . . · Pr(St /∈ T )

= (1− xS1) · (1− xS2) · . . . · (1− xSt )

≤ (1− 1t

) · (1− 1t

) · . . . · (1− 1t

)

= (1− 1t

)t

≤ 1e

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 208 / 312

Page 209: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Algoritmos Aproximados Probabilısticos

Aumentando as chances de obter cobertura

Versao Monte Carlo

MINCC-AP (S,E , c)

1 seja S′ ← ∅ e k = 2 log |E |2 para i ← 1 ate k faca3 Ti ← MINCC-AP1 (S,E , c).4 S′ ← S′ ∪ Ti

5 devolva S′

Lema: Se S′ e devolvido por MINCC-AP entao E [c(S′)] ≤ 2 log |E |OPTProva. Exercıcio.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 209 / 312

Page 210: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Algoritmos Aproximados Probabilısticos

Lema: Se S′ e devolvido por MINCC-AP entaoPr(S′ e cobertura de E) ≥ 1− 1

|E | .

Prova. Dado f ∈ E , temos que Pr(f nao ser coberto por Ti) ≤ 1e .

Assim, Pr(f nao ser coberto por S′) ≤(1

e

)2 log |E |= 1|E |2 .

Dado e ∈ E , seja Ee o evento do elemento e nao ser coberto por S′.

Pr(S′ nao e cobertura)

= Pr(⋃e∈E

Ee)

≤∑e∈E

Pr(Ee)

≤∑e∈E

1|E |2

=1|E |

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 210 / 312

Page 211: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Algoritmos Aproximados Probabilısticos

Versao Las Vegas

MINCC-AP-LAS-VEGAS (S,E , c)

1 seja S′ ← ∅ e i ← 12 enquanto S′ nao e cobertura faca3 Ti ← MINCC-AP1 (S,E , c).4 S′ ← S′ ∪ Ti

5 i ← i + 16 devolva S′

Teorema: Mostre que o numero de passos esperado do algoritmoMINCC-AP-LAS-VEGAS e O(log |E |).Prova. Exercıcio. Dica: Divida as iteracoes em sequencias de 2 log |E |iteracoes: S1,S2, . . .. Considere a possibilidade de parar na sequenciaSi como uma variavel geometrica.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 211 / 312

Page 212: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Satisfatibilidade MaximaDef.: Uma literal e uma variavel booleana ou sua negacao.

Def.: Uma clausula C sobre variaveis booleanas V , e uma disjuncaode literais, todas associadas a variaveis distintas.

Dada clausula C sobre variaveis de V , denotaremos porC0 ⊆ V : e o conjunto das variaveis “complementadas”C1 ⊆ V : e o conjunto das variaveis “nao-complementadas”.

Exemplo: Se C e a clausula (a ∨ b ∨ c) entao,C1 = a e C0 = b, c.

Def.: Uma valoracao de V e um vetor x indexado por V com valoresem 0,1.

Def.: A valoracao x satisfaz C se xv = 1 para algum v ∈ C1 ou xv = 0para algum v ∈ C0.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 212 / 312

Page 213: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Def.: Uma formula esta em Forma Normal Conjuntiva (FNC) se aformula e uma conjuncao de clausulas.

Exemplo de formula booleana em FNC

φ = (a ∨ b ∨ c) ∧ (a ∨ c) ∧ (a ∨ b ∨ d) ∧ (d ∨ c) ∧ (d ∨ a)

Problema MAXSAT (V , C) Dada uma colecao C de clausulas sobre umconjunto V de variaveis, encontrar uma valoracao x de V quesatisfaca o maior numero possıvel de clausulas de C.

Teorema: O problema MAXSAT e um problema NP-difıcil.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 213 / 312

Page 214: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Algoritmo de JohnsonAtribui 0 ou 1 para as variaveis com probabilidade 1

2

MAXSAT-JOHNSON (V , C)

1 para cada v em V faca2 xv ← RAND (1

2)

3 devolva x

onde RAND (p), para p ∈ [0,1], devolve 1 com probabilidade p e 0 comprobabilidade 1− p.

Teorema: Se X e a variavel cujo valor e o numero de clausulassatisfeitas por uma valoracao produzida por MAXSAT-JOHNSON e todaclausula tem pelo menos k variaveis entao

E[X ] ≥(

1− 12k

)OPT(V , C) .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 214 / 312

Page 215: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Prova. Para cada clausula C, defina uma variavel aleatoria ZC como:ZC := 1 se valoracao produzida satisfaz C eZC := 0 em caso contrario.

Pr(ZC=0) ≤ 1/2k ⇒ Pr(ZC=1) ≥ 1− 1/2k .

Assim,

E[X ] = E[∑C∈C

ZC ]

=∑C∈C

E[ZC ]

≥ (1− 12k )|C|

≥ (1− 12k ) OPT(V , C)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 215 / 312

Page 216: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Teorema: O algoritmo MAXSAT-JOHNSON e uma 0,5-aproximacaoprobabilıstica polinomial para o MAXSAT.

Prova. Direto do teorema anterior, para k = 1.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 216 / 312

Page 217: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Algoritmo de arredondamento probabilısticoDado valor ρ ∈ (0,1), arredondar ρ com probabilidade ρ

(P)

max∑C∈C

zC∑v∈C0

(1− xv ) +∑v∈C1

xv ≥ zC ∀ C ∈ C ,

0 ≤ zC ≤ 1 ∀ C ∈ C ,0 ≤ xv ≤ 1 ∀ v ∈ V .

MAXSAT-GW (V , C)

1 seja (x , z) uma solucao otima racional de (P)2 para cada v em V faca3 xv ← RAND (xv )4 devolva x

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 217 / 312

Page 218: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Teorema: Se (V , C) e instancia do MAXSAT, cada clausula com nomaximo k variaveis e XC e a variavel aleatoria cujo valor e o numerode clausulas satisfeitas por uma valoracao produzida porMAXSAT-GW (V , C), entao

E[XC] ≥(

1−(1− 1

k)k)

OPT(V , C) .

Prova. Seja C ∈ C e ZC a variavel com valor 1 se a valoracaoproduzida satisfaz C e 0 caso contrario. Se t e o numero de variaveisde C entao

Pr(ZC=1) = 1−∏

v∈C0

xv∏

v∈C1

(1− xv )

≥ 1−(∑

v∈C0xv +

∑v∈C1

(1− xv )

t

)t

= 1−( t −

∑v∈C0

(1− xv )−∑

v∈C1xv

t

)t

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 218 / 312

Page 219: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Troca por função linear0

1

f (z) ≥ g(z)

f (z) = 1− (1− z/t)t

g(z) = zf (1)

≥ 1−(

t − zC

t

)t

= 1−(

1− zC

t

)t

≥(

1−(

1− 1t

)t)zC

≥(

1−(

1− 1k

)k)zC .

Teorema: O algoritmo MAXSAT-GW e uma 0,63-aproximacaoprobabilıstica polinomial para o MAXSAT.Prova. Segue do teorema anterior junto com a seguinte desigualdade(

1− 1k

)k

≤ 1e∀k ≥ 1

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 219 / 312

Page 220: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Algoritmo Combinado

MAXSAT-JOHNSON: Melhor performance para clausulas grandes

MAXSAT-GW: Melhor performance para clausulas pequenas

Ideia: Pegar a melhor solucao entre MAXSAT-JOHNSON eMAXSAT-GW

MAXSAT-COMBINADO-GW (V , C)

1 x ← MAXSAT-JOHNSON (V )

2 x ← MAXSAT-GW (V , C)

3 seja s o numero de clausulas de C satisfeitas por x4 seja s o numero de clausulas de C satisfeitas por x5 se s ≥ s6 entao devolva x7 senao devolva x

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 220 / 312

Page 221: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Teorema: O algoritmo MAXSAT-COMBINADO-GW e uma0,75-aproximacao probabilıstica polinomial para o MAXSAT.Prova. Seja Ck := C ∈ C : |C| = k (clausulas com k variaveis),Seja XC var. aleat. do valor da solucao gerada por MAXSAT-COMBINADO-GW.Seja XC var. aleat. do valor da solucao gerada por MAXSAT-JOHNSON.Seja XC var. aleat. do valor da solucao gerada por MAXSAT-GW.

E[XC] ≥ E[12(XC + XC

)] =

12(E[XC] + E[XC]

)≥ 1

2

∑k

∑C∈Ck

((1− 2−k ) + (1− (1− k−1)k )zC

)≥ 1

2

∑k

∑C∈Ck

(1− 2−k + 1− (1− k−1)k)zC

≥ 12

∑k

∑C∈Ck

32

zC

≥ 34

OPT(V , C) .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 221 / 312

Page 222: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Desaleatorizacao

Metodo das Esperancas Condicionais (Erdos & Selfridge’ 74):Estrategia:

I Calculo das esperancas condicionais eficientementeI Iterativamente fazer a proxima escolha sem piorar o valor

esperado.I Determinacao de todas as escolhas nos leva a um algoritmo

determinıstico com valor nao pior que o valor esperado inicial.

Exemplo: Desaleatorizacao do Algoritmo de Johnson

MAXSAT-JOHNSON (V )

1 para cada v em V faca2 xv ← RAND (1

2)

3 devolva x

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 222 / 312

Page 223: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

E [X |x1 = 1]

E [X |x1 = 0]

E [X |x1 = 0, x2 = 0, x3 = 0]

E [X |x1 = 0, x2 = 0, x3 = 1]

E [X |x1 = 0, x2 = 1, x3 = 0]

E [X |x1 = 0, x2 = 1, x3 = 1]

E [X |x1 = 1, x2 = 0, x3 = 0]

E [X |x1 = 1, x2 = 0, x3 = 1]

E [X |x1 = 1, x2 = 1, x3 = 0]

E [X |x1 = 1, x2 = 1, x3 = 1]

E [X ]

E [X |x1 = 0, x2 = 0]

E [X |x1 = 0, x2 = 1]

E [X |x1 = 1, x2 = 0]

E [X |x1 = 1, x2 = 1]

Escolhas de x1, x2 e x3 tais que

E [X ] ≤ E [X |x1] ≤ E [X |x1, x2] ≤ E [X |x1, x2, x3]

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 223 / 312

Page 224: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

MAXSAT-JOHNSON-DESALEATORIZADO (V , C)

1 D ← C2 para cada v em V faca3 se ESPCOND (v ,1,D) ≥ ESPCOND (v ,0,D)4 entao xv ← 15 para cada C em D faca6 se v ∈ C17 entao D ← D \ C8 senao C0 ← C0 \ v9 senao xv ← 0

10 para cada C em C faca11 se v ∈ C012 entao D ← D \ C13 senao C1 ← C1 \ v14 devolva x

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 224 / 312

Page 225: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Procedimento para calcular esperanca condicional:v : variavel booleanai : valor atribuıdo para a variavel vD: Conjunto de clausulas

Procedimento ESPCOND (v , i ,D)

1 esp ← 02 para cada C em D faca3 k ← |C1|+ |C0|4 se v ∈ Ci5 entao esp ← esp + 16 senao se v ∈ C1−i7 entao esp ← esp + (1− 2−k+1)8 senao esp ← esp + (1− 2−k )9 devolva esp

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 225 / 312

Page 226: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Satisfatibilidade Maxima

Teorema: O algoritmo MAXSAT-JOHNSON-DESALEATORIZADO e uma0,5-aproximacao polinomial para o MAXSAT.Prova. Seja X a variavel aleatoria do numero de clausulas em Csatisfeitas por uma valoracao produzida pelo algoritmo MAXSAT-JOHNSON(V ).Como probabilidade de xv =1 e 1

2 e probabilidade de xv =0 e 12 , temos

E[X ] =12

E[X |xv =1] +12

E[X |xv =0]

≤ 12

E[X |xv =i] +12

E[X |xv =i]

= E[X |xv =i] = E[X |xv ]

onde i e o valor escolhido pelo algoritmo para a variavel xv .O mesmo raciocınio segue para outras variaveis. I.e.,

E[X ] ≤ E[X |xv1 ] ≤ E[X |xv1 , xv2 ] ≤ . . . ≤ E[X |xv1 , . . . , xvn ] .

Como 0,5 OPT(V , C) ≤ E[X ] e o ultimo termo e um valordeterminıstico, o teorema segue.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 226 / 312

Page 227: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

Programacao SemidefinidaProblema MAXCUT: Dados um grafo G = (V ,E) e um peso we emQ≥ para cada aresta e, encontrar um corte R que maximize w(R).

Exemplo:

1

2

1

1

2

3

4

3

Teorema: MAXCUT e NP-difıcil.Teorema: Se P 6=NP entao MAXCUT nao aproximavel em tempopolinomial em 16/17− ε (Hastad’97).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 227 / 312

Page 228: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

Aplicacao: Particao por similaridade

i jwij = diferenca entre i e j.

Maximizar peso das diferencas

Minimizar peso das diferencas

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 228 / 312

Page 229: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

Formulacao Quadratica: Encontrar x que

Max 12

∑ij∈E

wij(1− xi xj)

xi xi = 1 ∀i ∈ V

1

2

1

1

2

3

4

3+1

−1

−1

−1

+1

Se xixj = −1wij(1− xixj) = wij(1− (−1)) = 2wij

Se xixj = +1wij(1− xixj) = wij(1− (+1)) = 0

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 229 / 312

Page 230: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

Relaxacao VetorialI Trocar (relaxar) xi por vetor Yi? (n-dimensional)

xi =⇒ Yi?

I I.e., trocar x por uma matriz Y .xx1x2...

xn

=⇒

YY1?Y2?

...Yn?

I Yi? · Yi? : Vetor na esfera unitaria

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 230 / 312

Page 231: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

xi · xj ⇒ Yi? · Yj? = (YY>)ij

(YY>)ij =

...

Yi?...

• . . . Yj? . . .

ij

(Q)

Formulacao Quadratica:Max 1

2∑

ij∈E wij(1− xi xj)

xi xi = 1 ∀i ∈ V⇓

(R)

Formulacao Relaxada:Max 1

2∑

ij∈E wij(1− (Y Y>)ij)

(Y Y>)ii = 1 ∀i ∈ V

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 231 / 312

Page 232: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

Relaxacao Vetorial

1

2

3

4

−1

−1

+1

0

+1

0 0

000

0 0

00 0

0Y =

−1

000

0 0

00 0

0

1 2 3 4

−1

0

0

0

+1 +1

Y = T

x = −1 +1 +1−1

1 2 3 4

+12

1 3

4

+1−1

−1

xixj = (YY T )ij e (YY T )ii = 1I.e.,

Max12

∑ij∈E

wij(1− (Y Y>)ij) ≥ OPT(G,w)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 232 / 312

Page 233: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

Algoritmo de Goemans e WilliamsonIdeia: Distribuir vetores na esfera unitaria, considerando forcas de repulsao

MAXCUT-GW (G,w)

1 Y ← solucao otima de (R)2 s ← RANDESFERA(V )3 S ← i ∈ V : sYi? > 0 4 devolva δ(S)

S

S

s

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 233 / 312

Page 234: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

Lema: Pr( ij ∈ δ(S) ) ≥ 1π arccos ((Y Y>)ij) .

Prova.Pr( ij ∈ δ(S) ) = Pr( syi > 0 e syj ≤ 0 ) + Pr( syi ≤ 0 e syj > 0 ) ,

onde yi = Yi? e yj = Yj?.

yj yj

yi

yj Sε yj Sεyi ε S

yj

yi yi

yi ε S yj Sεyi ε S

yi

yj

yj Sε

yi ε S

θθ

e

θ

θ

e

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 234 / 312

Page 235: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

Exemplo no R3 (fatia).

Pr( ij ∈ δ(S) ) =θ

2π+

θ

2π=θ

π

=arccos(yiyj)

π

=1π

arccos ((Y Y>)ij)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 235 / 312

Page 236: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

Teorema: E[w(δ(S))] ≥ 0,878 OPT(G,w) .Prova.

E[w(δ(S))] =∑ij∈E

wij Pr( ij ∈ δ(S) )

≥∑ij∈E

wij1π

arccos ((Y Y>)ij)

≥ 0,87812

∑ij∈E

wij(1− (Y Y>)ij) Troca por funcao linear

≥ 0,878 OPT(G,w) .

Teorema: MAXCUT-GW e uma 0,878-aproximacao probabilısticapolinomial.Teorema: O algoritmo MAXCUT-GW pode ser desaleatorizado(Mahajan e Ramesh’ 95).Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 236 / 312

Page 237: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

1π arccos(x) ≥ 0,878 1

2(1− x) .

0,8781

2(1− x)

1

πarccos(x)

0

0,2

0,8

1

−1 −0,5 0 0,5 1

0,6

0,4

Troca por funcao linear

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 237 / 312

Page 238: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

Programa Vetorial × Programa Semidefinido

Def.: X e positiva semidefinida (X 0),se ∃Y quadrada tal que X = Y Y>.

Programa Vetorial:Max 1

2∑

ij∈E wij(1− (Y Y>)ij)

(Y Y>)ii = 1 ∀i ∈ V⇓

Programa Semidefinido:Max 1

2∑

ij∈E wij(1− Xij)

Xii = 1 ∀i ∈ VX 0

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 238 / 312

Page 239: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Programacao Semidefinida e Problema do Corte Maximo

Programas SemidefinidosPrograma Semidefinido: Encontrar matriz quadrada X tal que

Min∑

ij∈V×V wij(Xij)

AkijXij = bk ∀k ∈ MX 0

I Dado uma matriz positiva semidefinida X , e possıvel obter umamatriz Y tal que X = YY T em tempo polinomial (modelo comnumeros reais).

I Solucoes de um programa semidefinido nao necessariamenteracional.

I Podemos encontrar solucoes arbitrariamente proximas da otimaatraves do Metodo do Elipsoide e do Algoritmo de PontosInteriores.

I Obtencao de solucoes otimas ou bem proximas das otimas(inevitavel pois solucoes otimas podem ser irracionais) [Goemans& Williamson, Homer & Peinado, Poljak & Rendl]

I RANDESFERA pode ser implementado de maneira aproximadapor geradores de numeros pseudo-aleatorios em [0,1] (Knuth’98)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 239 / 312

Page 240: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

PTAS para Escalonamento de Tarefas

PTAS para Escalonamento de Tarefas

Problema ESCALONAMENTO: Dados uma lista de tarefasL = (J1, . . . , Jn), cada uma com tempo t(Ji) e m maquinas identicas,encontrar uma particao de L, (M1, . . . ,Mm), tal que maxi t(Mi) emınimo.

Teorema: O problema ESCALONAMENTO e um problema fortementeNP-completo.

Corolario: Nao existe FPTAS para ESCALONAMENTO, a menos queP = NP.

Vamos apresentar um PTAS para ESCALONAMENTO

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 240 / 312

Page 241: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

PTAS para Escalonamento de Tarefas

Def.: Um algoritmo Rε e dito ser (1 + ε)-restrito para o problemaESCALONAMENTO se dado ε, tempo T e uma instancia (L, t ,m)devolve:

I ∅ - se nao existe um escalonamento com tempo T ouI S - onde S e um escalonamento com val(S) ≤ (1 + ε)T .

Lema: Seja L := maxmaxj t(Jj) ,∑

j t(Ji )

m , entao

OPT(L) ∈ [L,2L]

Prova. Note que o algoritmo ESCALONAMENTO-GRAHAM devolve umescalonamento limitado por maxj t(Jj) +

∑j t(Ji )

m ≤ 2L

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 241 / 312

Page 242: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

PTAS para Escalonamento de Tarefas

Ideia: Construir algoritmo (1 + ε)-restrito e fazer busca binaria.Algoritmo de Hochbaum e Shmoys’88Este algoritmo usa um algoritmo (1 + ε)-restrito Rε como subrotina.

ESCALONAMENTO-HSε (L,m, t)1 S← ESCALONAMENTO-GRAHAM(L,m, t)2 T ′ ← maxmaxj t(Jj) ,

∑j t(Ji )

m 3 T ′′ ← 2T ′

4 ε′ ← ε3

4 enquanto T ′′ − T ′ > ε′T ′ faca5 seja T ← T ′+T ′′

26 S′ ← Rε′(L,m, t ,T )7 se S′ 6= ∅ entao8 T ′′ ← T ;9 S← S′;

10 senao11 T ′ ← T12 devolva S

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 242 / 312

Page 243: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

PTAS para Escalonamento de Tarefas

Teorema: (Hochbaum & Shmoys’88) ESCALONAMENTO-HS e umPTAS para o problema do Escalonamento.Prova. A cada iteracao temos escalonamento S′ e intervalo [T ′,T ′′] que:• val(S′) ∈ [T ′,T ′′(1 + ε′)],• T ′′ ≤ T ′ + εT ′

• T ′ ≤ OPT.O algoritmo para com escalonamento S que

val(S) ≤ (1 + ε′)T ′′

≤ (1 + ε′)(T ′ + ε′T ′)= (1 + ε′)2T ′

≤ (1 + 2ε′ + ε′2)OPT

≤ (1 + ε)OPT

Complexidade de tempo: polinomial no tamanho da instancia e em 1ε .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 243 / 312

Page 244: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

PTAS para Escalonamento de Tarefas

Algoritmo (1 + ε)-restritoSubrotina: algoritmo (1+ε)-restrito, RGε, para tarefas com tempomaior que εT .

Rε(L,m, t ,T )1 G← j ∈ L : t(j) > εT2 P ← L \G3 SG ← RGε(G,m, t ,T )4 se SG = ∅ entao devolva ∅5 senao6 preencha SG com itens em P usando ESCALONAMENTO-GRAHAM

7 se val(S) > (1 + ε)T entao devolva ∅8 senao devolva S

Lema: O algoritmo Rε e um algoritmo (1 + ε)-restrito.

Prova. Exercıcio.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 244 / 312

Page 245: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

PTAS para Escalonamento de Tarefas

Algoritmo (1 + ε)-restrito - Itens Grandes

Subrotina: algoritmo exato, Exatoε,k , para encontrar escalonamentoem tempo T , quando ha ate k tempos diferentes.Se nao existir tal escalonamento devolve ∅.

Ideia: Definir tempos fixos e arredondar tempos de processamentopara baixo.

RGε(G,m, t ,T )1 para cada j ∈ G faca2 seja i tal que t(j) ∈ [ εT + iε2T , εT + (i + 1)ε2T )3 t ′(j)← εT + iε2T4 k ← b1/ε2c5 S← Exatoε,k (G,m, t ′,T )6 devolva a particao S

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 245 / 312

Page 246: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

PTAS para Escalonamento de Tarefas

Lema: O algoritmo RGε e um algoritmo (1 + ε)-restrito.Prova.Note que t ′(j) ∈ εT , εT +ε2T , . . . , εT +(k−1)ε2T , εT +k ε2T.

Seja S 6= ∅ um escalonamento gerado por RGε(G,m, t ′,T ).

Note queI ha no maximo 1

ε tarefas em cada processador;I perda devido ao arredondamento e no maximo ε2T .

Portanto o tempo total de processamento em um processador em S

usando tempo de processamento t e no maximo (1 + ε)T .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 246 / 312

Page 247: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

PTAS para Escalonamento de Tarefas

Algoritmo exato para tarefas grandes e tempos restritos

Dado instancia (G,m, t ′,T ) e inteiro k , onde t ′(j) ≥ εT e ha nomaximo k tempos distintos em t ′, encontrar escalonamento S comtempo no maximo T , se existir.Daremos a versao de decisao deste algoritmo:Decidir se um conjunto L de tarefas pode ser executado em tempo Tusando no maximo m processadores

Estrategia: Programacao Dinamica.

I Numero de possiblidades de se escalonar apenas em umamaquina e polinomial.

I Para m maquinas, teste todas as possibilidades em uma maquinae verifique para cada possibilidade se as demais tarefas podemser executadas em m − 1 maquinas.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 247 / 312

Page 248: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

PTAS para Escalonamento de Tarefas

DecisaoExatoε,l(G,m, t ′,T )1 para i = 1 ate k faca2 si ← εT + (i − 1)ε2T3 ni ← |j ∈ G : t ′(j) = si|4 seja Q ← (a1, . . . ,ak ) :

∑ki=1 aisi ≤ T e 0 ≤ ai ≤ ni

5 M(0, . . . ,0)← 06 para cada (a1, . . . ,ak ) ∈ Q faca M(a1, . . . ,ak )← 17 para a1 ← 0 ate n1 faca8 para a2 ← 0 ate n2 faca9 . . .

10 para ak ← 0 ate nk faca11 se (a1, . . . ,ak ) /∈ Q entao12 seja (b1, . . . ,bk ) ∈ Q tal que M(a1−b1, . . . ,ak−bk ) e mınimo.13 M(a1, . . . ,ak )← 1 + M(a1 − b1, . . . ,ak − bk )14 se M(n1, . . . ,nk ) ≤ m devolva SIM

15 senao devolva NAO

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 248 / 312

Page 249: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

PTAS para Escalonamento de Tarefas

Lema: Dados instancia (G,m, t ′) e tempo T , onde G tem no maximo ktempos de processamentos distintos em t ′, algoritmo DecisaoExatoε,kdecide se G pode ser escalonado em m maquinas com tempo maximoT em tempo polinomial.Prova. Como ni ≤ n, i = 1, . . . , k , temos

I |Q| = O(nk )

I Passo 4 e 6: tempo O(k nk )

I Passos 11–13: tempo O(k nk )

I Passos 7–13: tempo O(k n2k )

Portanto o algoritmo tem complexidade de tempo O(k n2k ), que epolinomial quando k e constante.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 249 / 312

Page 250: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

InaproximabilidadeProblema de Otimizacao

I I: Conjunto de instancias.I Sol(I): Conjunto de solucoes para cada I ∈ I.I val(I,S): Valor da solucao S ∈ Sol(I).

Problema de MinimizacaoEncontrar S ∈ Sol(I) tal que val(I,S) e mınimo.

Problema de MaximizacaoEncontrar S ∈ Sol(I) tal que val(I,S) e maximo.

Solucao OtimaSolucao mınima (maxima) para problema de minimizacao

(maximizacao).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 250 / 312

Page 251: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Classes de AproximabilidadeNPO - Extensao dos problemas de NP a problemas de otimizacao

I ∃ funcao polinomial p tal que 〈S〉 ≤ p(〈I〉), ∀I ∈ I, ∀S ∈ Sol(I).I Dado palavra X , ∃ algoritmo polinomial que decide se X ∈ I.I Dado objeto Y e I ∈ I, ∃ algoritmo polinomial que decide se Y ∈ Sol(I).I Dado I ∈ I e S ∈ Sol(I), ∃ algoritmo polinomial que calcula

val(I,S).

PO - Problemas de NPO para os quais existe algoritmo polinomialexato

APX - Problemas de NPO para os quais existe α-aproximacaopolinomial, para α constante.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 251 / 312

Page 252: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Fato: PO ⊆ FPTAS ⊆ PTAS ⊆ APX ⊆ NPO

Possıvel configuracao para estas classes:

APXFPTAS PTAS NPOPO

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 252 / 312

Page 253: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Teorema: MOCHILA ∈ FPTAS.

Teorema: ESCALONAMENTO ∈ PTAS.

Teorema: Os seguintes problemas de otimizacao em grafos planaressao NP-difıceis e admitem PTAS (Baker’94): Conjunto independente,cobertura mınima, conjunto dominante, empacotamento de triangulos.

Teorema: Os problemas EMPACOTAMENTO, MAXCUT, MAXSAT,MINCV, MINFS, TSPM pertencem a APX.

Teorema: MINCC, MINMCUT, MINTC, TSP pertencem a NPO.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 253 / 312

Page 254: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

NP-Completo no sentido forte

Max(I): maior numero inteiro em valor absoluto que ocorre em I ∈ I;Max(I) := 0 se nenhum numero inteiro ocorre em I.

Ip:= I ∈ I : Max(I) ≤ p(〈I〉) para uma funcao polinomial p.

Π e NP-completo no sentido forte ou fortemente NP-completose existe funcao polinomial p tal que Πp e NP-completo.

Teorema: O problema da Mochila nao e fortemente NP-completo.Prova. Exercıcio.

Teorema: Os seguintes problemas em grafos planares sao fortementeNP-completos: Conjunto independente, cobertura mınima, conjuntodominante, empacotamento de triangulos.Prova. Exercıcio.

Teorema: O problema ESCALONAMENTO e um problema fortementeNP-completo.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 254 / 312

Page 255: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Teorema: (Garey & Johnson’78) Seja Π ∈NPO fortementeNP-completo tal que val(I,S) e inteiro nao-negativo ∀I ∈ I e∀S ∈ Sol(I). Se p(n,m) e uma funcao polinomial tal que

OPT(I) ≤ p(〈I〉,Max(I)), ∀I ∈ I

e Π ∈ FPTAS, entao P = NP.Prova. Seja Π problema de minimizacao (analogo para maximizacao).Seja A um FPTAS para Π.

Seja ε :=1

p(〈I〉,Max(I)) + 1. Em tempo polinomial temos

val(I,A(ε, I))− OPT(I) ≤ εOPT(I)

=OPT(I)

p(〈I〉,Max(I)) + 1

< 1 ,

para toda instancia I. I.e., val(I,A(ε, I)) = OPT(I).Este teorema e valido tambem para numeros racionais.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 255 / 312

Page 256: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Teorema: Se PO = FPTAS, entao P = NP.Prova. Exercıcio.

Teorema: Se FPTAS = PTAS, entao P = NP.Prova. Exercıcio.

Teorema: Se PTAS=APX, entao P=NP.Prova. Exercıcio.

Teorema: Se APX=NPO, entao P=NP.Prova. Exercıcio.

Teorema: Se P = NP, entao PO = NPO.Prova. Veja Ausiello, Crescenzi, Gambosi, Kann,Marchetti-Spaccamela e Protasi’99.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 256 / 312

Page 257: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Completude para problemas de Otimizacao

Uma AP-reducao de um problema de otimizacao Π a um problema deotimizacao Π′ (Π ≤AP Π′) e um terno (f ,g, β) onde f e g sao algoritmose β e um racional positivo tais que:

(AP1) f recebe racional positivo δ e instancia I de Π, e devolveuma instancia f (δ, I) de Π′;

(AP2) g recebe racional positivo δ, instancia I de Π e um elementoS′ em Sol(f (δ, I)), e devolve g(δ, I,S′) em Sol(I);

(AP3) para todo numero racional positivo δ, os algoritmos f (δ, ·) eg(δ, ·, ·) sao polinomiais; e

(AP4) para toda instancia I de Π, todo numero racional positivo δ,e todo S′ em Sol(f (δ, I)), vale que se(1− δ) OPT(f (δ, I)) ≤ val(f (δ, I),S′) ≤ (1 + δ) OPT(f (δ, I)) ,entao(1− βδ) OPT(I) ≤ val(I,g(δ, I,S′)) ≤ (1 + βδ) OPT(I) .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 257 / 312

Page 258: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Instância

Solução

I

S′ := A′(I′)

S′

I′

S(1± δ)-aproximacao(1± βδ)-aproximacao

Π Π′

S := g(δ, I,S′)

I′ := f (δ, I)

Teorema: Se Π1 ≤AP Π2 e Π2 ≤AP Π3, entao Π1 ≤AP Π3.Prova. Exercıcio.

Teorema: Se Π esta em NPO, Π′ esta em APX e Π ≤AP Π′, entao Πesta em APX.Prova. Exercıcio.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 258 / 312

Page 259: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Teorema: Se Π ∈ NPO, Π′ ∈ PTAS e Π ≤AP Π′, entao Π ∈ PTAS.Prova. Seja A′ um PTAS para Π′ e (f ,g, β) uma AP-reducao de Π aΠ′. Vamos fazer um esquema de aproximacao A para Π.

A (ε, I)1 ε′ ← ε/β

2 I′ ← f (ε′, I)3 S′ ← A′(ε′, I′)4 S ← g(ε′, I,S′)5 devolva S

Instância

Solução

I

S′ := A′(I′)

S′

I′

S(1± ε′)-aproximacao(1± ε)-aproximacao

Π Π′

S := g(ε′, I,S′)

I′ := f (ε′, I)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 259 / 312

Page 260: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Def.: Um problema Π em APX e APX-completo se cada problema emAPX pode ser AP-reduzido a Π.

Teorema: (Papadimitriou & Yannakakis’91 e Khanna, Motwani, Sudan& Vazirani’99) O problema MAXSAT e APX-completo.

Def.: Um problema Π, nao necessariamente em APX, e APX-difıcil sea existencia de um esquema de aproximacao polinomial para Πimplica em P = NP.

Teorema: Os problemas EMPACOTAMENTO, MAXCUT, MAXSAT,MINCC, MINCV, MINFS, MINMCUT, MINTC, TSPM e TSP saoAPX-difıceis.

Def.: Um problema Π em NPO e NPO-completo se cada problema emNPO pode ser AP-reduzido a Π.

Teorema: (Orponen e Mannila’87) O problema TSP e NPO-completo.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 260 / 312

Page 261: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Limiares de aproximacao

Def.: O limiar de aproximacao (approximation threshold) de umproblema de minimizacao (maximizacao) e o maior (menor) limitanteinferior (superior) de todos os α para os quais existe umaα-aproximacao polinomial para o problema.

Lema: Se P = NP entao o limiar de aproximacao de todo problemaem NPO e 1.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 261 / 312

Page 262: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

A tabela seguinte mostra alguns resultados sobre os limiares deaproximacao para varios problemas, considerando P 6= NP.

problema limiar de aproximacao

MOCHILA = 1 (Ibarra & Kim’75) (o problema esta em FPTAS)ESCALONAMENTO = 1 (Hochbaum & Shmoys’88) (o problema esta em PTAS)EMPACOTAMENTO ≥ 3/2 (Garey & Johnson’79)MAXCUT ≤ 16/17 (Hastad’97)MAXSAT ≤ 7/8 (Hastad’97)MINCV ≥ 7/6 (Hastad’97)TSPM ≥ 131/130 (Engebretsen & Karpinski’00)MINCC (E , S, c) > ε log |E |, para alguma constante ε > 0 (Raz & Safra’97)MINTC (E , S, c) > ε log |E |, para alguma constante ε > 0

(equivalente ao MINCC (Ausiello, D’Atri & Protasi’80)TSP (G, c) > f (〈G, c〉), para toda funcao f computavel

em tempo polinomial (Sahni & Gonzalez’76)CLIQUE(V ,E) < 1/|V |1−ε (Zuckerman’07) para todo ε > 0

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 262 / 312

Page 263: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Provas Verificaveis Probabilisticamente

Classe NPI Alfabeto Σ = 0,1I Linguagem L ⊆ Σ∗

I L ∈ NP⇔ ∀I ∈ L existe certificado “curto” CI e algoritmopolinomial V que verifica que I ∈ L.

Sistemas de Provas PCP (Probabilistically Checkable Proofs)Def.: Dada instancia I, 〈I〉 = n, funcoes r(n) e q(n), e uma sequenciaτ de bits aleatorios, dizemos que V e um verificador(r(n),q(n))-restrito se existem funcoes inteiras r(n) = O(r(n)) eq(n) = O(q(n)) tal que

I V, acessa I e r(n) primeiros bits de τ eI determina q(n) posicoes de Π, i1, i2, . . . , iq(n)I acessa Πi1 ,Πi2 , . . . ,Πiq(n)

e responde ACEITA ou REJEITA

deterministicamente.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 263 / 312

Page 264: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

V (I, τ,Π)

I : 〈I〉 = n τ : |τ | = r(n) bits aleatorios

i1 i2 i3 iq(n)

Verificador (r(n),q(n))-restrito

Πi1 Πi2 Πi3 Πq(n)

Prova Π

Geracao de q(n) posicoes independente de Π ACEITA/REJEITA

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 264 / 312

Page 265: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Def.: Uma linguagem L ∈ Σ∗ esta em PCP(r(n),q(n)) se e so seexiste um verificador (r(n),q(n))-restrito tal que

I Para todo I ∈ L, ∃ ΠI ∈ Σ∗ :Prτ (V (I, τ,ΠI) = ACEITA) = 1

I Para todo I /∈ L, ∀ Π ∈ Σ∗

Prτ (V (I, τ,Π) = ACEITA) < 14

No lugar de 14 poderıamos ter no lugar, qualquer valor constante β,

onde 0 < β < 1.

Nova caracterizacao de NP

Teorema: (Arora, Lund, Motwani, Sudan & Szegedy’92)PCP(log n,1) = NP.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 265 / 312

Page 266: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Inaproximabilidade do MAX3SAT

Problema MAX3SAT (V , C) Dada uma colecao C de clausulas sobreum conjunto V de variaveis, cada clausula com exatamente 3variaveis, encontrar uma valoracao x de V que satisfaca o maiornumero possıvel de clausulas de C.

Teorema: Se P 6= NP entao MAX3SAT /∈ PTAS.Prova.Vamos mostrar que

MAX3SAT ∈ PTAS⇒ ∃ algoritmo polinomial para decidir L,para qualquer L ∈ NP.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 266 / 312

Page 267: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Seja L ∈ NP e I ∈ Σ∗. Vamos considerar a pertinencia I ∈ L.

Como L ∈ PCP(log n,1) existe verificador V , (log n,1)-restrito para L.

Dado I vamos mostrar como construir em tempo polinomial umainstancia SI para MAX3SAT tal que

I ∈ L ⇒ SI e satisfatıvelI /∈ L ⇒ no maximo 1

4 das clausulas de SI pode ser satisfeita(a fracao e independente de I)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 267 / 312

Page 268: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Dado sequencia τ de bits aleatorios, onde |τ | = r(n) = O(log n),verificador V obtem enderecos i1, i2, . . . , ik em Π, onde k e constante.

V devolve ACEITA ou REJEITA considerando os k valoresΠi1 ,Πi2 , . . . ,Πik da prova Π.

Considere todas as atribuicoes de k bits para estes enderecos para osquais V responde ACEITA.

Seja Sτ uma formula em 3-Sat que representa estas atribuicoes, Sτcom no maximo K clausulas de 3 variaveis.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 268 / 312

Page 269: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

V (I, τ,Π)

I : 〈I〉 = n τ : |τ |= r(n)=O(log n) bits aleatorios

i1 i2 i3 ik

Sτ :=Formula em 3-Sat para respostas ACEITOde atribuicoes de (bi1 , . . . ,bik )# clausulas de Sτ ≤ K = f (k) = O(1)

bi1 bi2 bi3 bik

Geracao de k = O(1) posicoes independente de Π AC/RE

Verificador (log n,1)-restrito

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 269 / 312

Page 270: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Agora, considere todos os m := 2r(n) valores possıveis para bitsaleatorios, τ1, τ2, . . . , τm.

Considere a formula S := Sτ1

∧Sτ2

∧. . .∧

Sτm

I ∈ L ⇒ ∃ΠI tal que SI e satisfatıvel

I /∈ L ⇒ ∀Π no maximo 14 das formulas Sτi

pode ser satisfeita simultaneamente

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 270 / 312

Page 271: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Para Sτi nao ser satisfeita, basta uma de suas clausulas (de nomaximo K ) nao ser satisfeita.

Vamos calcular uma fracao maxima de clausulas satisfeitas

S := Sτ1

∧Sτ2

∧. . .∧

Sτm/4︸ ︷︷ ︸satisfeitas

∧Sτm/4+1

∧. . .∧

Sτm︸ ︷︷ ︸nao satisfeitas

Assim, se I /∈ L no maximoK · m

4 + (K − 1) · 3m4

K ·m= 1− 3

4Kdas

clausulas podem ser satisfeitas.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 271 / 312

Page 272: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Assim,• ou todos as clausulas de S sao satisfeitas,

• ou no maximo(

1− 34K

)das clausulas de S sao satisfeitas.

Portanto, se tivermos uma α-aproximacao para o MAX3SAT, comα >

(1− 3

4K

), podemos decidir a existencia de uma prova Π para I.

Teorema: Se P 6= NP, entao MAXSAT /∈ PTAS.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 272 / 312

Page 273: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Inaproximabilidade do CLIQUE

Teorema: (Zuckerman’07) Se existir uma n1−ε-aproximacao polinomialpara o problema CLIQUE, para qualquer ε > 0, entao P = NP.

Este resultado usa o sistema PCP. Provaremos algo mais fraco.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 273 / 312

Page 274: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Teorema: Se existir uma α-aproximacao polinomial para o problemaCLIQUE, para qualquer constante α > 0, entao P = NP.

Prova.Vamos mostrar queCLIQUE ∈ APX⇒ ∃ algoritmo polinomial para decidir L, onde L ∈ NP.

Seja L ∈ NP e I ∈ Σ∗. Vamos considerar a pertinencia I ∈ L.

Como L ∈ PCP(log n,1) existe verificador V , (log n,1)-restrito para L.Dado I vamos construir um grafo GI para o problema CLIQUE tal que

I ∈ L ⇒ ω(GI) = f (n)

I /∈ L ⇒ ω(GI) <14 f (n)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 274 / 312

Page 275: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

A cada consulta de bits aleatorios τ , |τ | = r(n) = O(log n), V obtem kenderecos i1, i2, . . . , ik

V consulta Πi1 ,Πi2 , . . . ,Πik e devolve ACEITA ou REJEITA.

Seja GI = (VI ,EI) grafo tal queI VI sao todas as sequencias de r(n) + k bits (τ,bi1 ,bi2 , . . . ,bik ) tal

que V consulta os enderecos i1, i2, . . . , ik e os valores(bi1 ,bi2 , . . . ,bik ) para estas posicoes fazem V devolver ACEITO.

I Dados dois vertices v ′ e v ′′,

v ′ = (τ ′,bi ′1, . . . ,bi ′k

) e v ′′ = (τ ′′,bi ′′1, . . . ,bi ′′k

)

v ′, v ′′ ∈ EI se nao ha conflito no valor de dois bits de mesmaposicao.

Note que GI pode ser construido em tempo polinomial.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 275 / 312

Page 276: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Dado prova Π qualquer,

ω(GI) ≥ |τ : V (I, τ,Π) = ACEITA|= 2r(n)Prτ (V (I, τ,Π) = ACEITA)

Dado um clique C em GI , |C| = ω(GI), existe prova ΠC , consistentecom todos os vertices de C

ω(GI) ≤ |τ : V (I, τ,ΠC) = ACEITA|= 2r(n)Prτ (V (I, τ,ΠC) = ACEITA)

Portanto

ω(GI) = 2r(n) maxΠ

Prτ (V (I, τ,Π) = ACEITA)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 276 / 312

Page 277: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Inaproximabilidade, Classes de Complexidade e PCP

Pela definicao de sistemas PCP,

maxΠ

Prτ (V (I, τ,Π) = ACEITA)

= 1 se I ∈ L< 1

4 se I /∈ L

Assim,• ou existe clique de tamanho f (n),• ou o clique maximo e menor que 1

4 f (n),onde f (n) = 2r(n).

Portanto, se tivermos uma 4-aproximacao para o CLIQUE podemosdecidir a existencia de uma prova Π para I.

Fortalecendo o verificador para probabilidade de 1/α, no lugar de 1/4,provamos que nao existe uma α-aproximacao para o CLIQUE.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 277 / 312

Page 278: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

Tecnica MetricaDef.: Dados grafo G e conjunto K de pares de vertices, um caminhode s a t e um K -caminho se s, t ∈ K .

Def.: Um conjunto M de arestas e um K -multicorte se nao existeK -caminho no grafo G −M.

Problema MINMCUT (G,K , c) Dados grafo G, conjunto K de pares devertices e custo ce ∈ Q≥ para cada e ∈ EG, encontrar um K -multicorteM que minimize c(M) =

∑e∈M ce.

Teorema: O problema MINMCUT (G,K , c) e polinomial quando|K | = 1 ou |K | = 2 e NP-difıcil quando |K | ≥ 3.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 278 / 312

Page 279: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

Seja P o conjunto de todos os K -caminhos. O seguinte programalinear e uma relaxacao para MINMCUT.

Encontrar um vetor x indexado por EG que

(P)

minimize∑e∈E

ce xe∑e∈EP

xe ≥ 1 para cada P em P ,

xe ≥ 0 para cada e em EG .

Algoritmo de Garg, Vazirani e Yannakakis:

MINMCUT-GVY (G,K , c), K 6= ∅.1 seja x uma solucao otima racional de (P).2 k ← |K |3 M ← CENTRAL (G, k ,K , c, x)

4 devolva MFlavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 279 / 312

Page 280: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

Apresentaremos o algoritmo CENTRAL e a prova do seguinte lemaposteriormente.

Lema: O algoritmo CENTRAL produz um K -multicorte M em tempopolinomial tal que

∑e∈M ce ≤ (4 ln 2k) c x .

Teorema: (Garg, Vazirani, Yannakakis’96) O algoritmoMINMCUT-GVY e uma (4 ln 2k)-aproximacao polinomial para oMINMCUT (G,K , c), sendo k := |K | > 0.Prova.

c(M) =∑e∈M

ce ≤ (4 ln 2k) c x ≤ (4 ln 2k) OPT(G,K , c) .

A linha 1 de MINMCUT-GVY pode ser executada em tempopolinomial, pois temos algoritmo de separacao para as desigualdadesde (P).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 280 / 312

Page 281: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

Algoritmo CentralO algoritmo CENTRAL separa pelo menos um par de s, t ∈ K emcada chamada recursiva.

Para isto, o algoritmo encontra um corte (S,T ) tal que

1. nenhum par em K esta em S,

2. algum par em K tem extamente um vertice em S

3. c(δ(S)) e razoavelmente pequeno.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 281 / 312

Page 282: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

Sejax(s,u) := min

∑e∈EP

xe : P e um caminho de s a u.

V (s, ρ) := v ∈ VG : x(s, v) ≤ ρ .

Ideia: Imagine que as arestas do grafo sao tubos, sendo xe ocomprimento e ce a area da seccao transversal do tubo e.

Denote por ϑ(s, ρ) o volume da parte da tubulacao que dista nomaximo ρ de s:

ϑ(s, ρ) := cA xA +∑

uv∈δ(S), u∈S cuv (ρ− x(s,u)) ,

onde S := V (s, ρ) e cA e xA sao as restricoes de c e x , ao conjuntoA :=EG[S].

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 282 / 312

Page 283: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

s

S

c(δ(S))

S := ϑ(s, ρ)

ce = secao transversal do tuboxe = comprimento do tuboc(δ(S)) = custo do corte

ρ

0

ϑ(s, ρ)

ρ12

Descontinuidades podem ocorrer pela inclusao de toda uma aresta.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 283 / 312

Page 284: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

CENTRAL (G, k ,K , c, x), |K | ≤ k1 se K = ∅2 entao devolva ∅3 senao se c x = 04 entao devolva e ∈ EG : xe > 05 senao sejam s, t ∈ K6 seja v1, . . . , vn tal que x(s, v1) ≤ · · · ≤ x(s, vn)7 para i de 1 a n faca pi ← x(s, vi)

8 j ← 1 + maxi : pi = 09 enquanto ϑ(s,pj) > ((2k)2pj − 1) 1

k c x faca j ← j +110 S ← V (s,pj−1)

11 T ← VG \ S12 B ← EG[T ]

13 GB ← (VG,B)

14 KB ← K \ s′, t ′ : S separa s′ de t ′15 MB ← CENTRAL (GB, k ,KB, cB, xB)

16 devolva δ(S) ∪MBFlavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 284 / 312

Page 285: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

Lema: Em uma chamada, temos pj−1 <12 , e portanto x(s,u) < 1

2 paratodo u ∈ S.Prova.Seja h o menor natural tal que ph ≥ 1

2 .Temos que 2 ≤ h ≤ n ja que pn ≥ x(s, t) ≥ 1 e p1 = 0.

Como ϑ(s,ph) ≤ c x e k ≥ 1 temos

ϑ(s,ph) ≤ c x

≤((2k)2ph − 1

)1k

c x

assim, h nao satisfaz condicao da linha 9 e portanto j ≤ h.

Corolario: Em uma chamada, para um par s, t, temos s ∈ S et /∈ S. Alem disso, se si , ti ∈ K − s, t, entao si /∈ S ou ti /∈ S.Prova. Exercıcio.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 285 / 312

Page 286: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

Lema: Ao fim da linha 10 do algoritmo CENTRAL, temos que

c(δ(S)) ≤ (2 ln 2k)(

cA xA + cδ(S)xδ(S) + 1k c x

),

onde A := EG[S].Prova. Note que apos a linha 9, temos

pj−1 < pj , (1)

ϑ(s,pj) ≤ ((2k)2pj − 1) 1k c x . (2)

ϑ(s,pj−1) ≥ ((2k)2pj−1 − 1) 1k c x e (3)

De (3) e (2) temos que

ϑ(s,pj) + 1k c x

ϑ(s,pj−1) + 1k c x

≤ (2k)2(pj−pj−1) . (4)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 286 / 312

Page 287: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

Tomando-se o logaritmo natural do lado esquerdo de

ϑ(s,pj) + 1k c x

ϑ(s,pj−1) + 1k c x

≤ (2k)2(pj−pj−1) . (5)

obtemos

ln(ϑ(s,pj) + 1

k c x)− ln

(ϑ(s,pj−1) + 1

k c x)

=

=

∫ pj

pj−1

ddρ

ln(ϑ(s, ρ) + 1

k c x)

=

∫ pj

pj−1

c(δ(S))

ϑ(s, ρ) + 1k c x

dρ ,

(note que ϑ(s, ρ) e uma funcao linear com coeficiente c(δ(S))).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 287 / 312

Page 288: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

Tomando-se o logaritmo natural do lado direito de

ϑ(s,pj) + 1k c x

ϑ(s,pj−1) + 1k c x

≤ (2k)2(pj−pj−1) . (6)

obtemos

2(pj − pj−1) ln 2k =

∫ pj

pj−1

(2 ln 2k) dρ .

Como o logaritmo e uma funcao crescente, concluımos de (6) que∫ pj

pj−1

c(δ(S))

ϑ(s, ρ) + 1k c x

dρ ≤∫ pj

pj−1

(2 ln 2k) dρ .

Entao, para algum ρ no intervalo (pj−1,pj) temos que

c(δ(S))

ϑ(s, ρ) + 1k c x

≤ (2 ln 2k).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 288 / 312

Page 289: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

Assim,

c(δ(S)) ≤ (2 ln 2k)(ϑ(s, ρ) +1k

c x)

≤ (2 ln 2k)(cA xA +∑

uv∈δ(S), u∈S

cuv (ρ− x(s,u)) +1k

c x)

≤ (2 ln 2k)(cA xA +∑

uv∈δ(S)

cuv xuv +1k

c x)

= (2 ln 2k)(cA xA + cδ(S)xδ(S) +1k

c x)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 289 / 312

Page 290: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Tecnica Metrica e Problema do K-Multicorte

Teorema: O algoritmo CENTRAL (G, k ,K , c, x) produz umK -multicorte M em tempo polinomial tal que

c(M) ≤ (2 ln 2k)(1 + 1k |K |)c x . (7)

Prova. Por inducao em |K |.

Se K = ∅ ou c x = 0, claramente (7) vale.Suponha que K 6= ∅ e c x > 0.Neste caso, o algoritmo devolve M := δ(S) ∪MB. Assim,

c(δ(S) ∪MB) = c(δ(S)) + cB(MB)

≤ (2 ln 2k)(cA xA + cδ(S)xδ(S) +

1k

c x + (1 +1k|KB|)cB xB

)= (2 ln 2k)

(c x +

1k

c x +1k|KB|cB xB

)≤ (2 ln 2k)

(c x +

1k

c x +1k

(|K | − 1)c x)

≤ (2 ln 2k)(1 +1k|K |)c x .

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 290 / 312

Page 291: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Equilıbrio de Nash e Busca Local

I Internet: Rede gigantesca com grande quantidade de usuarios ecomplexa estrutura socio-economica

I Usuarios podem ser competitivos, cooperativos,...

I Situacoes envolvendo Teoria dos Jogos e Computacao

Ref.: Cap. 12 - Local Search do livro Algorithm Design de Kleinberg eTardos

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 291 / 312

Page 292: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Um jogo Multicast

I Jogadores podem construir links entre nos

I Ha um no origem

I Cada jogador representa um no destino

I Cada jogador quer conectar o no origem ate seu no destino

I Ha cooperacao na construcao da rede. Isto e, o custo de um linke dividido igualmente entre os usuarios que o utilizam

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 292 / 312

Page 293: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Definicao

DadosI Grafo direcionado G = (V ,E)

I Custo positivo ce para cada aresta e.I Vertice fonte sI k vertices destinos t1, . . . , tk

Cada usuario i procura encontrarI caminho orientado Pi do vertice s ate ti pagando menos

Custo para

I usuario i e c(Pi) =∑e∈Pi

ce

ke, onde ke numero de caminhos usando e

I sistema e c(P1, . . . ,Pk ) =∑

i

c(Pi) (custo social)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 293 / 312

Page 294: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Jogo

Regras do Jogo:I Cada usuario fica estavel ou muda sua rota (pagando menos)

baseado apenas na configuracao atual

I Em um estado do jogo com caminhos (P1, . . . ,Pk ), denotamospor E+ ⊆ E as arestas usadas em pelo menos um caminho.

I O custo social e o custo dos caminhos escolhidos pelosjogadores:

c(P1, . . . ,Pk ) =k∑

i=1

c(Pi) =∑

e∈E+

ce

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 294 / 312

Page 295: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Exemplo 1

I Temos dois jogadores: 1 e 2I Cada um tem duas alternativas: uma rota externa e uma interna.

t1

1 1

s

t2

4 8

5

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 295 / 312

Page 296: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Exemplo 1

I Considere que inicialmente os jogadores usam as rotas externas.I O jogador 1 paga 4 e o jogador 2 paga 8I O custo social e igual a 12.

t2t1

4 85

s

1 1

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 296 / 312

Page 297: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Exemplo 1

I O jogador 2 muda para a rota interna e seu custo cai para 6I O custo social cai para 10

t2t1

4 8

5

s

1 1

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 297 / 312

Page 298: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Exemplo 1

I O jogador 1 tem incentivo a mudarI Cada jogador paga 2,5 + 1, e estamos em um equilıbrioI O custo social cai para 7 (solucao final tambem e otima)

t2t1

5

4 8

s

1 1

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 298 / 312

Page 299: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Definicoes e NotacaoI A Estrategia do jogador i e o conjunto de rotas de s para tiI O estado do jogo em um momento e dado pelos k caminhos

(P1, . . . ,Pk ) no momentoI O otimo social e o menor valor possıvel de uma solucao (dos k

caminhos), possivelmente nao esta em equilıbrio.I Um usuario i esta insatisfeito no estado atual, se ele pode mudar

sua rota por outra de custo melhorI Estado em Equilıbrio de Nash quando nao ha usuarios

insatisfeitosI O Preco da Estabilidade razao entre a melhor solucao em

equilıbrio com o otimo socialI O Preco da Anarquia razao entre a pior solucao em equilıbrio com

o otimo socialI Melhor resposta: movimento para estrategia de maior ganho

positivoFlavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 299 / 312

Page 300: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Precos da anarquia e da estabilidade para minimizacao

Otimo Social = OPT

Preco da Anarquia =PE

OPTMelhor equilıbrio = ME

Preco da Estabilidade =MEOPT

Pior equilıbrio = PE

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 300 / 312

Page 301: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Exemplo 2I Na rede abaixo ha k jogadores todos com mesmo destino tI Considere todos usando a aresta da direitaI Estamos em um equilıbrio com custo k (cada jogador paga 1).

I O otimo social tem custo 1 (cada jogador paga1k

).

k Jogadores

k

s

t

1

Teorema: O preco da anarquia deste jogo Multicast e k.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 301 / 312

Page 302: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Metodo da Funcao Potencial e o Preco da Estabilidade

Def.: Uma funcao potencial exata Φ e uma funcao queI mapeia cada vetor de estrategia P para um valor real tal queI se P = (P1, . . . ,Pi , . . . ,Pk ) e

P ′i 6= Pi e uma estrategia alternativa para o jogador i, entao

Φ(P)− Φ(P ′) = ci(Pi)− ci(P ′i ),

onde P ′ = (P1, . . . ,P ′i , . . . ,Pk )

Fato: Seja Φ uma funcao potencial exata para o jogo do Multicastcom dinamica de melhor resposta. Se jogador i muda sua estrategiade Pi para P ′i , e o vetor de estrategia muda de P para P ′, entao

Φ(P) > Φ(P ′).

Isto e, Φ e estritamente decrescente apos jogadas.Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 302 / 312

Page 303: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Funcao Potencial para MulticastDado vetor de estrategias P = (P1, . . . ,Pk ), denote por

Φ(P) =∑

e

ce · H(ke),

ondeH(t) = 1 +

12

+ · · ·+ 1t

e H(0) = 0

ke e o numero de caminhos de P que usam e

Lema: Φ e uma funcao potencial exata.Prova. Exercıcio

Fato: Φ(P) e limitado inferiormente.Prova. Exercıcio

Lema: O jogo Multicast com a dinamica de melhor resposta convergepara um equilıbrio de Nash.Prova. ExercıcioFlavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 303 / 312

Page 304: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Preco da EstabilidadeLema: Se P = (P1, . . . ,Pk ) e um vetor de estrategia, entao

c(P) ≤ Φ(P) ≤ H(k)c(P).

Teorema: O preco da estabilidade do jogo Multicast e no maximo H(k).Prova. Seja:OPT um vetor de estrategia otimo (otimo social)O um vetor de estrategia em equilıbrio obtido a partir de OPTP um vetor de estrategia em Equilıbrio de Nash de menor custo

c(P) ≤ c(O)

≤ Φ(O)

≤ Φ(OPT)

≤ H(k) · c(OPT)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 304 / 312

Page 305: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Lema: O preco da estabilidade H(k) do problema de Multicast e justo(melhor possıvel).Prova.

s

1 + εt1 t2 t3 tk−1 tk

0 0 0

12

131

0 0

1k−1

1k

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 305 / 312

Page 306: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Observacoes

I Tempo de convergencia do problema Multicast pode serexponencial

I Encontrar otimo social e um problema NP-difıcil.

Exercıcio: Mostre que encontrar o otimo social do problema Multicaste um problema NP-difıcil. Sugestao: por Cobertura por Conjuntos.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 306 / 312

Page 307: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Complexidade de se encontrar Equilıbrio de Nash emJogos Potenciais

O quao difıcil e encontrar um algoritmo polinomial para encontrar umequilıbrio de Nash ?

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 307 / 312

Page 308: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Classe PLS - Polynomial Local Search Problems

Em um problema de otimizacao (minimizacao) temos:

I conjunto de instancias II para entrada x ∈ I, temos um conjunto de solucoes viaveis F (x)

I para toda solucao s ∈ F (x) temos um custo cx (s)

I um oraculo que diz se s pertence ou nao a F (x) e em casopositivo, computa cx (s)

O problema consiste em dado x ∈ I, encontrar s ∈ F (x) tal que cx (s) emınimo.

A versao de maximizacao e analoga.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 308 / 312

Page 309: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Um problema de otimizacao local e um problema de otimizacao ondeI ha uma vizinhanca Nx (s) ⊂ F (x) para cada x ∈ I e s ∈ F (x)

I e uma solucao s de F (x) e um mınimo local se cx (s) ≤ cx (s′)para todo s′ ∈ Nx (s).

O objetivo e encontrar uma solucao que e mınimo local.

Um problema de otimizacao local pertence a PLS se temos umoraculo que, para qualquer instancia x ∈ I e solucao s ∈ F (x), decidese s e otimo local, e se nao for, devolve s′ ∈ Nx (s) com cx (s′) < cx (s).

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 309 / 312

Page 310: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Def.: (Johnson, Papadimitriou, Yannakakis’88) Um problema P ePLS-completo se esta em PLS e se para todo problema Q de PLS, hauma reducao polinomial de Q para P, tal que qualquer otimo local deP corresponde a um otimo local de Q.

Ha varios problemas em PLS-completo (Circuit-SAT com pesos, buscade otimos locais relativos ao TSP, MAXCUT, SAT, etc)

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 310 / 312

Page 311: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Problema da Satisfatibilidade com Pesos (LSAT -Local SAT):

I Seja φ uma formula em Forma Normal Conjuntiva (FNC)C1 ∧ . . . ∧ Cm

I cada clausula Cj com peso wj .I Uma atribuicao logica qualquer das variaveis e uma solucao de φ.I O valor de uma solucao s e o peso total das clausulas satisfeitas

por s.I A vizinhanca de s sao as atribuicoes obtidas trocando o valor de

apenas uma variavel de s.I O objetivo e encontrar uma solucao que e mınimo local.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 311 / 312

Page 312: Algoritmos de Aproximac¸ao˜ - Instituto de …fkm/lectures/aprox.pdfFl´avio Keidi Miyazawa (Unicamp) Algoritmos de Aproximac¸ ˜ao Campinas, 2001-2018 4 / 312 Problemas de Otimizac¸ao

Equilıbrio de Nash, Busca Local e Jogo Multicast

Teorema: (Krentel’89) O problema LSAT e um problemaPLS-completo.

Teorema: (Fabrikant, Papadimitriou, Talwar’04) O problema de seencontrar um equilıbrio puro de Nash em jogos potenciais, onde amelhor resposta e computada em tempo polinomial, e PLS-completo.

Flavio Keidi Miyazawa (Unicamp) Algoritmos de Aproximacao Campinas, 2001-2018 312 / 312