Generatore di numeri casuali

Aggiungi al sito web Metainformazione

Altri strumenti

Generatore di numeri

Generatore di numeri

Il progresso scientifico e tecnologico del XX secolo deve molto allo sviluppo della teoria della probabilità e alla creazione di generatori di numeri casuali.

I numeri casuali sono numeri che possono essere interpretati come i risultati dell'implementazione di una variabile casuale: il concetto di base della teoria della probabilità. Il concetto di casualità in questo contesto implica l'imprevedibilità del valore di una data quantità prima dell'inizio dell'esperimento.

Cronologia di numeri casuali

La necessità dell'umanità di utilizzare numeri casuali è nata molto prima dell'invenzione di dispositivi da parte degli scienziati che consentono di ottenere matrici casuali. Per molto tempo, le persone hanno utilizzato mezzi improvvisati per generare numeri casuali, inclusi oggetti di natura animata e inanimata.

Uno degli esempi più eclatanti dei generatori di numeri casuali più semplici sono i dadi familiari, ampiamente utilizzati oggi. Negli esperimenti elementari e di addestramento, le dipendenze della legge di moto di un dado dal suo ambiente, dalle condizioni iniziali e dal fattore umano possono essere completamente trascurate, quindi il numero di punti su un dado può, con alcune riserve, essere considerato un numero casuale variabile. I dadi hanno svolto un ruolo significativo nello sviluppo della teoria della probabilità: nel 1890, il ricercatore inglese Francis Galton propose un metodo per generare numeri casuali utilizzando i dadi.

Leggermente più complicato nel dispositivo è un altro generatore di numeri ampiamente utilizzato nella vita di tutti i giorni: il tamburo della lotteria. Questo dispositivo è un tamburo con palline numerate che si mescolano al suo interno durante la rotazione. La principale area di applicazione dei tamburi della lotteria sono le lotterie e il lotto. È facile intuire che il lototron non è adatto all'uso in seri esperimenti scientifici a causa del basso grado di casualità e velocità di funzionamento.

Nel 1939 fu inventato il primo generatore di numeri casuali che permette di ottenere grandi quantità di dati ed è adatto alla risoluzione di problemi applicati. Maurice George Kendall e Bernard Babington-Smith hanno creato un dispositivo in grado di generare una tabella contenente 100.000 numeri casuali. E solo 16 anni dopo, la società strategica americana RAND ha migliorato di 10 volte i risultati degli accademici inglesi: con l'aiuto di macchine speciali, è stata creata una tabella di un milione di numeri casuali. Il metodo tabulare per la generazione di numeri casuali ha ricevuto uno sviluppo significativo grazie a George Marsaglia, che ha ricevuto 650 MB di numeri casuali nel 1996. Tuttavia, a causa della ristrettezza dell'ambito, questo metodo non è attualmente ampiamente accettato.

Le macchine che generano numeri casuali in tempo reale presentano una serie di vantaggi rispetto ai dispositivi che creano tabelle di numeri casuali. Una delle prime macchine di questo tipo fu il computer Ferranti Mark 1, che nel 1951 includeva un programma che generava numeri casuali basati sul flusso di rumore in ingresso di un resistore. È interessante notare che l'idea di creare un programma del genere è stata il grande matematico inglese Alan Turing. Innovativa anche nel campo della generazione di numeri casuali fu l'invenzione nel 1957 dell'ERNIE (Electronic Random Number Indicator Equipment), originariamente destinato a generare numeri vincenti nella lotteria britannica.

Numeri pseudocasuali

L'invenzione dei generatori di numeri casuali ha senza dubbio notevolmente accelerato il processo scientifico e tecnologico. Tuttavia, questi dispositivi presentavano un inconveniente di fondamentale importanza, che limitava notevolmente la possibilità della loro applicazione. Già a metà del XX secolo, il matematico ungherese-americano John von Neumann notò l'inadeguatezza dei generatori fisici di numeri casuali nel calcolo, a causa dell'impossibilità di ripetere un esperimento casuale e, di conseguenza, dell'impossibilità di riprodurre un numero casuale testare il funzionamento di una macchina. È così che la comunità scientifica aveva bisogno di numeri pseudo-casuali - numeri che hanno una serie di proprietà importanti dei numeri casuali, ma ottenuti non come risultato di un esperimento casuale, ma sulla base di qualche algoritmo. Lo stesso John von Neumann divenne l'autore del metodo "al centro del quadrato", che consente di ottenere numeri pseudo-casuali di dieci cifre in uscita.

Il principale svantaggio dei numeri pseudo-casuali è, ovviamente, la mancanza di casualità dei dati, che è così importante in molte aree della scienza e della vita. Inoltre, tutti i generatori di numeri pseudo-casuali hanno la proprietà del looping, cioè da un certo momento per ripetere la sequenza dei numeri di output, molti algoritmi sono reversibili e alcuni hanno persino una distribuzione unidimensionale non uniforme. Pertanto, al momento, quest'area attrae molti ricercatori che cercano di sviluppare generatori di numeri pseudo-casuali efficienti esistenti o crearne di nuovi.

Fatti interessanti

  • Secondo alcuni storici, i primi tentativi di generare numeri casuali risalgono al 3500 a.C. Stranamente, sono collegati all'antico gioco da tavolo egiziano "Senet", che consiste nel muovere i gettoni sul tabellone.
  • Per molto tempo, i risultati dei censimenti della popolazione e di altre tabelle di dati ottenuti sperimentalmente sono serviti come fonti di numeri casuali per alcuni problemi pratici reali.
  • Una vulnerabilità negli algoritmi di generazione di numeri pseudo-casuali è stata sfruttata all'inizio degli anni 2010 dall'ex direttore della sicurezza della Multi-State Lottery Association. L'intruso aveva accesso al software utilizzato per determinare i numeri vincenti dei biglietti della lotteria, con il quale poteva determinare le combinazioni vincenti diversi giorni all'anno. È stato accusato nel 2015 dopo aver vinto $ 16,5 milioni.
  • Un generatore di numeri pseudo-casuali installato sul computer di bordo di un veicolo spaziale Apollo una volta ha causato il malfunzionamento del suo movimento e una grave deviazione dalla traiettoria prevista. Come hanno scoperto gli scienziati, i dati di output del generatore utilizzati per calcolare le velocità angolari cadevano nel semipiano inferiore nell'80% dei casi, il che non soddisfaceva assolutamente i criteri richiesti per la casualità dei risultati del generatore.

Il problema della generazione di numeri casuali è attualmente uno dei più rilevanti e promettenti nella comunità scientifica. Allo stesso tempo, questo argomento è per lo più interessante per le persone che sono lontane dal mondo della scienza. Familiarizza con i più famosi algoritmi di generazione di numeri pseudo-casuali e le loro aree di utilizzo.

Generatore di numeri casuali

Generatore di numeri casuali

Ogni giorno, milioni di persone utilizzano i servizi di generazione di numeri casuali online, ma poche persone pensano a cosa c'è dietro questo processo. Come funzionano i generatori di numeri casuali e questi numeri sono casuali?

Come si ottengono i numeri casuali

Gli esempi più noti di esperimenti con risultati casuali che possono essere interpretati come numeri casuali sono il familiare lancio di una moneta o di un dado, il mescolamento di carte o l'estrazione di una carta da un mazzo mescolato. Le persone usano queste tecniche nella vita di tutti i giorni da secoli, ma ovviamente tali metodi non sono adatti per generare grandi array.

I primi tentativi di sistematizzare il processo di generazione di numeri casuali hanno portato alla creazione di algoritmi per riempire tabelle con numeri casuali. Tuttavia, il campo di applicazione di tali tabelle è piuttosto ristretto, quindi le tabelle di numeri casuali sono state presto soppiantate da macchine che generano numeri casuali in tempo reale e sono ampiamente utilizzate oggi.

Generatori di numeri casuali e pseudo-casuali

Pochi lo sanno, ma la maggior parte dei dispositivi moderni genera effettivamente numeri pseudo-casuali. Questo è il nome di sequenze di numeri le cui proprietà sono per molti aspetti simili a quelle casuali, ma il meccanismo per la loro costruzione è significativamente diverso. I veri generatori di numeri casuali utilizzano i risultati di minuscoli processi fisici casuali nel loro lavoro, come il rumore termico e di scatto, l'effetto fotoelettrico o alcuni fenomeni quantistici. La sequenza di output di un tale generatore non può essere prevista, il che è il principale vantaggio dei generatori di numeri casuali rispetto a quelli pseudo-casuali. Questa proprietà dei numeri casuali è molto importante nelle aree in cui sono richieste la privacy e la sicurezza dei dati, come la crittografia.

A differenza dei veri numeri casuali, le sequenze di numeri pseudo-casuali vengono generate in base a qualche algoritmo, quindi sono prevedibili e fisse. I risultati del generatore di numeri pseudo-casuali possono essere migliorati introducendo alcuni parametri nel sistema che complicano le dipendenze tra i numeri, tuttavia, tutti i generatori di numeri pseudo-casuali attualmente esistenti prima o poi si ripetono e, pertanto, non sono in grado di produrre veramente numeri casuali.

Certamente, a causa dell'elevata complessità del dispositivo e del costo dei generatori di numeri casuali, gli scienziati prestano attualmente molta attenzione alla ricerca e all'ottimizzazione degli algoritmi più efficienti per la generazione di numeri pseudo-casuali. Sono stati inventati anche i "Cryptographically Strong Pseudo-Random Number Generators" (CSPRNGS), che vengono utilizzati nelle aree della crittografia e garantiscono l'integrità delle informazioni trasmesse.

Dove vengono utilizzati numeri casuali e pseudo-casuali

I generatori di numeri casuali sono parte integrante della maggior parte dei software del sistema operativo. Inoltre, sono indispensabili per test statistici e simulazioni numeriche. I generatori di numeri casuali sono utilizzati anche nella creazione di giochi per computer complessi e possono espandere notevolmente le capacità dell'intelligenza artificiale, una delle tecnologie più promettenti di questo decennio. Naturalmente, i numeri casuali sono ampiamente utilizzati nelle lotterie, nei concorsi e nelle estrazioni.

La generazione di numeri casuali è un processo che richiede tempo e per molti versi misterioso, ma proprio per questo è ancora più interessante. Approfondisci questo argomento e assicurati di scoprire qualcosa di nuovo per te stesso.