← All engines

RUST ENGINE / route_optimizer

Geometric tour optimization in Rust

Order supplied points into a complete geometric tour with bounded Rust CPU computation, exact small-instance search and explicit heuristic limits.

Open the route_optimizer demonstration ↗Try the live calculation ↗Connect an AI assistant →

What does a real call return?

For 5 points, the closed tour measures 4.414 km, with exact search completed (exact: true).

Recorded on 2 November 2026 through the public MCP endpoint, service release 0.17.1. Inputs and full responses, response SHA-256 a6496001f489…. Verdict values are the literal values the tool returns. Run the same inputs yourself to compare; elapsed times vary, and a new release may change the figures.

Checked against

Recorded on release 0.16.1. These checks cover the listed cases, not every input. Evidence cards.

How it works

The start is fixed at input index 0. Completed Held–Karp search certifies the numerical optimum for at most 13 points; larger instances use nearest-neighbour construction and bounded 2-opt improvements. A cooperative time budget and deterministic work budget limit the search. Every returned tour is complete.

Inputs and units

Supply 2–256 points with metric euclidean_km and x/y in kilometres, or great_circle_km and lat/lon in degrees. The spherical radius is declared as 6371.0088 km. Choose whether to return to the start and a 100–10000 ms time budget.

What the result contains

The complete order and every leg, total geometric distance, exact flag, method, stopping reason, nearest-neighbour reference, work count and measured native time. The optional route-risk chain verifies the legs before converting them to whole-minute durations using a supplied speed.

Example MCP call

{
  "name": "route_optimizer",
  "arguments": {
    "metric": "euclidean_km",
    "points": [
      {
        "x": 0,
        "y": 0
      },
      {
        "x": 1,
        "y": 0
      },
      {
        "x": 1,
        "y": 1
      },
      {
        "x": 0,
        "y": 1
      },
      {
        "x": 0.5,
        "y": 0.5
      }
    ],
    "return_to_start": true,
    "time_budget_ms": 1000
  }
}

Send this tool name and arguments through a connected MCP client. Discover the authoritative input schema with tools/list.

Call this engine in one command

Node.js 20+ and npm. This downloads a small remote MCP client; it does not install the engine locally.

npx --yes --package https://scorecompute.com/downloads/scorecompute-call-0.14.2.tgz scorecompute-call route_optimizer --arguments '{"metric":"euclidean_km","points":[{"x":0,"y":0},{"x":1,"y":0},{"x":1,"y":1},{"x":0,"y":1},{"x":0.5,"y":0.5}],"return_to_start":true,"time_budget_ms":1000}'

Client download, PowerShell input and verification →

Cite this engine

Version 0.1.0, source SHA-256 20d09cc91c01…. Evidence recorded on release 0.16.1; the public service currently runs 0.17.1. Replace the access date when you cite it.

ScoreCompute. Geometric tour optimization in Rust (route_optimizer), version 0.1.0, source SHA-256 20d09cc91c01e06ef7b5f57d929a1899db9191828aa33d190a0d32131501c90d. Evidence release 0.16.1, service release 0.17.1. https://scorecompute.com/engines/route-optimizer/ (accessed YYYY-MM-DD).

All engine citations · Evidence card

Execution and availability

ScoreCompute exposes this tool through MCP Streamable HTTP. Rust computation runs on a connected worker; the public website and MCP gateway run separately. Among these 22 scientific tools, CUDA is implemented for simulate_pi; the other scientific engines run on CPU. The separate contributor network runs two compiled public workloads: a π estimate and fixed synthetic schedule probes. Requests are bounded and concurrent work may be refused when capacity is occupied.

Record inputs, assumptions and returned provenance when sharing a result. The public observatory displays software client names and tool activity, without publishing calculation arguments or results.

Explore another engine →Agent-readable overview ↗

Sources

These publications describe the method or a reference used in its tests. Citing them does not certify this implementation.

First published 30 September 2026 · Last updated 2 November 2026