Written by Tuomo Takkula
SmartRouting | 15 mins read

– It’s a bit over nine thirty in the morning as Charlie enters the office at a major company managing the flow of standardized reusable plastic boxes. His job is to dispatch the truck deliveries of pallets with boxes and to schedule the pick-up of used boxes.

He is rested and unhurried; the SmartRouting solution his company rolled out a few weeks ago has now been set to run almost entirely hands-off. He left yesterday evening with all orders planned. From then on, any new orders, delays and most changes popping up during the night would be taken care of automatically. Sure enough, the trucks were rolling since six o’clock and all was well.

“What’s up?”, asks Charlie as he recognizes the caller ID of Harold, one of the truckers on the early morning shift. It was unusual for Harold to be calling.

He grabs a coffee and sits down. “Nothing to do”, he thinks to himself, “might as well run those scenarios for Finance…”, an activity which he used to do in Excel before and which he used to squeeze-in between his ordinary dispatching activities. Creating a simple report in Excel used to take him a good portion of the day and was awkward because some of the values he had to maintain kept changing throughout the day, but that problem was gone. He is just about to switch over to SmartRouting Scenario Management view, when his phone rings.

“What’s up?”, asks Charlie as he recognizes the caller ID of Harold, one of the truckers on the early morning shift. It was unusual for Harold to be calling. Like all truckers, he would normally acknowledge progress on his route via his mobile device. Something was going on. “I’ve got a problem –  a couple of crates collapsed and broke loose way back in the trailer. To tie them back down, I first need to unload the ones in front.”

Charlie browses through the remaining deliveries on Harold’s route. He then says: “OK, do your best. Forget about Meriden, I’ll handle it. Anything else?"

Charlie’s immediate thoughts are that this was probably not what the sales person meant with “the hardware will break before the software does!”. And he then goes on to regret he didn’t voice his concerns when Finance talked Management into procuring the cheapest supplies. He would be sure to share his feelings next time they‘d take a look at his late count KPI. Setting aside his emotions, he focuses on a solution to the problem at hand.

A quick look at the Dispatching Dashboard tells him where Harold is. “You are at Miller’s yard. How long will it take?” he asks, and Harold answers: “This will keep me busy for a little over an hour. I might still make it on time for Deer Creek, depending on traffic, but Meriden is out of question – you know how strict they are with their time windows“. Charlie browses through the remaining deliveries on Harold’s route. He then says: “OK, do your best. Forget about Meriden, I’ll handle it. Anything else?”, and as Harold has nothing else to add, they both hang-up.

Charlie flags the Meriden delivery as failed, removes it from planning and checks Harold’s resulting route. If Harold is able to make up for lost time here and there, all shipments currently flagged as late should still make it in time. To anticipate any complaint, Charlie informs the recipient at Deer Creek that its order is likely to be somewhat late. 

“1 order unplanned”, as the KPI on the screen reminds him. “First things first” he sighs, and he calls Production to have them prepare pallets with a new load for Meriden. He then goes back to the application, selects the Meriden order and right-clicks the “Suggest tour” option. SmartRouting produces a list of suggestions, but none for today. Charlie frowns. “Lemme see…”, he mumbles to himself. He proceeds to filter through today’s tours in such a way that only those that have yet to start and that have sufficient capacity left are shown – there are exactly two.

Charlie drags the Meriden order onto Joe’s tour, the first tour on the list. “Driving time violation”, the tooltip warns before he has even released the mouse button. He tries to drag it onto Susan’s tour, the second entry on his filtered list, but the tooltip changes to “Incompatible orders”, which is true, as her tour carries boxes returned for cleaning and those cannot be transported together with clean boxes for fear of contamination. That explains why neither tour was listed as suggestions.

...He proceeds to filter through today’s tours in such a way that only those that have yet to start and that have sufficient capacity left are shown – there are exactly two.

Charlies doesn’t give up easily. He looks into ways to make the Meriden order fit by shifting cargo around. But either an order remains unplanned, a route contains intolerable time window violations or a truck misses a scheduled maintenance slot. “Darn…”, he grumbles, as he feels time is quickly running out. While he is resigning himself to the idea that an order would be delivered late, “any  order… but Meriden’s, they are going to give me hard time”, his phone rings again.

“Hi there, it’s Lucy!”, a cheerful voice exclaimed, “Could I ask you to run a scenario for me? We would like to ship to Hank’s twice a week.” Not willing to risk an argument with Lucy, Charlie doesn’t turn her down. He takes note of the details of her request . It turns out to be a rather simple scenario and he promises to get back to her with the results after lunch.

Charlie switches back to his planning screen. To his surprise, all but one of the orders are planned, and Meriden is planned smack in the middle of its time window. Then he remembers the background optimizer. The system took care of replanning the orders he had unplanned manually without excluding them from planning entirely. “Great!” he rejoices, before browsing through the new tours.

Hi there, it’s Lucy!”, a cheerful voice exclaimed, “Could I ask you to run a scenario for me? We would like to ship to Hank’s twice a week.”

As he compares Harold’s and Joe’s routes, he notices how they cross both in time and location close to Joe’s end of shift, and he cannot subdue an impish smile. He then stuffs the remaining unplanned order into Joe’s tour. Unsurprisingly, a driving time violation appears, but he overrides it. He calls both drivers and asks them to swap their rides where their routes cross one another. That way Joe will be back in the depot in time, and all orders will be still be delivered.

“Today’s off to a good start”, he tells himself before glancing at time. “What? – it’s just quarter to ten?”

He had handled in just a few minutes and with the new system an incident that would have been time consuming to solve and to process with the old system. “If those computers ever learn how to handle phone calls, there is a good chance I could end-up sitting next to Finance, crunching scenarios for Lucy day in, day out …”

Tuomo Takkula is a Senior Consultant at Ab Ovo with over twenty years of experience in optimization and software development in industries ranging from aviation, rail and maritime to retail and production. He studied mathematics in Berlin and got his PhD on an optimization topic from Chalmers University in Gothenburg. He lives with his family in Aachen and enjoys mountain biking and skiing.