1. A computer-implemented method of designing micro-fluidic devices, comprising: determining a target cost function based on one or more of task, particles, system features, and design type as device design parameters; simulating the performance of one or more chosen design candidates in a selected simulation model and identifying a design candidate with a cost function closest to the target cost function as a best initial design candidate; on the best initial design candidate, running an optimization routine to modify design parameters of the best initial design candidate to provide a modified design candidate having design parameters differing from the design parameters of the best initial design candidate, and computing the cost function for the modified initial design candidate; in a hardware processor, returning optimized device design parameters of an optimized device design derived from a modified design candidate having a computed cost function that meets the target cost function; and repeating, if necessary, the optimization routine on the modified design candidate until the computed cost function for the modified design candidate meets the determined target cost function.