• No se han encontrado resultados

NP Completitud I: SAT y 3-SAT. Febrero 2017

N/A
N/A
Protected

Academic year: 2021

Share "NP Completitud I: SAT y 3-SAT. Febrero 2017"

Copied!
28
0
0

Texto completo

(1)

Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

Complejidad y optimizaci´

on

NP Completitud I: SAT y 3-SAT

Carlos Andr´es Delgado S.

Facultad de Ingenier´ıa. Universidad del Valle Febrero 2017

(2)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

Contenido

1 Problemas NP completos 2 Problema 3-SAT Demostraci´on 3SAT es NPC

(3)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC 1 Problemas NP completos 2 Problema 3-SAT Demostraci´on 3SAT es NPC

(4)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

Problemas NPC

Definici´on

Un problema de decisi´on NP es considerado NP completo

(NPC) si y s´olo si, este puede puede ser reducido a otro

problema NPC.

Demostraci´on NPC

El primer problema en ser demostrado como NPC fue el problema SAT. Stephen Cook (1971).

Se han realizado otras demostraciones de problemas NPC, una de ellas son los 21 problemas NPC. Richard Karp (1972)

(5)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

Reducidos desde SAT

0−1 Programaci´on entera

Clique

Definiciones

El problema de programaci´on entera consiste en maximizar

o minimizar una expresi´on, sujeta a unas restricciones.

El problema de clique, consiste en encontrar en un grafo con un conjunto de vertices con dos a dos adyacentes.

(6)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

21 problemas NPC

Reducidos desde Clique

Set packing Vertex cover

Definiciones

El problema de Set packing, consta de un universoU de

elementos yS subconjuntos. Se pregunta si es posible

tener k pares{U,S} de elementos distintos.

El problema de vertex cover, consiste en encontrar un

(7)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

Reducidos desde Vertex cover

Set covering Feedback node set Feedback arc set

Directed Hamilton circuit

Definiciones

El problema Set Covering, se tiene un universo de

elementosU y unos conjuntos S, se requiere encontrar un

conjunto de S cuya uni´on sea igual aU.

El problema Feedback node/arc set consiste en remover un conjunto de vertices/aristas tal que se obtiene un grafo sin ciclos.

(8)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

21 problemas NPC

Directed Hamilton circuit

El problema de circuito Hamiltoniano, consiste en encontrar un

grupo de v´ertices en un grafo dirigido tal que si este se recorre,

se visita cada arista una sola vez.

Reducidos desde Directed Hamilton circuit

(9)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

Reducidos desde 3SAT

Coloreo de grafos

(10)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

21 problemas NPC

Reducidos desde 3SAT/Coloreo de grafos

Clique cover Exact cover

Definiciones

El problema Clique cover, consiste encontrar los v´ertices

de un grafo que permiten obtener k cliques.

El problema del exact cover un problema de Set packing

m´as restringido, donde cada elemento de U s´olo puede

(11)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

Reducidos desde Exact Cover

Problema de la mochila Steiner tree problem 3-dimensional matching Partition

(12)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

Contenido

1 Problemas NP completos 2 Problema 3-SAT Demostraci´on 3SAT es NPC

(13)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC Instancia

Una instancia de 3-SAT es una colecci´onC de cl´ausulas donde

cada cl´ausula contiene 3 literales.

Example

V ={v1,v2,v3,v4}

(14)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

¿3SAT es NPC?

Definici´on

Este problema es m´as restringido que SAT, por lo que si 3SAT

es NP-Completo implica que SAT es NPC y no viceversa.

Teorema

(15)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC Reducci´on

Se procede a realizar la reducci´on de SAT a 3SAT, se debe

probar que esta reducci´on se puede realizar en tiempo

polinomial.

Demostraci´on

La reducci´on se realiza utilizando como base la longitud de

(16)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

¿3SAT es NPC?

Procedimiento de reducci´on

Suponga queCi contienek literales:

Si k = 1 significaCi =z1. Se crean dos variables v1 yv2

de tal forma se obtienen cuatro nuevas clausulas de 3 literales.

{v1,v2,z1},{v1,v¯2,z1},{v¯1,v2,z1},{v¯1,v¯2,z1}

Observe que la expresi´on se satisface si z1 es verdadera. 1

1

(17)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC Procedimiento de reducci´on

Suponga queCi contienek literales:

Sik = 2 significaC ={z1,z2}. Se crean una variablev1 de tal forma se obtienen dos nuevas clausulas de 3 literales.

(18)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

¿3SAT es NPC?

Procedimiento de reducci´on

Suponga queCi contienek literales:

Si k = 3 copie la clausula en la instancia 3-SAT tal como

(19)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC Procedimiento de reducci´on

Suponga queCi contienek literales:

Si k >3 creek−3 variablesv1,v2 ..vk−3 y agregue

k−2 cl´ausulas, siguiendo la forma

{z1,z2,v1},

{v¯1,z3,v2},{v¯2,z4,v3}, ...

...,{v¯i,zi+2,vi+1}...,{vk¯−3,zk−1,zk} ,

(20)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

¿3SAT es NPC?

Procedimiento de reducci´on

Si ninguna de las variables originales en una clausula son verdaderas entonces no se pueden satisfacer con ninguna de la

combinaci´on de las variables adicionales.

(21)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC Procedimiento de reducci´on

Pero si cualquier literal es verdadero, se tienenn−3 yn−2

clausulas que se encuentran satisfechas:

(22)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

¿3SAT es NPC?

Procedimiento de reducci´on

Entonces cualquier soluci´on de SAT ser´a tambi´en satisfecha en

una instancia de 3-SAT obteniendo las variables de una

soluci´on de SAT.

Complejidad reducci´on

Si se tienenn clausulas y mliterales en una instancia de SAT

(23)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC Extensi´on de la soluci´on

La reducci´on de SAT a 3SAT, puede ser extendida a problemas

4SAT, 5SAT, etc. Por lo que se concluye que estos tambi´en son

NP completos. La direcci´on de la reducci´on es 3SAT a X-SAT

Importante

Esta reducci´on no aplica para los problemas 1-SAT ni 2-SAT los

(24)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

¿3SAT es NPC?

Ejercicio 1

Realice la reducci´on de la siguiente instancia de SAT a 3SAT

C ={a1,a2a¯3},{a2,a¯3}

Ejercicio 2

Realice la reducci´on de la siguiente instancia de SAT a 3SAT

(25)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC Soluci´on ejercicio 1 Realizando reducci´on C ={a1,a2a¯3},{v1,a2,a¯3},{v¯1,a2,a¯3} Comprobaci´on

1 La reducci´on se realiza en tiempo polinomial.

2 Con a3=F SAT es sastisfactible. En la reducci´on tambi´en

se refleja esta situaci´on.

3 Con a1=F,a2 =F ya3 =V SAT no es sastisfactible. En

(26)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

¿3SAT es NPC?

Soluci´on ejercicio 2 Realizando reducci´on C ={a1,a2a¯4},{v1,a2,a¯3},{v¯1,a2,a¯3}, {v2,a1,a2}{v¯2,a¯3,v3}{v¯3,a5,a6} Comprobaci´on

1 La reducci´on se realiza en tiempo polinomial.

2 Cona2 =V SAT es sastisfactible. En la reducci´on tambi´en

se refleja esta situaci´on, haciendo v2=F yv3 =F

3 Con a1=F,a2 =F,a4 =V SAT no es sastisfactible. En la

(27)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC Ejercicio 3

Plantee reducciones de SAT a:

1 4-SAT

2 5-SAT

3 X-SAT,X ≥3

(28)

Complejidad y optimizaci´on Carlos Andr´es Delgado S. Problemas NP completos Problema 3-SAT Demostraci´on 3SAT es NPC

Referencias

Documento similar