L15 NPcompletos2 [Modo de...
Transcript of L15 NPcompletos2 [Modo de...
![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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/1.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/2.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/3.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/4.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/5.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/6.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/7.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/8.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/9.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/10.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/11.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/12.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/13.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/14.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/15.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/16.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/17.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/18.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/19.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/20.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/21.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/22.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/23.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/24.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/25.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/26.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/27.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/28.jpg)
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](https://reader033.fdocuments.net/reader033/viewer/2022041600/5e3086765adb972d7409322d/html5/thumbnails/29.jpg)
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• …