Mathematical optimisation is widely used to find the optimal value for an objective function, subject to constraints that try to simulate reality, and is fundamental to improving industrial processes. In this paper, we compare different optimisation approaches to solve the packaging problem in multihead weighing machines. In this problem, each package is made up from the loads in a subset of the multihead weigher's hoppers. The total weight of the packed product must be as close to a specified target weight as possible. We designed and evaluated a set of algorithms for this problem, considering both single-objective and bi-objective optimisation criteria. A new criterion for creating the packages is considered, and a different way of filling of the hoppers is studied with the aim of reducing process variability. Numerical experiments considering both a set of real data and the most important process performance parameters show the usefulness of our study.