An algorithm for placing multi-terminal electronic components in a printed circuit board environment is presented. A heuristic technique of applying vector forces to component models and iteratively relocating these modules has been developed. The methods used to compute these forces are what make this algorithm unique and improve its ability to find solutions that are independent of initial conditions and near optimal. A flexible modeling scheme has been devised to allow for any general class of components to be placed. The algorithm will place modules of arbitrary size with any number of terminals onto boards of irregular shape, including placement on two sides of a board. While most powerful in a printed circuit environment, the algorithm may be used in wire-wrap technologies and hybrid designs as well. The technique has been implemented in a Fortran program and exhibits the high degree of flexibility required in a design automation system. A summary of the results obtained in practical applications at Honeywell is included.