{'fraction_non_alphanumeric': 0.0245253164556962, 'fraction_numerical': 0.0, 'mean_word_length': 5.693121693121693, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Opposition-based Differential Evolution with protective generation jumping

The Opposition-based Differential Evolution (ODE) algorithm has shown to be superior to its parent, Differential Evolution (DE) algorithm in solving many real-world problems and benchmark functions efficiently. An acceleration component of ODE, called generation jumping, is involved with creating opposite population and competing with current population, and from the union of those populations, selecting the Np fittest individuals. The jumping is triggered based on a constant percentage (i.e., jumping rate) during search process. There are optimization problems in which generation jumping is not useful and only wastes computation time and resources. In this paper, we focus on those certain benchmark functions which ODE performs poorly because of the useless generation jumping, and we introduce Opposition-Based Differential Evolution with Protective Generation Jumping (ODEPGJ), in which it makes the ODE algorithm more adaptive in term of generation jumping. In fact, we stop generation jumping when it seems to be unhelpful in acceleration process. The experimental verifications are provided to show the improvement caused due to the mentioned protective generation jumping.