跳到正文
cccskills
免费在 GitHub 公开

"algo-sc-routing"

"Solve vehicle routing problems to optimize delivery routes under capacity and time constraints. Use this skill when the user needs to plan delivery routes, minimize transportation costs, or optimize fleet utilization — even if they say 'delivery route optimization', 'fleet routing', or 'minimize driving distance'.".

中文简介正在准备中。当前显示原文说明。

实测评分 未实测

查看安装方法

包含的文件(4)

  • SKILL.md4.3 KB
  • examples/sample_scenario.md5.4 KB
  • references/clarke-wright.md13.9 KB
  • references/metaheuristics.md11.1 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Vehicle Routing Problem (VRP)

Overview

VRP determines optimal routes for a fleet of vehicles to serve a set of customers from a depot, minimizing total distance or cost. NP-hard — exact solutions only feasible for small instances (< 25 nodes). Practical solutions use heuristics (Clarke-Wright savings, sweep) or metaheuristics (simulated annealing, genetic algorithm).

When to Use

Trigger conditions:

  • Planning daily delivery routes for a fleet of vehicles
  • Minimizing total travel distance/time under capacity constraints
  • Optimizing route assignments across multiple vehicles

When NOT to use:

  • For single-vehicle route optimization (use TSP solvers)
  • For real-time dynamic routing with continuous order arrivals (use online algorithms)

Algorithm

IRON LAW: VRP Is NP-Hard — Exact Solutions Don't Scale
For n customers, the solution space grows factorially. Exact methods
(branch and bound) work for n < 25. For real-world problems (50-1000+
customers), heuristics are REQUIRED. A good heuristic solution within
5% of optimal is far more valuable than an optimal solution that takes
hours to compute.

Phase 1: Input Validation

Collect: depot location, customer locations and demands, vehicle capacity, number of vehicles, time windows (if applicable), distance/time matrix. Gate: All locations geocoded, demand doesn't exceed vehicle capacity per customer.

Phase 2: Core Algorithm

Clarke-Wright Savings Heuristic:

  1. Start with each customer on its own route (depot → customer → depot)
  2. Compute savings for merging route pairs: s(i,j) = d(depot,i) + d(depot,j) - d(i,j)
  3. Sort savings descending
  4. Merge routes greedily if capacity constraint allows
  5. Improve with 2-opt (swap edges within routes) and or-opt (move customers between routes)

Phase 3: Verification

Check: all customers visited exactly once, no vehicle exceeds capacity, all routes start and end at depot. Compare total distance against lower bound. Gate: All constraints satisfied, solution within 10% of lower bound.

Phase 4: Output

Return routes with sequence, distance, and load.

Output Format

{
  "routes": [{"vehicle": 1, "sequence": ["depot", "C3", "C7", "C1", "depot"], "distance_km": 45, "load": 850, "capacity": 1000}],
  "summary": {"total_distance_km": 180, "vehicles_used": 4, "utilization_avg": 0.82},
  "metadata": {"customers": 30, "method": "clarke_wright_2opt", "computation_ms": 150}
}

Examples

Sample I/O

Input: 10 customers, 2 vehicles (cap=500), depot at center Expected: 2 routes, each serving ~5 customers, total distance minimized by geographic clustering.

Edge Cases

InputExpectedWhy
One customer demand > capacityInfeasible or split deliveryNeed split delivery VRP variant
All customers co-locatedMinimal routing, capacity-limited tripsDistance is trivial, trips determined by load
Tight time windowsMore vehicles neededTime constraints may prevent full-capacity routes

Gotchas

  • Distance matrix quality: Road distance ≠ Euclidean distance. Use actual road network distances (Google Maps, OSRM) for practical routing.
  • Time windows add complexity: VRPTW (VRP with Time Windows) is significantly harder. Customers requiring specific delivery windows fragment routes.
  • Dynamic vs static: Real-world routing has cancellations, additions, and traffic. Plan static routes but allow dynamic re-optimization.
  • Driver constraints: Maximum driving hours, break requirements, and overtime costs add practical constraints not in the basic model.
  • Return to depot: Standard VRP assumes routes return to depot. Open VRP (routes end at last customer) needs different formulation.

References

  • For Clarke-Wright algorithm implementation, see references/clarke-wright.md
  • For metaheuristic approaches (SA, GA), see references/metaheuristics.md

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

"Implement and select ad bidding strategies from manual CPC to automated target-CPA and target-ROAS. Use this skill when the user needs to choose a bidding strategy, set up automated bidding, or optimize bid parameters — even if they say 'what bidding strategy should I use', 'target CPA setup', or 'smart bidding configuration'.".

中文简介正在准备中。当前显示原文说明。

charlieviettq/awesome-agent-skill262026年7月20日 更新

"Optimize advertising budget allocation across campaigns using marginal returns analysis. Use this skill when the user needs to distribute budget across multiple campaigns, optimize spend pacing, or maximize overall ROAS under budget constraints — even if they say 'how to split my ad budget', 'campaign budget optimization', or 'diminishing returns on ad spend'.".

中文简介正在准备中。当前显示原文说明。

charlieviettq/awesome-agent-skill262026年7月20日 更新

"Build CTR prediction models for estimating ad click-through rates from features. Use this skill when the user needs to predict click probability, build an ad ranking model, or evaluate ad creative performance — even if they say 'predict click rate', 'ad relevance scoring', or 'which ad will get more clicks'.".

中文简介正在准备中。当前显示原文说明。

charlieviettq/awesome-agent-skill262026年7月20日 更新

"Implement Generalized Second Price auction for ad slot allocation and pricing. Use this skill when the user needs to understand search ad auctions, compute ad positions and costs-per-click, or analyze bidding dynamics — even if they say 'how does Google Ads auction work', 'ad rank calculation', or 'second price auction for ads'.".

中文简介正在准备中。当前显示原文说明。

charlieviettq/awesome-agent-skill262026年7月20日 更新

"Implement VCG mechanism for incentive-compatible ad slot allocation with truthful bidding. Use this skill when the user needs to design a truthful auction mechanism, compute externality-based payments, or understand why platforms may prefer GSP over VCG — even if they say 'truthful auction design', 'VCG payments', or 'incentive-compatible mechanism'.".

中文简介正在准备中。当前显示原文说明。

charlieviettq/awesome-agent-skill262026年7月20日 更新

"Explain blockchain fundamentals including distributed ledger architecture, consensus mechanisms, and block structure. Use this skill when the user needs to understand blockchain concepts, evaluate whether blockchain fits a use case, or design a blockchain-based solution — even if they say 'how does blockchain work', 'do I need blockchain', or 'distributed ledger'.".

中文简介正在准备中。当前显示原文说明。

charlieviettq/awesome-agent-skill262026年7月20日 更新

查看 charlieviettq 的全部技能

报告此技能的问题