l15 npcompletos2 [modo de...

29
1 NP-completos Elvira Mayordomo Universidad de Zaragoza

Upload: others

Post on 08-Jan-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

1

NP-completos

Elvira MayordomoUniversidad de Zaragoza

Page 2: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

2

*aLenguajes regulares

Lengs. indeps. del contextonnba Rww

nnn cba ww

**ba

Lenguajes semidecidibles

Lenguajes decidibles

Page 3: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

3

De la semana pasada: P y EXP•P y EXP son clases de lenguajes.

•P es el conjunto de lenguajes (problemas) resolubles en tiempo polinómico.

•EXP es el conjunto de lenguajes (problemas) resolubles en tiempo exponencial.

• P EXP

Page 4: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

4

Lenguajes decidiblesUn lenguaje L es decidible si es el aceptado

por un programa que para siempre

En otras palabras:Un lenguaje L es decidible si existe un

algoritmo que resuelve completamente el problema de pertenencia

Page 5: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

5

P

EXP

Lenguajes semidecidibles

Lenguajes decidibles

Page 6: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

6

PAlgoritmo CYK

}{ nnba

}{ww

Por otro lado

Page 7: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

7

Lenguajes regulares

L. indeps. del contexto

Lenguajes semidecidibles

Lenguajes decidibles

EXP

P

Page 8: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

8

Hoy veremos•NP

•NP-completos

Muy poco formalizado …

Page 9: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

9

NP

•NP es el conjunto de lenguajes resolubles en tiempo polinómico no determinista.

•¿ Y qué es tiempo polinómico no determinista?•Usando máquinas de Turing no deterministas•Usando programas no deterministas

Page 10: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

10

Máquina de Turing no determinista

1q 2qDbDad ,,,

3qIdNad ,,,

Page 11: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

11

Programa no determinista•Incluye instrucciones “nodeterministas” como:

Para algún x{0,1}n hacer<secuencia de acciones>

fpalgun

Page 12: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

12

NP-completos

•Son los más difíciles de NP

•No veremos la definición formal, sólo ejemplos y qué significa que un problema sea NP-completo.

Page 13: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

13

NP-completos

Page 14: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

14

Una aplicación práctica

• Supón que tu jefe te pide que escribas un algoritmo eficiente para un problema extremadamente importante para tu empresa.

• Después de horas de romperte la cabeza sólo se te ocurre un algoritmo de “fuerza bruta”, que analizándolo ves que cuesta tiempo exponencial.

Page 15: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

15

Una aplicación práctica

Te encuentras en una situación muy embarazosa:“No puedo encontrar un algoritmo eficiente, me

temo que no estoy a la altura”

Page 16: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

16

Te gustaría poder decir …

“No puedo encontrar un algoritmo eficiente porque no existe”

Page 17: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

17

“No puedo encontrar un algoritmo eficiente porque no existe”

Eso es decir que el problema es intratable

• En realidad es muy poco frecuente poder decir algo tan tajante, para la mayoría de los problemas, es muy difícil demostrar que son intratables

• Pero la teoría de los NP-completos te puede ayudar a no perder tu trabajo diciendo …

Page 18: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

18

Usando la teoría de los NP-completos …

“No puedo encontrar un algoritmo eficiente pero tampoco pueden ninguno de estos informáticos

famosos”

Page 19: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

19

O todavía mejor

“Si pudiera diseñar un algoritmo eficiente para este problema, ¡no estaría trabajando para usted!

Me habría ganado el premio de un millón de dólares que da el Instituto Clay.”

Page 20: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

20

NP-completos

• Los NP-completos parecen intratables• Nadie ha sabido demostrar que los NP-completos son intratables

• Son todos equivalentes, es decir:o Si se encuentra un algoritmo eficiente para

un NP-completo entonces tenemos un algoritmo eficiente para cualquiera de ellos

o Si probamos que un NP-completo no tiene algoritmos eficientes entonces ninguno los tiene.

Page 21: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

Ejemplos de NP completos

21

• El problema del viajante de comercio

• El problema de hacer cierto un circuito booleano (Circuit-SAT)

• Asignación de procesadores (multiprocessor scheduling)

Page 22: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

El problema del viajante

22

Dados:n el número de ciudades, la matriz de distancias d(i,j) para 1<=i,j<=n, una longitud máxima k

¿existe un camino de que pasa por todas las ciudades con longitud como máximo k?

Page 23: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

Circuit-SAT

NOT

AND

OR 1

1

100

0

11

11

1

0

0

Dado: un circuito booleano con una única puertade salida

¿Existe una asignación de valores a las entradaspara la que la salida es “1”?

Page 24: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

Multiprocessor scheduling(asignación de procesadores)

24

Dadas: n el número de tareas,m número de procesadoresdur(i) la duración de la tarea I (i<=n)T tiempo máximo (deadline)

¿Existe una asignación de las tareas a los procesadores sin solapes y cumpliendo el deadline?

Page 25: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

Hay muchos más

25

Prácticamente de cualquier tema (redes, bases de datos, geometría, juegos)

Los problemas interesantes suelen ser NP-completos.

Page 26: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

Una aplicación práctica

26

Después de la segunda respuesta (No puedo encontrar un algoritmo eficiente pero tampoco pueden ninguno de estos informáticos famosos), tu jefe abandonará la búsqueda.Pero la necesidad de una solución no desaparecerá.Seguramente al demostrar que es NP-completo has aprendido mucho sobre el problema y ahora puedes:

Olvidar lo de intentar encontrar un algoritmo en tiempo polinómico para el problema.Buscar un algoritmo eficiente para un problema diferente relacionado con el original.O bien intentar usar el algoritmo exponencial a ver qué tal funciona con las entradas que te interesan.

Page 27: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

27

Referencias

•Lista de NP-completos:GAREY, M. y JOHNSON. D.: Computers and

Intractability: A Guide to the Theory of NP-Completeness. Freeman. 1978.

•Premio del instituto Clay:www.claymath.org/prizeproblems/pvsnp.htmwww.claymath.org/prizeproblems/milliondollarminesweeper.htm

Page 28: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

Un momento de publicidad

28

Si os gusta pensar en algoritmos/programasdivertidos/ocurrentes/diferentes

Si queréis saber más sobre NP-completos

Si tenéis curiosidad sobre alguna de las partes de esta asignatura …

Page 29: L15 NPcompletos2 [Modo de compatibilidad]webdiis.unizar.es/asignaturas/TC/wp/wp-content/uploads/2012/01/L15... · estos informáticos famosos), tu jefe abandonará la búsqueda. Pero

Un momento de publicidad

29

Echadle un vistazo a las asignaturas de la especialidad de Computación:

• Algoritmia básica• Algoritmia para problemas difíciles• Bioinformática• Procesadores de Lenguajes• Robótica• Videojuegos• …