Intratabilidad - PowerPoint PPT Presentation

1 / 49
About This Presentation
Title:

Intratabilidad

Description:

Dadas n ciudades en un plano y un n mero natural d, decidir si existe un ciclo ... Dada una matriz Amxn, dos vectores bm y cn y un entero k, decidir si existe un ... – PowerPoint PPT presentation

Number of Views:26
Avg rating:3.0/5.0
Slides: 50
Provided by: rafael65
Category:

less

Transcript and Presenter's Notes

Title: Intratabilidad


1
Intratabilidad
  • 30 de septiembre de 2003
  • Se exploran las nociones relacionadas con los
    límites prácticos de la computación. Se presentan
    y ejemplifican las clase P y NP.

2
Intratabilidad
  • Conceptos básicos.
  • Clases de Complejidad.
  • - La clase P.
  • - Reducción.
  • - Completitud.
  • - La clase NP.
  • - P vs. NP.
  • Problemas NP-Completos.
  • Complejos pero no imposibles.

3
Intratabilidad
  • Conceptos básicos.
  • Clases de Complejidad.
  • - La clase P.
  • - Reducción.
  • - Completitud.
  • - La clase NP.
  • - P vs. NP.
  • Problemas NP-Completos.
  • Complejos pero no imposibles.

4
Conceptos básicos
  • Problema

X (p,r) p?Preg ? r?Resp
Preg Resp 0,1
  • - Funcionales.
  • - De desición.
  • - De conteo.
  • -

5
Conceptos básicos
  • Problema

X (p(x),r(x)) x ? D .
Solución
Es una relación (algoritmo) A tal que A P ? R
y para cada pregunta posible p, (p,A(p)) ? X.
6
Conceptos básicos(ejemplos)
Factorización (FAC)
Dado un entero positivo n, encontrar uno de sus
divisores.
7
Conceptos básicos(ejemplos)
Agente Viajero (AV)
Dadas n ciudades en un plano y un número
natural d, decidir si existe un ciclo simple que
visite las n ciudades y que tenga longitud menor
o igual a d.
8
Conceptos básicos(ejemplos)
Coloración de Grafos (CG)
Dado un grafo G y un entero k, decidir si G es
k-coloreable.
9
Conceptos básicos(ejemplos)
Conjuntos Independientes (CI)
Dado un grafo G y un entero k, decidir si G
tiene un subconjunto de k vértices
independientes.
10
Conceptos básicos(ejemplos)
Empaquetamiento (BP)
Dados un conjunto finitos S de enteros
positivos, un entero k y un entero n, decidir si
se pueden empacar los enteros de S en a lo sumo n
subconjuntos de suma individual menor que k.
11
Conceptos básicos(ejemplos)
Clique (CQ)
Dado un grafo G y un entero n, decidir si Kn es
subgrafo de G..
12
Conceptos básicos(ejemplos)
Partición (PT)
Dado un conjunto finito A de enteros positivos,
determinar si es posible partir el conjunto en
dos que tengan la misma suma.
13
Conceptos básicos(ejemplos)
Morral (KS)
Dado un conjunto finito U, dos números
naturales B y K, y dos funciones s(u) y v(u)
definidas sobre U, determinar si existe un
subconjunto U de U tal que s(U)?B y v(U)?K.
14
Conceptos básicos
Qué tienen en común estos problemas?
Son problemas difíciles.
No se
conoce un algoritmo polinomial que los solucione.
Se conocen algoritmos que solucionan el problema,
pero lo hacen en tiempo exponencial.
15
Conceptos básicos
... Y además de ser difíciles?
Si se encuentra un algoritmo bueno para uno de
ellos, entonces se tendrá un algoritmo bueno para
cualquiera de ellos.
Si se demuestra que todos los algoritmos para
solucionar uno de ellos son malos, entonces todos
tendrán el mismo inconveniete.
(completitud)
16
Intratabilidad
  • Conceptos básicos.
  • Clases de Complejidad.
  • - La clase P.
  • - Reducción.
  • - Completitud.
  • - La clase NP.
  • - P vs. NP.
  • Problemas NP-Completos.
  • Complejos pero no imposibles.

17
Clases de Complejidad
Constante
O(1)
Logarítmica
O(log n)
Polilogarítmica
O(logk n)
Lineal
O(n)
Polinomial
O(nk)
Exponencial
O((2n)k)
18
La Clase P
Un problema es P si se tiene un algoritmo que lo
soluciona en tiempo polinomial sobre una Máquina
de Turing Determinista (MTD).
Existen muchos problemas en P que parecen
difíciles.
19
La Clase P(ejemplos)
Primalidad (VP)
Dado un entero positivo n, decidir si n es un
número primo o no.
20
La Clase P(ejemplos)
Recubrimiento de Arcos (RA)
Dado un grafo y un entero positivo k, decidir
si existe una conjunto de k arcos en G (kltk)
que cubra todos los nodos.
21
La Clase P(ejemplos)
Camino Euleriano (CE)
Dado un grafo y un entero positivo m, decidir
si existe un camino de longitud m que no repita
arcos.
22
La Clase P(ejemplos)
Ecuaciones Diofantinas Lineales (EDL)
Dados tres números naturales a, b y c, decidir
si existen naturales x e y tales que ax by c.
23
La Clase P(ejemplos)
Progamación Lineal (PL)
Dada una matriz Amxn, dos vectores bm y cn y un
entero k, decidir si existe un vector de
racionales xn tal que Ax ? b y c.x ? k.
24
Reducción
Una tranformación de X a Y es una función
f B ? B
tal que
(p,r)?X ? (f(p),r)?Y
pero f se debe calcular en tiempo polinomial.
25
Reducción
Si tal transformación existe se dice que X
reduce polinomialmente a Y,
X ? Y.
  • es compatible por clases
  • X ? Y ? Y ? C ? X ? C
  • es transitiva
  • X ? Y ? Y ? Z ? X ? Z

26
Completitud
Si X es un problema, C una clase de problemas y R
una familia de reducciones,
X es R-difícil para C ? Y ?R X, para todo Y ? C.
X es R-completo para C ? X es R-difícil para
C y X ? C.
27
Completitud
Un teorema importante
Si C es una clase de problemas, R una clase
transitiva de reducciones y X un problema
R-completo para C
entonces X ?R Y ? Y ? C ? Y es R-completo para C
28
La Clase NP
Cómo hago para ser NP?
- Problema de decisión.
- Tener solución en una MTND con tiempo de
ejecución polinomial.
29
La Clase NP
Cómo verifico que un problema es NP?
- Exhibiendo un algoritmo polinomial que
verifique la certificación de la respuesta.
30
La Clase NP(AV)
Problema Dadas n ciudades en un plano y un
número natural d, decidir si existe un ciclo
simple que visite las n ciudades y que tenga
longitud menor o igual a d.
Certificado Un recorrido para el que se debe
verificar que la longitud es menor o igual que d.
31
La Clase NP(CG)
Problema Dado un grafo G y un entero k,
decidir si G es k-coloreable.
Certificado Una asignación cV?1,,k que debe
ser verificada como coloración.
32
La Clase NP(BP)
Problema Dados un conjunto finitos S de
enteros positivos, un entero k y un entero n,
decidir si se pueden empacar los enteros de S en
a lo sumo n subcon-juntos de suma individual
menor que k.
Certificado Una partición de S en máximo n
conjuntos con suma individual menor que k.
33
La Clase NP(CQ)
Problema Dado un grafo G y un entero n,
decidir si Kn es subgrafo de G.
Certificado Un conjunto de n vértices que
conformen un subgrafo de G isomorfo a Kn.
34
La Clase NP(SAT)
Problema Dado un conjunto de m cláusulas
escritas con n símbolos, decidir si es
satisfacible.
Certificado Una asignación de valores de
verdad a los n símbolos.
35
La Clase NP(k-SAT)
Problema Dado un conjunto de m cláusulas, cada
uno con menos de k1 literales, escritas con n
símbolos, decidir si es satisfacible.
Certificado Una asignación de valores de
verdad a los n símbolos.
36
P vs. NP
NP
P
P
Toda MTD es un caso particular de MTND
P ? NP
37
P vs. NP
P ? NP
NP ? P ?
N P I
Teorema. Si X ? NP, entonces existe un polinomo p
tal que X puede ser resuelto en una MTD en tiempo
O(2p(n)).
Si eso es lo mejor, entonces son exponenciales!
?
38
Intratabilidad
  • Conceptos básicos.
  • Clases de Complejidad.
  • - La clase P.
  • - Reducción.
  • - Completitud.
  • - La clase NP.
  • - P vs. NP.
  • Problemas NP-Completos.
  • Complejos pero no imposibles.

39
Problemas NP-Completos
X es NP-Completo
X es NP
y X es P-completo
para NP.
40
Problemas NP-Completos
Teorema (Cook, 1971)
SAT es NP-Completo.
SAT es NP
y SAT es NP-difícil.
Demostración difícil en Coo71, legible en
Gar79 y fácil en Boh92.
41
Problemas NP-Completos
3-SAT es NP-Completo
3-SAT es una variante de SAT, entonces es NP.
Si ? x1 ? x2 ? ? xn
3-SAT es una variante de SAT, entonces es NP.
Se toma ? (x1??y1) ? (y1?x2??y2) ? (y2?x3??y3)
? ? (yn-1?xn??yn) ? yn
SAT es una variante de 3-SAT, entonces es
NP-completo.
Solucionar 3-SAT para ? es lo mismo que
solucionar SAT para ?.
Entonces SAT ? 3-SAT.
42
Problemas NP-Completos
Sequencing with Release Times MINIMUM SEQUENCING
WITH RELEASE Set Cover MINIMUM SET COVER
Single-Sink Edge Installation MINIMUM
SINGLE-SINK EDGE INSTALLATION Size Ultrametric
Tree MINIMUM SIZE ULTRAMETRIC TREE Sorting by
Reversals MINIMUM SORTING BY REVERSALS
k-Spanning Tree MINIMUM K-SPANNING TREE
43
Problemas NP-Completos
k-Switching Network MINIMUM K-SWITCHING NETWORK
Travel Robot Localization MINIMUM TRAVEL ROBOT
LOCALIZATION Two-Processor Flow-Shop Scheduling
with Batch Set-Up Times MINIMUM TWO-PROCESSOR
FLOW-SHOP SCHEDULING Unsatisfying Linear
Subsystem MINIMUM UNSATISFYING LINEAR SUBSYSTEM
Vertex Cover MINIMUM VERTEX COVER Shortest
Common Supersequence SHORTEST COMMON
SUPERSEQUENCE
44
Problemas NP-Completos
Maximal Common Subsequence LONGEST COMMON
SUBSEQUENCE Triangulation MINIMUM LENGTH
TRIANGULATION Turing Machines LONGEST
COMPUTATION SHORTEST COMPUTATION Vertex Cover
MINIMUM VERTEX COVER Separator MINIMUM
B-VERTEX SEPARATOR
45
Intratabilidad
  • Conceptos básicos.
  • Clases de Complejidad.
  • - La clase P.
  • - Reducción.
  • - Completitud.
  • - La clase NP.
  • - P vs. NP.
  • Problemas NP-Completos.
  • Complejos pero no imposibles.

46
Difíciles pero no imposibles...
Tipo 1 Casi siempre se encuentra la respuesta
  • Se ejecuta en tiempo polinomial.
  • Si encuentra solución, es la correcta.
  • Casi siempre la encuentra.
  • La probabilidad de encontrarla crece con el
    tamaño de los datos.

47
Difíciles pero no imposibles...
Tipo 2 Casi siempre rápido
  • Siempre encuentra solución correcta.
  • La complejidad en caso promedio es mejor que
    exponencial.

48
Difíciles pero no imposibles...
Tipo 3 Cerca de la respuesta
  • Siempre encuentra una respuesta.
  • La complejidad en caso promedio es polinomial.
  • Se garantiza que la respuesta está
    porcentualmente cerca de la correcta.

49
Bibliografía
  • Boh92 J. Bohórquez, Análisis de Algoritmos,
    1993.
  • Coo71 S. Cook, The Complexity of Theorem
    proving procedures. En Proceedings of the Third
    Annual ACM Symposium on Theory of Computing, pg.
    151 158, 1971.
  • Cor01 T. H. Cormen, Ch. E. Leiserson, R. L.
    Rivest, C. Stein, Introduction to Algorithms,
    2001.
  • Cre03 P. Crescenzi, V. Kann, A Compendium of NP
    Optimization Problems, http//www.nada.kth.se/theo
    ry/problemlist.html , 2003.
  • Gar79 M. R. Garey, D. S. Johnson, Computers and
    Intractability A Guide to tjhe Theory of
    NP-Completeness, 1979.
Write a Comment
User Comments (0)
About PowerShow.com