nextmv Docs


A variety of operations challenges can be addressed with Hop.

The following are applications that use Hop alone or with HopM. We consider these to be standalone applications or a starting point for more customized models. If you are just getting started, check out our n-Queens model, to get a feel for how Hop works.

We are always adding new applications. If you are looking for a new one, just ask.

Delivery and Distribution

Routing a single vehicle through a Traveling Salesperson Problem (TSP) or batching orders and routing multiple vehicles to service them is easy using Hop.

HopM comes with a variety of components for delivery and distribution models.

  • Cluster for Nearest Neighbor and Constrained K-means clustering or batching
  • Vehicle for routing a single vehicle, i.e. our Traveling Salesperson (TSP) Solver
  • Fleet for routing multiple vehicles, i.e. our Vehicle Routing (VRP) Solver

Our routing components also come with some prebuilt filters and constraints:

  • Time windows to handle strict delivery or driver break windows
  • Length restrictions to handle strict maximum distances or time per route
  • Capacity per vehicle to distinguish between vehicles like bikes and vans
  • Attributes per vehicle and location to handle things like refrigeration requirements
  • Precedence to handle pickups needing to precede dropoffs

Users can also configure them to handle common operations patterns like:

  • Custom vehicle or package constraints
  • Different vehicle start and end locations
  • Different vehicle speeds
  • Unique cost functions (e.g. Minutes early or late, dollars, penalties for unassigned locations)

Check out our blog post on routing or take a look at Using HopM to see it in practice.

If you are interested in routing multiple vehicles, consider starting with our Dispatch app.

Resource Allocation

Resource allocation models come in all shapes and sizes, from packing a truck bed with the highest yield orders to picking the best investments for your portfolio.

Knapsack models are the classic generalization for these types of problems and can be solved using or extending our Pack HopM component.


Clustering models are good for more than just batching strategies for routing. You can use clustering to group users, locations, regions, or strategies by similarity.

Our clustering models can take Capacity, Cardinality, and per cluster constraints as part of their input.