il cui grafico
Iniziamo col condurre alcune semplici riflessioni.
Le posizioni raggiunte dopo $n$ passi costituiscono una variabile aleatoria $X_n$:
N° di passi | valori di $X_n$: posizioni raggiunte |
---|---|
1 | 1, +1 |
2 | 2, 0 , +2 |
3 | 3, 1, +1, +3 |
. | |
2n | n,n+1, 4, 2, 0, +2, +4, , n1, n |
2n+1 | n,n+1 3, 1, +1, +3, , n1, n |
Ciascuna di queste posizioni può essere raggiunta seguendo percorsi diversi:
N° di passi | N° di percorsi che conducono a ogni valore di $X_n$ |
---|---|
1 | 1 , 1 |
2 | 1, 2 , 1 |
3 | 1, 3, 3, 1 |
. | |
n | $1, C_{n,1}, C_{n,2}, C_{n,3}, ..., C_{n,n-3}, C_{n,n-2}, C_{n,n-1}, 1 $ |
Il numero totale di percorsi effettuabili con n passi, la somma dei componenti la riga n-esima del triangolo di Pascal-Tartaglia, è 2n.
Nel modo più naturale, cioè ricorsivamente, questo schema, si può descrivere in javascript nel modo seguente:
function nPercorsi(n,x) {
if (n==0) return 1
else if(n<Math.abs(x) ) return 0
else if((n+Math.abs(x))%2>0) return 0
else if(n==Math.abs(x) ) return 1
else return nPercorsi(n-1,x-1)+nPercorsi(n-1,x+1)
}
Si può ottenere anche iterando:
lst=[...lst,0].map((x, i) => x + [0,...lst][i])
che data la lista lst, inizialmente formata dal solo 1, corrispondente a una riga dello schema, forma la lista corrispondente alla riga successiva sommando la lista [0,...lst], nella quale si antepone a lst l'elemento 0, con la lista [...lst,0], nella quale lst viene prolungata con uno zero finale.
Quindi
var lst=[1]
for (var k=0; k<n; k++)
lst=[...lst,0].map((x, i) => x + [0,...lst][i])
crea le prime n+1 righe.Volendo inserire nello schema anche il numero, nullo, di percorsi per raggiungere posizioni pari per un numero dispari di passi o viceversa:
var lst=[1];
for(var i=0; i<n;i++){
lst=[...lst,0,0].map((x,k)=>x+[0,0,...lst][k]);
}
Lo schema del triangolo numerico di Pascal-Tartaglia si può ottenere anche per diagonali iterando:
diag.map((sum => value => sum += value)(0))
che produce somme cumulate a partire dalla diagonale formata di tutti 1.
diag=new Array(n+1).fill(1)
1 | 1 | 1 | 1 | 1 |
1 | 2 | 3 | 4 | |
1 | 3 | 5 | ||
1 | 4 | |||
1 |
Il termine generico $C_{n,k}$, che si scrive anche $\binom{n}{k}$, si può ottenere calcolando $\frac{n!}{k!(n-k)!}=\frac{n(n-1)\cdots(n-k+1)}{k(k-1)\cdots 1}$ e quindi con Javascript anche nel modo seguente, arrotondando eventualmente il risultato:
var C=1;
for (var i=1; i⁢=k; i++) C*=(n-k+i)/k;
oppure in una sola riga:
new Array(k).fill().reduce((num,e,i)=>num*=(n-k+1+i)/(i+1),1)
Così ad esempio C()=10
Si può osservare che nello sviluppo di \[\displaystyle(x^{-1}+x)^n=\sum_{k=0}^n\binom{n}{k}x^{-n+k}x^{k}= \sum_{k=0}^n\binom{n}{k}x^{2k-n}\] gli esponenti di $x$ sono le posizioni raggiunte dopo gli $n$ passi e i coefficienti esprimono il numero di passeggiate diverse che conducono alla stessa posizione.
Indicando con $x=2k-n,\quad \mbox{con}\;\; k=0,1,2,...,n$ la posizione raggiunta se $n$ è il numero di passi, allora il numero di percorsi possibili per raggiungerla è $\binom{n}{\frac{n+x}{2}}=\binom{n}{\frac{n-x}{2}}$; si osservi che se indichiamo con $n_+$ il numero dei passi nel verso positivo e $n_-$ quello dei passi nel verso opposto, allora $\begin{cases}n_++n_-=n\\ n_+-n_-=x \end{cases}$ da cui $\begin{cases}n_+=\frac{n+x}{2}\\ n_-=\frac{n-x}{2} \end{cases}$.
Dunque la posizione raggiunta dopo $n$ passi è una variabile casuale $X_n$ che assume i valori \[-n, -n+1, \cdots, -1, 0, 1, \cdots, n-1, n\] e la cui distribuzione di probabilità, cioè la probabilità di raggiungere la posizione $x$ dopo $n$ passi, si può ottenere dividendo il numero di modi di raggiungere quella posizion per il numero totale $2^n$ di percorsi effettuabili. \[p(X_n=x)=\begin{cases}\binom{n}{\frac{n+x}{2}}\frac{1}{2^n} &\quad\mbox{se n+x è pari}\\ 0 &\quad\mbox{altrimenti}\end{cases}\]
Si può ottenere la distribuzione delle probabilità con una minima variazione del procedimento per determinare le righe del triangolo di Pascal-Tartaglia.
var lst=[1]
for (var k=0; k<n; k++)
lst=[...lst,0].map((x, i) => (x + [0,...lst][i])/2)
o anche
È più chiaro, poiché sintetico, rappresentare graficamente la legge di dstribuzione, o come punti sul piano cartesiano o mediante istogramma.
Si tratta della distribuzione teorica.
Nel dispositivo in figura, proposto a fine ‘800 da Francis Galton, delle palline vengono fatte scendere entro una griglia in cui dei chiodi costituiscono un ostacolo che la singola pallina può aggirare indifferentemente a destra o a sinistra. Ne deriva in modo meccanico un istogramma de descrive la distribuzione delle frequenze delle posizioni raggiunte.