added multi-objective optimization and changed naming