What is route optimisation?
Route optimisation is working out in which order, and by which roads, a group of vehicles should visit a group of points at the lowest total cost while keeping to a set of rules. Cost is not only distance: the number of vehicles, driver hours, the time riders spend on board and empty seats all count.
Finding the shortest road between two points is a navigation app's job. Optimisation weighs every possibility at once while spreading hundreds of riders across dozens of vehicles. Changing one vehicle's stop order changes the load on the others, so the problem is solved for the whole fleet, not route by route.
What makes shuttle transport different?
In parcel delivery a vehicle leaves the depot, drops its parcels and comes back. On a staff or school shuttle the load is people, and every rider has to reach the same place within the same narrow window. So shuttle routes are built around other constraints:
Data: where optimisation starts
A route is only as good as the data the engine is given. A mislocated address sends a rider to the wrong stop and a vehicle on a needless detour. So the first step is gathering the data and checking it.
- Rider addresses
- Addresses are turned into coordinates. Those that do not match at building level, and missing or conflicting records, are listed separately to be fixed.
- Shifts and calendar
- Each rider's shift, start and finish times, rotation pattern and days off.
- Sites
- Gate locations, where vehicles can pull in and the rules for entry.
- Fleet
- The vehicle types available, seat counts, vehicles per supplier and contracted unit prices.
- Past trips
- Actual journey times from earlier trips are the basis of the traffic forecast for each time of day.
How does the engine build a route, step by step?
In operations research this is known as the capacitated vehicle routing problem with time windows. The number of possible routes grows exponentially with the number of riders, so trying every option one by one is impossible. The engine splits the problem into four steps that feed each other and improves the solution at each one.
- Stop placement Riders who live close to each other are clustered. For each cluster the engine picks a point where a vehicle can stop safely, close to a main road and within every rider's walking limit.
- Vehicle assignment Stops are shared out between vehicles. When one is full the next one opens; areas with few riders get a smaller vehicle type.
- Stop order Each vehicle's stops are ordered for the shortest total time without any rider's journey going over the limit. One-way streets, banned turns and streets a large vehicle cannot enter are taken into account.
- Timing Working back from the arrival window, a departure time is set for every stop, using the traffic forecast for that time of day.
Once there is a first solution, the engine keeps swapping stops and vehicles to bring the total cost down. Any change that breaks a rule is rejected. For a site with more than a thousand riders this usually takes under a minute.
Forecasting traffic and journey time
In Istanbul the same road can take 40 minutes at 06:30 and 65 minutes at 07:30. A plan that uses one average time all day either has riders waiting at the site because they left too early, or vehicles that arrive late.
Volt Lines uses past trip data for every road segment by day of the week and time of day. Seasonal changes such as schools reopening, the days before public holidays and long-running roadworks are added to the forecast separately. That way the departure time is the one most likely to get the vehicle into its arrival window.
Balancing goals: scenarios
The plan with the fewest vehicles usually means longer journeys. The plan with the shortest journeys needs more vehicles. There is no single “right” route; the right one depends on what the company puts first.
So the engine builds several scenarios from the same rider data, with different weightings. Vehicle count, daily distance, average and longest journey time, occupancy and estimated monthly cost are shown side by side. Operations and HR decide together, and the current routes keep running until the approved scenario is published.
Static and dynamic optimisation
With static optimisation, routes are rebuilt periodically, for example every month or when a new shift pattern starts, and stay fixed in between. Riders keep the same stop and time, which suits teams with regular hours.
With dynamic optimisation, routes are rebuilt every day from demand. Riders share their weekly plans in the rider app, and the next day's routes are calculated only for those who are coming. With hybrid and flexible working it cuts the number of vehicles running with empty seats.
With either approach, changes during the day, such as a new employee, a change of address or a breakdown, are recalculated only on the routes they affect.
After publishing: measuring and improving
Optimisation does not stop when a route is published. On every trip the driver app records the vehicle's position, arrival times at each stop and how many riders boarded. The gap between planned and actual is used to correct the traffic forecast and the stop placement in the next calculation.
A checklist before you start
To speed up the first optimisation, it is enough to have the following ready. Anything missing can be filled in with our team during set-up.