Commit 175b96d
Seed numpy before EnhancedCPS initial weight jitter (#774)
`EnhancedCPS.generate()` and `ReweightedCPS_2024.generate()`
perturbed the original household weights with
np.random.normal(1, 0.1, len(original_weights))
before calling `reweight()`. `reweight()` calls `set_seeds(seed)`
internally, but only after the perturbation, so the L0 optimizer
started from a different point each run and the final calibrated
weights were non-reproducible despite the `seed=1456` argument.
Call `set_seeds(1456)` immediately before the jitter at both call
sites. Add unit tests that (a) confirm set_seeds makes a
subsequent np.random.normal draw deterministic and (b) guard the
source-code invariant that every np.random.normal in enhanced_cps.py
is preceded by a set_seeds(...) call within 5 lines.
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent fe8e239 commit 175b96d
3 files changed
Lines changed: 70 additions & 0 deletions
File tree
- changelog.d
- policyengine_us_data/datasets/cps
- tests/unit/datasets
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
222 | 222 | | |
223 | 223 | | |
224 | 224 | | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
225 | 231 | | |
226 | 232 | | |
227 | 233 | | |
| |||
358 | 364 | | |
359 | 365 | | |
360 | 366 | | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
361 | 370 | | |
362 | 371 | | |
363 | 372 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
0 commit comments