Non è solo il superenalotto ad essere legato all'estrazione di numeri casuali: su di essi si basano molti videogiochi, transazioni bancarie che li usano per generare chiavi di cifratura, spie e, persino, scienziati, che se ne servono per risolvere problemi con il cosiddetto “metodo Montecarlo”. Un semplice esempio di applicazione a fini scientifici di questo metodo si trova, su questo sito, alla pagina dove si parla del numero π pi greco..
Di solito, nella vita di ogni giorno, per generare eventi casuali utilizziamo degli strumenti che
I numeri con i quali abbiamo a che fare di solito sono composti da sequenze di cifre che vanno da 0 a 9. Per realizzare questi numeri non possiamo adoperare un normale dado, che produce cifre che vanno da 1 a 6 (in realtà con un dado ed una moneta potremmo farlo, scartando due dodicesimi dei risultati, ma non intendo entrare nell'argomento). Esistono però dei dadi a forma di icosaedro (20 facce triangolari che vengono numerate da 1 a 20 delle quali si utilizza solo la cifra delle unità che vi viene mostrata) e anche dei dadi con dieci facce uguali, anche se fatte da poligoni non regolari. Ma comunque non è molto pratico se dovete generare molte cifre casuali, mettervi a lanciare centinaia di migliaia di volte un dado per raccolgiere le cifre di cui avete bisogno.
Per gli scopi pratici, come possono essere quelli di un videogioco, sono state messe a punto delle formule che producono, con i buoni uffici di un computer, sequenze di cifre che, grazie anche al fatto che noi ignoriamo il metodo effettivamente usato, possono sembrare casuali.
Le formule possono essere abbastanza semplici o abbastanza complicate e danno sequenze di numeri apparentemente casuali più o meno valide. Ogni linguaggio di programmazione ha la sua funzione di generazione di numeri casuali. Per onestà vengono detti numeri pseudocasuali. Una delle formule più comuni è $$X_{n+1}=({a · X_n+b})\; \text mod\ \: c$$ dove a,b e c sono delle costanti che dipendono dalle capacità di calcolo della macchina, mod è l'operazione che dà il resto della divisione per c; il primo valore di Xn, detto X0, deve venir fornito e di solito, per avere un valore casuale si ricorre ai millisecondi dell'orologio; i successivi valori vengono forniti dalla formula usando il valore precedente per generarne uno nuovo.
Ecco qui alcune cifre generate dal computer sul quale è salvata questa pagina. Se ricaricate questa pagina vedrete che la sequenza di cifre cambia ogni volta.
6 | 0 | 3 | 5 | 8 | 1 | 9 | 1 | 8 | 6 | 1 | 3 | 4 | 8 | 9 | 4 | 2 | 0 | 3 | 5 | 9 | 5 | 6 | 6 | 7 | 0 | 4 | 7 | 9 | 9 | 4 | 8 | 2 | 0 | 5 | 9 | 8 | 8 | 2 | 3 | 8 | 4 | 8 | 0 | 9 | 4 | 6 | 8 | 7 | 7 |
4 | 0 | 6 | 0 | 4 | 1 | 4 | 3 | 8 | 0 | 4 | 8 | 0 | 0 | 6 | 1 | 3 | 6 | 5 | 2 | 8 | 2 | 2 | 9 | 5 | 0 | 3 | 7 | 3 | 5 | 7 | 2 | 9 | 6 | 1 | 9 | 6 | 5 | 1 | 8 | 4 | 5 | 9 | 1 | 9 | 4 | 1 | 3 | 5 | 7 |
4 | 5 | 6 | 0 | 3 | 5 | 0 | 9 | 8 | 0 | 1 | 1 | 0 | 7 | 4 | 9 | 7 | 1 | 7 | 7 | 2 | 8 | 9 | 3 | 6 | 7 | 5 | 7 | 9 | 1 | 1 | 6 | 6 | 2 | 3 | 3 | 0 | 2 | 2 | 6 | 8 | 3 | 5 | 6 | 4 | 9 | 3 | 4 | 3 | 0 |
0 | 3 | 8 | 7 | 5 | 3 | 5 | 1 | 6 | 9 | 4 | 6 | 0 | 7 | 4 | 8 | 7 | 1 | 5 | 3 | 6 | 6 | 5 | 7 | 4 | 9 | 3 | 0 | 4 | 0 | 9 | 0 | 1 | 4 | 9 | 2 | 0 | 8 | 8 | 2 | 9 | 9 | 8 | 3 | 5 | 2 | 1 | 1 | 6 | 9 |
Per scopi seri, come la cifratura di messaggio o la generazione di una password per proteggere una transazione bancaria questo metodo non si rivela molto sicuro. Può sembrare incredibile, ma in giro per il mondo ci sono fior di matematici che si impegnano a trovare regolarità, ripetizioni e così via che consentano di risalire alla sequenza di numeri casuali generati.
Quando la casualità dei numeri generati è fondamentale si ricorre, se possibile, a metodi hardware che li generino. Alla base di molti di questi metodi c'è l'utilizzo della radiazione cosmica o prodotta dal decadimento di sostanze radioattive. Ho provato, per divertimento, ad utilizzare i conteggi che andavo facendo anche per questo.
L'arrivo di una radiazione è un evento casuale, ma non possiamo usare il numero di secondi tra due conteggi come numero casuale, in quanto ci sono intervalli di tempo privilegiati rispetto ad altri (il tempo medio tra due conteggi ed i valori ad esso vicini); possiamo, invece, usare come numero casuale il decimo o il centesimo di secondo dell'istante in cui inizia il bip del conteggio (dovrebbe essere casuale a meno di errori sistematici dovuti all'atrezzatura). Allora ho fatto rilevare questo tempo al programma che legge i conteggi ed ho raccolto queste cifre prodotte. Al momento questi sono i dati che caratterizzano l'insieme più di 600.000 cifre ottenute.
Valore ottenuto |
Valore teorico |
|
---|---|---|
Valor medio | 4,5009 | 4,5000 |
Varianza | 8,2470 | 8,2500 |
Cifra generata | Uscite sperimentali | Uscite teoriche | Differenza |
---|---|---|---|
0 | 66.401 | 66.385 | 16 |
1 | 66.056 | 66.385 | -329 |
2 | 66.410 | 66.385 | 25 |
3 | 66.647 | 66.385 | 262 |
4 | 66.433 | 66.385 | 48 |
5 | 66.495 | 66.385 | 110 |
6 | 66.235 | 66.385 | -150 |
7 | 66.306 | 66.385 | -79 |
8 | 66.417 | 66.385 | 32 |
9 | 66.385 | 66.385 | 60 |
L'errore medio sul numero dei conteggi, che ci dà un'indicazione di quanto può variare il numero stesso per effetto del caso, è dato dalla radice quadrata di 66.385 e cioè, con buona approssimazione, ±260. Vuol dire che per effetto del caso il 65% delle osservazioni saranno entro un errore dal valore medio, il 95% entro due, il 99% entro tre. Vediamo quindi che sostanzialmente le previsioni statistiche si sono avverate. Anche la tabella delle frequenze delle coppie di numeri ha dato risultati sostanzialmente equidistribuiti. Se qualcuno avrà la pazienza di sottoporre la sequenza di cifre casuali a test più accurati e mi farà conoscere il risultato, gliene sarò grato. Le cifre sono qua, in un file di testo. Il numero può non coincidere quello usato per costruire la tabella in quanto continuo a raccoglierne.
La
radioattività in ambienti diversi |
|
Vai alla pagina precedente | Indice | Vai alla pagina www.delise.it |