Passeggiate casuali

1-dimensionali, senza memoria, a passo variabile secondo la binomiale.

Consideriamo un passo di ampiezza variabile tra $-L, -L+1, ..., -1, 0, +1, ..., L-1, L$ scelto casualmente secondo una legge binomiale.
Per simulare l'esito casuale $k$ secondo una binomiale di valori $0,1,2,\dots,n$ con probabilità $p$ di successo si può utilizzare la function seguente.

function aCasoBino(n,p){ var aCaso = Math.random(); var k = 0; var pr = Math.pow(1-p,n); var Fr = pr; while (aCaso >= Fr){ pr *= (n-k)/(k+1)*p/(1-p); Fr += pr; k++ }; return k }
La sequenza dei passi sarebbe così determinabile con
passi = new Array(n).map(x => aCasoBino(2*L,p)-L});

Ad esempio per passi, ciascuno di lunghezza massima scelto secondo una binomiale con probabilità di successo, la lista dei passi potrà essere:
mentre le posizioni occupate successivamente per effetto di questi passi:


Possiamo simulare passeggiate di 4 passi, ciascuno di lunghezza massima scelto secondo una binomiale con probabilità di successo, per rappresentare graficamente la distribuzione delle posizioni raggiunte alla fine mediante istogramma.
n° passi:

❮❮ ❯❯