关于 constrained-optimization
constrained-optimization 是一种方法技能,用可行性检查和证据将优化请求转化为决策记录。它面向需要比较方法、验证候选方案并记录权衡与局限的决策者和分析人员。
主要功能
- 01定义变量、目标和约束
- 02建立可行基线
- 03按问题特征选择求解方法
- 04在固定条件下比较运行结果
- 05独立验证方案和约束违例
- 06记录权衡与监控触发条件
适用场景
- 01制定包含硬约束和软约束的决策问题
- 02比较精确方法与启发式方法
- 03审计返回方案的可行性
- 04记录帕累托权衡和重新优化触发条件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ magnus919/ agent-skills --skill constrained-optimization安装后在 Claude Code 中输入/constrained-optimization确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdevals/evals.jsonreferences/formulation-and-evidence.mdmultiobjective-and-robustness.mdsource-index.mdtemplates/formulation-record.mdsolution-audit.md详细介绍
约束优化
使用此方法,将优化请求转化为有据可依的决策记录。
工作流
- 界定决策。 明确决策者、可行的行动时间窗口、变量域(连续、整数、类别、二元)、边界、单位,以及每个变量是否可控。
- 说明目标。 写明目标方向、单位、聚合方式、基线和可接受的权衡。在决策者选定权重、字典序优先级、ε 约束或 Pareto 审查方式之前,将多个目标分开处理。
- 分类约束。 将每项约束标记为硬约束(必须满足)、软约束(偏好,且有明确的惩罚或放宽方式)或信息项。定义等式/不等式容差、可行性判定条件,以及违约程度的衡量方式。绝不要把硬约束违约隐藏在惩罚分数中。
- 建立基线。 验证已知的可行当前最优解,并在条件允许时建立简单的精确基线或有界基线;如果精确求解不切实际,还应建立启发式基线。说明每种基线能够证明和不能证明的内容。
- 选择方法。 根据变量域、平滑性、规模和证明需求匹配求解器类别。当求解状态和差距支持时,精确求解器可证明最优性或给出界;启发式方法则提供候选解和经验性证据。不要把超时或未知状态称为不可行。
- 进行公平比较。 固定目标/约束实现、可行性检查器、计算预算、停止规则和报告格式。对随机方法,使用相同预算,并声明随机种子/重复次数。将求解器配置与问题形式化分开。
- 独立验证。 使用独立实现或检查器,根据返回的决策重新计算目标和每项约束。分别报告最佳可行解、违约程度、界/差距、状态、运行时间和未解决的未知项。
- 决策并监控。 选择可行解或 Pareto 集合,并说明权衡依据、敏感性/稳健性证据、负责人以及回滚/重新优化触发条件。只有在不可行性已获证明或独立认证时,才能记录“在这些约束下不可行”。
路由与退出
加载 references/formulation-and-evidence.md,了解问题形式化、可行性、求解器状态、界/差距和比较规则。加载 references/multiobjective-and-robustness.md,了解 Pareto 决策和随机敏感性。使用问题形式化记录在求解前定义问题,并使用解审计验证返回的候选解。
此技能负责决策问题形式化和证据。将统计估计、因果问题和不确定性模型转交给 data-scientist;将 ML 超参数/模型训练优化转交给 ml-engineering;将特定求解器或云服务的操作转交给相应的工具技能。如果变量、目标单位、硬约束、可行性检查器或预算尚未定义,则停止。只有在形式化记录和解审计记录了决策、支持性证据、未解决的限制和负责人后,才算完成。
有关官方求解器结果参考资料及其版本/适用性限制,请阅读来源索引。
不适用情形
不要将此技能用于推断统计、因果推断或统计模型拟合。不要将此技能用于 ML 训练/模型选择方法论,也不要用于求解器专属的安装和操作指南。
评论
支持 Markdown