homemaker-layout/experiments
Bruno Postle 0beb005a23 Memetic search driver: steady-state GA over topology, warm-started inner loop
driver.py (homemaker-py-b39): tournament selection, operators.mutate (storey
ops down-weighted) + area-matched crossover, every child's geometry
delegated to the warm-started inner loop (Lamarckian write-back; children
use a single local CMA phase - the exploratory ladder phase exists for cold
projections children never face). Budget stated and accounted in oracle
evaluations; near-duplicate fitness guard against population collapse
(neutral mutations are common, per 8cs).

free_with_keys/ratio_map/warm_x0 promoted from the 8cs experiment into
innerloop.py as the Lamarckian inheritance API; alignment with
solver.free_branches asserted across the corpus.

tests/test_driver.py fakes the inner loop: budget accounting, monotone
improvement history, warm-start + sigma plumbing, valid .dom output.
31 tests pass. experiments/run_search.py is the end-to-end acceptance run.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 14:22:26 +01:00
..
accept_innerloop.py Re-baseline under URB_NO_OCCLUSION: new reference gains, DESIGN §4.7 2026-06-12 10:31:38 +01:00
bench_batch_oracle.py Batched oracle: score many .dom files per perl invocation 2026-06-12 01:13:55 +01:00
diag_2f45907.py Geometry inner loop: batched full-objective ratio optimiser (CMA-ES) 2026-06-12 09:42:24 +01:00
dump_areas.pl Scaffold homemaker-py with validated geometry port 2026-06-10 20:50:20 +01:00
dump_areas.py Scaffold homemaker-py with validated geometry port 2026-06-10 20:50:20 +01:00
genome_parity.py Topology genome: base tree + per-storey deltas + type assignment 2026-06-12 13:52:32 +01:00
operator_locality.py Topology operators: 7 mutations + area-matched subtree crossover 2026-06-12 14:07:35 +01:00
optimize_fullfitness.py Full-fitness frozen-topology optimisation validates geometry inner loop 2026-06-10 22:27:30 +01:00
rebaseline_no_occlusion.py Geometry inner loop: batched full-objective ratio optimiser (CMA-ES) 2026-06-12 09:42:24 +01:00
refine_sweep.py Add programme/solver/oracle + sizing experiments (negative result) 2026-06-10 21:49:31 +01:00
resolve_ratios.py Add programme/solver/oracle + sizing experiments (negative result) 2026-06-10 21:49:31 +01:00
run_search.py Memetic search driver: steady-state GA over topology, warm-started inner loop 2026-06-12 14:22:26 +01:00
sweep_failtypes.py Full-fitness frozen-topology optimisation validates geometry inner loop 2026-06-10 22:27:30 +01:00
warm_vs_cold.py Memetic search driver: steady-state GA over topology, warm-started inner loop 2026-06-12 14:22:26 +01:00