Aumentare la capacità di massimizzare il taglio minimo


9

Considera un grafico con tutti i bordi con capacità unitaria. Si può trovare il taglio minimo in tempo polinomiale.

Supponiamo che mi sia permesso di aumentare la capacità di qualsiasi bordo all'infinito (equivalente a unire i nodi su entrambi i lati del bordo). Qual è il modo ottimale di selezionare un set ottimale di k spigoli (la cui capacità verrà aumentata all'infinito) per massimizzare il taglio minimo?kk


Non sono sicuro di aver capito la tua domanda: con "Qual è il modo ottimale di selezionare k tali bordi per massimizzare il taglio minimo?", Intendi il taglio minimo di 1) un grafico con capacità unitarie o 2) un grafico con capacità generali ?
Jeremy,

Risposte:


3

Teorema. Il problema nel post è NP-difficile.

Per "il problema nel post", intendo, dato un grafico e un intero k , scegliere k bordi per aumentare le capacità in modo da massimizzare il taglio minimo nel grafico modificato.G=(V,E)kk

L'idea è di ridurre da Max Cut. All'incirca, un dato grafico ha dimensioni massime di taglio s se e solo se è possibile aumentare le capacità di n - 2 spigoli in modo che il grafico risultante abbia dimensioni minime di taglio s . L'idea è che n - 2 bordi sono appena sufficienti per forzare il grafico risultante ad avere un solo taglio a capacità finita, e che può essere qualsiasi taglio tu scelga.G=(V,E)sn2sn2

Questa idea non funziona del tutto perché per ottenere un determinato taglio , è necessario collegare i sottografi indotti da C e V C ciascuno. Ma puoi aggirare questo problema con un gadget appropriato.(C,VC)CVC

Prova. Dato un grafico collegato , definire un taglio collegato come un taglio ( C , V C ) in modo tale che i sottografi indotti da C e da V C siano collegati ciascuno. Definire Max Connected Cut come problema nel trovare un taglio connesso (in un dato grafico collegato) massimizzando il numero di spigoli che attraversano il taglio.G=(V,E)(C,VC)CVC

Mostriamo che Max Connected Cut si riduce al problema nel post. Quindi mostriamo che Max Cut non ponderato si riduce a Max Connected Cut.

Lemma 1. Max Connected Cut riduce in poli tempo il problema definito nel post.

Prova. Data un'istanza Max-Connected-Cut , let k = | V | - 2 . Per dimostrare il lemma, dimostriamo quanto segue:G=(V,E)k=|V|2

Rivendicazione 1: Per qualsiasi , esiste un taglio collegato ( C , V C ) in G di capacità almeno s , IFF è possibile aumentare le capacità del bordo k in G all'infinito in modo che il grafico risultante abbia un taglio minimo capacità almeno s .s>0(C,VC)GskGs

SOLO SE: Supponiamo che ci sia un taglio collegato di capacità almeno s . Siano T 1 e T 2 sottostrutture che si estendono, rispettivamente, C e V C , quindi aumentano le capacità dei bordi in T 1 e T 2 . (Notare che | T 1 | + | T 2 | = | C | - 1 + | V C(C,VC)sT1T2CVCT1T2 .) L'unico taglio di capacità finita rimanente nel grafico è quindi ( C , V C ) , di capacità almeno s , quindi il grafico risultante ha una capacità di taglio minima almeno s .|T1|+|T2|=|C|1+|VC|1=|V|2=k(C,VC)ss

kGskk=n2CVC(C,VC)s

Ciò dimostra l'affermazione (e il lemma). (QED)

Per completezza, mostriamo che Max Connected Cut è NP-completo, per riduzione da Max Cut non ponderato.

Lemma 2. Il taglio massimo non ponderato si riduce in termini di tempo poli al taglio massimo collegato .

N1P(N)ABNABP(N)ABN2N2N/100

G=(V,E)G=(V,E)n=|V|N=100(n2+2n)GP(N)ABvVAB

s0(C,VC)GsGs+N2+n

(C,VC)Gs(AC,BVC)GGsCVCN2ABn2nVAB

Gs+N2+nABP(N)N2N/100P(N)N2N/100+|E|+2|V|N2N/100+n2+2n=N2CVAN2ABnVABsCVC

Ciò dimostra l'affermazione e Lemma 2. (QED)

Con Lemmas 1 e 2, poiché Max Cut non ponderato è NP-difficile, anche il problema nel post è NP-difficile.


ststAB
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.