SkillAtlasSkill 详情

cuopt-numerical-optimization-formulation

Official, NVIDIA-verified Agent Skills for Claude Code, Codex, and other coding agents.

审核状态:已审核Quality 80Security 100

复制安装命令

用 Codex 或 Claude 安装复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它先审查 Skill 页面再帮你安装。

复制前请先查看来源、License 和安全提示。

项目 README

来源文件:README.md

抓取于 2026年7月28日

NVIDIA Agent Skills

Official, NVIDIA-verified Agent Skills for Claude Code, Codex, and other coding agents.

NVIDIA Agent Skills Spec License

📖 Docs: docs.nvidia.com/skills  ·  📺 Livestream: From Vulnerable to Verified  ·  📝 Blog: NVIDIA Verified Agent Skills: Capability Governance for AI Agents


Skills are portable instruction sets that teach AI agents how to use NVIDIA software optimally: Physical AI and robotics workflows, simulation, CUDA-X libraries, RAG and AI Blueprints, and platform tools. This repository is a catalog: skills are maintained in their respective product repos, and mirrored here daily via an automated sync pipeline. Skills are being added continuously, so check back for updates. We are building this infrastructure in the open, and contributions are welcome. See the Roadmap for what is planned next.


Quickstart

Install NVIDIA skills with the default skills CLI flow:

npx skills add nvidia/skills

The CLI runs through npx and prompts you to choose a skill and install destination. You do not need to clone this repo or copy skill folders by hand.

Requires a current skills CLI (v1.5.16 or newer). Installing via npx skills@latest add nvidia/skills always uses the latest. On older CLIs (v1.5.15 and earlier), skills may install but not appear in Claude Code — see Troubleshooting.

The skill is available the next time your agent loads skills and encounters a relevant task. For example, ask your agent to "solve a linear programming problem with cuOpt" and the skill guides it through the cuOpt Python API. In Claude Code, run /reload-skills to load newly installed skills in your current session.

Install One Skill Without Prompts

Use this when you already know the skill name and want to skip prompts.

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --yes

Replace cuopt-numerical-optimization-api with any skill name from the Skill Catalog.

Install for a Specific Agent

Use --agent to target a specific AI coding agent. Initially, we'll support common client targets, expanding the list over time. For the full list of clients supported by the spec, see the skills CLI Supported Agents table.

Claude Code

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --agent claude-code

Codex

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --agent codex

Snowflake CoCo

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --agent cortex

Cursor

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --agent cursor

Kiro

npx skills add nvidia/skills --skill cuopt-numerical-optimization-api --agent kiro-cli

Use --agent more than once to install the same skill into multiple agents.

npx skills add nvidia/skills \
  --skill cuopt-numerical-optimization-api \
  --agent claude-code \
  --agent codex \
  --agent cursor \
  --agent kiro-cli

Keep Skills Up to Date

New skills land continuously, and existing ones are revised, renamed, or consolidated as the catalog evolves. Refresh what you have installed with:

npx skills update

Run it interactively and the CLI also flags skills that were removed or merged upstream (for example, when several skills are consolidated into one) and offers to remove the stale local copies. Use npx skills list to see what is installed and npx skills check to preview what is out of date first.

Browse the Catalog

Use this when you want to see available NVIDIA skills before installing anything.

npx skills add nvidia/skills --list

For non-interactive installs, global installs, agent-specific installs, updates, removals, and fallback manual copying, see Advanced installation.


Skill Catalog

ProductDescriptionSkills
AIQNVIDIA AI-Q Blueprint - deploy local AI-Q services and run shallow or deep research workflows as agent skills.aiq-research, aiq-deploy
CUDA-QCUDA Quantum — onboarding guide for installation, test programs, GPU simulation, QPU hardware, and quantum applications.cudaq-guide
cuDFOfficial NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV/Parquet I/O, nullable semantics, and multi-GPU DataFrame workloads.accelerated-computing-cudf
cuFOLIOGPU-accelerated Mean-CVaR portfolio optimization with NVIDIA cuOpt — CVaR optimization, efficient frontier, scenario generation, backtesting, and rebalancing.cufolio
cuOptGPU-accelerated optimization — vehicle routing, linear programming, quadratic programming, installation, server deployment, and developer tools.cuopt-install, cuopt-multi-objective-exploration, cuopt-numerical-optimization-api, cuopt-numerical-optimization-formulation, cuopt-routing-api-python, cuopt-server-api-python
cuPyNumericNumPy and SciPy on multi-node multi-GPU systems — skills to help with installing cuPyNumeric, migrating existing NumPy code, and doing parallel I/Ocupynumeric-hdf5, cupynumeric-install, cupynumeric-migration-readiness, cupynumeric-parallel-data-load
DALIGPU-accelerated data loading and processing with NVIDIA DALI.dali-dynamic-mode
Data DesignerBuild declarative synthetic dataset generation pipelines with NeMo Data Designer.data-designer
DeepStreamAgentic skills for guided DeepStream development.amc-run-sample-calibration, amc-run-video-calibration, amc-setup-calibration-stack, deepstream-dev, deepstream-generate-pipeline, deepstream-import-vision-model, deepstream-profile-pipeline, deepstream-sop
Digital HealthAgent skills for the clinical ASR evaluation flywheel — term curation, synthetic clinical-speech benchmark generation, KER (Keyword Error Rate) scoring, and fine-tune guidance.digital-health-clinical-asr-setup, digital-health-clinical-asr-build, digital-health-clinical-asr-eval, digital-health-clinical-asr-finetune
DOCATeach AI agents to use the NVIDIA DOCA SDK on BlueField DPUs and ConnectX NICs — setup, libraries, services, tools, deployment, and debugging.doca-bare-metal-deployment, doca-bf3-deployment, doca-bf4-deployment, doca-collectx-deployment, doca-container-deployment, doca-debug, doca-hardware-safety, doca-programming-guide, doca-public-knowledge-map, doca-setup, doca-structured-tools-contract, doca-upgrade, doca-version, doca-aes-gcm, doca-argp, doca-comch, doca-common, doca-compress, doca-devemu, doca-dma, doca-dpa, doca-dpdk-bridge, doca-erasure-coding, doca-eth, doca-flow, doca-flow-dpa-provider, doca-gpi, doca-gpunetio, doca-mgmt, doca-pcc, doca-pcc-ztr-rttcc-algo, doca-rdma, doca-rdmi, doca-rmax, doca-sha, doca-sta, doca-telemetry, doca-telemetry-exporter, doca-urom, doca-verbs, doca-argus, doca-dms, doca-firefly, doca-urom-svc, doca-bench, doca-bench-extension, doca-caps, doca-comm-channel-admin, doca-dpa-hl-tracer, doca-flow-dpa-perf, doca-flow-grpc-server, doca-flow-perf, doca-flow-tune, doca-gpunetio-ib-write-bw, doca-gpunetio-ib-write-lat, doca-pcc-counters, doca-sha-offload-engine, doca-socket-relay, doca-spcx-cc, doca-telemetry-utils
DynamoNVIDIA Dynamo deployment bring-up on Kubernetes — pick and deploy recipes, start router modes, validate disagg NIXL/UCX/NCCL interconnect, and triage day-2 failures.dynamo-interconnect-check, dynamo-recipe-runner, dynamo-router-starter, dynamo-troubleshoot
Earth2StudioOpen-source deep-learning framework for exploring, building and deploying AI weather/climate workflows.earth2studio-create-datasource, earth2studio-create-diagnostic, earth2studio-create-prognostic, earth2studio-data-fetch, earth2studio-deterministic-forecast, earth2studio-discover, earth2studio-install
Holoscan SDKInstall and set up the Holoscan SDK on any platform (container, Debian, Python, Conda, or source).holoscan-install-debian, holoscan-install-source, holoscan-install-wheel, holoscan-install-conda, holoscan-install-container, holoscan-setup
Holoscan Sensor BridgeAgent-ready skills for Holoscan Sensor Bridge devkit workflows, covering demo environment bring-up, FPGA flashing for Lattice and VB1940 hardware, example application execution, and QA test-plan automation.hsb-setup, hsb-flash, hsb-app, hsb-test
Isaac for Healthcare WorkflowsAgent-ready skills for Isaac for Healthcare agentic and catheter-navigation workflows, covering task authoring, data pipelines, policy training and validation, CT-derived digital twins, DRR rendering, and interactive catheter simulation.i4h-workflow, i4h-workflow-setup, i4h-workflow-create, i4h-workflow-scene-edit, i4h-workflow-dataset-teleop, i4h-workflow-dataset-replay, i4h-workflow-dataset-mimic, i4h-workflow-dataset-annotate, i4h-workflow-dataset-convert, i4h-workflow-finetune, i4h-workflow-validate, i4h-workflow-e2e, i4h-lerobot-viz, i4h-catheter-navigation, i4h-catheter-navigation-setup, i4h-catheter-navigation-digital-twin, i4h-catheter-navigation-render-drr, i4h-catheter-navigation-viewport, i4h-catheter-navigation-smoke, i4h-catheter-navigation-e2e
Jetson BSPAgentic skills for setting up and customizing an NVIDIA Jetson Linux Board Support Package (BSP) — pick a target, prepare image and sources, customize IO (camera, PCIe, USB, pinmux, clocks, and more), then promote, flash, and validate.jetson-build-source, jetson-customize-camera, jetson-customize-clocks, jetson-customize-fan, jetson-customize-mgbe, jetson-customize-nvpmodel, jetson-customize-pcie, jetson-customize-pinmux, jetson-customize-uphy, jetson-customize-usb, jetson-derive-carrier, jetson-download-bsp, jetson-flash-image, jetson-generate-kb, jetson-init-image, jetson-init-source, jetson-init-target, jetson-link-docs, jetson-optimize-memory, jetson-print-bsp-info, jetson-promote-image, jetson-quick-start, jetson-set-target, jetson-validate-image
Jetson DeviceDevice-side agent skills for working with a live NVIDIA Jetson after boot — diagnostics, memory auditing, headless setup, inference memory tuning, LLM serving and benchmarking, packaging guidance, and speculative decoding.jetson-diagnostic, jetson-headless-mode, jetson-inference-mem-tune, jetson-llm-benchmark, jetson-llm-serve, jetson-memory-audit, jetson-package, jetson-print-device-info, jetson-speculative-decoding
Medical AI SkillsAgent-ready medical AI skills built on MONAI for DICOM handling, NVIDIA-hosted medical imaging model workflows, segmentation, synthesis, and evidence-oriented evaluation.dicom-metadata-extract, dicom-series-preflight, dicom-series-to-volume, nv-generate-ct-rflow, nv-generate-mr, nv-generate-mr-brain, nv-generate-mr-brain-finetune, nv-generate-vae-finetune, nv-reason-cxr, nv-segment-ct, nv-segment-ct-finetune, nv-segment-ctmr
Megatron-CoreLarge-scale distributed training — model parallelism, pipeline parallelism, and mixed precision.mcore-create-issue, mcore-linting-and-formatting, mcore-run-on-slurm, mcore-split-pr, mcore-testing
NeMo AutoModelNeMo AutoModel - PyTorch-native distributed training for LLMs/VLMs with Hugging Face support, recipes, launchers, and validation workflows.nemo-automodel-distributed-training, nemo-automodel-launcher-config, nemo-automodel-model-onboarding, nemo-automodel-recipe-development
NeMo MBridgeNeMo MBridge - PyTorch-native bridge between Hugging Face and Megatron-Core for checkpoint conversion, training recipes, and NVIDIA GPU performance workflows.nemo-mbridge-mlm-bridge-training, nemo-mbridge-multi-node-slurm, nemo-mbridge-perf-activation-recompute, nemo-mbridge-perf-cpu-offloading, nemo-mbridge-perf-cuda-graphs, nemo-mbridge-perf-expert-parallel-overlap, nemo-mbridge-perf-hierarchical-context-parallel, nemo-mbridge-perf-megatron-fsdp, nemo-mbridge-perf-memory-tuning, nemo-mbridge-perf-moe-comm-overlap, nemo-mbridge-perf-moe-dispatcher-selection, nemo-mbridge-perf-moe-hardware-configs, nemo-mbridge-perf-moe-long-context, nemo-mbridge-perf-moe-optimization-workflow, nemo-mbridge-perf-moe-vlm-training, nemo-mbridge-perf-parallelism-strategies, nemo-mbridge-perf-sequence-packing, nemo-mbridge-perf-tp-dp-comm-overlap, nemo-mbridge-recipe-recommender, nemo-mbridge-resiliency
NeMo PlatformNeMo Platform brings NVIDIA NeMo libraries together under one CLI, Python SDK, and web UInemo-evaluator-plugin, nemo-data-designer-plugin
NeMo RelaySkills to help get started and use NeMo Relay - a runtime for instrumenting and controlling AI agents across harnesses, applications, and frameworks.nemo-relay-install, nemo-relay-get-started, nemo-relay-instrument-calls, nemo-relay-instrument-context-isolation, nemo-relay-instrument-typed-wrappers, nemo-relay-plugin-adaptive-tuning, nemo-relay-plugin-build, nemo-relay-plugin-observability, nemo-relay-migrate-from-flow, nemo-relay-debug-runtime-integration
NeMo RetrieverNeMo Retriever - deploy NeMo Retriever Library locally, extract information from corpus of data, and answer questions against the corpus.nemo-retriever
NeMo-RLRLHF training on Ray — GRPO, DPO, and SFT for LLMs and VLMs with FSDP2 and Megatron-Core.launch-nemo-rl, nemo-rl-auto-research, nemo-rl-brev-etiquette, nemo-rl-docs, nemo-rl-session-memory
NemoClawSecure agent sandboxing — run OpenClaw inside NVIDIA OpenShell with managed inference, policy management, remote deployment, sandbox monitoring.nemoclaw-user-guide
NemotronAuthor end-to-end model development, customization, evaluation, and deployment pipelines using the NVIDIA AI stack.nemotron-customize, nemotron-retrieval-recipes, nemotron-policy-generator
Nemotron SpeechDeploy and operate NVIDIA Nemotron Speech (Riva) NIMs — ASR, TTS, and NMT, cloud-hosted via build.nvidia.com or self-hosted on your own GPU.nemotron-speech, nemotron-asr-finetune
Physical AIPhysical AI skills for simulation, synthetic data generation, training, validation and deployment and more.omniverse-cad-to-simready, omniverse-realtime-viewer, omniverse-usd-performance-tuning, physical-ai-infrastructure-setup-and-resilient-scaling, physical-ai-neural-reconstruction, physical-ai-defect-image-generation, physical-ai-video-data-augmentation, physical-ai-people-attribute-search
PhysicsNeMoNVIDIA PhysicsNeMo - Open-source deep-learning framework for building, training, and fine-tuning deep learning models using state-of-the-art Physics-ML methods.physicsnemo-discover
RAG BlueprintRAG pipeline — deploy, configure, troubleshoot, and manage retrieval augmented generation with Docker Compose or Helm.rag-blueprint, rag-eval, rag-perf
Skill Card GeneratorReads an agent skill's source files and produces a skill card plus a review table. Use when a skill directory exists and a governance card needs to be generated or updated.skill-card-generator
TAO ToolkitNVIDIA TAO Toolkit - fine-tune and optimize 100+ pretrained vision AI models with your own data using low-code microservices, then export production-ready models for edge or cloud deployment.tao-analyze-changenet-rca, tao-finetune-huggingface-model, tao-port-huggingface-model, tao-run-automl, tao-run-automl-deft-pipeline, tao-run-deft-aoi, tao-run-inference-service, tao-train-single-step, tao-analyze-gaps-visual-changenet, tao-analyze-gaps-vlm-bcq, tao-convert-dataset-format, tao-generate-image-grounding, tao-generate-referring-expressions, tao-generate-video-reasoning-annotations, tao-mine-aoi-images, tao-route-visual-changenet-samples, tao-validate-dataset-format, tao-finetune-clip, tao-finetune-cosmos-embed, tao-finetune-cosmos-reason, tao-train-action-recognition, tao-train-bevfusion, tao-train-centerpose, tao-train-deformable-detr, tao-train-depth-anything-v2, tao-train-dino, tao-train-fast-foundation-stereo, tao-train-foundation-stereo, tao-train-grounding-dino, tao-train-image-classification, tao-train-mask-auto-encoder, tao-train-mask-auto-label, tao-train-mask-grounding-dino, tao-train-mask2former, tao-train-metric-learning-recognition, tao-train-nvdinov2, tao-train-nvpanoptix3d, tao-train-ocdnet, tao-train-ocrnet, tao-train-oneformer, tao-train-optical-inspection, tao-train-pointpillars, tao-train-pose-classification, tao-train-reid, tao-train-rtdetr, tao-train-segformer, tao-train-sparse4d, tao-train-visual-changenet, tao-run-on-brev, tao-run-on-kubernetes, tao-run-on-local-docker, tao-run-on-slurm, tao-run-platform, tao-setup-nvidia-gpu-host, tao-launch-workflow, tao-list-capabilities
TileGymTile-based GPU programming — adding new kernels, cross-framework conversion, and performance optimization.tilegym-adding-cutile-kernel, tilegym-converting-cutile-to-julia, tilegym-converting-cutile-to-triton, tilegym-cutile-autotuning, tilegym-cutile-python, tilegym-improve-cutile-kernel-perf, tilegym-monkey-patch-kernels-to-transformers
Video Search and SummarizationVSS Blueprint — deploy profiles, search and summarize video, generate analysis reports, manage alerts and incidents, query VIOS sensors, and use the RTVI VLM microservice.vss-ask-video, vss-deploy-dense-captioning, vss-deploy-detection-tracking-2d, vss-deploy-detection-tracking-3d, vss-deploy-profile, vss-deploy-video-embedding, vss-generate-video-calibration, vss-generate-video-report, vss-manage-alerts, vss-manage-video-io-storage, vss-query-analytics, vss-search-archive, vss-setup-behavior-analytics, vss-setup-video-analytics-api, vss-summarize-video

Getting Help & Contributing

Where to file an issue depends on what's broken:

  • Skill content issues (a specific skill has a bug, missing functionality, or incorrect content) — file in the source repo for that product, using the per-product table below.
  • Catalog issues (catalog README errors, sync workflow problems, distribution channels, signing/verification flow, docs in this repo) — file here using the catalog issue templates: Bug Report, Feature Request, or Documentation Request or Correction.
  • Questions or general discussion — use Discussions. The issue tracker is reserved for bug reports, feature proposals with a design, and documentation issues.
  • Security vulnerabilities — follow the disclosure process in SECURITY.md; do not open a public issue.

Per-product source repo links:

ProductIssuesDiscussionsContributingSecurity
AIQIssuesDiscussionsContributingSecurity
CUDA-QIssuesDiscussionsContributingSecurity
cuDFIssuesDiscussionsContributingSecurity
cuFOLIOIssuesDiscussionsContributingSecurity
cuOptIssuesDiscussionsContributingSecurity
cuPyNumericIssues—Contributing—
DALIIssues—Contributing—
Data DesignerIssuesDiscussionsContributingSecurity
DeepStreamIssues—ContributingSecurity
Digital HealthIssues—ContributingSecurity
DOCAIssues—ContributingSecurity
DynamoIssuesDiscussionsContributingSecurity
Earth2StudioIssuesDiscussionsContributing—
Holoscan SDKIssues—ContributingSecurity
Holoscan Sensor BridgeIssues—Contributing—
Isaac for Healthcare WorkflowsIssues—ContributingSecurity
Jetson BSPIssues—ContributingSecurity
Jetson DeviceIssues—ContributingSecurity
Medical AI SkillsIssues—ContributingSecurity
Megatron-CoreIssuesDiscussionsContributing—
NeMo AutoModelIssuesDiscussionsContributingSecurity
NeMo MBridgeIssuesDiscussionsContributingSecurity
NeMo PlatformIssuesDiscussionsContributingSecurity
NeMo RelayIssuesDiscussionsContributingSecurity
NeMo RetrieverIssuesDiscussionsContributingSecurity
NeMo-RLIssuesDiscussionsContributingSecurity
NemoClawIssuesDiscussionsContributingSecurity
NemotronIssuesDiscussionsContributingSecurity
Nemotron SpeechIssues—ContributingSecurity
Physical AIIssues—ContributingSecurity
PhysicsNeMoIssuesDiscussionsContributingSecurity
RAG BlueprintIssuesDiscussionsContributingSecurity
Skill Card GeneratorIssues—ContributingSecurity
TAO ToolkitIssuesDiscussionsContributingSecurity
TileGymIssues—ContributingSecurity
Video Search and SummarizationIssuesDiscussionsContributingSecurity

For issues with this catalog repo itself (README, structure, listing a new product): open an issue here.


Verifying Skills

Every published skill ships with a detached OMS signature (skill.oms.sig). The sync pipeline drops any skill missing the required artifacts before publishing, so every skill in the catalog carries:

  • SKILL.md — the skill instructions consumed by the agent
  • skill-card.md — skill identity and governance card
  • skill.oms.sig — detached OMS signature (verifiable against nv-agent-root-cert.pem)
  • A Tier-3 evaluation dataset — accepted at evals/evals.json, evals/*.json, eval/*.json, or benchmark/evals.json
  • BENCHMARK.md — generated benchmark report capturing verifiable uplift data

Verify a skill against the NVIDIA trust anchor nv-agent-root-cert.pem:

pip install model-signing
model_signing verify certificate SKILL_DIR \
  --signature SKILL_DIR/skill.oms.sig \
  --certificate_chain nv-agent-root-cert.pem \
  --ignore_unsigned_files

A successful verification confirms that the skill contents have not been modified since signing by NVIDIA.

See Verify Signed Agent Skills for signature layout, the trust pipeline, and policy options.


Roadmap

  • ✅ Public skills catalog with NVIDIA-verified skills across multiple products
  • ✅ Automated sync pipeline with skills mirrored from product repos daily
  • ✅ Security scanning for all published skills covering instruction safety and supply-chain integrity
  • ✅ Skills signing so every published skill carries a verifiable NVIDIA signature
  • ✅ Skills universal evaluation criteria and task-specific criteria
  • ✅ Skill Card with machine-readable metadata for identity, provenance, quality, and behavioral boundaries
  • ✅ Sync-time compliance gates — signature drift detection and missing-artifact enforcement
  • ✅ Syndication to external marketplaces — Skills.sh, Codex plugin, Claude Code plugin, ClawHub, Hermes Hub
  • 🔲 Syndication to additional MCP hubs and partner channels

Repository Structure

NVIDIA/skills/
├── skills/                      # NVIDIA-verified skills (count grows continuously),
│   │                              synced from upstream product repos
│   ├── README.md                 # Browser-facing install guidance
│   ├── <product-prefix>-*/       # Flat layout — one dir per skill, product-prefixed
│   │                               # e.g. aiq-*, cufolio, cuopt-*, cupynumeric-*,
│   │                               # dali-*, deepstream-*, dicom-*, digital-health-*,
│   │                               # dynamo-*, earth2studio-*, holoscan-*, hsb-*,
│   │                               # jetson-*, launch-nemo-rl, mcore-*,
│   │                               # nemo-automodel-*, nemo-data-designer-plugin,
│   │                               # nemo-evaluator-plugin, nemo-mbridge-* (20 skills),
│   │                               # nemo-retriever, nemo-rl-* (4 skills),
│   │                               # nemoclaw-user-guide, nemotron-*, nemotron-speech,
│   │                               # nv-* (medical AI), physicsnemo-*, rag-*,
│   │                               # skill-card-generator, tao-*, tilegym-*,
│   │                               # vss-* (15 skills), accelerated-computing-cudf,
│   │                               # cudaq-guide
│   ├── omniverse-*/              # Physical AI — manually staged (see manual-components.yml)
│   └── physical-ai-*/            # Physical AI — manually staged
├── components.d/                # Product registry — one file per component, teams onboard here
│   ├── README.md                 # Schema and onboarding instructions
│   └── <product>.yml             # one file per registered product
├── plugins/                     # Packaged plugin distributions
│   └── nvidia-skills/            # Curated NVIDIA skills bundle (Claude Code, Codex)
├── plugins.d/                   # Plugin build registry — config for `build-plugins.py`
│   ├── README.md
│   ├── _defaults.yml
│   └── nvidia-skills.yml
├── .claude-plugin/              # Claude Code marketplace metadata
│   └── marketplace.json
├── .agents/plugins/             # Agent marketplace metadata (other clients)
│   └── marketplace.json
├── docs/                        # Long-form documentation (published via Fern)
│   ├── README.md                 # How to build the docs locally
│   ├── index.mdx
│   ├── advanced-install.mdx
│   ├── agent-skill-trust-pipeline.mdx
│   ├── release-checklist.mdx
│   ├── scanning-agent-skills.mdx
│   ├── signing-agent-skills.mdx
│   └── skill-cards.mdx
├── fern/                        # Fern docs site configuration
├── .github/
│   ├── workflows/                # Sync pipeline, plugin validation, DCO check, author verify
│   └── scripts/                  # regenerate-readme.sh, build-plugins.py,
│                                 # manual-components.yml (temp Physical AI catalog
│                                 # exception, removed after Computex 2026),
│                                 # marketplace/metadata.json (skill metadata sidecar)
├── nv-agent-root-cert.pem       # Trust anchor for OMS signature verification
├── skills.sh.json               # Skills.sh marketplace grouping config
├── CHANGELOG.md
├── CONTRIBUTING.md              # Contribution guidelines
├── SECURITY.md                  # Security reporting policy
├── CODE_OF_CONDUCT.md           # Community code of conduct
├── LICENSE-APACHE               # Apache 2.0 (source code)
└── LICENSE-CC-BY-4.0            # CC BY 4.0 (documentation/skills)

Skills are maintained in their respective product repos (see the Source column in the Skill Catalog) and synced to this repo daily. Products only appear under skills/ after the sync pipeline confirms each skill carries:

  • skill.oms.sig — detached OMS-format signature (verifiable against nv-agent-root-cert.pem)
  • skill-card.md — skill identity and governance card
  • A Tier-3 evaluation dataset — accepted at evals/evals.json, evals/*.json, eval/*.json, or benchmark/evals.json

When evaluation runs produce a BENCHMARK.md, it ships alongside the skill so consumers can see verifiable benchmark uplift data.


Standards & Compatibility

This repository adheres to the Agent Skills specification:

  • Skills are portable directories with a SKILL.md file at their root.
  • Metadata uses YAML frontmatter with required name and description fields.
  • Skills follow a progressive disclosure model — lightweight metadata loads at startup, full instructions load on activation.
  • Validate your skill using the skills-ref reference library.

License

Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.

This code is dual-licensed with documentation/skills under the CC-BY-4.0 AND source code under Apache-2.0 license terms. The full license texts can be found in LICENSE-APACHE and LICENSE-CC-BY-4.0 respectively.

其他

低风险

  • 来源需自行核对维护者身份。
  • 未检测到明显脚本安装指令。
  • 未检测到明显外部权限要求。
  • 未检测到高风险命令。
  • 扫描发现:0 条。

Codex — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/example/repo.git
  3. 将 "repo" 文件夹复制到 Codex 的 skills 目录中。
  4. 重启 Codex 让新的 skill 生效。

Codex — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Codex 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Codex 让新的 skill 生效。

Claude Code — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/example/repo.git
  3. 将 "repo" 文件夹复制到 Claude Code 的 skills 目录中。
  4. 重启 Claude Code 让新的 skill 生效。

Claude Code — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Claude Code 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Claude Code 让新的 skill 生效。

Cursor — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/example/repo.git
  3. 将 "repo" 文件夹复制到 Cursor 的 skills 目录中。
  4. 重启 Cursor 让新的 skill 生效。

Cursor — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Cursor 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Cursor 让新的 skill 生效。

GitHub Copilot — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/example/repo.git
  3. 将 "repo" 文件夹复制到 GitHub Copilot 的 skills 目录中。
  4. 重启 GitHub Copilot 让新的 skill 生效。

GitHub Copilot — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 GitHub Copilot 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 GitHub Copilot 让新的 skill 生效。

Windsurf — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/example/repo.git
  3. 将 "repo" 文件夹复制到 Windsurf 的 skills 目录中。
  4. 重启 Windsurf 让新的 skill 生效。

Windsurf — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Windsurf 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Windsurf 让新的 skill 生效。
查看 SKILL.md 原文
name: cuopt-numerical-optimization-formulation
version: "26.08.00"
description: LP, MILP, QP — concepts, problem-text parsing, and formulation patterns (parameters, constraints, decisions, objective). Concepts only; no API.
license: Apache-2.0
metadata:
  author: NVIDIA cuOpt Team
  tags:
    - linear-programming
    - milp
    - qp
    - formulation
    - concepts

Numerical Optimization Formulation

Concepts and workflow for going from a problem description to a clear formulation across LP, MILP, and QP. No API code here.

What is LP / MILP / QP

  • LP: Linear objective, linear constraints, continuous variables.
  • MILP: Same as LP plus some integer or binary variables (e.g., scheduling, facility location, selection).
  • QP: Quadratic objective (e.g., x², x·y terms — portfolio variance, least squares), linear constraints. QP support in cuOpt is currently in beta.

Identifying problem type

PropertyLPMILPQP
ObjectiveLinearLinearQuadratic (xᵀQx + cᵀx)
ConstraintsLinearLinearLinear + convex quadratic (inequality only) via second-order cones
VariablesContinuousMixed: continuous + integer/binaryContinuous
Sensemin or maxmin or maxminimize only (negate to max)
Duals / sensitivityDual values + reduced costsNone (integer optima)Dual values + reduced costs

If the objective is purely linear, prefer LP/MILP — do not artificially introduce quadratic terms. If any variable is integer or binary, the problem is MILP regardless of the rest.

Post-solve sensitivity (LP / QP only). Continuous LP and QP solutions expose dual values (the marginal objective change per unit a binding constraint is relaxed: where to invest to improve the outcome) and reduced costs (for a variable the optimizer left at zero, how far it must improve to enter the solution: a near-miss). MILP solutions have no duals — integer optima are not continuous, so there are none to return. Duals are also unavailable when the model includes quadratic constraints — the second-order cone path returns primal values only. See the language-specific API skills for how to retrieve them after a solve.

Required formulation questions

Ask these if not already clear:

  1. Decision variables — What are they? Bounds?
  2. Objective — Minimize or maximize? Linear or quadratic? For QP: any squared or cross terms (x², x·y)? If maximize a quadratic, the user must negate and minimize.
  3. Constraints — Linear inequalities/equalities? Convex quadratic constraints (inequality only) are also supported, handled as second-order cones; non-convex or equality quadratic constraints are not.
  4. Variable types — All continuous (LP / QP) or some integer/binary (MILP)?
  5. Convexity (QP only) — For minimization, the quadratic form (matrix Q) should be positive semi-definite for well-posed problems.

Typical modeling elements

  • Continuous variables — production amounts, flow, allocations, portfolio weights.
  • Binary variables — open/close, yes/no (e.g., facility open, item selected).
  • Linking constraints — e.g., production only if facility open (Big-M or indicator).
  • Resource constraints — linear cap on usage (materials, time, capacity).
  • Quadratic objective terms — variance (xᵀQx), squared error (‖Ax − b‖²), interaction terms.

Typical QP use cases

  • Portfolio optimization — minimize variance subject to return and budget.
  • Least squares — minimize ‖Ax − b‖² subject to linear constraints.
  • Other quadratic objectives with linear constraints.

Problem statement parsing

When the user gives problem text, classify every sentence and then summarize before formulating. The parsing framework below applies regardless of LP / MILP / QP.

Classify every sentence as parameter/given, constraint, decision, or objective. Watch for implicit constraints (e.g., committed vs optional phrasing) and implicit objectives (e.g., "determine the plan" + costs → minimize total cost).

Ambiguity: If anything is still ambiguous, ask the user or solve all plausible interpretations and report all outcomes; do not assume a single interpretation.

🔒 MANDATORY: When in Doubt — Ask

  • If there is any doubt about whether a constraint or value should be included, ask the user and state the possible interpretations.

🔒 MANDATORY: Complete-Path Runs — Try All Variants

  • When the user asks to run the complete path (e.g., end-to-end, full pipeline), run all plausible variants and report all outcomes so the user can choose; do not assume a single interpretation.

Three labels

LabelMeaningExamples (sentence type)
Parameter / givenFixed data, inputs, facts. Not chosen by the model."Demand is 100 units." "There are 3 factories." "Costs are $5 per unit."
ConstraintSomething that must hold. May be explicit or implicit from phrasing."Capacity is 200." "All demand must be met." "At least 2 shifts must be staffed."
DecisionSomething we choose or optimize."How much to produce." "Which facilities to open." "How many workers to hire."
ObjectiveWhat to minimize or maximize. May be explicit ("minimize cost") or implicit ("determine the plan" with costs given)."Minimize total cost." "Determine the production plan" (with costs) → minimize total cost.

Implicit constraints: committed vs optional phrasing

Committed/fixed phrasing → treat as parameter or implicit constraint (everything mentioned is given or must happen). Not a decision.

PhrasingInterpretationWhy
"Plans to produce X products"Constraint: all X must be produced.Commitment; production level is fixed.
"Operates 3 factories"Parameter: all 3 are open. Not a location-selection problem.Current state is fixed.
"Employs N workers"Parameter: all N are employed. Not a hiring decision.Workforce size is given.
"Has a capacity of C"Parameter (C) + constraint: usage ≤ C.Capacity is fixed.
"Must meet all demand"Constraint: demand satisfaction.Explicit requirement.

Optional/decision phrasing → treat as decision.

PhrasingInterpretationWhy
"May produce up to …"Decision: how much to produce.Optional level.
"Can choose to open" (factories, sites)Decision: which to open.Selection is decided.
"Considers hiring"Decision: how many to hire.Hiring is under consideration.
"Decides how much to order"Decision: order quantities.Explicit decision.
"Wants to minimize/maximize …"Objective (drives decisions).Goal; decisions are the levers.

Implicit objectives — do not miss

If the problem asks to "determine the plan" (or similar) but does not state "minimize" or "maximize" explicitly, the objective is often implicit. You MUST identify it and state it before formulating; do not build a model with no objective.

Phrasing / contextLikely implicit objectiveWhy
"Determine the production plan" + costs given (per unit, per hour, etc.)Minimize total cost (production + inspection/sales + overtime, etc.)Plan is chosen; costs are specified → natural goal is to minimize total cost.
"Determine the plan" + costs and revenues givenMaximize profit (revenue − cost)Both sides of the ledger → optimize profit.
"Try to determine the monthly production plan" + workshop hour costs, inspection/sales costsMinimize total costAll cost components are given; no revenue to maximize → minimize total cost.

Rule: When the problem gives cost (or cost and revenue) data and asks to "determine", "find", or "establish" the plan, always state the objective explicitly (e.g., "I'm treating the objective as minimize total cost, since only costs are given."). If both cost and revenue are present, state whether you use "minimize cost" or "maximize profit". Ask the user if unclear.

Parsing workflow

  1. Split the problem text into sentences or logical clauses.
  2. Label each: parameter/given | constraint | decision | objective (if stated).
  3. Identify the objective (explicit or implicit): If the problem says "minimize/maximize X", that's the objective. If it only says "determine the plan" (or "find", "establish") but gives costs (and possibly revenues), the objective is implicit — state it (e.g., minimize total cost, or maximize profit) and confirm with the user if ambiguous.
  4. Flag implicit constraints: For each sentence, ask — "Does this state a fixed fact or a requirement (→ parameter/constraint), or something we choose (→ decision)?"
  5. Resolve ambiguity by checking verbs and modals:
    • "is", "has", "operates", "employs", "plans to" (fixed/committed) → parameter or implicit constraint.
    • "may", "can choose", "considers", "decides", "wants to" (optional) → decision or objective.
  6. 🔒 MANDATORY — If anything is still ambiguous (e.g., a value or constraint could be read two ways): ask the user which interpretation is correct, or solve all plausible interpretations and report all outcomes. Do not assume a single interpretation.
  7. Summarize for the user: list parameters, constraints (explicit + flagged implicit), decisions, and objective (explicit or inferred) before writing the math formulation.

Parsing checklist

  • Every sentence has a label (parameter | constraint | decision | objective if stated).
  • Objective is identified: Explicit ("minimize/maximize X") or implicit ("determine the plan" + costs → minimize total cost; + revenues → maximize profit). Never formulate without stating the objective.
  • Committed phrasing ("plans to", "operates", "employs") → not decisions.
  • Optional phrasing ("may", "can choose", "considers") → decisions.
  • Implicit constraints from committed phrasing are written out (e.g., "all X must be produced").
  • 🔒 MANDATORY — Ambiguity: Any phrase that could be read two ways → I asked the user or I will solve all interpretations and report all outcomes (no silent single interpretation).
  • Summary is produced before formulating (parameters, constraints, decisions, objective).

Example

Text: "The company operates 3 factories and plans to produce 500 units. It may use overtime at extra cost. Minimize total cost."

Sentence / phraseLabelNote
"Operates 3 factories"ParameterAll 3 open; not facility selection.
"Plans to produce 500 units"Constraint (implicit)All 500 must be produced.
"May use overtime at extra cost"DecisionHow much overtime is a decision.
"Minimize total cost"ObjectiveDrives decisions.

Result: Parameters = 3 factories, 500 units target. Constraints = produce exactly 500 (implicit from "plans to produce"). Decisions = production allocation across factories, overtime amounts. Objective = minimize cost.

Implicit-objective example: A problem that asks to "determine the production plan" (or similar) and gives cost components (e.g., workshop, inspection, sales) but does not state "minimize" or "maximize" → Objective is implicit: minimize total cost. Always state it explicitly: "The objective is to minimize total cost."


QP rule: minimize only

QP objectives must be minimization. To maximize a quadratic expression, negate it and minimize; then negate the optimal value.

For minimization to be well-posed, the quadratic form Q should be positive semi-definite. If Q is indefinite, the problem is non-convex and may not have a finite optimum.


Common patterns

The remaining sections cover specific LP/MILP modeling patterns. Each is independent — read the one that matches your problem.

Piecewise-linear objectives with integer production

When modeling concave piecewise-linear profit/cost functions (e.g., decreasing marginal profit for bulk sales), the standard approach uses continuous segment variables with upper bounds equal to each segment's width. For a maximization with concave profit, the solver fills higher-profit segments first naturally.

Gotcha: If the quantity being produced is discrete (pieces, units, items), the total production variable must be INTEGER, even though segment variables can remain CONTINUOUS. Without this, the LP relaxation may yield a fractional total that produces a different (higher or lower) objective than the true integer optimum.

Pattern

x_total  — INTEGER (total production of a product)
s1, s2, … — CONTINUOUS (amount sold in each price segment, bounded by segment width)

Link: x_total = s1 + s2 + …
Resource constraints use x_total.
Objective uses segment variables × segment profit rates.

Cutting stock / trim loss problems

In cutting stock problems, waste area includes both trim loss (unused width within each cutting pattern) and over-production (excess strips produced beyond demand). Minimizing only trim loss (waste width × length per pattern) ignores over-production and yields an incorrect objective.

Correct objective

Since the total useful area demanded is a constant, minimizing waste is equivalent to minimizing total material area consumed:

minimize  sum_j (roll_width_j × x_j)

where x_j is the length cut using pattern j. The waste area is then:

waste = total_material_area − required_useful_area

where required_useful_area = sum_i (order_width_i × order_length_i).

Gotcha

Using sum_j (waste_width_j × x_j) as the objective only captures trim loss — the unused strip within each pattern. It does not penalize over-production of an order. The solver will over-produce narrow orders to fill patterns efficiently, but that excess material is still waste. Always use total material area as the objective.

Goal programming (preemptive / lexicographic)

Goal programming optimizes multiple objectives in priority order. Implement it as sequential solves — one per priority level.

Formulation pattern

  1. Hard constraints — capacity limits, non-negativity, etc. These hold in every phase.
  2. Goal constraints — for each goal, introduce deviation variables (d⁻ for underachievement, d⁺ for overachievement) and write an equality: expression + d⁻ − d⁺ = target.
  3. Solve sequentially by priority:
    • Phase 1: minimize (or maximize) the relevant deviation for the highest-priority goal.
    • Phase k: fix all higher-priority deviations at their optimal values, then optimize priority k's deviation.

Variable types in goal programming

Deviation variables (d⁻, d⁺) and slack/idle-time variables are always continuous. However, decision variables must still be INTEGER when they represent discrete/countable quantities (units produced, vehicles, workers, etc.). Do not let the presence of continuous deviation variables cause you to make all variables continuous — the integrality of decision variables directly affects feasibility and objective values.

Multi-period inventory / purchasing models

In problems with buying, selling, and warehouse capacity over multiple periods, decide which capacity constraints to include based on the problem's timing assumptions.

Pattern

For each period t with inventory balance stock[t] = stock[t-1] + buy[t] - sell[t]:

  • End-of-period capacity (variable bound): stock[t] <= capacity — always needed.
  • After-purchase capacity (explicit constraint): stock[t-1] + buy[t] <= capacity — prevents buying more than the warehouse can hold before any sales occur within the period.

When to include the after-purchase constraint

  • Include it when the problem states or implies that purchases are received before sales happen within a period (sequential operations), or when the warehouse physically cannot exceed capacity at any instant.
  • Omit it when buying and selling are concurrent within a period (common in textbook trading/inventory problems) and the capacity applies only to end-of-period stock. Many classic problems only constrain end-of-period inventory.

Key interaction with the sell constraint: If the model already has sell[t] <= stock[t-1] (grain bought this period cannot be sold this period), the model is bounded even without the after-purchase constraint. The sell constraint prevents unbounded buy-sell cycling. The after-purchase constraint is then an additional physical restriction, not a mathematical necessity.

Default: If the problem does not specify timing within a period, use only end-of-period capacity (stock[t] <= capacity). Add the after-purchase constraint only if the problem explicitly requires it.

Blending with shared mixing / intermediate processing

In some blending problems, a subset of raw materials must be mixed together first (e.g., in a mixing tank) before being allocated to different products. The resulting intermediate has a uniform composition — you cannot independently assign different raw materials to different products.

Why the standard blending LP is wrong here

The standard blending LP uses variables x[i][j] (amount of raw material i in product j) and freely allocates each raw material to each product. When raw materials share a mixing step, the proportions of those raw materials must be identical in every product that receives the intermediate. This proportionality constraint is bilinear (x[A,1]*x[B,2] = x[B,1]*x[A,2]) and cannot be directly expressed in an LP.

Linearization strategies

  1. Single-product allocation: If analysis shows the intermediate is profitable in only one product, allocate all intermediate to that product (set intermediate allocation to other products to zero). The proportionality constraint becomes trivially satisfied. This is the most common case — check profitability of intermediate in each product before attempting a general split.

  2. Parametric over intermediate concentration: Fix the sulfur/quality concentration of the intermediate as a parameter σ. For each fixed σ, the problem is a standard LP (intermediate becomes a virtual raw material with known properties). Solve for a grid of σ values or use the structure to find the optimum analytically.

  3. Scenario enumeration: When only 2–3 products exist, enumerate which products receive the intermediate (all-to-A, all-to-B, split). For each scenario with a single recipient, the LP is standard. For split scenarios, use strategy 2.

Profitability check

Before formulating, check whether using the intermediate in each product is profitable:

  • Compare the minimum cost per ton of the intermediate (using cheapest feasible raw material mix) against each product's selling price.
  • If cost_intermediate > sell_price[j] for some product j, the intermediate should not be allocated to product j. Raw material C (or other direct inputs) alone may also be unprofitable if cost_C > sell_price[j].
  • This analysis often eliminates the need for a bilinear split entirely.

发现问题?提交给管理员复核

评分:

评论 (0)

暂无评论,成为第一个评论者吧!