Problema de pebbling

10

Pebbling es un juego de solitario jugado en un gráfico no dirigido , donde cada vértice tiene cero o más guijarros. Un solo movimiento consiste en eliminar dos piedras de un vértice y agregar una piedra a un vecino arbitrario de . (Obviamente, el vértice v debe tener al menos dos guijarros antes del movimiento). El problema de PebbleDestruction pregunta, dado un gráfico y un conteo de guijarros para cada vértice , si hay una secuencia de movimientos de roce que eliminan todos los guijarros menos uno. Demuestre que PebbleDestruction es NP-complete.GvvG=(V;E)p(v)v

Primero, demuestro que está en NP ya que puedo verificar la solución en tiempo polinómico, rastreando el recuento de guijarros desde solo un guijarro.

A continuación, ¿cuáles son algunas ideas sobre qué problemas usar como base para una reducción del tiempo polinomial?

¿Funcionaría algo como la cubierta de vértice? ¿O una cubierta de vértice de diferentes tamaños?

Si es así, ¿cómo puede manejar el número variable de piedras en cada movimiento?

Gracias.

De: http://courses.engr.illinois.edu/cs473/sp2011/hw/disc/disc_14.pdf

TT
fuente
1
¿Es tan simple demostrar que el problema está en NP? ¿No puede el número de movimientos ser exponencial en el tamaño de entrada?
Vinicius dos Santos
@ViniciusSantos, el número de movimientos no puede ser mayor que el número de guijarros (que también es parte de la entrada).
1
Pero podemos suponer que el número de guijarros está en binario, ¿verdad? En este caso, el tamaño de la entrada es logarítmico en el número de guijarros. Todavía creo que hay un pequeño certificado para el problema, pero, por lo que entiendo, la lista de movimientos no es una.
Vinicius dos Santos
@ViniciusdosSantos, es posible que no haya notado que todo el gráfico es como entrada, por otro lado, el número de guijarros para cada vértice (p (v)) debe estar limitado por el tamaño del gráfico, de lo contrario, verificar si una secuencia de movimientos es válido o no necesita exponencial. Y creo que es correcto suponer que el número de guijarros en cada vértice es como máximo n.
Estoy de acuerdo en que si el número de guijarros en cada vértice está polinómicamente delimitado por el tamaño del gráfico, entonces es trivial en NP. Pero creo que esta suposición no es necesaria, aunque sin ella la prueba se vuelve más difícil.
Vinicius dos Santos

Respuestas:

8

Suponga que en un gráfico hay un guijarro en cada vértice, excepto un vértice con , luego el problema de pebling anterior tiene solución en tiene un circuito hamiltoniano. Es fácil comprobar si hay un circuito hamiltoniano, entonces no es una solución para pebbling en . Por otro lado, en cualquier solución al peeling, debemos comenzar desde el vértice . Supongamos que visitamos algún vértice dos veces, de modo que este es el primer vértice que visitó dos veces en mediante el algoritmo de pebbling, luego tenemos un ciclo que comienza desde y termina enGvp(v)=2G iff GGvuuGuuy finalmente porque es el primero en hacer el ciclo, entonces tenemos por lo que no podemos continuar con el algoritmo de pebbling. De hecho, si el algoritmo tiene una solución, entonces tenemos que significa que encontramos un circuito hamiltoniano que comienza en .up(u)=1u=vv


fuente