Examples
Examples
Try the starting example
- Stops [open minute,close minute,service minutes,delivery load units,collection load units]; enter JSON
- [[0,80,5,2,1],[0,100,5,2,2],[0,130,5,1,3]]
- Travel matrix (minutes); depot then stops; enter JSON
- [[0,5,7,9],[5,0,4,6],[7,4,0,4],[9,6,4,0]]
- Vehicle load capacity (units)
- 4
- Feasible batched runs and unserved stops (JSON)
- {"runs":[{"depot_departure":0,"stops":[[1,5,10,3],[2,14,19,3]],"depot_return":26},{"depot_departure":26,"stops":[[3,35,40,3]],"depot_return":49}],"unserved":[]}
- Run count
- 2
Try another scenario
- Stops [open minute,close minute,service minutes,delivery load units,collection load units]; enter JSON
- [[0,60,8,3,1],[0,90,8,2,3],[0,120,8,2,2]]
- Travel matrix (minutes); depot then stops; enter JSON
- [[0,6,8,10],[6,0,5,7],[8,5,0,5],[10,7,5,0]]
- Vehicle load capacity (units)
- 5
- Feasible batched runs and unserved stops (JSON)
- {"runs":[{"depot_departure":0,"stops":[[1,6,14,3],[2,19,27,4]],"depot_return":35},{"depot_departure":35,"stops":[[3,45,53,2]],"depot_return":63}],"unserved":[]}
- Run count
- 2
Calculation method
Calculation method
Feasible batched runs and unserved stops (JSON)
At current depot time, test every contiguous prefix from next stop. Initialize load=sum deliveries; at each stop load+=collection−delivery; require capacity and service finish<=close. Choose longest feasible prefix and return depot; if none, report next stop unserved.
Run count
Number of feasible depot-to-depot runs.
Symbols and units
- a
- Stops [open minute,close minute,service minutes,delivery load units,collection load units]; enter JSON
- b
- Travel matrix (minutes); depot then stops; enter JSON
- c
- Vehicle load capacity (units)
Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.
Assumptions & limits
Assumptions & limits
- One vehicle, fixed stop order, contiguous multi-run delivery/collection batching; depot loads all deliveries for each run and unloads collected items on return. Supported limits: All numeric inputs and computed intermediates must remain finite. Supported numeric input magnitude is zero or 1e-12 through 1e12 in absolute value; reject values outside this bounded range. All lists/JSON record tables are limited to 100 records unless a stricter bound is stated; reject malformed record arity and wrong member types. <=20 stops; full nonnegative square matrix with zero diagonal; windows ordered start<=end, service/load>=0; positive capacity. Greedy longest-prefix plan; no loading time, traffic, geographic optimization or rearranged stop order.
Are these inputs private?
These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.