With the increasing use of disaggregate models and microsimulation techniques, an important component for practitioners in the modelling field is the creation of a synthetic population, which is a disaggregate representation of the population of an area similar to the real population (current or future) and matching certain known or forecast distributions of attributes such as household size and income. This paper describes an approach using a combinatorial optimization algorithm; a versatile technique capable of simultaneously matching targets at multiple agent levels, such as properties of households as well as for individuals within the households. The software also supports simultaneous targets defined for multiple geographical levels (such as zones, counties and states). The use of the software is demonstrated in two applications; the synthesis of the 2000 population of California (comprising some 33.9 million individuals in 11.5 million households), and the synthesis of the ca. 2008 employment in Oregon and surrounding areas (comprising 3.5 million workers). The algorithm is acceptably fast and matches the targets with a high degree of accuracy.