Meta-heuristic and evolutionary algorithms for engineering optimization. (2017)