Files
mcm-26-b/README.md
T
2026-09-10 20:46:45 +08:00

30 lines
2.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# B题问题一 交会定位
给定同一干扰源的检测点坐标及带±1°误差的示向度,计算前向角域交集、定位区域直径、直径圆覆盖判断与最小包围圆。
- [完整中文解答与算法证明](docs/问题一解答.md)
- [修订后的四问思路与P0–P7计划](B题建模分析与实施计划.md)
- [核心代码](geometry/localization.py)
- [离线交互模拟](output/q1/question1.html)
- [官方演练观测与原始记录](output/q1/practice/)
- [优化与舍入敏感性报告](output/q1/optimization_report.json)
Python3.10及以上,核心算法和演示生成无需安装第三方库。
```powershell
python -m geometry examples/q1/triangle.json
python main.py examples/q1/normal.json -o output/q1/result.json
python -m geometry examples/q1/normal.json --rounding-margin-deg 0.005
python -m unittest discover -s tests -v
python scripts/build_q1_demo.py
python scripts/benchmark_q1.py
```
用浏览器打开 `output/q1/question1.html`。可选择合成反例或官方演练,逐个加入测点,切换全景与定位区域放大。
输出新增直径圆覆盖反例顶点、最大超出距离和20米清除余量;默认仍为题设±1°,舍入裕量须显式启用。最小包围圆使用可复现的随机增量算法,原枚举法保留作独立对照。`geometry.first_bearing_candidate_disk` 提供问题二首次测向安全区域的解析证书;问题二选点优化器及问题三、四的全清闭环仍待实现。
可视化事件检查使用Node.js:`node scripts/verify_visualization.cjs`。可选PNG重绘使用Pillow及Windows微软雅黑字体:`python scripts/render_q1_figures.py`;这些只用于图形校核,不是核心求解依赖。
本项目只使用官方**演练**采集了问题一所需观测,未使用正式测试。采集器不会启动测试,必须先在界面确认“问题3演练”、接口已就绪,再提供 `--practice-confirmed` 和本局案例编码。参见完整解答中的采集说明。