Un problema de corte múltiple

12

Estoy buscando un nombre o alguna referencia a este problema.

Dado un gráfico ponderado G=(V,E,w) encuentre una partición de los vértices en hasta n=|V|establece S1,,Sn para maximizar el valor de los bordes de corte:

c(S1,,Sn)=ij((u,v)E:uSi,vSjw(u,v))
Tenga en cuenta que algunos de los conjuntosSipueden estar vacíos. Entonces, el problema es esencialmente max k-cut, excepto quekno es parte de la entrada: el algoritmo puede elegir cualquierkquedeseepara maximizar el valor de los bordes de corte. Obviamente, el problema es trivial si los pesos de los bordes no son negativos: simplemente coloque cada vértice solo en su propio conjunto y corte todos los bordes. Pero, para hacer las cosas interesantes, se permiten bordes de peso negativos.

¿Es este un problema estudiado? ¡Se agradecerán referencias a resultados algorítmicos o de dureza!

Aaron Roth
fuente
2
+11G±1

Respuestas:

11

El problema es una variante del grupo de correlación (CC) Bansal, N., Blum, A. y Chawla, S. (2004). "Agrupación de correlación". Machine Learning Journal (Número especial sobre avances teóricos en el agrupamiento de datos, págs. 86-113, doi: 10.1023 / B: MACH.0000033116.57574.95.

G(v,w)a(v,w)b(v,w)PcP(v,w)a(v,w)vwPb(v,w)PVv,wc(v,w)

a(v,w)=0b(v,w)O(logn)

Los PTAS descritos se basan en la técnica de programación polinómica uniforme: en el caso más general, no creo que su problema satisfaga los requisitos de la técnica.

Gianluca Della Vedova
fuente
18

No conozco ninguna referencia, pero puedo mostrar que es NP-complete, a través de una reducción del color del gráfico.

Dado un gráfico G y un número k de colores con los que colorear G, haga un nuevo gráfico G 'que consista en G junto con k nuevos vértices, de modo que cada nuevo vértice esté conectado a cada vértice en G. Asigne peso + kn a cada borde de G, peso + kn a cada borde que conecta dos de los k nuevos vértices, y peso -1 a cada uno de los bordes que conectan los k nuevos vértices a G.

Luego, si G puede ser de color k, la coloración (junto con una partición que asigna cada uno de los nuevos vértices a una de las clases de color) alcanza el peso total kn (m + k (k-1) / 2) - (k -1) n.

En la otra dirección, si tiene una partición que alcanza este peso total, entonces debe cortar todos los bordes de G y todos los bordes entre pares de nuevos vértices. Cortar todos los bordes de G define una coloración de G, y cortar bordes entre pares de nuevos vértices implica que cada vértice de G puede ser adyacente como máximo a uno de los k nuevos vértices. Por lo tanto, para obtener el término óptimo - (k-1) n en el peso, cada vértice de G debe ser adyacente a exactamente uno de los nuevos vértices, y por lo tanto solo puede haber k clases de color en el color definido por el dividir.

Es decir, las particiones con el límite de peso dado están en correspondencia 1-1 con los colores k de G, por lo que esto define una reducción de la coloración a su problema de partición.

David Eppstein
fuente
11

Permítanme complementar la agradable prueba de integridad de NP de David agregando una referencia al caso especial solicitado por Jukka en un comentario sobre la pregunta. Si el gráfico es el gráfico completo y los pesos de los bordes están restringidos a ± 1, el problema es equivalente al problema NP-completo conocido como Edición de clúster.

La edición de clústeres es el siguiente problema presentado por Shamir, Sharan y Tsur [SST04]. Aquí, un gráfico de clúster es un gráfico que es una unión de camarillas disjuntas de vértices y una edición es la adición o eliminación de un borde.


Instancia de edición de clúster : un gráfico G = ( V , E ) y un entero k ∈ℕ.
Pregunta : ¿Es posible convertir G en un gráfico de clúster con a lo sumo k ediciones?

La edición de clúster es NP-completa [SST04].

Para ver la Edición de clúster es equivalente al caso especial del problema actual mencionado anteriormente, dejemos que G = ( V , E ) sea un gráfico. Deje n = | V | y considere G como un subgrafo del gráfico completo K n . En K n , dar el peso -1 a los bordes en G y el peso 1 a los bordes que no están en G . Luego, G puede convertirse en un gráfico de clúster mediante, a lo sumo, k ediciones si y solo si existe una partición ( S 1 , ..., S n ) tal que c ( S 1 , ...,(n2)

[SST04] Ron Shamir, Roded Sharan y Dekel Tsur. Problemas de modificación del gráfico de clúster. Matemáticas aplicadas discretas , 144 (1–2): 173–182, noviembre de 2004. http://dx.doi.org/10.1016/j.dam.2004.01.007

Tsuyoshi Ito
fuente