holy fuking shit
This commit is contained in:
@@ -14,14 +14,11 @@ from pathlib import Path
|
||||
from statistics import mean, median
|
||||
from time import perf_counter
|
||||
|
||||
from mcm26b.belief import ChannelStatus # noqa: F401 (兼容旧 import 路径)
|
||||
from mcm26b.config import ProblemConfig
|
||||
from mcm26b.coverage import CoverageLedger # noqa: F401
|
||||
from mcm26b.planner import OmnidirectionalLoop, clear_certificate # noqa: F401
|
||||
from mcm26b.planner import OmnidirectionalLoop
|
||||
from mcm26b.planner.seven import (SevenBatch, SevenImmediate, SevenSweep,
|
||||
RING_RADIUS_M, seven_points)
|
||||
from mcm26b.protocol.client import SimulatorClient
|
||||
from mcm26b.protocol.rules import NEAR # noqa: F401
|
||||
from mcm26b.harness import LocalSimTransport, LocalSimulator
|
||||
from referee import Source
|
||||
from mcm26b.harness import random_omni_scene
|
||||
@@ -70,7 +67,8 @@ def run_case(name, sources, error_seed, out):
|
||||
"actions_file": str(log_path.relative_to(out)),
|
||||
"actions_sha256": hashlib.sha256(log_path.read_bytes()).hexdigest()}
|
||||
rows.append(row)
|
||||
print(f"{name} {label}: all_cleared={row['all_cleared']} T={row['virtual_time_s']:.1f}s M={row['measures']}", flush=True)
|
||||
print(f"{name} {label}: all_cleared={row['all_cleared']} "
|
||||
f"T={row['virtual_time_s']:.1f}s M={row['measures']}", flush=True)
|
||||
return rows
|
||||
|
||||
|
||||
@@ -96,7 +94,8 @@ def geometry_check():
|
||||
"sampled_max_distance_m": worst[0], "sampled_worst_point": worst[1],
|
||||
"samples": 181*721,
|
||||
"passed": worst[0] <= analytic+1e-8 and analytic < field.r_eff_min_m,
|
||||
"note": "Grid samples check the derivation; the sector proof establishes continuous coverage."}
|
||||
"note": ("Grid samples check the derivation; "
|
||||
"the sector proof establishes continuous coverage.")}
|
||||
|
||||
|
||||
def main():
|
||||
@@ -137,10 +136,16 @@ def main():
|
||||
result = {"source": "local_simulator_only", "production_algorithm_modified": False,
|
||||
"seeds": args.seeds, "config": asdict(ProblemConfig()),
|
||||
"geometry": geometry_check(), "aggregates": aggregates, "runs": rows,
|
||||
"limitations": "Same scene and fixed per-position error field for each variant; synthetic data, not an official improvement estimate. Only search/scheduling is changed; no posterior or localizer redesign."}
|
||||
(args.out/"benchmark.json").write_text(json.dumps(result, ensure_ascii=False, indent=2), encoding="utf-8")
|
||||
"limitations": (
|
||||
"Same scene and fixed per-position error field for each variant; "
|
||||
"synthetic data, not an official improvement estimate. "
|
||||
"Only search/scheduling is changed; no posterior or localizer redesign.")}
|
||||
(args.out/"benchmark.json").write_text(
|
||||
json.dumps(result, ensure_ascii=False, indent=2), encoding="utf-8")
|
||||
print(json.dumps(aggregates, ensure_ascii=False, indent=2))
|
||||
return 0 if result["geometry"]["passed"] and all(a["valid_runs"] == a["runs"] for a in aggregates.values()) else 1
|
||||
passed = (result["geometry"]["passed"]
|
||||
and all(a["valid_runs"] == a["runs"] for a in aggregates.values()))
|
||||
return 0 if passed else 1
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
Reference in New Issue
Block a user