Rapporto aureo o Pi nel tempo di esecuzione


21

Esistono molti punti in cui vengono visualizzati i numeri e . Sono curioso di conoscere gli algoritmi il cui tempo di esecuzione contiene il rapporto aureo o nell'esponente.( 1 + ππ(1+5)/2π


4
C'è qualche motivo computazionale particolare per sospettare che potrebbe? E senza sapere da dove viene, pensi che ci sia qualche intuizione particolare da ottenere se lo fa?
Niel de Beaudrap,

13
Il rapporto aureo emerge dall'analisi della complessità di programmi simili nella struttura ricorsiva alla ricorsione coinvolta nei numeri di Fibonacci : . Fn+2=Fn+1+Fn
Martin Berger,

11
Il Fortnow e Melkebeek tempo / spazio inferiore legato per SAT solvibilità conteneva il rapporto aureo ( nφ-ε tempo e no(1) spazio); ma l'esponente è stato migliorato in seguito da Ryan Williams.
Marzio De Biasi,

2
@MarzioDeBiasi Penso che il tuo commento sia una buona risposta, anche se il risultato è stato migliorato. La cosa interessante è che esiste un'analisi che fornisce il rapporto aureo dell'esponente
Sasho Nikolov,

1
@NieldeBeaudrap Spero di vedere qualche modello tra gli esempi. Ad esempio, l'esponente e si presenta in molti punti in algoritmi randomizzati. Non mi sorprende dal fatto che so che il tipo di attività di palla e cestini porta a risposte che coinvolgono e. Mi chiedevo se si potesse dire qualcosa del genere su algoritmi che hanno un rapporto aureo nei tempi di esecuzione.
Plummer,

Risposte:


22

È la base piuttosto che l'esponente, ma c'è un tempo FPT O(φKn2) legato

" Un efficiente algoritmo rintracciabile a parametro fisso per minimizzazione dell'attraversamento su un lato ", Vida Dujmovic, Sue Whitesides, Algorithmica 40: 15–31, 2004.

Inoltre, è un limite inferiore anziché superiore, ma:

" Un inferiore nel tempo per simulare una coda o due negozi pushdown da un nastron1.618 ", Paul MB Vitányi, Inf. Proc. Lett. 21: 147–152, 1985.

Infine, quello che stavo cercando di trovare quando mi sono imbattuto in quegli altri due: l'albero del panino al prosciutto, una struttura di dati ormai obsoleta nella geometria computazionale per le query a intervallo triangolare, ha il tempo di query . Quindi il rapporto aureo è correttamente nell'esponente, ma con un registro piuttosto che come se stesso. La struttura dei dati è una partizione gerarchica del piano in celle convesse, con la struttura complessiva di un albero binario, in cui ogni cellula e suo fratello nell'albero sono partizionati con un taglio a sandwich di prosciutto. Il tempo di query è determinato dalla ricorrenza Q ( n ) = Q (O(nlog2φ)O(n0,695), che ha la soluzione sopra. È descritto (con un nome più noioso) daQ(n)=Q(n2)+Q(n4)+O(logn)

" Ricerca della gamma halfplanar nello spazio lineare e tempo di interrogazione O(n0,695) ", Herbert Edelsbrunner, Emo Welzl, Inf. Proc. Lett. 23: 289–293, 1986.


1
Non sono sicuro che mi sentirei a mio agio nel dire che ha φ nell'esponente. nlog2φ=φlog2nφ
Emil Jeřábek sostiene Monica l'

18

(dal mio commento sopra)

Il tempo / spazio di Fortnow e Melkebeek con limite inferiore per solvibilità SAT ( tempo e n o ( 1 ) spazio) contenevano il rapporto aureo nell'esponente; ma è stato migliorato in seguito da Ryan Williams .nφ-εno(1)


5
Mentre Ryan Williams ha rovinato il tuo esempio di Fortnow e Melkebeek, ne ha fornito anche un altro nello stesso campo: in cs.cmu.edu/~ryanw/automated-lbs.pdf , mostra che non ci sono prove di alternanza di . coNTioME[n]NTioMESPUNCE[nφ+o(1),no(1)]
Emil Jeřábek sostiene Monica


10

Un altro esempio di nella base è un algoritmo di Andreas Björklund e Thore Husfeldt per calcolare la parità del numero di cicli Hamiltoniani diretti, che corre nel tempo O ( φ n ) .φO(φn)

http://arxiv.org/abs/1301.7250


9

Anche nella base: l'algoritmo di cancellazione-contrazione (Zykov, 1949) per calcolare il numero di colorazioni del grafico viene eseguito nel tempo . Questo è un esempio molto canonico di come appare il rapporto aureo da una ricorrenza di Fibonacci per il tempo di esecuzione della valutazione di una formula ricorsiva naturale; Sono sicuro che sia il più vecchio.O(ϕ|E|+|V|)

Mikko Koivisto ha trovato un algoritmo per calcolare il numero di abbinamenti perfetti (IWPEC 2009).O(ϕ|V|)


8

KO*((2+φ)K)O*(3.592K)


-2

per espandere il commento di Martin Bergers: l'antico algoritmo euclideo GCD viene eseguito nel peggiore dei casi su due elementi successivi della sequenza di Fibonacci. maggiori dettagli su Wikipedia che afferma anche:

Questa dimostrazione, pubblicata da Gabriel Lamé nel 1844, rappresenta l'inizio della teoria della complessità computazionale, [93] e anche la prima applicazione pratica dei numeri di Fibonacci. [91]

O(log(n))

[1] qual è la complessità temporale dell'algoritmo Euclids, math.se


In che modo differiscono il tempo e il numero di passaggi?
Nicholas Mancuso,

mi dispiace che dovrebbe leggere il numero di operazioni aritmetiche
vzn

1
logφNO((logN)2)O(n2)

T(un',B)T(un',B)=O(logφB)

1
O(logφB)O
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.