Position-only active-noise optimizer / run_repro.py
Mechanism confirmed, baseline not beaten
1import json, numpy as np
2from active_noise_optimizer import kf_run, transition
3out=[]
4for tau in [0.2,1.,5.,20.]:
5 b=[]; x=[]
6 for seed in [10,11,12,13,14]:
7 b.append(kf_run(seed,tau,.3,0.)[0]); x.append(kf_run(seed,tau,.3,.85)[0])
8 out.append({'tau':tau,'baseline_mean':float(np.mean(b)),'baseline_std':float(np.std(b,ddof=1)), 'idea_mean':float(np.mean(x)), 'idea_std':float(np.std(x,ddof=1)), 'ratio':float(np.mean(x)/np.mean(b))})
9# Exact crossing by bisection on rho-1.
10lo,hi=1.,2.5
11for _ in range(60):
12 mid=(lo+hi)/2
13 rho=max(abs(np.linalg.eigvals(transition(mid,1.,5.,.7))))
14 if rho<1: lo=mid
15 else: hi=mid
16out.append({'stability_eta_crossing':(lo+hi)/2,'rho_at_crossing':float(max(abs(np.linalg.eigvals(transition((lo+hi)/2,1.,5.,.7)))) )})
17open('repro_summary.json','w').write(json.dumps(out,indent=2))
18print(json.dumps(out,indent=2))