Tăiere maximă

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
O tăiere maximă

Într-un grafic , o tăiere maximă este o tăietură de cel puțin aceeași dimensiune ca toate celelalte tăieturi. Problema găsirii unei tăieturi maxime într-un grafic este cunoscută sub numele de problema tăierii maxime .

Problema poate fi afirmată pur și simplu după cum urmează. Vrem să obținem un subset S al setului de vârfuri astfel încât numărul de muchii dintre S și mulțimea complementară să aibă cea mai mare cardinalitate posibilă.

Există o versiune mai avansată a problemei, care se referă la grafice ponderate . În această versiune, fiecare arc este asociat cu un număr real, numit „greutate”, iar obiectivul problemei este de a maximiza nu numărul de arce, ci greutatea totală a arcelor între S și complementul său. Problema max-cut pe graficele ponderate este de obicei limitată la greutăți non-negative, deoarece greutățile negative pot provoca o problemă de altă natură.

Complexitatea computațională

Următoarea problemă de decizie legată de reducerea maximă a fost studiată pe larg în domeniul informaticii teoretice :

Dat fiind un grafic G și un număr întreg k , determinați dacă există o tăietură de dimensiune cel puțin k în G.

Se știe că problema este NP-completă . Verificarea faptului că problema este cel mult NP este simplă: fiecare soluție poate fi verificată într-un timp scurt, adică timpul necesar pentru a calcula cardinalitatea setului de tăieturi specifice și a efectua comparația cu k . În schimb, completitudinea NP poate fi demonstrată, de exemplu, prin reducerea din MAX-2-SAT, cunoscută problemă NP-difficile . [1] Versiunea ponderată a acestei probleme de decizie a fost una dintre cele 21 de probleme NP-complete ale lui Karp ; [2] Karp a arătat completitudinea NP prin reducerea problemei partiției .

Varianta canonică, prezentată ca o problemă de optimizare , este definită ca:

Având în vedere un grafic G , găsiți o tăiere maximă.

Algoritmi polinomiali

Problema max-cut este NP-dificilă, deci nu se cunoaște nicio problemă care să o rezolve în timp polinomial pe un grafic generic.

Cu toate acestea, într-un grafic plan , problema este duală cu cea a poștașului chinez (problema găsirii celei mai scurte căi care vizitează fiecare arc al graficului cel puțin o dată), în sensul că arcurile care nu aparțin tăieturii -setul maxim al unui grafic G sunt corespondenții marginilor dublate în vizita optimă a graficului dual al lui G. Această corespondență permite rezolvarea problemei forfecării maxime pe grafele plane în timp polinomial. [3]

Algoritmi de aproximare

Problema max-cut este APX-hard, [4] adică nu există o schemă de aproximare timp polinomial pentru aceasta, cu excepția cazului în care P = NP . Astfel, fiecare algoritm de aproximare atinge un raport de aproximare strict mai mic decât unul.

Există un algoritm simplu randomizat cu aproximativ 0,5: pentru fiecare vârf întoarceți o monedă pentru a decide cărei partiții să o atribuiți. [5] [6] Valoarea așteptată a arcurilor aparținând setului de tăieturi este . Acest algoritm poate fi „derandomizat” cu metoda probabilității condiționale, devenind un algoritm determinist simplu care aproximează în timp polinomial soluția optimă a problemei cu indicele de aproximare 0,5. [7] [8]

Subgraf bipartit maxim

O tăietură este un grafic bipartit . Problema max-cut este echivalentă cu găsirea subgrafului bipartit cu mai multe arce.

Lasa-i sa fie un grafic și un subgraf bipartit al lui G. Apoi, există o partiție de V astfel încât fiecare arc din X are o extremă în S și cealaltă în T. Cu alte cuvinte, există o tăietură în H astfel încât setul de tăieturi să conțină X. Deci, există o tăietură în G astfel încât setul de tăieturi să fie un superset de X.

Dimpotrivă, sunt un grafic și X într-un set de margini. Atunci este un subgraf bipartit al lui G.

În rezumat, având în vedere un subgraf bipartit cu k arce, există o tăietură cu un set de tăieturi de cel puțin k arce și invers. În consecință, problema găsirii unui subgraf bipartit maxim este în esență aceeași problemă a găsirii unei limite maxime. [9] Aceleași concluzii se aplică problemei în cauză din punctul de vedere al complexității de calcul.

Note

Bibliografie

linkuri externe

Matematica Portalul de matematică : accesați intrările Wikipedia care se ocupă de matematică