Restart Scheduling for Genetic Algorithms

In order to escape from local optima, it is standard practice to periodically restart heuristic optimization algorithms such as genetic algorithm according to some restart criteria/policy. This paper addresses the issue of finding a good restart strategy in the context of resource-bounded optimization scenarios, in which the goal is to generate the best possible solution given a fixed amount of time. We propose the use of a restart scheduling strategy which generates a static restart strategy with optimal expected utility, based on a database of past performance of the algorithm on a class of problem instances. We show that the performance of static restart schedules generated by the approach can be competitive to that of a commonly used dynamic restart strategy based on detection of lack of progress.