2026-08-05 03:58:25 +08:00
|
|
|
|
# Ti-2 配方动态优化(recipe-optim)
|
|
|
|
|
|
|
|
|
|
|
|
> 对应 issue #78(问题建模)/ #79(求解器集成)/ #80(跨工序寻优)/ #81(可解释建议)。
|
|
|
|
|
|
> PRD §5.3 ②「配方动态优化」:`入:质量目标 + 约束;出:参数/配方建议`,二期交付。
|
|
|
|
|
|
|
|
|
|
|
|
本目录沉淀**配方优化**的声明式模板资产 + 求解器无关的问题建模引擎,跨行业差异落
|
|
|
|
|
|
资产(YAML 模板),引擎零改动(PRD「超参包驱动」「模板化技术路径」)。
|
|
|
|
|
|
|
|
|
|
|
|
## 模块
|
|
|
|
|
|
|
|
|
|
|
|
- `problem.py` — 优化问题建模(**#78**):决策变量 / 目标 / 约束的声明式规格 +
|
|
|
|
|
|
校验 + 可行性判定 + 零依赖 YAML 子集加载。
|
2026-08-05 04:00:57 +08:00
|
|
|
|
- `solver.py` — 求解器集成(**#79**):`SolverConfig` + `Solution` + 网格枚举/
|
|
|
|
|
|
坐标下降轻量求解器 + `solve()` 统一入口,求解器无关契约。
|
2026-08-05 04:03:23 +08:00
|
|
|
|
- `cross_process.py` — 跨工序关联寻优(**#80**):纯标准库岭回归 +
|
|
|
|
|
|
`CrossProcessModel`(上游指标→下游质量,fit/predict/evaluate R²/可解释权重/序列化)。
|
2026-08-05 04:05:10 +08:00
|
|
|
|
- `advisor.py` — 优化建议生成与可解释性(**#81**):整合 #78/#79/#80 输出
|
|
|
|
|
|
可溯源建议报告(变量级/跨工序佐证/风险提示/溯源链路)。
|
2026-08-05 03:58:25 +08:00
|
|
|
|
- `config/recipe_optim.template.yaml` — Template-Ti 配方优化模板资产。
|
2026-08-05 04:05:10 +08:00
|
|
|
|
- `tests/` — 单元测试(`python -m unittest discover -s tests`,76 用例)。
|
|
|
|
|
|
- `_sanity_check.py` — 部署期一键自检(8 能力点)。
|
2026-08-05 03:58:25 +08:00
|
|
|
|
|
|
|
|
|
|
## 设计
|
|
|
|
|
|
|
|
|
|
|
|
1. **决策变量 `DecisionVariable`**:`bounds`(连续区间)/`choices`(离散枚举),
|
|
|
|
|
|
带 `meaning`/`unit`/`initial`,供 #81 可解释建议引用。
|
|
|
|
|
|
2. **目标 `ObjectiveSpec`**:线性加权(min/max)+ PRD 超参包 `target` 字段。
|
|
|
|
|
|
3. **约束 `ConstraintSpec`**:统一描述 box / linear / ratio / forbidden 工艺约束,
|
|
|
|
|
|
每条带 `reason`(工艺依据,对齐 PRD"可解释、可溯源、引用依据")。
|
|
|
|
|
|
4. **问题 `OptimizationProblem`**:`validate` 聚合静态校验、`is_feasible` /
|
|
|
|
|
|
`violated_constraints` 做可行性判定,`solve` 留给 #79 注入求解器(求解器无关)。
|
|
|
|
|
|
|
|
|
|
|
|
## 与上下游的契约
|
|
|
|
|
|
|
|
|
|
|
|
- 下游 #79 求解器:消费 `OptimizationProblem`,产出满足约束的最优取值。
|
|
|
|
|
|
- 下游 #80 跨工序寻优:复用同一变量/目标/约束模型描述跨工序关联。
|
|
|
|
|
|
- 下游 #81 可解释建议:读 `violated_constraints` + 变量 `meaning` + 约束 `reason`
|
|
|
|
|
|
产出"可溯源"建议。
|
|
|
|
|
|
|
|
|
|
|
|
## 运行
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
python -m unittest discover -s tests # 单元测试
|
|
|
|
|
|
python _sanity_check.py # 部署期自检
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
零第三方依赖(纯标准库),与内核既有模块一致,便于离线/隔离网部署。
|