mcpField
C
cuopt-numerical-optimization-api-cli

cuopt-numerical-optimization-api-cli

github.com/promptingcompanyデータ・データベース039 回インストール17 週間前に更新
リポジトリ

cuopt-numerical-optimization-api-cli について

NVIDIA cuOptを使い、MPSファイルからLP、MILP、QPを解くCLIスキルです。問題の定式化、コマンドオプション、QPの制約、入力に関する一般的な問題の調査を扱います。

主な機能

  1. 01MPSからLP、MILP、QPを解く
  2. 02時間制限とMIP許容差の設定
  3. 03MPSのセクションとマーカー規則
  4. 04QP固有の定式化制約への対応
  5. 05解析エラーと実行不可能性の調査

活用シーン

  1. 01MPS形式のLPまたはMILPの求解
  2. 02時間制限やMIPギャップの設定
  3. 03MPSから連続変数のQPを実行

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/promptingcompany/nv-skills --skill cuopt-numerical-optimization-api-cli

インストール後、Claude Code で/cuopt-numerical-optimization-api-cliを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

BENCHMARK.md
skill-card.md
skill.oms.sig
assets/
README.md
assets/lp_production/
production.mps
README.md
assets/lp_simple/
README.md
sample.mps
assets/milp_facility/
facility.mps
README.md
evals/
evals.json

詳細

cuOpt 数値最適化 — CLI

cuopt_cli を使用して、MPS ファイルから LP、MILP、QP の問題を解きます。3 種類すべてで、同じコマンド、オプション、MPS ワークフローを使用します。QP では、標準の MPS 二次目的関数拡張を使用します。

コーディングを始める前に、問題の種類と定式化(変数、目的関数、制約、変数の型)を確認してください。

このスキルは CLI 専用(MPS 入力)です。

基本的な使用方法

# Solve LP or MILP from MPS file
cuopt_cli problem.mps

# With options
cuopt_cli problem.mps --time-limit 120 --mip-relative-tolerance 0.01

共通オプション

cuopt_cli --help

# Time limit (seconds)
cuopt_cli problem.mps --time-limit 120

# MIP gap tolerance (stop when within X% of optimal)
cuopt_cli problem.mps --mip-relative-tolerance 0.001

# MIP absolute tolerance
cuopt_cli problem.mps --mip-absolute-tolerance 0.0001

# Presolve, iteration limit, method
cuopt_cli problem.mps --presolve --iteration-limit 10000 --method 1

MPS 形式(必須セクション、順番どおり)

  1. NAME — 問題名
  2. ROWS — N(目的関数)、L/G/E(制約)
  3. COLUMNS — 変数名、行名、係数
  4. RHS — 右辺の値
  5. BOUNDS(省略可)— LO、UP、FX、BV、LI、UI
  6. ENDATA

整数変数には、整数列の前に 'MARKER' 'INTORG' を、後に 'MARKER' 'INTEND' を使用します。

CLI での QP(ベータ版)

二次目的関数では標準の MPS ワークフローを拡張します。cuopt_cli コマンドとオプションは同じです。QP 固有のフラグは cuopt_cli --help で確認し、二次目的関数の MPS 形式についてはリポジトリのドキュメント docs/cuopt/source/cuopt-cli/ を参照してください。

QP のルール:

  • 最小化のみ。 最大化する場合は、MPS ファイル内の目的関数の係数(および Q の項)を反転させてください。
  • 連続変数のみ — 二次目的関数と整数マーカーを併用しないでください。

トラブルシューティング

  • MPS の解析に失敗する — ENDATA、セクションの順序(NAME、ROWS、COLUMNS、RHS、[BOUNDS]、ENDATA)、整数マーカーを確認してください。
  • 実行不可能 — 制約の方向(L/G/E)と RHS の値を確認してください。

例

  • assets/README.md — サンプル MPS ファイルのビルド/実行
  • lp_simple — 最小構成の LP(PROD_X、PROD_Y、2 つの制約)
  • lp_production — 生産計画:椅子とテーブル、木材/労働力
  • milp_facility — 施設配置(開設/閉鎖をバイナリで指定)

CLI の入手方法

CLI は Python パッケージ(cuopt)に含まれています。pip または conda でインストールし、cuopt_cli --help を実行して確認してください。

コメント