# Ti-2 配方动态优化(recipe-optim) > 对应 issue #78(问题建模)/ #79(求解器集成)/ #80(跨工序寻优)/ #81(可解释建议)。 > PRD §5.3 ②「配方动态优化」:`入:质量目标 + 约束;出:参数/配方建议`,二期交付。 本目录沉淀**配方优化**的声明式模板资产 + 求解器无关的问题建模引擎,跨行业差异落 资产(YAML 模板),引擎零改动(PRD「超参包驱动」「模板化技术路径」)。 ## 模块 - `problem.py` — 优化问题建模(**#78**):决策变量 / 目标 / 约束的声明式规格 + 校验 + 可行性判定 + 零依赖 YAML 子集加载。 - `config/recipe_optim.template.yaml` — Template-Ti 配方优化模板资产。 - `tests/` — 单元测试(`python -m unittest discover -s tests`)。 - `_sanity_check.py` — 部署期一键自检(5 能力点)。 ## 设计 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 # 部署期自检 ``` 零第三方依赖(纯标准库),与内核既有模块一致,便于离线/隔离网部署。