In this paper we propose a multiobjective particle swarm optimization (MOPSO) algorithm to solve bilevel linear programming problems with multiple objective functions at the upper level. A strategy based on an achievement scalarizing function is proposed for the global best selection and its performance is compared with other selection techniques. The outcomes of the algorithm on some bi-objective instances are compared with those obtained by an exact procedure that we developed before. The results indicate that the algorithm seems to be effective in solving this type of problems. In particular, the proposed selection technique provides a good convergence towards the Pareto front.