SuperAPI AI 工具集

nvidia-cuopt-numerical-optimization-api-cli

编程与开发

查看项目

更新于 10-15 19:58

技能介绍

用途:该技能用于在命令行中通过 cuopt_cli 从 MPS 文件求解 LP、MILP 和 QP(beta)问题。三种问题类型共用同一命令、选项与 MPS 工作流;QP 使用标准 MPS 的二次目标扩展。编码前应先确认问题类型与建模(变量、目标、约束、变量类型)。本技能仅限 CLI(MPS 输入)。

主要能力与用法:基本命令为 cuopt_cli problem.mps;可加选项,如 cuopt_cli problem.mps --time-limit 120 --mip-relative-tolerance 0.01。常用选项包括 --help、--time-limit(秒)、--mip-relative-tolerance(MIP 相对容差)、--mip-absolute-tolerance(MIP 绝对容差)、--presolve、--iteration-limit、--method。

MPS 格式要求按顺序包含:NAME、ROWS(N 为目标,L/G/E 为约束)、COLUMNS、RHS、BOUNDS(可选,LO/UP/FX/BV/LI/UI)、ENDATA。整数变量需在整数列前后使用 'MARKER' 'INTORG' 与 'MARKER' 'INTEND'。

QP(beta):二次目标沿用标准 MPS 工作流,命令与选项相同;QP 专用标志见 cuopt_cli --help,二次目标 MPS 格式见仓库文档 docs/cuopt/source/cuopt-cli/。QP 规则:仅支持 MINIMIZE,最大化需在 MPS 中取反目标系数(含 Q 项);仅支持连续变量,不要将整数标记与二次目标混用。

排错:MPS 解析失败时检查 ENDATA、节顺序(NAME、ROWS、COLUMNS、RHS、[BOUNDS]、ENDATA)与整数标记;不可行时检查约束方向(L/G/E)与 RHS 值。

示例资源:assets/README.md 提供示例 MPS 的构建与运行说明,包括 lp_simple(最小 LP)、lp_production(椅子与桌子的生产计划,木材/劳动力)、milp_facility(带二元开/关的设施选址)。

获取 CLI:CLI 随 Python 包 cuopt 提供,可通过 pip 或 conda 安装,然后运行 cuopt_cli --help 验证。

限制:仅支持 CLI 与 MPS 输入;QP 为 beta,仅最小化、仅连续变量。其他平台、收费与价格信息暂未提供。