Published Reproduction Package
The cases are fixed by seed 20260619. Download the CSV cases, the summary JSON, the Python generator, and the local T1 CLI. The generator uses only the Python standard library to build the cases and baselines.
Results
Many online container calculators only let you type in one case and show one answer. This report publishes the generator and every input case, so the numbers are not just one hand-picked example.
The benchmark uses one carton type loaded into a fixed 40HQ-style interior space of 12032 x 2352 x 2698 mm. Normal generated cartons use package-style dimensions where length ≥ width ≥ height; the tall-column class represents upright-product exceptions where height may be largest. The headline comparison allows all six axis-aligned orientations for both SmartPacker T1 and the transparent baselines, while the CSV also includes upright-only baseline columns for orientation-policy sensitivity.
| Comparison | Wins | Ties | Losses | Average gain |
|---|---|---|---|---|
| T1 depth 3 vs one-cut heuristic | 7,873 | 2,127 | 0 | +2.656% cartons |
| T1 depth 3 vs single-grid baseline | 9,134 | 866 | 0 | +9.810% cartons |
| T1 depth 3 vs T1 depth 2 | 5,105 | 4,895 | 0 | +0.432% cartons |
Median fill rate
95.847% across the 10,000 depth-3 T1 results.
Dimension sanity
9,000 normal cases have length ≥ width ≥ height; 1,000 tall cases are height-largest exceptions; 0 cases have width greater than length.
Orientation sensitivity
Six-orientation one-cut beat upright-only one-cut in 8,923 cases, averaging +12.517% versus the upright-only baseline.
Public App Spot Checks
We also ran a dated, no-login public-app spot check on June 19, 2026. The exact test case was a 12032 x 2352 x 2698 mm loading space with 600 x 400 x 350 mm cartons. Public tools do not always make their orientation policy explicit, and some products may assume upright-only cargo. This table is a small public verification sample, not part of the formal 10,000-case score and not a vendor-neutral leaderboard.
| Tool | Access | Dimension match | Reported result | How to read it |
|---|---|---|---|---|
| SmartPacker public MCP | No account | Exact | 876 cartons, 96.4% | Reference result from the public depth-2 live-layout service. |
| Pier2Pier 3D Load Calculator | No account | Exact | 820 cartons, 90.2% | Public spot check. SmartPacker public MCP loaded 56 more cartons on this input, but the orientation-policy caveat should be kept when citing the result. |
| SeaRates Load Calculator | No account | Built-in 40' High Cube, not exact custom dimensions | 770 cartons, 84% | Useful public-app datapoint, but not a strict exact-dimension comparison. |
| CargoesPi Container Loading Calculator | No account | Exact entered dimensions | 920 cartons, 101.2% | Not used as a valid competitor score because it exceeds the 908-carton raw volume upper bound. |
| EasyCargo | Sign-up / free-trial gate | Not run | No public no-login result | Requires account access before comparable calculation. |
| Goodloading | Account / demo gate | Not run | No public no-login result | Requires account or demo access before comparable calculation. |
| CargoLoader3D | Login gate | Not run | No public no-login result | Requires login before comparable calculation. |
Depth 3 Release Policy
This report uses local count-only SmartPacker T1 depth-3 batch results. It is not a claim that the public MCP placed-layout endpoint runs depth 3.
The public MCP service remains a fast depth-2 live-layout service because it must return placed cartons and a 3D image within the public timeout. Depth 3 is available in the browser app, downloadable desktop apps, and local CLI package, so anyone can verify stronger results on their own CPU without adding load to the public server.
Reproduce
To regenerate the same cases and heuristic baselines from the extracted script:
python container_loading_benchmark_generator.py --out-dir . --skip-packcli
To add SmartPacker T1 counts, download and extract the local CLI package, then run the same generator with the CLI path:
python container_loading_benchmark_generator.py --out-dir . --packcli PackCli.exe
The current published CSV already includes dimension-profile, upright-only baseline, and depth-0 through depth-3 T1 count columns from the internal June 20, 2026 run.
By Stratum
| Stratum | Cases | Wins | Ties | Losses | Average gain | Average T1 fill |
|---|---|---|---|---|---|---|
| small_dense | 1,000 | 980 | 20 | 0 | +1.741% | 99.002% |
| medium_carton | 1,000 | 868 | 132 | 0 | +2.724% | 95.888% |
| large_carton | 1,000 | 591 | 409 | 0 | +3.475% | 86.308% |
| flat_panel | 1,000 | 900 | 100 | 0 | +3.371% | 94.156% |
| tall_column | 1,000 | 778 | 222 | 0 | +3.028% | 93.340% |
| long_case | 1,000 | 488 | 512 | 0 | +1.703% | 86.636% |
| near_divisor | 1,000 | 749 | 251 | 0 | +2.014% | 96.484% |
| awkward_remainder | 1,000 | 868 | 132 | 0 | +3.148% | 94.928% |
| mixed_scale | 1,000 | 776 | 224 | 0 | +2.590% | 91.993% |
| realistic_carton | 1,000 | 875 | 125 | 0 | +2.766% | 96.126% |
Scope and Caveats
- This is a single-SKU benchmark. It does not test mixed-SKU loading, pallet rules, fragile cargo, axle weight, loading sequence, or manual edit workflows.
- The transparent baselines are published for reproducibility. They are not a substitute for every commercial product's private algorithm.
- The headline benchmark allows all six axis-aligned orientations. If a competitor assumes upright-only loading, use the upright baseline columns as context and do not cite the six-orientation delta as a like-for-like competitor score.
- The named public-app results above are single-case spot checks. Bulk automated testing of competitor web apps can be fragile and may violate account or rate-limit rules, and public tools may not expose the same orientation controls.
- The downloadable CLI package provides local depth-3 count and JSON-layout verification. The browser and desktop apps expose Depth 3 for interactive visual inspection of individual cases.
Verification Paths
The local CLI package makes depth-3 verification self-contained for counts and JSON loading plans. For visual checks, use the Depth 3 checkbox in the browser app or downloadable desktop apps; the displayed placed count should meet or exceed the CSV depth-3 count for the same case.
Questions and comments: zhzx@zhihuo.com.