This document describes a semi-automated approach for assigning students to project teams in a capstone engineering course. The approach uses an automated search to generate candidate solutions based on student preferences and skills data. Faculty then evaluate the candidates, applying additional soft criteria like personality compatibility. The process iterates between automated generation and human evaluation to produce an allocation in less time than a fully manual process, while still leveraging faculty expertise. An initial implementation reduced the time needed for selection by about three times compared to previous manual methods.