A multi-population harmony search algorithm with external archive for dynamic optimization problems