Quality of an assembly is mainly based on the quality of mating parts. Due to random variation in sources such as materials, machines, operators and measurements, even those mating parts manufactured by the same process vary in their dimensions. When mating parts are assembled linearly, the resulting variation will be the sum of the mating part tolerances. Many assemblies are not able to meet the assembly specification in the available assembly methods. This will decrease the manufacturing system efficiency. Batch selective assembly is helpful to keep the assembly requirement and also to increase the manufacturing system efficiency. In traditional selective assembly, the mating part population is partitioned to form selective groups, and the parts of corresponding selective groups are assembled interchangeably. After the invention of advanced dimension measuring devices and the computer, today batch selective assembly plays a vital role in the manufacturing system. In batch selective assembly, all dimensions of a batch of mating parts are measured and stored in a computer. Instead of forming selective groups, each and every part is assigned to its best matching part. In this work, a particle swarm optimisation based algorithm is proposed by applying the batch selective assembly methodology to a multi-characteristic assembly environment, to maximise the assembly efficiency and thereby maximising the manufacturing system efficiency. The proposed algorithm is tested with a set of experimental problem data sets and is found to outperform the traditional selective assembly and sequential assembly methods, in producing solutions with higher manufacturing system efficiency. © 2011 Taylor & Francis.