Hamiltonicità dei grafici k-regolari


24

È noto che è NP completo per verificare se esiste un ciclo hamiltoniano in un grafico 3-regolare, anche se è planare (Garey, Johnson e Tarjan, SIAM J. Comput. 1976) o bipartito (Akiyama, Nishizeki, e Saito, J. Inform. Proc. 1980) o per verificare se esiste un ciclo hamiltoniano in un grafico a 4 regolari, anche quando è il grafico formato da una disposizione delle curve della Giordania (Iwamoto e Toussaint, IPL 1994).

Per quale altro k è noto per essere NP-completo per testare l'hamiltonicità dei grafici k-regolari?

Il caso particolare che mi interessa sono i grafici a 6 intervalli, con la condizione aggiuntiva che il grafico abbia un numero dispari di vertici. Se si potesse dimostrare che questo caso è NP-completo (o polinomiale), avrebbe un impatto in un problema di disegno grafico descritto in http://arxiv.org/abs/1009.0579 . La condizione del "numero dispari di vertici" è perché ciò che voglio veramente sapere è, per i grafici a 6 regolari, se il grafico contiene un ciclo Hamiltoniano o un fattore bipartito 2; ma avere un numero dispari di vertici elimina la possibilità di un fattore bipartito a 2 lasciando solo la possibilità di un ciclo hamiltoniano.

Risposte:


15

Il primo passo supponiamo che il grafico abbia un numero pari di vertici. Nella seconda fase, estenderemo la costruzione, in modo che se k è pari, mostreremo come trasformare il grafico in un numero dispari di vertici.

La soluzione è un perfezionamento dell'idea suggerita nell'altra risposta.

Prima parte

Reclamo: dato un grafico -regolare G con numero pari di vertici, si può calcolare un grafico H che è ( k + 1 ) -regolare, e H è hamiltoniano se G è hamiltoniano.kGH(k+1)HG

kGG1G2vV(G)v1v2k+2vvvv1vv2v. Sia denotare questo componente per .C(v)v

Ripeti l'operazione per tutti i vertici di e lascia che indichi il grafico risultante.GH

Chiaramente, il grafico è regolare. Sosteniamo che è hamiltoniano se e solo se è hamiltoniano.Hk+1HG

Una direzione è chiara. Dato un ciclo Hambiltonian in , possiamo tradurlo in un ciclo in . Infatti, ogni volta che il ciclo visita un vertice , lo interpretiamo come spostandosi da a (o viceversa) mentre visitiamo tutti i vertici in . Come tale, questo si traduce in un ciclo hamiltoniano in . (Nota che è qui che stiamo usando il fatto che il numero originale di vertici è pari - se il ciclo è dispari, questo si interrompe.)GHvv1v2C(v)H

Per quanto riguarda l'altra direzione, si consideri un ciclo hamiltoniano in . Deve essere che sia visitato da una parte del ciclo che inizia in , visita tutti i vertici di e parte da (o dall'opzione simmetrica). In effetti, il ciclo hamiltoniano non può entrare e uscire dalla stessa . Come tale, un ciclo hamiltoniano in come interpretazione naturale come un ciclo hamiltoniano in . QED.HC(v) C ( v ) v 2 v i H Gv1C(v)v2viHG

Seconda parte

Come indicato di seguito da Tsuyoshi ogni grafico a 3 regolari ha un numero pari di vertici. Come tale, il problema è difficile per un grafico a regioni con un numero pari di vertici. Vale a dire, la riduzione di cui sopra mostra che il problema è difficile per qualsiasi grafico regolare, sebbene il grafico risultante abbia un numero pari di vertici.k3k

Osserviamo che ciò implica che il seguente problema è NP-difficile.

Problema A: Decidere se un grafico k-regolare con un numero pari di vertici ha un ciclo hamiltoniano che attraversa un bordo specifico .esole

Tuttavia, se anche a viene fornita un'istanza , possiamo ridurla al problema desiderato. In effetti, sostituiamo il bordo con una cricca di vertici, come prima di eliminare un bordo nella cricca e collegare i suoi due punti finali ai punti finali di( G , e ) e k + 1 eK(sol,e)eK+1e e rimuovere dal grafico. Chiaramente, per il nuovo grafico H :eH

  • è k -regolare.HK
  • è hamiltoniano se G è hamiltoniano con un ciclo usando e .Hsole
  • ha | V ( G ) | + k + 1 vertici => H ha un numero dispari di vertici.H|V(sol)|+K+1H

Si noti che un grafico -regolare, per k dispari, deve avere un numero pari di vertici (basta contare i bordi), pertanto non ci sono grafici k -regolari con numero dispari di vertici, con k che è dispari.KKKK


Risultato

È NP-difficile decidere se un grafico regolare ha un ciclo hamiltoniano per k 3 . Il problema rimane NP-Hard anche se il grafico ha un numero dispari di vertici.KK3


Certo, è sempre possibile che abbia fatto uno stupido errore ...


Esercizio

Se vogliamo passare da un grafico -regolare a un grafico che è (diciamo) 2 k -regolare, allora il grafico risultante dall'applicazione ripetuta della riduzione sopra risulta ripetutamente in un grafico con una dimensione che dipende esponenzialmente da k . Mostra che, dato un grafico k -regolare G , e i > 2 , si può costruire un grafico H che è ( k + i ) -regolare e la sua dimensione è polinomiale in k , i e n , dove n è il numero di vertici di G . Inoltre,K2KKKsolio>2H(K+io)K,ionnsol è hamiltoniano se e solo se H è hamiltoniano.solH

(Sto pubblicando questo come un esercizio, non una domanda, poiché so come risolverlo.)


1
Grande! Penso che questa risposta in effetti risolva la prima domanda "Per quale altro k è noto per essere NP-completo per testare l'hamiltonicità dei grafici k-regolari?" Perché i grafici a 3 regolari hanno un numero pari di vertici e il grafico H fatto da questa trasformazione ha anche un numero pari di vertici se G ha un numero pari di vertici.
Tsuyoshi Ito,

Ma se non sbaglio, lo stesso controesempio alla dimostrazione di Robin è un controesempio a questa dimostrazione. Lascia che G sia il percorso su 2 vertici. Quindi la procedura qui crea H, che è un ciclo 9, che è hamiltoniano.
Emil,

Come ho detto per quanto riguarda la risposta di Robin, il problema è che quando si tenta di "proiettare" il ciclo di Hamilton da H a G, il ciclo potrebbe finire per non essere un ciclo, perché ripercorre dove è stato.
Emil,

@Emil: penso che il percorso su 2 vertici sia davvero un caso speciale perché ha un circuito Hamiltoniano se ci è permesso usare lo stesso bordo più di una volta.
Tsuyoshi Ito,

1
@Sariel Har-Peled: In ogni grafico, il numero di vertici dispari (cioè vertici di grado dispari) è pari. Pertanto, tutti i grafici a 3 regolari hanno un numero pari di vertici. Avevo scritto un argomento inutilmente complicato senza rendermene conto nella prima versione del commento (che ho modificato in meno di 5 minuti), quindi mi scusi se leggete il mio vecchio commento e ne siete confusi.
Tsuyoshi Ito,

1

EDIT: questa prova è sbagliata, come sottolineato nei commenti. (Devo eliminare il post?)

È intuitivamente come se Hamiltonicity fosse NP-difficile per i grafici k-regolari, quindi dovrebbe anche essere NP-difficile per i grafici (k + 1). Ecco una riduzione sul retro, che mi sembra soddisfacente, ma ovviamente potrebbe esserci un errore.

Lascia che G sia un grafico k-regolare. Sia G 'un prodotto cartesiano grafico di G e un bordo. In altre parole, G 'è il grafico che ha due copie di G e ogni vertice è collegato alla sua copia. G 'è ora (k + 1) regolare, poiché ogni vertice ha 1 margine extra.

Affermazione: G ha un ciclo hamiltoniano se e solo se G 'ha un ciclo hamiltoniano.

Prova: se G ha un ciclo hamiltoniano, è facile vedere che anche G 'ne ha uno. Dire (u, v) è un vantaggio nel ciclo hamiltoniano. Attraversa il ciclo da u a v senza usare quel bordo, e ora invece di usare il bordo, vai a v 'da v, dove v' è il vertice corrispondente a v nella copia di G. Ora attraversa il ciclo in ordine inverso in questo grafico, che ci riporterà a te '. Ora vai da te a completare il ciclo.

Se G 'ha un ciclo hamiltoniano a partire dal vertice u, considera la stessa sequenza di attraversamenti su G. Ogni volta che viene effettuata una mossa verso un vertice adiacente nello stesso grafico, facciamo la stessa mossa in G. Ogni volta che viene effettuata una mossa al vertice corrispondente nell'altro grafico, non facciamo nulla. Poiché ogni mossa è valida sul grafico G e il ciclo termina sul vertice u, questo è un ciclo hamiltoniano.


1
Non riesco a vedere come funziona il secondo paragrafo della dimostrazione. Se lasciamo cadere la condizione che G sia k-regolare, lasciare che G sia un percorso fornisce un controesempio a un'affermazione secondo cui se G ′ è hamiltoniano, allora G è anche hamiltoniano.
Tsuyoshi Ito,

1
Sono un po 'preoccupato per l'ultimo paragrafo qui. Quando il ciclo di Hamilton per G 'viene "proiettato" (se questa è la parola giusta!) Su G, potremmo avere una situazione in cui il ciclo ripercorre i suoi passi.
Emil,

@Tsuyoshi: hai un contro-esempio: basta prendere un percorso regolare - il percorso con due vertici.
Emil,

@Tsuyoshi: hai ragione. La prova è sbagliata Devo eliminare la risposta? Abbiamo una politica in merito?
Robin Kothari,

@Robin, penso che il tuo post dovrebbe essere lasciato ora che ha generato qualche discussione. Ciò dimostra certamente che questo è un problema imbarazzante.
Emil,
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.