mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-06-08 11:17:27 +00:00
Rewire the objective per the ADR-0016 amendment. With a target_sap (Increasing EPC): warm-start optimise_min_cost (cheapest package reaching target_gain = target_sap - baseline within budget) -> inject dependencies -> re-score -> repair toward target; if the warm-start is infeasible or the repaired package still falls short on the true score, fall back to max-gain-within-budget (best effort). Without a target_sap: max-gain (unchanged). The min-cost objective stops at the target without overshooting into a higher band; surplus budget is left unspent. Extracted _max_gain_package (no-target path + fallback) and _repair_to_target (inject + re-score + greedy repair). Dependency injection and the repair loop are preserved; all prior optimiser + dependency tests pass unchanged. Ventilation-aware *selection* is the next slice; injection is still post-warm-start here. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| addresses | ||
| data_transformation | ||
| epc | ||
| fuel_rates | ||
| geospatial | ||
| modelling | ||
| property | ||
| property_baseline | ||
| sap10_calculator | ||
| sap10_ml | ||
| tasks | ||
| building_geometry.py | ||
| postcode.py | ||