Un problema multi-taglio


12

Sto cercando un nome o qualsiasi riferimento a questo problema.

Dato un grafico ponderato G=(V,E,w) trova una partizione dei vertici fino a n=|V|imposta S1,,Sn modo da massimizzare il valore dei bordi tagliati:

c(S1,,Sn)=ij((u,v)E:uSi,vSjw(u,v))
Nota che alcuni dei setSipossono essere vuoti. Quindi il problema è essenzialmente max k-cut, tranne cheknon fa parte dell'input: l'algoritmo può scegliere qualsiasikche gli piace in modo da massimizzare il valore dei bordi di taglio. Ovviamente, il problema è banale se i pesi dei bordi non sono negativi: basta posizionare ogni vertice da solo nel suo set e tagliare tutti i bordi. Ma, per rendere le cose interessanti, sono ammessi bordi con peso negativo.

È un problema studiato? I riferimenti ai risultati algoritmici o di durezza sarebbero apprezzati!


2
Per avere più intuizione sul problema, cosa sai di casi speciali semplici? Ad esempio, cosa succede se i pesi sono solo o - 1 ? Cosa succede se G è un grafico completo e i pesi sono ± 1 ? +11G±1
Jukka Suomela,

Risposte:


11

Il problema è una variante di Correlation Clustering (CC) Bansal, N., Blum, A. e Chawla, S. (2004). "Clustering di correlazione". Journal di Machine Learning (numero speciale sui progressi teorici nel clustering dei dati, pagg. 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)vwP altrimenti. Quindi il valore di una partizione P di V èv , w c ( v , w ) .b(v,w)PVv,wc(v,w)

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

I PTAS descritti si basano sulla regolare tecnica di programmazione polinomiale: nel caso più generale non credo che il tuo problema soddisfi i requisiti della tecnica.


18

Non conosco alcun riferimento, ma posso dimostrare che è NP-completo, tramite una riduzione dalla colorazione del grafico.

Dato un grafico G e un numero k di colori con cui colorare G, crea un nuovo grafico G 'che consiste di G insieme a k nuovi vertici, in modo tale che ogni nuovo vertice sia collegato a ogni vertice in G. Assegna peso + kn a ciascun bordo di G, peso + kn a ciascun bordo che collega due dei k nuovi vertici e peso -1 a ciascuno dei bordi che collegano i k nuovi vertici a G.

Quindi, se G può essere colorato di k, la colorazione (insieme a una partizione che assegna ciascuno dei nuovi vertici a una delle classi di colore) raggiunge il peso totale kn (m + k (k-1) / 2) - (k -1) n.

Nella direzione opposta, se si dispone di una partizione che raggiunge questo peso totale, è necessario tagliare tutti i bordi di G e tutti i bordi tra coppie di nuovi vertici. Tagliare tutti i bordi di G definisce una colorazione di G, e tagliare i bordi tra coppie di nuovi vertici implica che ogni vertice di G può essere adiacente al massimo a uno dei k nuovi vertici. Pertanto, al fine di ottenere il termine ottimale - (k-1) n nel peso, ciascun vertice di G deve essere adiacente esattamente a uno dei nuovi vertici, e pertanto possono esserci solo k classi di colori nella colorazione definita dal partizione.

Cioè, le partizioni con il dato peso associato sono in corrispondenza dell'1-1 con i coloranti k di G, quindi questo definisce una riduzione dalla colorazione al problema della partizione.


11

Consentitemi di integrare la bella prova di completezza NP di David aggiungendo un riferimento al caso speciale chiesto da Jukka in un commento sulla domanda. Se il grafico è il grafico completo e i pesi dei bordi sono limitati a ± 1, il problema è equivalente al problema NP completo noto come Modifica cluster.

Il Cluster Editing è il seguente problema introdotto da Shamir, Sharan e Tsur [SST04]. Qui, un grafico a grappolo è un grafico che è un'unione di cricche disgiunte da vertici e una modifica è l'aggiunta o la rimozione di un bordo.


Istanza di modifica del cluster : un grafico G = ( V , E ) e un numero intero k ∈ℕ.
Domanda : È possibile trasformare G in un grafico a grappolo al massimo con k modifiche?

Il Cluster Editing è NP-completo [SST04].

Per vedere il Cluster Editing è equivalente al summenzionato caso speciale del problema attuale, sia G = ( V , E ) un grafico. Sia n = | V | e considera G come un sottografo del grafico completo K n . In K n , dare il peso -1 ai bordi in G e il peso +1 ai bordi non in G . Quindi G può essere trasformato in un grappolo al massimo da k modifiche se e solo se esiste una partizione ( S 1 , ..., S n ) tale che c ( S 1 , ...,(n2)

[SST04] Ron Shamir, Roded Sharan e Dekel Tsur. Problemi di modifica del grafico del cluster. Discrete Applied Mathematics , 144 (1–2): 173–182, novembre 2004. http://dx.doi.org/10.1016/j.dam.2004.01.007

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.