Calculation of Loads Based on Normalized Number of Pallets

By Pavel Novikov, Senior Functional Consultant, Industry Consulting Service (ICS)

Load planning is a complex task in which various parameters and factors must be taken into account. The Transportation management system (TMS) module of Dynamics 365 for Supply Chain Management (D365SCM) provides two functionalities for load planning: Load planning workbench for manual planning and Load building workbench for automated planning. We are interested in automated load planning scenarios using the Load building workbench. This functionality calculates loads according to a chosen load building strategy. TMS functionality provides one Volume-based strategy, which calculates loads by two parameters (volume, weight). This strategy allows to determine the allowable percentage of loading of the normative weight/volume capacity. The Best Fit Decreasing algorithm of the Bin packing problem is used to calculate loads (items are ordered in descending order of size and sequentially packed in a container with the least amount of free space left after packing). It was proved in the scientific literature that the number of defined containers in the worst case does not differ from the optimal one by more than 70%. It is worth noting that the algorithm of this strategy can split the lines of the original order into different loads. In my opinion, this approach may not be suitable for all companies by default and therefore a parameter should be provided in the strategy to control the possibility of splitting the lines of one order into different loads. The D365SCM system provides the ability to develop new load building strategies. In this article, I would like to tell you about one possible strategy that can be used for your company’s logistics.

Let’s formulate the problematic of the task. It is required to calculate loads in pallets or other cargo places (hereinafter we will use pallets) for planned orders where the lines of one order are not to be divided into different loads. A vehicle’s load capacity should be determined by the number of pallets of the required type and the permissible weight capacity of the vehicle. The vehicle’s capacity is not controlled by volume, it is assumed that the vehicle loading height will not be exceeded by limiting the height of loaded pallets. If a vehicle is loaded with different types of pallets, which mostly match each other well in the vehicle, the capacity of the vehicle with different types of pallets can be determined by recalculating the different types of pallets into one target pallet type. Let’s assume that items are shipped in boxes. The number of boxes that can be placed on a pallet is specified for items. Boxes of different items can be placed well together on a pallet allowing different items to be consolidated on the same pallet. We assume that if different items are placed on one pallet, you can calculate the filling of a pallet by adding up the calculated quantity of items on the pallets. Optionally, items of different customers can be placed on the same pallet. Such a mathematical model can calculate the vehicle's occupancy in pallets.

To implement this load building strategy in D365SCM, you need to enter cargo place units in the Container types table, e.g. EPAL (Euro pallet).

For items, you need to specify the cargo place unit and the unit conversion from boxes to cargo place units. The cargo place unit is defined in the Unit sequence groups as the largest unit. In our example, this would be the PL unit and the EPAL pallet type.

The capacity of the vehicle will be specified in cargo place units, so for load templates a new table should be included to specify the capacity in container types, e.g. 20 EPAL. The maximum weight capacity must also be specified.

Let’s try to consider one of the possible algorithms for calculating loads for our task. We will use the Best Fit Decreasing algorithm to calculate loads. The new strategy will allocate orders to loads in full, without the possibility of splitting order lines into different loads. If the system fails to distribute an order in full, then it will be necessary to manually distribute the order lines to proposed loads or create a load with a different load template. To calculate the total order quantity, we need to group order lines by cargo place units of items and calculate the quantity of items in the cargo place units. If the strategy does not allow to consolidate orders of different customers on a pallet, the calculated quantity must be rounded upwards to a whole number. If it does, the quantity is not rounded. To allocate orders to loads, the system will sort orders in descending order by pallet quantities and their weight, and for each order it will select the heaviest load to which an order can still be added.

Let’s now look at a load calculation scenario with the approach discussed above. Suppose we have three items for which unit conversion from boxes to pallets is specified:




Physical dimensions of items:




We need to calculate loads for these load template parameters: 10,000 kg weight capacity and 20 EPAL cargo place capacity.

There are 10 sales orders created with the following items and quantities in the Sales unit and Pallets unit:

The total number of pallets is then calculated for orders and the orders are sorted in descending order by the number of pallets and their weight:

The algorithm gives the following order allocation by loads:

We see that the algorithm has calculated 4 loads. The used algorithm, however, does not calculate the best allocation of orders by loads, which can be achieved in our example. The best allocation would be 3 loads of 20 pallets each. In the above scenario, you can adjust the calculation by moving Order 91 from Load2 to Load3, Order 93 from Load3 to Load2, and Order 88 from Load4 to Load2. To get a better allocation of orders across loads, you need to use other algorithms of the Bin packing problem, which makes the implementation of the new strategy much more complicated.

If we calculate loads using the standard strategy with the additional pallet count control, we see that the system calculates 3 proposed loads, but for the first load the number of pallets (24) would be greater than the vehicle’s capacity of 20 pallets, which in practice would not allow pallets to be loaded into the vehicle.


In the example above, you can see the possible differences in load building strategies, so you can choose the load calculation strategy which is right for your business. In my opinion, if customer orders have a few items with large quantities that can be estimated in pallets, then it is preferable to use a new strategy to calculate loads. If customer orders have a large list of items with small quantities and it is difficult to estimate the required number of pallets, then it is worth trying to use the standard strategy (after deciding whether it is possible to split order lines into different loads or not).