Intelligent Exploration for Genetic Algorithms: Using Self-Organizing Maps in Evolutionary Computation