Warehouse Automation, Intralogistics AGV / AMR Robotics & Fleet Dispatch Engineering
AGV & AMR Warehouse Fleet Sizing & Cycle Time Formula
Calculate Ideal Round-Trip Mission Time Including Deadhead & Docking (min), Net Effective Trips Per Robot Hour, Fractional AGV Requirement, and Rounded Integer Fleet Count.
Sizing an AMR pallet fleet from loaded travel alone misses empty deadheading, LiFePO4 opportunity charging, and aisle intersection blocking!
Naive automation proposals divide Loaded One-Way Distance `d_loaded` by Catalog Top Speed `v` and under-order AGVs/AMRs by `35%–50%`! Every pallet move requires a complete Round-Trip Mission `t_RT = ((d_loaded + d_empty) / v + t_dock) / 60` minutes—combining Loaded Travel `d_loaded` (m), Empty Repositioning ("Deadhead") Travel `d_empty` (m), and Precision LiDAR Docking + Conveyor/Fork Handshake `t_dock` (sec)! Furthermore, each robot delivers only `Trips_hr = (60 / t_RT) * U_net` missions/hour after multiplying by Combined Fleet Utilization `U_net` (`= Availability * Charging_Duty * Traffic_Factor`, typically `0.70–0.80`, dropping below `0.60` when narrow single-lane aisles cause intersection queueing!), requiring `N_AGV = CEILING(Demand_pallets_hr / Trips_hr, 1)` vehicles!
Verify on an 84 Pallet/Hour Cross-Dock AMR Deployment—Peak_Throughput_Demand = 84.0 pallets/h (B2), Loaded_Haul_Distance `d_L` = 210.0 m (B3), Average_Empty_Deadhead `d_E` = 150.0 m (B4), Mean_Cruising_Speed `v` = 1.50 m/s (B5), Pickup_Plus_Dropoff_Handshake `t_dock` = 40.0 s (B6), and Net_Fleet_Utilization `U_net` = 0.75 (B7): Ideal Round-Trip Time equals `4.67` min (`280` s, E2), Net Productive Rate equals `9.64` pallets/h per AMR (E3), Exact Fleet Demand is `8.71` robots (E4), and Required Integer Fleet Count equals `9` AMRs (E5)!
| AGV / AMR Fleet Sizing KPI (84 plts/h, 210m Load + 150m Empty @ 1.5 m/s, 40s Dock) | Formula | Verified Output |
|---|---|---|
| Ideal Round-Trip Mission (min) | (((d_Load + d_Empty) / Speed) + t_Dock) / 60 | 4.67 min |
| Net Trips Per Robot-Hour | (60 / Mission_min) * Net_Utilization | 9.64 trips/h (7.46 @ congested 0.58 util) |
| Fractional Fleet Requirement | Pallets_Per_Hour / Net_Trips_Per_Robot_Hr | 8.71 robots (11.26 @ congested 0.58 util) |
| Required Integer AGV Fleet | ROUNDUP(Fractional_AGV_Count, 0) | 9 AMRs (12 AMRs @ aisle congestion!) |
Deadhead + Handshake AGV Cycle Time & Integer Fleet Rounding Formula
Validate `Demand > 0` pallets/h, `Loaded_Dist > 0` m, `Empty_Dist >= 0` m, `Speed` in `(0.1, 5.0]` m/s, `Dock_Time >= 0` s, and `Net_Utilization` in `(0.20, 1.0]`. Use `ROUNDUP(..., 0)` so fractional vehicle demand always rounds up to a whole dispatchable robot!
=LET(dm_p, B2, dl_m, B3, de_m, B4, vs_m, B5, td_s, B6, ut_f, B7, IF(OR(dm_p <= 0, dl_m <= 0, de_m < 0, vs_m <= 0.1, vs_m > 5, td_s < 0, ut_f <= 0.2, ut_f > 1), "Invalid AGV Input", LET(rt_m, (((dl_m + de_m) / vs_m) + td_s) / 60, tp_h, (60 / rt_m) * ut_f, ROUNDUP(dm_p / tp_h, 0))))Bi-Directional Aisle Congestion & Charging Bottleneck Check (Set Net Utilization B7 = 0.58)
Simulate single-lane deadlocks and battery-opportunity-charger queueing dropping `Net_Utilization` B7 from `0.75` to `0.58`: Net Trips per AMR E3 falls from `9.64` to `7.46` trips/h, Fractional Demand E4 climbs to `11.26`, and Required Fleet Count E5 jumps from `9` to `12` AMRs (`+33%` capex)! In a shared Arte Sheets capex model, industrial engineers can leave whole-cell `@mentions` on `B7` to align layout aisle-width changes before signing the robot PO.
=IF(ISTEXT(E5), E5, LET(rt_m, (((B3 + B4) / B5) + B6) / 60, tp_h, (60 / rt_m) * B7, ROUND(B2 / tp_h, 2)))Try the example
Use the original values or change them to test your understanding.