This paper presents a Particle Swarm Optimization (PSO) algorithm to solve the Container Loading Problem (CLP) where a set of rectangular boxes of different sizes are packed into a single rectangular container. The CLP uses a packing scheme to generate feasible packing plan and calculate volume utilisation of the container. The packing scheme is based on the layer building approach which group boxes of the same type to create layers. The spaces where layers may be packed are represented by maximal empty spaces which are created using the Difference Process. A back bottom left heuristics is used to select the maximal empty space for each layer built. The PSO is used to evolve the order of box type sequence and layer type vector used in the packing scheme. The performance of the algorithm is tested on seven test cases; each test case consists of 100 instances. The results show that PSO performs very well in terms of significant improvement in volume utilization. © 2012 IEEE.