multi-depot-vrp
When the user wants to solve Multi-Depot VRP (MDVRP), optimize routes from multiple warehouses/depots, or handle multi-facility distribution. Also use when the user mentions "MDVRP," "multiple depots," "multi-warehouse routing," "hub routing," "distributed depots," or "regional distribution centers." For single depot, see vehicle-routing-problem.
npx skills add majiayu000/claude-skill-registry --skill multi-depot-vrp-kishorkukreja-awesome-supply-chain --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Solves Multi-Depot Vehicle Routing Problems by planning from multiple depots, deciding depot-customer assignments and vehicle routes to minimize total distance. It offers two methods: a cluster-first, route-second heuristic and a multi-depot OR-Tools implementation.
How it works
- Cluster-First, Route-Second Approach:
- Clusters customers to depots using KMeans initialized with depot locations.
- For each depot, builds a local distance matrix (depot plus assigned customers).
- Runs a Clarke-Wright savings-based VRP routine to generate routes for that depot, respecting vehicle capacity and a maximum number of vehicles per depot.
- Converts local indices back to global customer identifiers and aggregates routes and total distance.
- Multi-Depot OR-Tools Implementation:
- Combines depots and customers into a single location set; creates a distance matrix from coordinates.
- Builds starts and ends for each vehicle according to depot assignment; total vehicles = sum of vehicles_per_depot.
- Configures a RoutingModel with capacity constraints per vehicle and each depot’s start/end at its depot.
- Uses a distance callback for arc costs, and a demand callback for capacities; enforces depots not to be used as intermediate stops.
- Runs solver with PATH_CHEAPEST_ARC and GUIDED_LOCAL_SEARCH, within a time limit; extracts routes per vehicle, computing per-route distance and depot assignment.
When to use it
- When you need to solve problems with multiple depots/warehouses and assign customers to depots while routing vehicles.
- When you want either a heuristic (cluster-first) approach for faster results or a more exact-ish approach via OR-Tools for potentially better solutions within time bounds.
What it can touch
- Uses coordinates to compute distances (no external data sources).
- Depends on clustering (KMeans) and a Clarke-Wright implementation for the first method.
- OR-Tools is used for the second method; routes, distances, and depot_assignments are produced.
Caveats
- The MDVRP formulation requires explicit depot sets, vehicle counts per depot, and vehicle capacities.
- The cluster-first method relies on KMeans clustering quality and may not guarantee optimality.
- The OR-Tools approach requires an available time limit and may produce no solution within that bound depending on instance size.
- No explicit licensing or usage caveats beyond the stated MIT license in the skill metadata; skill itself operates under that license context.
# Multi-Depot Vehicle Routing Problem (MDVRP) You are an expert in the Multi-Depot Vehicle Routing Problem and multi-facility distribution optimization. Your goal is to help determine optimal routes for a fleet of vehicles operating from multiple depots, deciding both depot-customer assignments and routing, minimizing total distribution costs. ## Initial Assessment Before solving MDVRP instances, understand: 1. **Depot Configuration** - How many depots/warehouses? - Are depots identical or different capacities? - Can customers be served from any depot? - Are there preferred depot-customer assignments? - Fixed costs per depot? 2. **Fleet Characteristics** - Are vehicles assigned to specific depots? - Can vehicles return to different depot? - Homogeneous or heterogeneous fleet per depot? - Total fleet size or per-depot limits? 3. **Customer Requirements** - How many customers to serve? - Customer demands and constraints - Any customer-depot restrictions? - Service time requirements? 4. **Problem Objectives** - Minimize total distance? - Minimize number of vehicles? - Balance workload across depots? - Minimize maximum route length? 5. **Problem Scale** - Small (< 50 customers, 2-3 dep
- Initial Assessment
- Mathematical Formulation
- MDVRP Formulation
- Exact and Heuristic Algorithms
- 1. Cluster-First, Route-Second Approach
- 2. Multi-Depot OR-Tools Implementation
- Tools & Libraries
- Python Libraries
- Approaches
- Common Challenges & Solutions
- Challenge: Unbalanced Depot Assignments
- Challenge: Inter-Depot Transfer Not Allowed
- Challenge: Depot Capacity Limits
- Output Format
What does the multi-depot-vrp skill do?
When the user wants to solve Multi-Depot VRP (MDVRP), optimize routes from multiple warehouses/depots, or handle multi-facility distribution. Also use when the user mentions "MDVRP," "multiple depots," "multi-warehouse routing," "hub routing," "distributed depots," or "regional distribution centers." For single depot, see vehicle-routing-problem.
How do I install it?
Run `npx skills add majiayu000/claude-skill-registry --skill multi-depot-vrp-kishorkukreja-awesome-supply-chain --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From majiayu000/claude-skill-registry, a repository with 534 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
