{
  "meta": {
    "name": "Optimization Solver Bench",
    "snapshot": "2026-08",
    "generatedAt": "2026-08-28",
    "editorialPolicy": "自动抓取只进入候选区；发布记录须由人工核验。能力与性能分层，缺失不等于 0，禁止跨 campaign 或跨问题类别合并排名。"
  },
  "counts": {
    "problemClasses": 14,
    "benchmarks": 33,
    "solvers": 30,
    "commercialSolvers": 15,
    "campaigns": 4,
    "capabilityClaims": 390
  },
  "problemClasses": [
    {
      "id": "lp_network",
      "nameZh": "线性规划与网络流",
      "nameEn": "LP / Network Flow",
      "notation": "LP",
      "axis": "连续 · 线性 · 凸",
      "form": "min cᵀx, s.t. Ax = b, l ≤ x ≤ u；网络流进一步利用图结构。",
      "variables": "连续变量；网络模型常含流、容量与平衡变量。",
      "convexity": "凸；满足适当条件时强对偶成立。",
      "guarantee": "primal/dual feasibility、最优基或数值容差内的全局最优证书。",
      "aliases": [
        "Linear programming",
        "Network LP",
        "Min-cost flow"
      ],
      "formats": [
        "MPS",
        "LP",
        "NL",
        "SIF"
      ],
      "metrics": [
        "solved count",
        "shifted geometric mean",
        "primal/dual residual",
        "iterations",
        "memory"
      ],
      "parents": [],
      "related": [
        "milp",
        "qp_qcqp",
        "network_design"
      ]
    },
    {
      "id": "milp",
      "nameZh": "混合整数线性规划",
      "nameEn": "Mixed-Integer Linear Programming",
      "notation": "MILP",
      "axis": "离散 + 连续 · 线性",
      "form": "min cᵀx, s.t. Ax ≤ b, xᵢ ∈ ℤ for i ∈ I。",
      "variables": "二元、整数与连续变量混合。",
      "convexity": "连续松弛凸，但整数可行域非凸。",
      "guarantee": "incumbent、dual bound 与可验证的 optimality gap；可证明最优或不可行。",
      "aliases": [
        "MIP",
        "IP",
        "0-1 programming"
      ],
      "formats": [
        "MPS",
        "LP",
        "SAV",
        "NL",
        "OPB"
      ],
      "metrics": [
        "solved count",
        "time to first feasible",
        "primal integral",
        "dual integral",
        "gap",
        "nodes"
      ],
      "parents": [
        "lp_network"
      ],
      "related": [
        "cp_csp_sat_pb",
        "routing",
        "scheduling",
        "packing"
      ]
    },
    {
      "id": "qp_qcqp",
      "nameZh": "二次规划与二次约束",
      "nameEn": "QP / QCQP",
      "notation": "QP · QCQP",
      "axis": "连续或离散 · 二次结构",
      "form": "二次目标和/或二次约束；可含整数变量形成 MIQP/MIQCQP。",
      "variables": "连续、整数或混合变量。",
      "convexity": "可凸或非凸；保证语义必须显式绑定凸性。",
      "guarantee": "凸模型可给全局证书；非凸模型可能是局部解或 spatial branch-and-bound 全局证书。",
      "aliases": [
        "MIQP",
        "QCP",
        "MIQCP",
        "QUBO"
      ],
      "formats": [
        "QPLIB",
        "QPS",
        "MPS",
        "LP",
        "NL"
      ],
      "metrics": [
        "solved count",
        "shifted geometric mean",
        "gap",
        "KKT residual",
        "nodes"
      ],
      "parents": [
        "lp_network"
      ],
      "related": [
        "socp_conic",
        "global_nlp_minlp"
      ]
    },
    {
      "id": "socp_conic",
      "nameZh": "二阶锥与一般锥优化",
      "nameEn": "SOCP / Conic Optimization",
      "notation": "SOCP · Conic",
      "axis": "连续或混合整数 · 锥结构",
      "form": "线性映射落在二阶锥、指数锥、幂锥或其积中。",
      "variables": "通常连续，也可含整数形成 MISOCP/MICP。",
      "convexity": "标准锥模型凸；整数锥模型仍具离散非凸性。",
      "guarantee": "primal/dual certificate、残差与 gap；需区分原生 cone 与二次重构。",
      "aliases": [
        "Cone programming",
        "MISOCP",
        "Exponential cone",
        "Power cone"
      ],
      "formats": [
        "CBF",
        "MPS",
        "NL",
        "SDPA"
      ],
      "metrics": [
        "solved count",
        "residual",
        "gap",
        "shifted geometric mean",
        "iterations"
      ],
      "parents": [
        "qp_qcqp"
      ],
      "related": [
        "sdp",
        "milp"
      ]
    },
    {
      "id": "sdp",
      "nameZh": "半定规划",
      "nameEn": "Semidefinite Programming",
      "notation": "SDP",
      "axis": "连续 · 矩阵锥 · 凸",
      "form": "线性矩阵不等式或半正定矩阵变量模型。",
      "variables": "对称矩阵或其向量化表示。",
      "convexity": "标准 SDP 凸；mixed-integer SDP 需单列。",
      "guarantee": "primal/dual feasibility 与对偶 gap；大规模低精度法需显式容差。",
      "aliases": [
        "LMI",
        "MISDP"
      ],
      "formats": [
        "SDPA",
        "CBF",
        "MAT"
      ],
      "metrics": [
        "solved count",
        "primal/dual residual",
        "gap",
        "memory",
        "iterations"
      ],
      "parents": [
        "socp_conic"
      ],
      "related": [
        "qp_qcqp"
      ]
    },
    {
      "id": "local_nlp",
      "nameZh": "局部非线性规划",
      "nameEn": "Local Nonlinear Programming",
      "notation": "Local NLP",
      "axis": "连续 · 光滑或非光滑 · 通常非凸",
      "form": "min f(x), s.t. c(x)=0, g(x)≤0；以局部可行/KKT 点为目标。",
      "variables": "连续变量。",
      "convexity": "可凸或非凸；一般非凸时不承诺全局最优。",
      "guarantee": "可行性与 KKT/驻点条件；须记录导数精度和起点。",
      "aliases": [
        "Smooth NLP",
        "Constrained NLP",
        "Nonlinear programming"
      ],
      "formats": [
        "NL",
        "SIF",
        "GMS",
        "MOD"
      ],
      "metrics": [
        "success rate",
        "function evaluations",
        "gradient evaluations",
        "KKT residual",
        "performance profile"
      ],
      "parents": [],
      "related": [
        "global_nlp_minlp",
        "dfo_blackbox_nonsmooth"
      ]
    },
    {
      "id": "global_nlp_minlp",
      "nameZh": "全局非线性与混合整数非线性",
      "nameEn": "Global NLP / MINLP",
      "notation": "Global NLP · MINLP",
      "axis": "连续或离散 · 非凸 · 全局证明",
      "form": "含一般非线性目标/约束与可选整数变量，采用 relaxations、branch-and-bound 等。",
      "variables": "连续、整数与二元变量。",
      "convexity": "通常非凸；factorability 与可构造松弛是关键。",
      "guarantee": "全局 lower/upper bounds、global gap、最优或不可行证明。",
      "aliases": [
        "Deterministic global optimization",
        "MINLP",
        "Spatial B&B"
      ],
      "formats": [
        "GMS",
        "NL",
        "OSiL",
        "LP",
        "QPLIB"
      ],
      "metrics": [
        "globally solved",
        "proved infeasible",
        "gap",
        "shifted geometric mean",
        "nodes"
      ],
      "parents": [
        "local_nlp",
        "milp"
      ],
      "related": [
        "qp_qcqp",
        "stochastic_robust_multiobj"
      ]
    },
    {
      "id": "cp_csp_sat_pb",
      "nameZh": "约束规划、SAT 与伪布尔",
      "nameEn": "CP / CSP / SAT / PB",
      "notation": "CP · SAT · PB",
      "axis": "离散 · 逻辑与全局约束",
      "form": "有限域变量、逻辑子句、伪布尔不等式及 scheduling/global constraints。",
      "variables": "布尔、有限域、集合、区间和序列变量。",
      "convexity": "非凸离散可行域。",
      "guarantee": "satisfiable/unsatisfiable、最优性证明或 anytime incumbent。",
      "aliases": [
        "Constraint programming",
        "CSP",
        "MaxSAT",
        "Pseudo-Boolean"
      ],
      "formats": [
        "MiniZinc",
        "XCSP3",
        "CNF",
        "WCNF",
        "OPB"
      ],
      "metrics": [
        "solved count",
        "proof count",
        "quality score",
        "anytime curve",
        "PAR-2"
      ],
      "parents": [],
      "related": [
        "milp",
        "scheduling",
        "packing"
      ]
    },
    {
      "id": "routing",
      "nameZh": "路径与车辆调度",
      "nameEn": "Routing",
      "notation": "TSP · VRP",
      "axis": "组合 · 图 · anytime",
      "form": "在图上选择访问顺序、车辆路径、容量和时间窗。",
      "variables": "边、序列、指派与时间变量。",
      "convexity": "离散非凸。",
      "guarantee": "可为 exact proof 或 best-known solution；两者不得混排。",
      "aliases": [
        "TSP",
        "CVRP",
        "VRPTW",
        "PDP"
      ],
      "formats": [
        "TSPLIB",
        "VRPLIB",
        "MiniZinc",
        "MPS"
      ],
      "metrics": [
        "BKS gap",
        "primal integral",
        "time to target",
        "proved optimal",
        "route validity"
      ],
      "parents": [
        "milp",
        "cp_csp_sat_pb"
      ],
      "related": [
        "network_design",
        "scheduling"
      ]
    },
    {
      "id": "scheduling",
      "nameZh": "排程与项目调度",
      "nameEn": "Scheduling",
      "notation": "RCPSP · JSSP",
      "axis": "组合 · 时间 · 资源",
      "form": "活动起止、precedence、机器/资源容量与 makespan/cost 目标。",
      "variables": "区间、序列、指派、时间与二元变量。",
      "convexity": "离散非凸。",
      "guarantee": "可行日程、下界与 gap；CP 的 proof 与启发式 quality 分开。",
      "aliases": [
        "RCPSP",
        "Job shop",
        "Timetabling"
      ],
      "formats": [
        "PSPLIB",
        "MiniZinc",
        "OPL",
        "MPS"
      ],
      "metrics": [
        "makespan gap",
        "solved count",
        "primal integral",
        "proof count"
      ],
      "parents": [
        "milp",
        "cp_csp_sat_pb"
      ],
      "related": [
        "routing",
        "packing"
      ]
    },
    {
      "id": "packing",
      "nameZh": "装箱与切割",
      "nameEn": "Packing / Cutting",
      "notation": "BPP · CSP",
      "axis": "组合 · 几何或容量",
      "form": "将物品装入容器或从原料切割，最小化容器数/浪费。",
      "variables": "指派、序列、坐标、集合与二元变量。",
      "convexity": "离散非凸。",
      "guarantee": "可行布局、下界与最优性 gap；checker 必须验证重叠和边界。",
      "aliases": [
        "Bin packing",
        "Cutting stock",
        "Strip packing"
      ],
      "formats": [
        "BPPLIB",
        "2DPackLib",
        "MiniZinc",
        "MPS"
      ],
      "metrics": [
        "bins/sheets",
        "waste",
        "gap",
        "primal integral",
        "valid layouts"
      ],
      "parents": [
        "milp",
        "cp_csp_sat_pb"
      ],
      "related": [
        "scheduling"
      ]
    },
    {
      "id": "network_design",
      "nameZh": "网络设计",
      "nameEn": "Network Design",
      "notation": "NDP · Steiner",
      "axis": "组合 · 图 · 多商品流",
      "form": "选择边、容量、路由或设施，使网络满足需求、韧性和成本约束。",
      "variables": "边选择、流、容量与情景变量。",
      "convexity": "通常含整数决策；连续子问题可为 LP/NLP。",
      "guarantee": "incumbent、relaxation bound、gap 与网络可行性检查。",
      "aliases": [
        "Steiner tree",
        "Survivable network design",
        "Telecom design"
      ],
      "formats": [
        "STP",
        "SNDlib",
        "MPS",
        "XML"
      ],
      "metrics": [
        "cost gap",
        "solved count",
        "primal integral",
        "connectivity validity"
      ],
      "parents": [
        "lp_network",
        "milp"
      ],
      "related": [
        "routing",
        "stochastic_robust_multiobj"
      ]
    },
    {
      "id": "stochastic_robust_multiobj",
      "nameZh": "随机、鲁棒与多目标优化",
      "nameEn": "Stochastic / Robust / Multi-objective",
      "notation": "SP · RO · MOO",
      "axis": "不确定性或多目标 · 跨结构",
      "form": "情景、风险度量、不确定集或 Pareto 向量目标叠加于 LP/MIP/NLP。",
      "variables": "取决于基础模型，并含情景/recourse 变量。",
      "convexity": "由基础模型和风险/鲁棒结构决定。",
      "guarantee": "需要同时记录抽样、情景、风险定义、Pareto 覆盖与基础模型 gap。",
      "aliases": [
        "Stochastic programming",
        "Robust optimization",
        "Multi-objective optimization"
      ],
      "formats": [
        "SMPS",
        "MPS",
        "GMS",
        "NL"
      ],
      "metrics": [
        "out-of-sample value",
        "optimality gap",
        "Pareto coverage",
        "scenario count"
      ],
      "parents": [],
      "related": [
        "milp",
        "global_nlp_minlp",
        "network_design"
      ]
    },
    {
      "id": "dfo_blackbox_nonsmooth",
      "nameZh": "无导数、黑箱与非光滑优化",
      "nameEn": "DFO / Black-box / Nonsmooth",
      "notation": "DFO · BBO",
      "axis": "评估受限 · 导数不可用",
      "form": "仅通过函数/约束评估访问目标，可能含噪声、失败评估或非光滑结构。",
      "variables": "连续、整数、类别或混合变量。",
      "convexity": "通常未知或非凸。",
      "guarantee": "局部 stationarity 或启发式解质量；预算而非 wall-time 常是主横轴。",
      "aliases": [
        "Derivative-free",
        "Black-box",
        "Simulation optimization"
      ],
      "formats": [
        "Python callable",
        "SIF",
        "COCO suite",
        "problem-specific API"
      ],
      "metrics": [
        "evaluations",
        "data profile",
        "performance profile",
        "success probability",
        "target gap"
      ],
      "parents": [
        "local_nlp"
      ],
      "related": [
        "stochastic_robust_multiobj"
      ]
    }
  ],
  "benchmarks": [
    {
      "id": "mittelmann_benchmarks",
      "name": "Hans Mittelmann Benchmarks",
      "tier": "A",
      "kind": "campaign_series",
      "problemClassIds": [
        "lp_network",
        "milp",
        "qp_qcqp",
        "socp_conic",
        "sdp",
        "local_nlp",
        "global_nlp_minlp",
        "routing"
      ],
      "evidenceReadiness": "R3",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "miplib_2017",
      "name": "MIPLIB 2017",
      "tier": "A",
      "kind": "suite",
      "problemClassIds": [
        "milp"
      ],
      "evidenceReadiness": "R3",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "cutest",
      "name": "CUTEst / SIF",
      "tier": "A",
      "kind": "suite",
      "problemClassIds": [
        "lp_network",
        "qp_qcqp",
        "local_nlp",
        "global_nlp_minlp"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "netlib_lp",
      "name": "Netlib LP",
      "tier": "A",
      "kind": "suite",
      "problemClassIds": [
        "lp_network"
      ],
      "evidenceReadiness": "R1",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "qplib",
      "name": "QPLIB",
      "tier": "A",
      "kind": "suite",
      "problemClassIds": [
        "qp_qcqp",
        "milp"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "minlplib",
      "name": "MINLPLib",
      "tier": "A",
      "kind": "suite",
      "problemClassIds": [
        "local_nlp",
        "global_nlp_minlp",
        "milp",
        "qp_qcqp"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "maros_meszaros_qp",
      "name": "Maros–Mészáros QP",
      "tier": "A",
      "kind": "suite",
      "problemClassIds": [
        "qp_qcqp"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "dimacs_challenges",
      "name": "DIMACS Implementation Challenges",
      "tier": "A",
      "kind": "challenge",
      "problemClassIds": [
        "lp_network",
        "sdp",
        "cp_csp_sat_pb",
        "routing",
        "network_design"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "tsplib95",
      "name": "TSPLIB 95",
      "tier": "A",
      "kind": "suite",
      "problemClassIds": [
        "routing"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "cvrplib",
      "name": "CVRPLIB",
      "tier": "A",
      "kind": "suite",
      "problemClassIds": [
        "routing"
      ],
      "evidenceReadiness": "R3",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "pglib_opf",
      "name": "PGLib-OPF",
      "tier": "A",
      "kind": "suite",
      "problemClassIds": [
        "local_nlp",
        "global_nlp_minlp",
        "network_design"
      ],
      "evidenceReadiness": "R3",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "or_library",
      "name": "OR-Library",
      "tier": "A",
      "kind": "archive",
      "problemClassIds": [
        "lp_network",
        "milp",
        "routing",
        "scheduling",
        "packing",
        "network_design"
      ],
      "evidenceReadiness": "R1",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "cblib",
      "name": "CBLIB",
      "tier": "B",
      "kind": "suite",
      "problemClassIds": [
        "socp_conic",
        "milp"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "sdplib",
      "name": "SDPLIB",
      "tier": "B",
      "kind": "suite",
      "problemClassIds": [
        "sdp"
      ],
      "evidenceReadiness": "R1",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "psplib",
      "name": "PSPLIB",
      "tier": "B",
      "kind": "suite",
      "problemClassIds": [
        "scheduling"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "steinlib",
      "name": "SteinLib",
      "tier": "B",
      "kind": "suite",
      "problemClassIds": [
        "network_design"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "gaslib",
      "name": "GasLib",
      "tier": "B",
      "kind": "suite",
      "problemClassIds": [
        "global_nlp_minlp",
        "network_design"
      ],
      "evidenceReadiness": "R3",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "sndlib",
      "name": "SNDlib",
      "tier": "B",
      "kind": "suite",
      "problemClassIds": [
        "network_design",
        "routing"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "siplib",
      "name": "SIPLIB",
      "tier": "B",
      "kind": "archive",
      "problemClassIds": [
        "stochastic_robust_multiobj",
        "milp",
        "network_design"
      ],
      "evidenceReadiness": "R1",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "biq_mac",
      "name": "Biq Mac Library",
      "tier": "B",
      "kind": "suite",
      "problemClassIds": [
        "qp_qcqp"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "qaplib",
      "name": "QAPLIB",
      "tier": "B",
      "kind": "suite",
      "problemClassIds": [
        "qp_qcqp"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "minizinc_challenge",
      "name": "MiniZinc Challenge",
      "tier": "B",
      "kind": "challenge",
      "problemClassIds": [
        "cp_csp_sat_pb",
        "milp",
        "scheduling",
        "routing",
        "packing"
      ],
      "evidenceReadiness": "R3",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "roadef_euro",
      "name": "ROADEF/EURO Challenge",
      "tier": "B",
      "kind": "challenge",
      "problemClassIds": [
        "network_design",
        "routing",
        "scheduling",
        "packing"
      ],
      "evidenceReadiness": "R3",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "bpplib",
      "name": "BPPLIB",
      "tier": "B",
      "kind": "suite",
      "problemClassIds": [
        "packing"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "2dpacklib",
      "name": "2DPackLib",
      "tier": "B",
      "kind": "archive",
      "problemClassIds": [
        "packing"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "s2mpj",
      "name": "S2MPJ",
      "tier": "B",
      "kind": "suite",
      "problemClassIds": [
        "lp_network",
        "qp_qcqp",
        "local_nlp",
        "global_nlp_minlp"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "cops",
      "name": "COPS",
      "tier": "C",
      "kind": "suite",
      "problemClassIds": [
        "local_nlp"
      ],
      "evidenceReadiness": "R1",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "macmpec",
      "name": "MacMPEC",
      "tier": "C",
      "kind": "suite",
      "problemClassIds": [
        "local_nlp",
        "global_nlp_minlp"
      ],
      "evidenceReadiness": "R1",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "coco_bbob",
      "name": "COCO / BBOB",
      "tier": "C",
      "kind": "challenge",
      "problemClassIds": [
        "dfo_blackbox_nonsmooth"
      ],
      "evidenceReadiness": "R3",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "more_wild",
      "name": "Moré–Wild",
      "tier": "C",
      "kind": "suite",
      "problemClassIds": [
        "dfo_blackbox_nonsmooth"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "cec_optimization",
      "name": "CEC Optimization Competitions",
      "tier": "C",
      "kind": "challenge",
      "problemClassIds": [
        "dfo_blackbox_nonsmooth",
        "stochastic_robust_multiobj"
      ],
      "evidenceReadiness": "R2",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "zdt",
      "name": "ZDT",
      "tier": "C",
      "kind": "generator",
      "problemClassIds": [
        "stochastic_robust_multiobj",
        "dfo_blackbox_nonsmooth"
      ],
      "evidenceReadiness": "R1",
      "verifiedAt": "2026-08-28"
    },
    {
      "id": "dtlz",
      "name": "DTLZ",
      "tier": "C",
      "kind": "generator",
      "problemClassIds": [
        "stochastic_robust_multiobj",
        "dfo_blackbox_nonsmooth"
      ],
      "evidenceReadiness": "R1",
      "verifiedAt": "2026-08-28"
    }
  ],
  "solvers": [
    {
      "id": "gurobi",
      "name": "Gurobi Optimizer",
      "vendor": "Gurobi Optimization",
      "release": "13.0.2",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "ibm_cplex",
      "name": "IBM CPLEX",
      "vendor": "IBM",
      "release": "22.1.2",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "ibm_cp_optimizer",
      "name": "IBM CP Optimizer",
      "vendor": "IBM",
      "release": "22.1.2",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "fico_xpress",
      "name": "FICO Xpress Solver",
      "vendor": "FICO",
      "release": "current page · 2026-08",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "copt",
      "name": "COPT",
      "vendor": "Shanshu AI",
      "release": "8.0",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "mosek",
      "name": "MOSEK",
      "vendor": "MOSEK ApS",
      "release": "11.1.11",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "baron",
      "name": "BARON",
      "vendor": "The Optimization Firm",
      "release": "26.5.28",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "knitro",
      "name": "Artelys Knitro",
      "vendor": "Artelys",
      "release": "16.0",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "lindo_api",
      "name": "LINDO API",
      "vendor": "LINDO Systems",
      "release": "16.0.148",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "hexaly",
      "name": "Hexaly Optimizer",
      "vendor": "Hexaly",
      "release": "15.0",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "mindopt",
      "name": "MindOpt",
      "vendor": "Alibaba Cloud",
      "release": "2.3.0",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "octeract",
      "name": "Octeract Engine",
      "vendor": "Octeract",
      "release": "candidate · version unavailable",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "optverse",
      "name": "OptVerse MPSolver",
      "vendor": "Huawei",
      "release": "2.5.1 manual",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "sas_optimization",
      "name": "SAS Optimization",
      "vendor": "SAS",
      "release": "Viya · current service",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "snopt",
      "name": "SNOPT",
      "vendor": "UCSD–Stanford Business Associates",
      "release": "7.7.7",
      "licenseKind": "commercial",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "highs",
      "name": "HiGHS",
      "vendor": "ERGO-Code",
      "release": "1.14.0",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "scip",
      "name": "SCIP Optimization Suite",
      "vendor": "Zuse Institute Berlin",
      "release": "10.0.2",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "ortools_cpsat",
      "name": "OR-Tools / CP-SAT",
      "vendor": "Google",
      "release": "9.15",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "cbc",
      "name": "COIN-OR CBC",
      "vendor": "COIN-OR",
      "release": "2.10.13",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "clp",
      "name": "COIN-OR CLP",
      "vendor": "COIN-OR",
      "release": "1.17.11",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "ipopt",
      "name": "Ipopt",
      "vendor": "COIN-OR",
      "release": "3.14.20",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "osqp",
      "name": "OSQP",
      "vendor": "Oxford Control",
      "release": "1.0.0",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "clarabel",
      "name": "Clarabel",
      "vendor": "Oxford Control",
      "release": "0.11.1",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "scs",
      "name": "SCS",
      "vendor": "Stanford / CVXGRP",
      "release": "3.2.11",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "sdpa",
      "name": "SDPA",
      "vendor": "SDPA Project",
      "release": "7.4.4",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "csdp",
      "name": "CSDP",
      "vendor": "COIN-OR",
      "release": "6.2.0",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "bonmin",
      "name": "Bonmin",
      "vendor": "COIN-OR",
      "release": "1.8.9",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "couenne",
      "name": "Couenne",
      "vendor": "COIN-OR",
      "release": "0.5.8",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "nomad",
      "name": "NOMAD",
      "vendor": "GERAD",
      "release": "4.5.1",
      "licenseKind": "open-source",
      "updatedAt": "2026-08-28"
    },
    {
      "id": "nvidia_cuopt",
      "name": "NVIDIA cuOpt",
      "vendor": "NVIDIA",
      "release": "26.08",
      "licenseKind": "mixed",
      "updatedAt": "2026-08-28"
    }
  ],
  "campaigns": [
    {
      "id": "mittelmann_milp_2026_07",
      "name": "MILP Benchmark — MIPLIB 2017",
      "series": "Hans Mittelmann Benchmarks",
      "problemClassId": "milp",
      "date": "2026-07-07",
      "snapshot": "2026-07-07"
    },
    {
      "id": "mittelmann_lpopt_2026_07",
      "name": "LPopt — Optimal Basic Solution",
      "series": "Hans Mittelmann Benchmarks",
      "problemClassId": "lp_network",
      "date": "2026-07-01",
      "snapshot": "2026-07-01"
    },
    {
      "id": "mittelmann_socp_2026_08",
      "name": "Large Second-Order Cone Benchmark",
      "series": "Hans Mittelmann Benchmarks",
      "problemClassId": "socp_conic",
      "date": "2026-08-10",
      "snapshot": "2026-08-10"
    },
    {
      "id": "mittelmann_minlp_2026_02",
      "name": "MINLP Benchmark — MINLPLib",
      "series": "Hans Mittelmann Benchmarks",
      "problemClassId": "global_nlp_minlp",
      "date": "2026-02-26",
      "snapshot": "2026-02-26"
    }
  ]
}
