Constructing Water Tank Delivery Schedules through Combined Vehicle Routing and Packing Decisions

This paper describes a decision-support system that was developed in 2011 and is currently in production use. The purpose of the system is to assist planners in constructing delivery schedules of water tanks to often remote areas in Australia. A delivery schedule consists of a number of delivery trips by trucks. An optimal delivery schedule minimises cost to deliver a given total sales value of delivered products. To construct an optimal delivery schedule, trucks need to be optimally packed with water tanks and accessories to be delivered to a set of delivery locations. This packing problem, which involves many packing and loading constraints, is intertwined with the transport problem of minimising distance travelled by road. We have reviewed relevant literature on vehicle routing problems and on packing and cutting problems. Many of the problems studies in the literature have some similarities with the problem we had to solve, but none of these consider the same business rules and constraints we had to consider. Therefore, we have combined several algorithms in a software system to assist planners of a water tank production company to construct good delivery schedules of ordered water tanks on an on-going basis. Algorithms used include: a clustering algorithm to cluster delivery locations and agent locations as a basis for constructing good delivery trips, i.e. trips with an acceptable transport cost / delivered value ratio; an adapted vehicle routing algorithm to calculate approximately optimal (shortest) delivery trips around a given intermediate storage/unbundling location; an algorithm to calculate shortest distances between geographical locations in a road network; a custom algorithm to load trucks with water tanks according to bundling possibilities; a 2D packing algorithm to load products that cannot be bundled on remaining open space on trucks and trailers; algorithms for constructing vertical and pyramid stacks of products, where products can be stacked. In addition, we have used a geolocation service to obtain geographical coordinates corresponding to delivery and agent addresses. Each of the algorithms used solves a well-defined problem which is a part of the business problem to be solved. The main challenge was that the complete business problem is not well-defined, as business rules and constraints that have to be taken into account are often implicit; for example, a solution that might be optimal in a static sense, for delivering a given set of orders, is not necessarily optimal in a dynamic sense, for optimising business operations on an on-going basis. To obtain good solutions, not only does each of the algorithms used need to perform well, but their partial results need to be combined to produce acceptable overall solutions.