Native PUBO
Represent sparse polynomial terms directly, including cubic and higher-order interactions.
Private API preview
Optimize constrained polynomial objectives in their native form. No quadratization. No auxiliary-variable inflation.
Published evidence
HAMD searches native cubic interactions directly. The accompanying study compares decoded native objectives under equal time budgets.
Single-seed relative improvement in decoded native cubic objective; lower is better. See arXiv:2603.15947 for methodology and limitations.
Three fields. One native engine.
Express domain interactions as sparse polynomial terms, preserve hard selection counts, and solve through one asynchronous interface.
01
Select exactly k assets while modeling returns, pairwise covariance, and three-way sector co-movement directly. Native cubic search avoids the auxiliary variables introduced by quadratization.
Measured at n=200 across three seeds
{
"problem_type": "pubo",
"objective": {
"num_vars": 200,
"terms": [
{ "vars": [12], "coef": -0.84 },
{ "vars": [12, 47], "coef": 1.31 },
{ "vars": [12, 47, 88], "coef": 2.76 }
]
},
"constraints": { "cardinality": 20 },
"time_limit_s": 60
}
{ "objective": 195.65, "feasible": true, "selected_count": 20 }02
Encode city-position assignments, travel costs, and one-hot feasibility penalties in a QUBO. The same search pipeline produces a valid tour before a short 2-opt polish pass.
100% feasibility in the published suite
{
"problem_type": "qubo",
"objective": {
"num_vars": 900,
"terms": [
{ "vars": [0, 31], "coef": 18.4 },
{ "vars": [0, 1], "coef": 80.0 },
{ "vars": [31], "coef": -80.0 }
]
},
"constraints": { "cardinality": 30 },
"time_limit_s": 60
}
{ "tour_length": 4517.7, "feasible": true, "cities": 30 }03
Map each three-literal clause to a native cubic penalty. Satisfied clauses contribute zero penalty; violated clauses raise the objective without introducing auxiliary bits.
Matched the best baseline outcome
{
"problem_type": "pubo",
"objective": {
"num_vars": 75,
"terms": [
{ "vars": [4], "coef": -1.0 },
{ "vars": [4, 19], "coef": 1.0 },
{ "vars": [4, 19, 63], "coef": -1.0 }
]
},
"time_limit_s": 30,
"seed": 42
}
{ "gap": 0.0, "satisfied": true, "variables": 75 }04
The exact same HAMD dynamics code, unmodified, run end-to-end on a $0.083/hour 2-vCPU cloud instance — no CUDA, no accelerator. Solution quality tracks the GPU run within a few points; only wall-clock time changes.
AWS t3.large · 2 vCPU · 7.6 GB RAM · zero GPU
| Graph | N | BKV | CPU best | CPU ratio | GPU best | GPU ratio |
|---|---|---|---|---|---|---|
| G1 | 800 | 11,624 | 11,449 | 98.5% | 11,467 | 98.6% |
| G11 | 800 | 564 | 530 | 94.0% | 520 | 92.2% |
| G14 | 800 | 3,064 | 2,982 | 97.3% | 3,002 | 98.0% |
| G51 | 1,000 | 3,848 | 3,749 | 97.4% | 3,775 | 98.1% |
| G22 | 2,000 | 13,359 | 12,982 | 97.2% | 13,034 | 97.6% |
| G32 | 2,000 | 1,410 | 1,278 | 90.6% | 1,282 | 90.9% |
{ "instance": "t3.large", "hourly_usd": 0.0832, "gpu_required": false }JSON arrays show representative sparse terms, not complete benchmark datasets. Portfolio results: arXiv:2603.15947. Routing and 3-SAT results: published Community Edition benchmark suite. CPU vs. GPU Max-Cut comparison: HAMD Community Edition bench_suite/benchmark_maxcut.py run unmodified on AWS t3.large (CPU) and AWS g5.xlarge / A10G (GPU).
One interface, complex objectives
Represent sparse polynomial terms directly, including cubic and higher-order interactions.
Use the same job API for standard quadratic unconstrained binary objectives.
Preserve an exact number of selected variables throughout the search pipeline.
Submit, poll, and retrieve results without holding an open compute connection.
API preview
Send sparse coefficients and constraints. Momentum Solve returns a job identifier, then a selected-variable solution with its objective value.
{
"problem_type": "pubo",
"objective": {
"num_vars": 48,
"terms": [
{ "vars": [0, 7, 21], "coef": -4.8 },
{ "vars": [3, 19], "coef": 1.25 }
]
},
"constraints": { "cardinality": 12 },
"time_limit_s": 30
}
Open research, private production engine