Complejidad del problema de cobertura de intervalo


17

Considere el siguiente problema Q : Se nos da un número entero , y k intervalos [ l i , r i ] con 1 l ir i2 n . También se nos dan 2 n enteros d 1 , ... , d 2 n0 . La tarea es seleccionar un número mínimo de intervalos [ l i , r i ]nortek[lyo,ryo]1lyoryo2norte2norted1,,d2n0[li,ri]tal que para cada , se seleccionan al menos d i intervalos que contienen el número entero i .i=1,,2ndii

No es difícil ver que puede resolverse en tiempo polinómico (ver más abajo).Q

Ahora considere el siguiente problema Q ligeramente modificado : La entrada del problema es la misma que antes. Sin embargo, la tarea ahora es seleccionar un número mínimo de intervalos de modo que para cada , al menos d 2 i - 1 intervalos que contengan el entero 2 i - 1 o al menos d 2 i intervalos que contengan el entero 2 i están seleccionados (con "o" nos referimos a la lógica habitual o).i=1,,nd2i12i1d2i2i

Mi pregunta: ¿Se puede resolver en tiempo polinómico?Q

Aquí hay dos formas de resolver eficientemente:Q

Un algoritmo codicioso simple: recorra los intervalos de izquierda a derecha y seleccione solo los intervalos necesarios para "satisfacer" los números . Siempre que haya una opción entre diferentes intervalos, elija uno (s) con el punto final derecho máximo.dyo

Un programa entero: para cada intervalo introduzca una variable de decisión x i{ 0 , 1 } con x i = 1 si se selecciona el intervalo. El objetivo es minimizar x 1 + + x k , sujeto a las restricciones j : i [ l j , r j ] x jd i[lyo,ryo]Xyo{0 0,1}Xyo=1X1+...+Xkj:yo[lj,rj]Xjreyo. La matriz de restricción de este programa entero tiene las propiedades consecutivas y, por lo tanto, la relajación de la programación lineal de este programa tiene una solución óptima entera.

Gracias por cualquier pista, y también por referencias!

Respuestas:


-1

Cada instancia de Q puede transformarse en una instancia del problema de cobertura de conjunto múltiple, donde las ubicaciones son los intervalos , que cubren una secuencia consecutiva de puntos de demanda (= enteros d i ).[lyo,ryo]reyo


3
¿Puede mejorar la respuesta agregando la definición de Problema de cobertura de conjunto múltiple (MSCP) y más detalles sobre la reducción? En particular, una instancia de MSCP (al menos la "versión" que conozco) es un gráfico bipartito y solo V 1 es una unión de conjuntos disjuntos; ¿De qué manera la reducción asigna los bordes de V 1 a V 2 ? sol=(V1,V2,mi)V1V1V2
Marzio De Biasi
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.