+ All Categories
Home > Documents > La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda...

La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda...

Date post: 31-Jul-2021
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
36
La generazioni di numeri casuali Fisica dell’Informazione
Transcript
Page 1: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

La generazioni �di �

numeri casuali�

Fisica dell’Informazione

Page 2: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Cifrari composti

Ottenuti dall’applicazione sequenziale dei metodi precedentemente visti. Non sempre sono i migliori. Il più popolare tra i cifrari composti a chiave simmetrica: il DES

Due problemi principali: Il problema della resistenza ad un attacco esaustivo. Il ruolo della chiave.

Come si trova una “buona chiave”? Il problema della password….

La necessità di generare numeri casuali….

Page 3: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

La generazione di numeri casuali

1) Che cosa si intende per una sequenza di numeri casuali

2) Come può ottenersi una sequenza di numeri casuali

3) Data una sequenza come si fa a dire se essa è casuale

L’impiego di numeri casuali riveste attualmente una grande importanza in molte applicazioni di uso quotidiano:

- Esperimenti statistici –analisi di algoritmi- Simulazione di sistemi stocastici - Metodi Monte-Carlo - Algoritmi probabilistici - Crittografia - Protocolli di comunicazione sicuri - Gambling machines - Computer games

Page 4: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

1) Che cosa si intende per una sequenza di numeri casuali

Diciamo che una sequenza di numeri è una SEQUENZA CASUALE se:

•  Ogni elemento ha la stessa probabilità di apparire nella sequenza (distribuzione uniforme)

•  Dalla conoscenza di uno o più elementi della sequenza è impossibile predire il valore degli elementi successivi

Page 5: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

2) Come può ottenersi una sequenza di numeri casuali

Per definizione una sequenza di numeri casuali non può essere generata mediante un algoritmo (in senso stretto).

Resta la possibilità di affidarsi a sistemi fisici che generano valori misurabili di una qualche grandezza soggetta a fluttuazione statistica: il RUMORE

Johnson Noise

Page 6: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

2) Come può ottenersi una sequenza di numeri casuali

Johnson Noise

Nichols A. Romero, Junior Physics Laboratory, Massachusetts Institute of Technology (1998) http://w3.physics.uiuc.edu/~nromero/archive/8.14.pdf

Page 7: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

3) Data una sequenza come si fa a dire se essa è casuale

Storicamente sono stati assunti diversi approcci:

•  Criterio di Von Mises (principio dell'impossibilità di un sistema di gioco o assioma del disordine) negli anni ‘20 analogia con sistemi del gioco d’azzardo. Controllo empirico sui risultati: se si vince allora non è casuale!

•  Popper anni 30, è casuale se la lunghezza minima dell’algoritmo è pari alla lunghezza della sequenza.

Page 8: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

La generazione di numeri casuali

1) Che cosa si intende per una sequenza di numeri casuali

2) Come può ottenersi una sequenza di numeri casuali

3) Data una sequenza come si fa a dire se essa è casuale

Page 9: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

3) Data una sequenza come si fa a dire se essa è casuale Sistemi dinamici caotici e sistemi rumorosi

Casuale viene talvolta interpretato come irregolare. Ad esempio, la tensione ai capi di un resistore all’equilibrio termico Costituisce una segnale altamente irregolare (e casuale).

Facciamo un esperimento:

Sistema fisico x(t) osservabile

Page 10: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Esiste una legge che descrive l’evoluzione della x(t), noto tutto quello che c’è da sapere sul sistema fisico?

Se c’è diciamo che il nostro sistema fisico è un sistema dinamico

Anni addietro qualcuno si è un po’ fatto prendere la mano…

Page 11: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Il trionfo del determinismo

Dobbiamo dunque considerare lo stato presente dell’universo come effetto del suo stato anteriore e come causa del suo stato futuro. Un’intelligenza che, per un dato istante, conoscesse tutte le forze di cui è animata la natura e la situazione rispettiva degli esseri che la compongono, se perdipiù fosse abbastanza profonda per sottomettere questi dati all’analisi, abbraccerebbe nella stessa formula i movimenti dei più grandi corpi dell’universo e dell’atomo più leggero: nulla sarebbe incerto per essa e l’avvenire, come il passato, sarebbe presente ai suoi occhi.

(Pierre-Simon de Laplace, 1814)

Page 12: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Cioè il futuro è COMPLETAMENTE determinato dalla conoscenza del passato!!!

Page 13: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

TUTTO BENE… se non fosse che:

Occorre conoscere le condizioni iniziali del sistema (posizione e velocità ad un dato istante).

Questo in genere è difficile ed uno conosce le condizioni iniziali solo con una certa approssimazione, ovvero con una piccola incertezza.

Page 14: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Che succede se sbaglio di poco la misura delle condizioni iniziali?

Per i sistemi che ho visto prima (palle di cannone, pendoli semplici e razzi)… non molto

Page 15: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Che succede se sbaglio di poco la misura delle condizioni iniziali?

Per altri sistemi invece, un piccolo errore sulla misura delle condizioni iniziali può portare a grandi, enormi differenze sul risultato finale. E’ l’effetto farfalla!!!

Does the Flap of a Butterfly’s Wings in Brazil set off a Tornado in Texas?

Page 16: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Il pendolo forzato:

Lo stesso pendolo, se messo in oscillazione con due condizioni iniziali lievemente differenti, dopo un certo tempo assume posizioni che diventano RAPIDAMENTE molto diverse !!!

Page 17: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Pendolo smorzato e forzato

Oltre l’approssimazione delle Piccole oscillazioni

Page 18: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Pendolo smorzato e forzato

Oltre l’approssimazione delle Piccole oscillazioni

Page 19: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Pendolo smorzato e forzato

Oltre l’approssimazione delle Piccole oscillazioni

Page 20: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Pendolo smorzato e forzato

Oltre l’approssimazione delle Piccole oscillazioni

Page 21: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

  Fattori rilevanti in relazione alla predicibilità di un sistema dinamico:

•  Primo esponente di Lyapunov •  Dimensione dell’attrattore •  Grandezza dell’errore nella

determinazione dello stato iniziale

Sistemi dinamici

Page 22: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Esponenti di Lyapunov

0

0 ),(ln1lim

xtXx

tt Δ

Δ=

∞→λ

0>λ

Page 23: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Esponenti di Lyapunov

Page 24: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Dimensione dell’attrattore

Page 25: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Esempio: Sistema di Lorenz

bzxydtdz

yrxxzdtdy

yxdtdx

−=

−+−=

+−= σσ

Page 26: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Sistema di Lorenz

28;10;38

=== rb σPer opportuna scelta dei parametri

Page 27: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

L’attrattore di Lorentz in 3D:

Page 28: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

L’attrattore di Roessler

Page 29: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

3) Data una sequenza come si fa a dire se essa è casuale

Data l’alta irregolarità delle traiettorie dei sistemi dinamici caotici data una serie temporale non è banale decidere se questa è stata prodotta da un sistema dinamico o è il risultato di un rumore.

Esistono studi in letteratura…

Page 30: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

La generazione di sequenze pseudo-casuali

Cosa ci aspettiamo da un buon generatore di numeri pseudo casuali?

Esempio: simuliamo il lancio di una coppia di dadi

Assumiamo che i dadi siano NON truccati: Ogni intero compreso tra 1 e 6 ha probabilità 1/6 di essere osservato in ciascun lancio indipendentemente dai risultati degli altri lanci.

Lancio di un dato 6 volte: - 333333 prima sequenza - 146232 seconda sequenza

Page 31: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

La generazione di sequenze pseudo-casuali

Cosa ci aspettiamo da un buon simulatore di dadi ?

- ciascun intero compreso tra 1 e 6 dovrebbe apparire con una frequenza ‘vicina’ al valore 1/6 - ciascuna coppia dovrebbe apparire con una frequenza ‘vicina’ al valore 1/36 - ciascuna tripla di numeri dovrebbe apparire con una frequenza ‘vicina’ al valore 1/216 - ............

Inoltre: che le generazioni consecutive di numeri non siano correlate.

Page 32: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

La generazione di sequenze pseudo-casuali

Generatori basati sull’aritmetica modulare.

Consideriamo una divisione. Chiamiamo q il quoziente, cioè il risultato della divisione fra il dividendo x e il divisore m, mentre R è l'eventuale resto.

Scriviamo x(mod m)= R,

Page 33: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

La generazione di sequenze pseudo-casuali Generatori basati sull’aritmetica modulare.

Per x(mod m) valgono le seguenti proprietà:

・è sempre R < m・ ・se x < m, allora x (mod m)= x ・se x = m, allora x(mod x)= 0・ ・se x supera di 1 m, allora x(mod (m)= 1 ・x(mod 1)= 0・ ・0(mod m)= 0

Page 34: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Una classe di metodi di generazione di numeri pseudo-casuali impiega i cosiddetti metodi congruenziali.

si dice che a è congruente con b se a mod m = b mod m

tre tipi principali di metodi congruenziali:

1.Metodo additivo: ri+1=ri+ri-1(mod m) 2.Metodo moltiplicativo: ri+1=ari(mod m) 3.Metodo misto: ri+1=(ari+b)(mod m)

Dove ri, a, b, m sono interi non negativi e ri è compreso tra 0 ed m.�

ro (valore iniziale della sequenza) è detto seme.

Page 35: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Questi metodi danno origine a sequenze pseudo casuali che tendono a ripetersi dopo un certo numero di elementi. Per questo vengono dette sequenze periodiche.

Il periodo della sequenza ha valore minore o uguale a m. Per ottenere il periodo massimo si debbono rispettare alcune condizioni:

・b ed m devono essere primi tra loro; ・sia p un numero primo, divisore di m. Allora a-1 deve essere multiplo di p;

Page 36: La generazioni di numeri casuali · 2009. 5. 4. · - 333333 prima sequenza - 146232 seconda sequenza . La generazione di sequenze pseudo-casuali ... m sono interi non negativi e

Per chi vuole approfondire…. :

- L'Ecuyer, P. 1998. Random number generation. In Handbook of Simulation, ed. J. Banks, J Wiley. chapter 4.

- Knuth, D. E. 1998. The Art of Computer Programming, Vol 2: Seminumerical Algorithms.Third ed. - Addison-Wesley.


Recommended