Skip to content

Instantly share code, notes, and snippets.

@alexchinco
Last active December 6, 2016 22:39
Show Gist options
  • Save alexchinco/5a0f348f90e3d677d56b00da88d698cf to your computer and use it in GitHub Desktop.
Save alexchinco/5a0f348f90e3d677d56b00da88d698cf to your computer and use it in GitHub Desktop.
Gaussian Updating
function RandomNormal(m, s, n){
if(!m) m = 0
if(!s) s = 1
if(!n) n = 1000
var run_total = 0
for(var i=0 ; i<n ; i++){
run_total += Math.random()
}
return s*(run_total - n/2)/(n/2) + m
}
function Var(sigma,T) {
return 1/(1 + 1/T) * sigma**2/T;
}
function E(r,mu,T) {
var result = [];
for (var t = 1; t <= T; t++) {
var sum = 0;
for (var s = 0; s < t; s++) {
sum = sum + (r[s] - mu);
}
result.push(1/(1+1/t) * (1/t) * sum);
}
return result;
}
var T = 26;
var mu = 0.125;
var sigma = 1;
var r = [];
for(var t=1 ; t <= T; t++){
r.push(RandomNormal(mu, sigma))
}
r;
E(r,mu,T);
Var(sigma,T);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment