Computer aided product design: problem formulations, methodology and applications