Algoritmi di spazio log efficiente


17

È facile intuire che qualsiasi problema decidibile nello spazio logistico deterministico ( ) viene eseguito al massimo nel tempo polinomiale ( P ). Molti algoritmi di spazio di log noti (ad esempio: connettività st non indirizzata, isomorfismo del grafico planare) vengono eseguiti in O ( n k ) dove k è follemente grande.LPO(nk)k

  • Sto cercando esempi di problemi naturali che sono noti per essere risolvibili simultaneamente nello spazio logistico deterministico e nel tempo dove k 10 . Non c'è nulla di speciale in 10. Osservando gli algoritmi di spazio di log attualmente noti, penso che k 10 sia abbastanza interessante.O(nk)k10k10
  • Aleliunas et al. ha mostrato che la connettività st non indirizzata è in (spazio di log randomizzato). Il tempo di esecuzione del loro algoritmo è O ( n 3 ) . Ci sono problemi naturali che possono essere risolti simultaneamente in R L e tempo lineare (o) vicino al tempo lineare, ovvero O ( n log i n ) tempo?RLO(n3)RLO(nlogin)

Modifica: per rendere le cose più interessanti esaminiamo i problemi che sono almeno -hard.NC1


Esiste qualche analisi temporale per la versione dello spazio dei registri del teorema di Courcelle? eccc.uni-trier.de/report/2010/062
Hsien-Chih Chang 張顯 之

Risposte:


10

Immagino che la raggiungibilità del DAG planare single-sink single-source (SSPD) abbia un algoritmo di spazio di log con un tempo di esecuzione modesto ( ?). Non sono così sicuro dell'algoritmo SMPD (Planar DAG Reachability) a sorgente multiplo a sorgente singola.O(n2)

Rif: Eric Allender, David A. Mix Barrington, Tanmoy Chakraborty, Samir Datta, Sambuddha Roy: problemi di raggiungibilità del grafico planare e della griglia. Teoria comput. Syst. 45 (4): 675-723 (2009)

Inoltre, un nuovo algoritmo di spazio di log per il test di planarità e l'incorporamento viene eseguito in un tempo leggermente polinomiale (modulo raggiungibile non indirizzato, ovviamente)

Rif: Samir Datta, Gautam Prakriya: Planarity Testing Revisited CoRR abs / 1101.2637: (2011)

Infine, ecco un semplice problema del giocattolo che ha un algo dello spazio di log con un tempo di esecuzione modesto (modulo non raggiungibile), vale a dire. Isomorfismo esterno piano.


1
L'algoritmo SSPD è dopo aver trovato l'incorporamento planare e utilizza il fatto che ci sono percorsi "più a sinistra" e "più a destra" percorribili nel tempo lineare e nello spazio di registro da qualsiasi vertice al lavandino o l'origine di qualsiasi vertice (chiama questi percorsi "esterni"). Per trovare un percorso da u a v , controlla se i vertici sui percorsi esterni da u al lavandino si trovano lungo i percorsi esterni dalla sorgente a v.O(n2)uv
Derrick Stolee,

9

Questa risposta è più un problema di giocattoli che un vero problema di ricerca.

Il mio tipico esempio di algoritmo spazio-log da dare agli amici del programmatore è il seguente puzzle:

n

O(logn)

  • Fai avanzare il primo puntatore nell'elenco di un passo.
  • Fai avanzare il secondo puntatore nell'elenco di due passaggi.
  • Se uno dei due puntatori trova la fine, restituisce false.
  • Se i nodi puntano allo stesso nodo, restituiscono true.
  • Altrimenti, ripeti.

nn


3
NC1

3

O(n)

NC1


2
Poiché si sta modificando il grafico, questo non è un algoritmo di spazio per i registri, in cui il nastro di input deve essere di sola lettura. Questo è un algoritmo interessante da solo.
Derrick Stolee,
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.