Differentiable Physics-Equilibrium Projection / bench_report_v2.json
Beats tuned baseline
1{
2 "bench_version": 1,
3 "track": "cubic_equilibrium_a_estimation (custom, in-folder; structural match: z = root(z^3 + a(x)*z - u) is exactly the idea's claimed equilibrium class)",
4 "model": "mlp_32x32_tanh (idea: AParamNet 4->32->32->1 + softplus + ImplicitCubic Newton-20; baseline: DirectMLP 5->32->32->1, sees x and u)",
5 "metric_direction": "lower is better",
6 "n_seeds": 8,
7 "epochs": 300,
8 "grid_parity": {
9 "grid": [
10 0.003,
11 0.01,
12 0.03
13 ],
14 "baseline_means": {
15 "0.003": 0.0026160763518419117,
16 "0.01": 0.0005651257015415467,
17 "0.03": 0.0004695942006947007
18 },
19 "idea_means": {
20 "0.003": 0.00024374518761760555,
21 "0.01": 0.00022121649271866772,
22 "0.03": 0.0002691956779017346
23 },
24 "search_space_parity": true
25 },
26 "baseline": {
27 "best_cfg": {
28 "lr": 0.03,
29 "epochs": 300
30 },
31 "sweep": [
32 {
33 "cfg": {
34 "lr": 0.003
35 },
36 "mean": 0.0026160763518419117
37 },
38 {
39 "cfg": {
40 "lr": 0.01
41 },
42 "mean": 0.0005651257015415467
43 },
44 {
45 "cfg": {
46 "lr": 0.03
47 },
48 "mean": 0.0004695942006947007
49 }
50 ],
51 "full": {
52 "mean": 0.0004695942006947007,
53 "std": 0.00013169171442929794,
54 "per_seed": [
55 0.000339631165843457,
56 0.000445100711658597,
57 0.00030270591378211975,
58 0.0007381809409707785,
59 0.0004293923848308623,
60 0.0006018560379743576,
61 0.00047620252007618546,
62 0.0004236839304212481
63 ],
64 "n": 8
65 }
66 },
67 "idea": {
68 "mean": 0.00022121649271866772,
69 "std": 2.5303392934561233e-05,
70 "per_seed": [
71 0.00020260778546798974,
72 0.00018607612582854927,
73 0.00022137281484901905,
74 0.0002577590639702976,
75 0.00023610987409483641,
76 0.0002327339316252619,
77 0.0001864753576228395,
78 0.0002465969882905483
79 ],
80 "n": 8
81 },
82 "comparison": {
83 "delta_mean": -0.000248377707976033,
84 "idea_wins": 8,
85 "n_pairs": 8,
86 "per_seed_diffs": [
87 -0.00013702338037546724,
88 -0.0002590245858300477,
89 -8.13330989331007e-05,
90 -0.0004804218770004809,
91 -0.00019328251073602587,
92 -0.0003691221063490957,
93 -0.00028972716245334595,
94 -0.00017708694213069975
95 ],
96 "p_value": 0.0081,
97 "mde": 0.00010886910199832132,
98 "mde_rel_pct": 23.183655555640232,
99 "verdict": "idea better (significant)",
100 "system_worked": true
101 },
102 "mechanism_signature": {
103 "confirmed": true,
104 "gradient_flows": true,
105 "ift_backward": "dz/da = -z/J, dz/du = 1/J, J = 3z^2 + a_hat > 0 (a_hat = softplus(net(x))+0.05)",
106 "self_check_all_seeds_ok": true,
107 "self_check": [
108 {
109 "seed": 0,
110 "lr": 0.003,
111 "grad_norm_first": 0.05369017,
112 "grad_norm_last": 0.00011467,
113 "output_delta": 0.13677967,
114 "relative_delta": 0.264168,
115 "network_matters": true
116 },
117 {
118 "seed": 0,
119 "lr": 0.01,
120 "grad_norm_first": 0.05369017,
121 "grad_norm_last": 2.584e-05,
122 "output_delta": 0.140783,
123 "relative_delta": 0.272181,
124 "network_matters": true
125 },
126 {
127 "seed": 0,
128 "lr": 0.03,
129 "grad_norm_first": 0.05369017,
130 "grad_norm_last": 0.00126087,
131 "output_delta": 0.14829852,
132 "relative_delta": 0.28838,
133 "network_matters": true
134 },
135 {
136 "seed": 1,
137 "lr": 0.003,
138 "grad_norm_first": 0.06303131,
139 "grad_norm_last": 0.00011149,
140 "output_delta": 0.14938839,
141 "relative_delta": 0.282632,
142 "network_matters": true
143 },
144 {
145 "seed": 1,
146 "lr": 0.01,
147 "grad_norm_first": 0.06303131,
148 "grad_norm_last": 3.273e-05,
149 "output_delta": 0.14870496,
150 "relative_delta": 0.28067,
151 "network_matters": true
152 },
153 {
154 "seed": 1,
155 "lr": 0.03,
156 "grad_norm_first": 0.06303131,
157 "grad_norm_last": 2.077e-05,
158 "output_delta": 0.15761301,
159 "relative_delta": 0.297171,
160 "network_matters": true
161 },
162 {
163 "seed": 2,
164 "lr": 0.003,
165 "grad_norm_first": 0.0651998,
166 "grad_norm_last": 8.441e-05,
167 "output_delta": 0.13411286,
168 "relative_delta": 0.243048,
169 "network_matters": true
170 },
171 {
172 "seed": 2,
173 "lr": 0.01,
174 "grad_norm_first": 0.0651998,
175 "grad_norm_last": 3.367e-05,
176 "output_delta": 0.13443458,
177 "relative_delta": 0.243553,
178 "network_matters": true
179 },
180 {
181 "seed": 2,
182 "lr": 0.03,
183 "grad_norm_first": 0.0651998,
184 "grad_norm_last": 0.00014135,
185 "output_delta": 0.13707605,
186 "relative_delta": 0.248529,
187 "network_matters": true
188 },
189 {
190 "seed": 3,
191 "lr": 0.003,
192 "grad_norm_first": 0.0478717,
193 "grad_norm_last": 7.282e-05,
194 "output_delta": 0.1600959,
195 "relative_delta": 0.303371,
196 "network_matters": true
197 },
198 {
199 "seed": 3,
200 "lr": 0.01,
201 "grad_norm_first": 0.0478717,
202 "grad_norm_last": 2.8e-05,
203 "output_delta": 0.16947965,
204 "relative_delta": 0.321804,
205 "network_matters": true
206 },
207 {
208 "seed": 3,
209 "lr": 0.03,
210 "grad_norm_first": 0.0478717,
211 "grad_norm_last": 2.299e-05,
212 "output_delta": 0.18700044,
213 "relative_delta": 0.355268,
214 "network_matters": true
215 },
216 {
217 "seed": 4,
218 "lr": 0.003,
219 "grad_norm_first": 0.06093026,
220 "grad_norm_last": 0.00016984,
221 "output_delta": 0.11551933,
222 "relative_delta": 0.215875,
223 "network_matters": true
224 },
225 {
226 "seed": 4,
227 "lr": 0.01,
228 "grad_norm_first": 0.06093026,
229 "grad_norm_last": 3.269e-05,
230 "output_delta": 0.11578429,
231 "relative_delta": 0.216497,
232 "network_matters": true
233 },
234 {
235 "seed": 4,
236 "lr": 0.03,
237 "grad_norm_first": 0.06093026,
238 "grad_norm_last": 0.00775644,
239 "output_delta": 0.12103881,
240 "relative_delta": 0.229614,
241 "network_matters": true
242 },
243 {
244 "seed": 5,
245 "lr": 0.003,
246 "grad_norm_first": 0.05086348,
247 "grad_norm_last": 8.827e-05,
248 "output_delta": 0.16617334,
249 "relative_delta": 0.31593,
250 "network_matters": true
251 },
252 {
253 "seed": 5,
254 "lr": 0.01,
255 "grad_norm_first": 0.05086348,
256 "grad_norm_last": 3.019e-05,
257 "output_delta": 0.17603016,
258 "relative_delta": 0.334429,
259 "network_matters": true
260 },
261 {
262 "seed": 5,
263 "lr": 0.03,
264 "grad_norm_first": 0.05086348,
265 "grad_norm_last": 6.138e-05,
266 "output_delta": 0.19581376,
267 "relative_delta": 0.371749,
268 "network_matters": true
269 },
270 {
271 "seed": 6,
272 "lr": 0.003,
273 "grad_norm_first": 0.07261282,
274 "grad_norm_last": 0.00018103,
275 "output_delta": 0.10209998,
276 "relative_delta": 0.18625,
277 "network_matters": true
278 },
279 {
280 "seed": 6,
281 "lr": 0.01,
282 "grad_norm_first": 0.07261282,
283 "grad_norm_last": 5.02e-05,
284 "output_delta": 0.09522294,
285 "relative_delta": 0.174033,
286 "network_matters": true
287 },
288 {
289 "seed": 6,
290 "lr": 0.03,
291 "grad_norm_first": 0.07261282,
292 "grad_norm_last": 0.00015125,
293 "output_delta": 0.08097388,
294 "relative_delta": 0.147978,
295 "network_matters": true
296 },
297 {
298 "seed": 7,
299 "lr": 0.003,
300 "grad_norm_first": 0.05419751,
301 "grad_norm_last": 0.00010262,
302 "output_delta": 0.15303306,
303 "relative_delta": 0.288804,
304 "network_matters": true
305 },
306 {
307 "seed": 7,
308 "lr": 0.01,
309 "grad_norm_first": 0.05419751,
310 "grad_norm_last": 2.27e-05,
311 "output_delta": 0.16315053,
312 "relative_delta": 0.307862,
313 "network_matters": true
314 },
315 {
316 "seed": 7,
317 "lr": 0.03,
318 "grad_norm_first": 0.05419751,
319 "grad_norm_last": 0.0030526,
320 "output_delta": 0.17037962,
321 "relative_delta": 0.316831,
322 "network_matters": true
323 }
324 ],
325 "a_hat_mse_mean": 0.004151654953602701,
326 "note": "network output a_hat enters F(z;a_hat,u)=z^3+a_hat*z-u nonlinearly; breaking network weights changes outputs on every seed (RULE 0.1 self-check)"
327 },
328 "limitations": "Synthetic track generated exactly from the idea's equation class (z = root(z^3+a(x)z-u), a hidden, x noisy sigma=0.15, z noiseless). The advantage is the physics inductive bias: idea learns only a(x); baseline must learn z(x,u) directly with the same budget and grid. No observation noise on z; single architecture family; CPU full-batch Adam."
329}