Mientras estudiaba un problema en la teoría algorítmica de juegos, me interesó la complejidad de la siguiente pregunta de optimización:
Problema
Dado:
- conjunto de tierra dado por ,n
- clasificaciones dadas como órdenes totales donde ( ),S i ⊆ U 1 ≤ i ≤ m
- vector de peso para dado por .w ∈ R n
Objetivo: encontrar un subconjunto maximizando la siguiente suma: donde es el elemento mejor clasificado en según .r ( L ) = ∑ i ∈ [ m ] , S i ∩ L ≠ ∅ w ( t i ( L ) ) t i ( L ) L ∩ S i σ i
Sospecho que el problema es -hard. De hecho, el problema parece ser difícil incluso cuando todos los son de tamaño . Sin embargo, no he podido probar esto.S i 2
Lo que yo sé
Es fácil ver que las siguientes restricciones facilitan el problema:
- Todos los pesos son uniformes: seleccionar todos los elementos es claramente óptimo.
- todas las clasificaciones son clasificaciones completas sobre : la mejor solución se obtiene tomando el elemento con el peso máximo.
- los pesos son solo binarios ( ), luego seleccionar todos los elementos de pesaje 1 es óptimo.
Sin embargo, no he podido encontrar un algoritmo de tiempo polinómico para el caso general (por ejemplo, usando LP). Por otro lado, probar que el problema es -duro no parece fácil. La estructura de las instancias del problema no permite la codificación fácil de otros problemas. (Tenga en cuenta que la dureza del problema vendrá de usar la misma L para todas las órdenes parciales, sin embargo, usar el mismo vector de peso para todas ellas hace que la dureza de prueba no sea sencilla). He intentado sin éxito reducir algunos problemas duros de N P como Subset-Sum, NAND-Circuit-SAT, etc. a la versión de decisión de este problema (¿hay un subconjunto tal que r ( L ) ≥ k )?
Una IP coincidente se puede construir silenciosamente fácilmente para una instancia determinada del problema, pero no veo ningún parecido suficiente con ningún problema que conozca.
Pregunta
¿Conoces la complejidad de este problema? ¿Hay alguna referencia que estudie la complejidad de problemas de optimización similares? ¿Cómo probarías que este problema de optimización es -duro? (Si es realmente difícil).
Respuestas:
Bueno, aquí hay una posible solución:
La reducción será de 3SAT.
Crea dos conjuntos de consumidores:
fuente