Program Process


We adopted a stepwise approach to handle the complex problem of assigning pallets to positions in trailers. Pallets are formed into stacks, stacks are formed into pairs, and finally, pairs are formed into trailers. By changing pallets into stacks, we eliminate the maximum weight above constraint from further consideration. Provided stacks are of an acceptable height, overhang goals are also eliminated at the stacking stage. Pairs are selected for trailers on the basis of total weight, and also in such a way as sideways balance is maintained. Following is a step-by-step guide of the process, and a flowchart of the process is presented here.

Step 1 - Determining number of trailers. The computer program begins with an order consisting of pallets as its only input. A greedy heuristic attempts to add each considered pallet to each stack, creating a new stack if it cannot. Stacks are then classified as “good” or “bad” depending on their height. An improvement process is applied to the “bad” stacks, the stacks are reduced to their composite pallets, the order of these pallets changed, and the greedy heuristic process repeated. This process is repeated several times, in an attempt to eliminate the “bad” stacks. The number of trailers being sent today can now be determined by considering the maximum of the number of the stacks and the weight of the stacks.  

Step 2 - Improving stacks using the reserve list. The remaining stacks classified as “bad” from Step 1 now have access to the pallets in the reserve list in an attempt to increase their height. Should more stacks still be required to create the number of stacks needed, the reserve list is used to create these new stacks.

Step 3 - Pairing stacks. Stacks are ordered from heaviest to lightest and pairs are created by pairing the heaviest stack with the lightest stack.

Step 4 - Allocating pairs to trailers. A group of pairs (3 trailers worth) is selected. An integer program assigns each of these pairs to a trailer such that the total weight, and the sideways weight differential of the trailer meets the legal requirements.

Step 5 - Finding positions for pairs in trailers. For each trailer, a second integer program is used to determine the position of each pair inside the trailer such that axle weight limits are met.