Problemas NP-Completos TC4001 - p. 1/11
Fundamentos de la Computación
TC4001
Problemas NP-Completos
Centro de Manufactura / Centro de Sistema Inteligentes
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 2/11
Introducción
■ Hasta ahora se han abordado problemas que en
su mayoría pueden resolverse en tiempo polinomial.
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 2/11
Introducción
■ Hasta ahora se han abordado problemas que en
su mayoría pueden resolverse en tiempo polinomial.
■ Sin embargo, hay problemas, como el de
encontrar en un grafo un ciclo de Hamilton, en el cual la única solución en apariencia es
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 2/11
Introducción
■ Hasta ahora se han abordado problemas que en
su mayoría pueden resolverse en tiempo polinomial.
■ Sin embargo, hay problemas, como el de
encontrar en un grafo un ciclo de Hamilton, en el cual la única solución en apariencia es
resolverlos en forma casi exhaustiva. En el caso del ciclo de Hamilton da una complejidad
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 2/11
Introducción
■ Hasta ahora se han abordado problemas que en
su mayoría pueden resolverse en tiempo polinomial.
■ Sin embargo, hay problemas, como el de
encontrar en un grafo un ciclo de Hamilton, en el cual la única solución en apariencia es
resolverlos en forma casi exhaustiva. En el caso del ciclo de Hamilton da una complejidad
factorial.
■ Lejos de intentar encontrar un algoritmo
polinomial para el problema específico o para los problemas que vengan, se ha optado por una
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 2/11
Introducción
■ Hasta ahora se han abordado problemas que en
su mayoría pueden resolverse en tiempo polinomial.
■ Sin embargo, hay problemas, como el de
encontrar en un grafo un ciclo de Hamilton, en el cual la única solución en apariencia es
resolverlos en forma casi exhaustiva. En el caso del ciclo de Hamilton da una complejidad
factorial.
■ Lejos de intentar encontrar un algoritmo
polinomial para el problema específico o para los problemas que vengan, se ha optado por una
postura más radical: pensar en lo que se podrá alguna vez llegar a hacer en lugar de lo que
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 3/11
Agenda Clase P
■ Definir el concepto de problema de decisión y
contrastarlo contra el problema de optimización (cuando hay lugar).
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 3/11
Agenda Clase P
■ Definir el concepto de problema de decisión y
contrastarlo contra el problema de optimización (cuando hay lugar). Mostrar algunos ejemplos:
◆ Coloreo de Grafos ◆ Calendarización de trabajos ◆ Empacamiento ◆ Subconjuntos ◆ Satisfactibilidad ◆ Agente viajero
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 3/11
Agenda Clase P
■ Definir el concepto de problema de decisión y
contrastarlo contra el problema de optimización (cuando hay lugar). Mostrar algunos ejemplos:
◆ Coloreo de Grafos ◆ Calendarización de trabajos ◆ Empacamiento ◆ Subconjuntos ◆ Satisfactibilidad ◆ Agente viajero ■ Definición de la clase P
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 4/11
Agenda Clase NP
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 4/11
Agenda Clase NP
■ Contrastrar entre resolver y verificar. ■ Algoritmo no determinista.
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 4/11
Agenda Clase NP
■ Contrastrar entre resolver y verificar. ■ Algoritmo no determinista.
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 4/11
Agenda Clase NP
■ Contrastrar entre resolver y verificar. ■ Algoritmo no determinista.
■ Ejemplo
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 4/11
Agenda Clase NP
■ Contrastrar entre resolver y verificar. ■ Algoritmo no determinista.
■ Ejemplo
■ Definición de la clase NP ■ P ⊆ N P
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 5/11
Agenda: Problemas NP-Completos
■ El concepto de reducción polinómica y
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 5/11
Agenda: Problemas NP-Completos
■ El concepto de reducción polinómica y
reducibilidad
■ Definición de problema NP-Completo y de
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 5/11
Agenda: Problemas NP-Completos
■ El concepto de reducción polinómica y
reducibilidad
■ Definición de problema NP-Completo y de
NP-Hard.
■ Teorema de Cook: El problema de la
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 5/11
Agenda: Problemas NP-Completos
■ El concepto de reducción polinómica y
reducibilidad
■ Definición de problema NP-Completo y de
NP-Hard.
■ Teorema de Cook: El problema de la
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 5/11
Agenda: Problemas NP-Completos
■ El concepto de reducción polinómica y
reducibilidad
■ Definición de problema NP-Completo y de
NP-Hard.
■ Teorema de Cook: El problema de la
satisfactibilidad es NP-Completo
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 5/11
Agenda: Problemas NP-Completos
■ El concepto de reducción polinómica y
reducibilidad
■ Definición de problema NP-Completo y de
NP-Hard.
■ Teorema de Cook: El problema de la
satisfactibilidad es NP-Completo
■ Lista de Karp
■ Teorema: Si un problema NP-Completo
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 5/11
Agenda: Problemas NP-Completos
■ El concepto de reducción polinómica y
reducibilidad
■ Definición de problema NP-Completo y de
NP-Hard.
■ Teorema de Cook: El problema de la
satisfactibilidad es NP-Completo
■ Lista de Karp
■ Teorema: Si un problema NP-Completo
cualquiera está en P, entonces P = N P.
■ Conjetura del millón de dolares: P = N P. http://www.claymath.org/
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 6/11
Algoritmos de Aproximación
■ Enfoque: La solución exacta a un problema de
optimización es para fines prácticos inalcanzable en un tiempo razonable, pero una solución
aproximada y rápida tiene sentido en el problema y tiene un valor práctico.
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 6/11
Algoritmos de Aproximación
■ Enfoque: La solución exacta a un problema de
optimización es para fines prácticos inalcanzable en un tiempo razonable, pero una solución
aproximada y rápida tiene sentido en el problema y tiene un valor práctico.
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 6/11
Algoritmos de Aproximación
■ Enfoque: La solución exacta a un problema de
optimización es para fines prácticos inalcanzable en un tiempo razonable, pero una solución
aproximada y rápida tiene sentido en el problema y tiene un valor práctico.
■ El concepto de Heurísticas de solución. ■ Heurísticas ejemplo para:
◆ TSP
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 6/11
Algoritmos de Aproximación
■ Enfoque: La solución exacta a un problema de
optimización es para fines prácticos inalcanzable en un tiempo razonable, pero una solución
aproximada y rápida tiene sentido en el problema y tiene un valor práctico.
■ El concepto de Heurísticas de solución. ■ Heurísticas ejemplo para:
◆ TSP
◆ Apareamiento mínimo
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 7/11
Referencias Clásicas
■ La clase P fue introducida por Alan Cobham en: Cobham A: The intrinsic computational
difficulty of functions. In Proceedings of the Congress for Logic, Methodology, and the Philosophy of Science, pages 24-30.
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 8/11
■ La clase P también fue independientemente
definida por Jack Edmonds que también
introdujo la definición de NP y conjeturó que
P 6= N P.
Edmonds, J: Paths, trees, and Flowers. Canadian Journal of Mathematics.
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 9/11 El concepto de problema NP-Completo fue introducida por Step-hen Arthur Cook (Turing Award 1982) dió la demostración de que el problema de satisfactibilidad de ex-presiones 3-CNF era NP-Completo.
Cook, S: The complexity of the theorem proving procedu-res. Proceedings of the Third Annual ACM Symposium on Theory of Computing. pages 151-158. 1971.
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 10/11
Richard Manning Karp (Turing Award 1985) introdujo una metodo-logía para reducción de problemas a otros y demostró una variedad de problemas NP-Completos en:
Karp, R: Reducibility among combinatorial problems. Com-plexity of Computer Compu-tations, pages 85-103. Ple-num Press, 1972.
Introducci ´on Agenda: Clase P Agenda: Clase NP Agenda: Problemas NP-Completos Agenda: Algoritmos de Aproximaci ´on Referencias Problemas NP-Completos TC4001 - p. 11/11
Manindra Agrawal was born in May 1966, and since 2001 he has been a full professor at the Indian Institute of Technology in Kanpur, In-dia. For some years he has been interested in finding a polynomial time algorithm to test whet-her a given number is prime. Although random algorithms can solve this problem with high cer-tainty in polynomial time, it remained a long-standing challenge to find a method that works in every case.
To the great surprise of the experts, Agrawal solved this problem in August 2002, working to-gether with two undergraduate students: Neeraj Kayal and Nitin Saxena. Their proof establishes the correctness of a conjecture made in 1999 by Agrawal and Biswas.