Closed ambarket closed 9 years ago
I will give a more thoughtful reply tomorrow after I ponder this some more. Though my initial thoughts are maybe the algorithm will do this on its own because of the adaptive parameters and the variety of local optimizations.
What we really need is a harder control flow graph to really strain the algorithm. Then we could see how the current algorithm runs near the end and see if we could improve it with an explicit switch to exploitation mode.
Yea I started trying to do this and I have doubts about if it even makes sense and that I should be spending time on it. It makes the adaptive parameters a lot harder to reason about. I think I'll set that branch aside for now.
TO_DISCUSS: The general idea presented here, which is to have two different series of operators for exploration vs exploitation, and the decision of how to determine when exploration has ended and exploitation should begin. Also how would something like this play into the adaptation of our parameters and is it worth spending the time on this when our current algorithm already seems to function quite well.
Exploration: Defined as the period of time from generation 1 to 75% of max generations, or until the population's coverage ratio exceeds 90%, whichever occurs sooner.
Exploitation: This phase starts immediately after exploration, as defined above ends. TO_DISCUSS: likely the mutation, crossover, and local optimization probabilities will change at this point to some predefined start point for exploitation.