GradientDescent

Max Orders Route

Selection + vehicle routingRunning
Sep 21
Oct 31

Van leaves the depot.

0/8 in van · 0/150 miles

  • Depot
  • Van
  • Order
  • Served
  • ✕ Skipped

An example

One van, 16 orders, room for 8, and a 150-mile budget. The van goes to the nearest order it can still get back from. If an order is out of reach or the van is full, it gets a cross.

That's a simple greedy strategy. Your solver can do better.

Selection

Pick which orders to serve. Some are too far or won't fit, so skipping the right ones matters.

Vehicle routing

Pick the order each van visits its stops, so every van gets back to the depot within its distance budget.

The real problem

There are more orders than the fleet can reach. Each van holds 120 orders and can drive 300 miles before it has to be back at the depot. You decide which orders to take and the route each van drives, to serve as many as possible.

You write one function, solve(instance), that returns a route for each van. The framework handles all input and output, and gives you the exact distance function used for grading.

Solutions are scored by orders served. If two tie, the lower total distance wins. A route that breaks a constraint scores nothing.

At a glance

Fleet
Up to 10 vans, 120 orders capacity and 300 miles round-trip per van
Time per instance
52s to 9m 50s, depending on the number of orders
Languages
Python, C, C++, Java
Scoring
Orders served, higher is better
Tiebreaker
Total distance, lower is better