Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@ name: Python Test

on:
workflow_dispatch:
# push:
# branches:
# - main
# pull_request:
# types:
# - opened
# - reopened
# - synchronize
push:
branches:
- main
pull_request:
types:
- opened
- reopened
- synchronize

permissions:
contents: read
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# OMMX Quantum Benchmarks
OMMX Quantum Benchmarks provides access to quantum optimization benchmark datasets in [OMMX](https://jij-inc.github.io/ommx/en/introduction.html) format for easier integration with quantum and classical optimization workflows.

Documentation: https://jij-inc.github.io/QmmxQuantumBenchmarks/
Documentation: https://jij-inc.github.io/OmmxQuantumBenchmarks/

## Quick Start
### Installation
Expand Down
1 change: 1 addition & 0 deletions docs/en/_config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ sphinx:
- show-module-summary
- imported-members
- no-index
- special-members
autoapi_ignore:
- "**/uploader.py"
- "**/uploader/*"
Expand Down
6 changes: 3 additions & 3 deletions docs/en/_toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,6 @@ parts:
chapters:
- file: autoapi/index

- caption: "Release Notes"
chapters:
- file: release_note/index
# - caption: "Release Notes"
# chapters:
# - file: release_note/index
29 changes: 2 additions & 27 deletions docs/en/release_note/index.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -4,32 +4,7 @@
"cell_type": "markdown",
"id": "8ecdc601",
"metadata": {},
"source": [
"# Release Notes\n",
"\n",
"## Version 0.1.0\n",
"\n",
"**Initial Release - QOBLIB Dataset Collection**\n",
"\n",
"### Overview\n",
"This initial release establishes OMMX Quantum Benchmarks as a collection of optimization benchmark datasets in OMMX format. The first collection includes selected datasets from the [QOBLIB (Quantum Optimization Benchmarking Library)](https://git.zib.de/qopt/qoblib-quantum-optimization-benchmarking-library).\n",
"\n",
"**Scope**: This release focuses on QOBLIB datasets, with framework designed to accommodate additional benchmark sources in future releases.\n",
"\n",
"### Features\n",
"- Python API for accessing quantum optimization benchmark datasets\n",
"- OMMX format conversion and standardization\n",
"- GitHub Container Registry integration for distributed data access\n",
"- Consistent interface across all dataset categories\n",
"\n",
"### Currently Available Data\n",
"**From QOBLIB Collection**:\n",
"- **Marketsplit** (01): 160+ instances with binary linear and unconstrained formulations\n",
"- **Labs** (02): 99 instances with integer and quadratic unconstrained formulations\n",
"\n",
"### Attribution\n",
"All converted data is derived from the original QOBLIB repository created by Thorsten Koch, David E. Bernal Neira, and colleagues, licensed under CC BY 4.0."
]
"source": "# Release Notes\n\n## Version 0.1.0\n\n**Initial Release - QOBLIB Dataset Collection**\n\n### Overview\nThis initial release establishes OMMX Quantum Benchmarks as a collection of optimization benchmark datasets in OMMX format. The first collection includes selected datasets from the [QOBLIB (Quantum Optimization Benchmarking Library)](https://git.zib.de/qopt/qoblib-quantum-optimization-benchmarking-library).\n\n**Scope**: This release focuses on QOBLIB datasets, with framework designed to accommodate additional benchmark sources in future releases.\n\n### Features\n- Python API for accessing quantum optimization benchmark datasets\n- OMMX format conversion and standardization\n- GitHub Container Registry integration for distributed data access\n- Consistent interface across all dataset categories\n\n### Currently Available Data\n**From QOBLIB Collection**:\n- **Labs** (02): 99 instances with integer and quadratic unconstrained formulations\n- **Birkhoff** (03): 800 instances with integer linear formulations\n- **Steiner** (04): 31 instances with integer linear formulations\n- **Topology** (10): 16 instances with flow MIP, Seidel linear, and Seidel quadratic formulations\n\n### Attribution\nAll converted data is derived from the original QOBLIB repository created by Thorsten Koch, David E. Bernal Neira, and colleagues, licensed under CC BY 4.0."
}
],
"metadata": {
Expand All @@ -41,4 +16,4 @@
},
"nbformat": 4,
"nbformat_minor": 5
}
}
128 changes: 118 additions & 10 deletions docs/en/tutorial/usage/dataset_overview.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,7 @@
"\n",
"**Problem Type**: Laboratory assignment problems \n",
"**Models**: Integer, Quadratic unconstrained \n",
"**Instances**: 99 instances (labs002 - labs100)\n",
"\n",
"Laboratory problems typically involve resource allocation and scheduling in laboratory environments."
"**Instances**: 99 instances (labs002 - labs100)"
]
},
{
Expand Down Expand Up @@ -56,20 +54,130 @@
"cell_type": "markdown",
"id": "704f1da4",
"metadata": {},
"source": [
"## Birkhoff (`03_birkhoff`)\n",
"\n",
"**Problem Type**: Birkhoff polytope problems \n",
"**Models**: Integer linear \n",
"**Instances**: 800 instances (bhD-3-001 - bhS-6-100)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "yt34ivrq2v",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Available models: ['integer_linear']\n",
"integer_linear: 800 instances\n"
]
}
],
"source": [
"from ommx_quantum_benchmarks.qoblib import Birkhoff\n",
"\n",
"dataset = Birkhoff()\n",
"print(f\"Available models: {dataset.model_names}\")\n",
"for model in dataset.model_names:\n",
" instances = dataset.available_instances[model]\n",
" print(f\"{model}: {len(instances)} instances\")"
]
},
{
"cell_type": "markdown",
"id": "srqvnex133",
"metadata": {},
"source": [
"## Steiner (`04_steiner`)\n",
"\n",
"**Problem Type**: Steiner tree problems \n",
"**Models**: Integer linear \n",
"**Instances**: 31 instances (stp_s020_l2_t3_h2_rs24098 - stp_s040_l2_t4_h3_rs123)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "2rs94wyke07",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Available models: ['integer_linear']\n",
"integer_linear: 31 instances\n"
]
}
],
"source": [
"from ommx_quantum_benchmarks.qoblib import Steiner\n",
"\n",
"dataset = Steiner()\n",
"print(f\"Available models: {dataset.model_names}\")\n",
"for model in dataset.model_names:\n",
" instances = dataset.available_instances[model]\n",
" print(f\"{model}: {len(instances)} instances\")"
]
},
{
"cell_type": "markdown",
"id": "mynxdaz9bc7",
"metadata": {},
"source": [
"## Topology (`10_topology`)\n",
"\n",
"**Problem Type**: Network topology optimization \n",
"**Models**: Flow MIP, Seidel linear, Seidel quadratic \n",
"**Instances**: 16 instances per model (topology_15_3 - topology_50_4)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "gngmnigjefn",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Available models: ['flow_mip', 'seidel_linear', 'seidel_quadratic']\n",
"flow_mip: 16 instances\n",
"seidel_linear: 16 instances\n",
"seidel_quadratic: 16 instances\n"
]
}
],
"source": [
"from ommx_quantum_benchmarks.qoblib import Topology\n",
"\n",
"dataset = Topology()\n",
"print(f\"Available models: {dataset.model_names}\")\n",
"for model in dataset.model_names:\n",
" instances = dataset.available_instances[model]\n",
" print(f\"{model}: {len(instances)} instances\")"
]
},
{
"cell_type": "markdown",
"id": "n0vhnnrkmla",
"metadata": {},
"source": [
"## Other Dataset Categories\n",
"\n",
"The following dataset categories are defined in the framework but currently contain no instances. These represent problem types that may be expanded in future releases:\n",
"\n",
"- **Market Split** (`01_marketsplit`) - Binary linear and binary unconstrained market split problems\n",
"- **Birkhoff** (`03_birkhoff`) - Integer linear problems related to doubly stochastic matrices\n",
"- **Steiner** (`04_steiner`) - Integer linear Steiner tree problems\n",
"- **Sports** (`05_sports`) - Mixed integer linear sports scheduling problems\n",
"- **Portfolio** (`06_portfolio`) - Binary quadratic and quadratic unconstrained portfolio optimization\n",
"- **Independent Set** (`07_independent_set`) - Binary linear and unconstrained graph problems\n",
"- **Network** (`08_network`) - Integer linear network optimization\n",
"- **Routing** (`09_routing`) - Integer linear vehicle routing problems \n",
"- **Topology** (`10_topology`) - Network topology problems with multiple formulations\n",
"- **Routing** (`09_routing`) - Integer linear vehicle routing problems\n",
"\n",
"**Note**: These datasets can be instantiated but will return empty instance lists. Check the `available_instances` property to see current availability.\n",
"\n",
Expand All @@ -79,14 +187,14 @@
"|---------|--------|----------------|---------|\n",
"| Marketsplit | 2 | 0 | 🚧 Defined, no instances |\n",
"| Labs | 2 | 99 | ✅ Available |\n",
"| Birkhoff | 1 | 0 | 🚧 Defined, no instances |\n",
"| Steiner | 1 | 0 | 🚧 Defined, no instances |\n",
"| Birkhoff | 1 | 800 | ✅ Available |\n",
"| Steiner | 1 | 31 | ✅ Available |\n",
"| Sports | 1 | 0 | 🚧 Defined, no instances |\n",
"| Portfolio | 2 | 0 | 🚧 Defined, no instances |\n",
"| IndependentSet | 2 | 0 | 🚧 Defined, no instances |\n",
"| Network | 1 | 0 | 🚧 Defined, no instances |\n",
"| Routing | 1 | 0 | 🚧 Defined, no instances |\n",
"| Topology | 3 | 0 | 🚧 Defined, no instances |\n",
"| Topology | 3 | 16 | ✅ Available |\n",
"\n",
"**Legend**: \n",
"- ✅ Available: Instances have been converted and are accessible\n",
Expand Down
1 change: 1 addition & 0 deletions docs/ja/_config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ sphinx:
- show-module-summary
- imported-members
- no-index
- special-members
autoapi_ignore:
- "**/uploader.py"
- "**/uploader/*"
Expand Down
6 changes: 3 additions & 3 deletions docs/ja/_toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,6 @@ parts:
chapters:
- file: autoapi/index

- caption: "リリースノート"
chapters:
- file: release_note/index
# - caption: "リリースノート"
# chapters:
# - file: release_note/index
28 changes: 2 additions & 26 deletions docs/ja/release_note/index.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -4,31 +4,7 @@
"cell_type": "markdown",
"id": "c1f5f8b4",
"metadata": {},
"source": [
"# リリースノート\n",
"\n",
"## バージョン 0.1.0\n",
"\n",
"**初回リリース - QOBLIBデータセットコレクション**\n",
"\n",
"### 概要\n",
"この初回リリースでは、OMMX Quantum BenchmarksをOMMX形式の最適化ベンチマークデータセットのコレクションとして確立します。最初のコレクションには、[QOBLIB(Quantum Optimization Benchmarking Library)](https://git.zib.de/qopt/qoblib-quantum-optimization-benchmarking-library)から選択されたデータセットが含まれています。\n",
"\n",
"**範囲**: このリリースはQOBLIBデータセットに焦点を当てており、将来のリリースで追加のベンチマークソースに対応するためのフレームワークが設計されています。\n",
"\n",
"### 機能\n",
"- 量子最適化ベンチマークデータセットにアクセスするためのPython API\n",
"- OMMX形式の変換と標準化\n",
"- 分散データアクセスのためのGitHub Container Registry統合\n",
"- 全データセットカテゴリにわたる一貫したインターフェース\n",
"\n",
"### 現在利用可能なデータ\n",
"**QOBLIBコレクションから**:\n",
"- **Labs** (02): 整数および二次制約なし定式化による99インスタンス\n",
"\n",
"### 帰属\n",
"変換されたすべてのデータは、Thorsten Koch、David E. Bernal Neira、および同僚によって作成された元のQOBLIBリポジトリから派生しており、CC BY 4.0ライセンスの下で提供されています。"
]
"source": "# リリースノート\n\n## バージョン 0.1.0\n\n**初回リリース - QOBLIBデータセットコレクション**\n\n### 概要\nこの初回リリースでは、OMMX Quantum BenchmarksをOMMX形式の最適化ベンチマークデータセットのコレクションとして確立します。最初のコレクションには、[QOBLIB(Quantum Optimization Benchmarking Library)](https://git.zib.de/qopt/qoblib-quantum-optimization-benchmarking-library)から選択されたデータセットが含まれています。\n\n**範囲**: このリリースはQOBLIBデータセットに焦点を当てており、将来のリリースで追加のベンチマークソースに対応するためのフレームワークが設計されています。\n\n### 機能\n- 量子最適化ベンチマークデータセットにアクセスするためのPython API\n- OMMX形式の変換と標準化\n- 分散データアクセスのためのGitHub Container Registry統合\n- 全データセットカテゴリにわたる一貫したインターフェース\n\n### 現在利用可能なデータ\n**QOBLIBコレクションから**:\n- **Labs** (02): 整数および二次制約なし定式化による99インスタンス\n- **Birkhoff** (03): 整数線形定式化による800インスタンス\n- **Steiner** (04): 整数線形定式化による31インスタンス\n- **Topology** (10): フローMIP、Seidel線形、Seidel二次定式化による16インスタンス\n\n### 帰属\n変換されたすべてのデータは、Thorsten Koch、David E. Bernal Neira、および同僚によって作成された元のQOBLIBリポジトリから派生しており、CC BY 4.0ライセンスの下で提供されています。"
}
],
"metadata": {
Expand All @@ -52,4 +28,4 @@
},
"nbformat": 4,
"nbformat_minor": 5
}
}
Loading