Qual è una spiegazione laica per la ricerca universale?


13

Sto leggendo un libro su un argomento di informatica ma manca un po 'del presupposto. Normalmente, quando incontro termini che non capisco, li cerco semplicemente, ma per Universal Search non sono stato in grado di trovare una spiegazione adatta a un lettore senza un background in statistica / informatica.

Ho letto questo articolo su Universal Search da Scholarpedia , che sembra coprire l'argomento. Gradirei una spiegazione del significato di Universal Search (o Levin Search ).

Risposte:


15

Pensala in questo modo. Hai un problema, con input e sai come verificare una soluzione se ne hai mai trovata una (come l'inverso di una matrice o qualunque cosa tu voglia immaginare).x

Ora prendi il tuo linguaggio di programmazione preferito (ad esempio Python) e crea ogni singolo programma Python composto da un massimo di 10 caratteri! Quindi esegui tutti quei programmi con il tuo input per 10 secondi ciascuno, ciascuno sull'input . Se nessuno di loro ti dà la risposta, vai fino a 11. Esegui ogni programma di massimo 11 caratteri (inclusi quelli che hai già provato, ovviamente) per 11 secondi ciascuno, sull'input x . Se nessuno di loro ti dà la risposta corretta, continui a 12 e così via.xx

Più formalmente, nell'iterazione , esegui tutti i programmi di lunghezza al massimo i (finitamente molti, ma ovviamente esponenziale in i ), ciascuno per i secondi (o passaggi).iiii

C'è un programma, diciamo che fornisce l'output corretto in s secondi. Quando sei arrivato all'iterazione i = max { | P | , s } , questo programma verrà eseguito per almeno s secondi e verranno emessi sia P che la soluzione.Psi=max{|P|,s}sP


3

iiPi=100101 Pi=120120Pi=120P|P|=100s=120i=max{|P|,s}Ps

Ps |P| si<|P|i<s

Si noti che questo metodo di ricerca è garantito per ottenere una risposta solo se esiste; non è garantito trovare la risposta più breve o più veloce. Il motivo dovrebbe essere evidente se si considera che il processo termina non appena trova un programma che fornisce la risposta giusta.

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.