A delivery vehicle scheduling system creates a route for one or more vehicles to effectuate efficient deliveries. Parameters related to the recipients of the deliveries (10) as well as to the vehicles and costs of late and/or early arrival (20) are used to analyze available time slots and to select those that have a lowest-cost impact on the current delivery schedule. An optimization routine takes newly generated time slots and inserts them into the existing delivery schedule (801). Optimization is performed by a neural network or genetic algorithm that manipulates the legs of each vehicle's route such the aggregate cost of the entire delivery schedule for all vehicles is minimized (40). Time slots for subsequent customers are generated based on this newly optimized schedule, and those new time slots are again optimized.