Transcript
PCS 2214 - Fundamentos de Engenharia de Computação I 1o. Semestre 2006 PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
COMPLEXIDADE E REDUÇÃO DE PROBLEMAS Professores: Anna Helena Reali Costa Jaime Simão Sichman Liria Matsumoto Sato Romero Tori
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
1
Conteúdo PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
1. Conceitos Básicos: Máquina de Turing Não Determinista, Classe NP, Redução de Problemas , Problemas NP-Completo. 2. NP-Completude do Problema SAT. 3. Outros Problemas NP-Completos.
Módulo: Complexidade e Redução de Problemas
4. NP-Completude do Problema 3SAT.
Autora: Jaime S. Sichman
5. NP-Completude do Problema CLIQUE.
Versão: 2.0 Data: 06/06/05
2
1
Redução de Problemas PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
• Redução é uma forma de converter um problema A em outro, B, de modo que a solução do problema B pode ser usada para resolver o problema A. • A redução consiste em definir uma função f que reduz A em B, de forma que, se w é entrada de A, a solução de w por A é equivalente à solução de f(w) por B. • Se A e B são problemas de decisão, então a solução de w por A é a mesma solução de f(w) por B. • Notação: A ≤ B e lê-se: A é redutível a B.
3
MT Não Determinista • MT Determinista = (S, I, Γ, f, σ0, σA, σR) PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
– onde f: S × Γ → S × Γ × {E, D} • MT Não Determinista = (S, I, Γ, f, σ0, σA, σR) – onde f: S × Γ → P(S × Γ × {E, D}) 0→1,D
Módulo: Complexidade e Redução de Problemas
1→0,D b→1,E
A
Autora: Jaime S. Sichman
1→0,D 0→D
Versão: 2.0 Data: 06/06/05
B b→D
C
0→D 1→D
4
2
MT Não Determinista PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
• Computação de uma MT Não Determinista: Árvore cujos ramos são possíveis sequências de configurações 1001A 1001A1 A0110
1A110
10A10
100A0
1000A
1000A1
0A110
00A10
000A0
0001A
0001A1
0000A
0000A1
0→1,D
Autora: Jaime S. Sichman
1→0,D
b→1,E A
Versão: 2.0 Data: 06/06/05
5
1→0,D 0→D
C
B b→D
0→D 1→D
Transições realizadas em apenas um passo
Classe NP PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
• Um problema é da classe NP se e somente se ele puder ser decidido em tempo polinomial por alguma Máquina de Turing não determinista. • Um problema é da classe NP se ele puder ser verificado em tempo polinomial (por uma MT determinista). – NP vem de Não determinista em tempo Polinomial.
Versão: 2.0 Data: 06/06/05
6
3
Problemas NP-completo PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
• Um problema B é NP-completo se: – B ∈ NP e – ∀A∈NP pode ser reduzido a B em tempo polinomial (A ≤P B) . • Teorema: Se então P = NP.
B∈NP-completo
e
B∈P,
• Teorema: Se B∈NP-completo e B ≤P C e C∈NP, então C∈NP-completo.
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
7
NP-Completude do Problema SAT PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
• O problema de decidir se uma fórmula bem formada proposicional arbitrária é satisfatível é NP-completo. • Este problema é chamado “Problema da Satisfatibilidade” – SAT:
de
SAT = {〈 β 〉 | β é uma fórmula booleana satisfatível}
Módulo: Complexidade e Redução de Problemas
• Teorema de Cook-Levin: SAT∈NP-completo.
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
8
4
NP-Completude do Problema SAT PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Para provar que SAT ∈ NP-completo: 1. Provar que SAT ∈ NP 2. Provar que para qualquer L ∈ NP, L ≤P SAT NP P
Módulo: Complexidade e Redução de Problemas
NP-completo SAT
Autora: Jaime S. Sichman
L
Versão: 2.0 Data: 06/06/05
redução polinomial
9
NP-Completude do Problema SAT PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
1. Provar que SAT ∈ NP Seja uma MT não determinista M que com entrada <φ>: a. Constrói diversas interpretações I1, I2, ..., atribuindo um conjunto de valores verdade às variáveis proposicionais de φ; b. Avalia φ para as interpretações I1, I2, ...; c. Se alguma interpretação é um modelo de φ, aceita, senão rejeita.
Versão: 2.0 Data: 06/06/05
10
5
NP-Completude do Problema SAT PCS 2214 Fund. Eng. Comp. I
2. Provar que para qualquer L ∈ NP, L ≤P SAT
1o.Sem. / 2005
A idéia da redução é produzir uma fbf φ que simule o funcionamento da MT que aceita L, para uma determinada cadeia de entrada w. Se w ∈ L, φ terá uma atribuição de valores que corresponda à aceitação de w.
Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
11
NP-Completude do Problema SAT 1
PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
2
σo
3
4
1
#
2
#
#
3
#
#
w1 w2
...
wn
b
...
#
nk
Módulo: Complexidade e Redução de Problemas
janela
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
# 12
Se a célula 1,4 tem o símbolo w2, x1,4,w2 é V #
nk
6
NP-Completude do Problema SAT A fbf φ é composta de 4 partes: PCS 2214 Fund. Eng. Comp. I
φ ≡ φcell ∧ φstart ∧ φmove ∧ φaccept
1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
13
Cada célula tem um e um único símbolo
A primeira linha da matriz tem a configuração inicial
Duas linhas diferem segundo ações válidas
Alguma linha da matriz tem a configuração final
NP-Completude do Problema SAT PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
1. φcell ≡ φcell 1,1 ∧ φcell1,2 ∧ ... ∧ φcell 1,nk ∧ φcell 2,1 ∧ φcell 2,2 ∧ ... ∧ φcell 2,nk ∧ ... φcell nk,1 ∧ φcell nk,2 ∧ ... ∧ φcell nk,nk e cada φcell i,j vale: φcell i,j ≡ (xi,j,s1∨ xi,j,s2∨ ... ∨ xi,j,sm) ∧
Cada célula tem um e um único símbolo
(¬xi,j,s1∨¬ xi,j,s2) ∧ ... ∧ (¬xi,j,s1∨¬ xi,j,sm) ∧ (¬xi,j,s2∨¬ xi,j,s3) ∧ ... ∧ (¬xi,j,s2∨¬ xi,j,sm) ∧ ... ∧ (¬xi,j,s(m-1)∨¬ xi,j,sm)
14
7
NP-Completude do Problema SAT PCS 2214 Fund. Eng. Comp. I
2. φstart ≡ x1,1,# ∧ x1,2,σ0 ∧ x1,3,w1 ∧ x1,4,w2 ∧ ... ∧ x1,n+2,wn ∧ x1,n+3,b ∧ ... ∧ x1, nk-1,b ∧ x1, nk,#
1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
# # # A primeira linha da matriz tem a configuração inicial
σo w1 w2 . . . wn
b
...
# # #
nk
#
# nk
15
NP-Completude do Problema SAT PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
3. φaccept ≡ x1,1,σa ∨ x1,2, σa ∨ ... ∨ x1, nk, σa ∨ ... x2,2, σa ∨ x2,3, σa ∨ ... ∨ x2, nk, σa ∨ ... ∨ x nk,1, σa ∨ x nk,2, σa ∨ ... ∨ x nk, nk, σa
Alguma linha da matriz tem a configuração final
# σo w1 w2 . . . wn b σa # # nk
# 16
... # # #
# nk
8
NP-Completude do Problema SAT PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
4. φmove Garante que cada linha da tabela corresponda a uma configuração que siga as ações válidas da máquina. # σo w1 w2 . . . wn b # w1 σ 0 w2 #
Duas linhas diferem segundo ações válidas
... # # #
nk
Versão: 2.0 Data: 06/06/05
#
# nk
17
NP-Completude do Problema SAT PCS 2214 Fund. Eng. Comp. I
Suponha uma MT N que tenha as ações: f(σ1,a)={(σ1, d, D)} e f(σ1,d)={(σ2, c, E), (σ2, a, D)}
1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
Alguns exemplos de janelas legais: a
σ1
d
a
σ1
d
a
a
σ1
σ2
a
c
a
a
σ2
a
a
d
#
d
a
a
d
a
d
d
d
#
d
a
a
d
σ2
c
d
d
18
9
NP-Completude do Problema SAT Alguns exemplos de janelas ilegais: PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
a
d
a
a
σ1
d
d
q1
d
a
a
a
σ1
a
a
σ2
d
σ2
Simplificadamente:
Módulo: Complexidade e Redução de Problemas
φmove ≡ janela (1,1) é legal ∧ janela (1,2) é legal ∧
Autora: Jaime S. Sichman
... janela (nk,1) é legal ∧ janela (nk, nk-1) é legal
Versão: 2.0 Data: 06/06/05
19
NP-Completude do Problema SAT • PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
• • •
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
•
Versão: 2.0 Data: 06/06/05
•
A tabela é do tipo nk x nk, e portanto contém n2k células. Cada célula pode ter m variáveis associadas, onde m é o número de símbolos possíveis. Como m não depende de n , o número total de variáveis é O(n2k). Analisando φcell, φstart, φmove, e φaccept, chega-se à conclusão que φ é O(n2k). Deste modo, pode-se reduzir qualquer L ∈ NP a SAT em tempo polinomial. Portanto SAT é NP-completo.
20
10
Outros Problemas NP-Completos SAT
PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
CSAT TSP
Módulo: Complexidade e Redução de Problemas
3SAT
Autora: Jaime S. Sichman
IS
DHC CLIQUE
Versão: 2.0 Data: 06/06/05
NC
HC
21
NP-Completude do Problema 3SAT PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
• Toda fbf do cálculo proposicional pode ser transformada num conjunto de cláusulas. • Caso as cláusulas tenham apenas 3 literais, diz-se que a fbf é uma 3cnf-fórmula. • O problema de decidir se uma 3cnf-fórmula arbitrária é satisfatível é NP-completo. • Este problema é chamado de “3SAT”:
Autora: Jaime S. Sichman
3SAT = {〈 β 〉 | β é uma 3cnf-fórmula satisfatível}
Versão: 2.0 Data: 06/06/05
22
11
NP-Completude do Problema CLIQUE PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
• Dado um grafo não direcionado G, um k-clique é um subgrafo completo contendo k vértices. • O problema de decidir se um grafo G arbitrário tem um clique de determinado tamanho é NPcompleto. • Este problema é chamado de “CLIQUE”:
Módulo: Complexidade e Redução de Problemas
CLIQUE = { 〈 G, k 〉 | G tem um k-clique}
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
23
NP-Completude do Problema CLIQUE PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
1. Provar que CLIQUE ∈ NP Seja uma MT determinística M que com entrada <, c> : a. Testa se c corresponde a um conjunto de k vértices em G; b. Testa se G contém todas as arestas necessárias para ligar quaisquer vértices de c dois a dois; c. Se sim nas duas questões anteriores, aceita, senão rejeita.
24
12
NP-Completude do Problema CLIQUE ¬x1
¬x2
¬x2
PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
25
x1
¬x1
x1
x2
x2
x2
(x1 ∨ x1 ∨ x2 ) ∧ (¬x1 ∨ ¬ x2 ∨ ¬ x2 ) ∧ (¬ x1 ∨ x2 ∨ x2 )
NP-Completude do Problema CLIQUE ¬x1
¬x2
¬x2
PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
26
x1
¬x1
x1
x2
x2
x2
(x1 ∨ x1 ∨ x2 ) ∧ (¬x1 ∨ ¬ x2 ∨ ¬ x2 ) ∧ (¬ x1 ∨ x2 ∨ x2 )
13
Bibliografia PCS 2214 Fund. Eng. Comp. I 1o.Sem. / 2005 Profs: Anna H. R. Costa Jaime S. Sichman Líria M. Sato Romero Tori © 2005
Módulo: Complexidade e Redução de Problemas
Sipser, M. Introduction to the Theory of Computation. PWS Publishing Company, Boston, MA. 1997. Cap. 7. Hopcroft, J. H, Ullman, J. D. e Motwani, R. Introdução à Teoria de Autômatos, Linguagens e Computação. Editora Campus, São Paulo, Brasil. 2a. Edição. 2003. Cap. 10.
Autora: Jaime S. Sichman
Versão: 2.0 Data: 06/06/05
27
14