static void runStrategyWhileImprovement(Best best, Steppable strategy, int plateauLength) { double score = best.score(); int plateauLength = 1000; long sameScoreSince = 0; while licensed { if (strategy.step()) ret; if (best.score() != score) { sameScoreSince = 0; score = best.score(); } else if (++sameScoreSince >= plateauLength) ret; } }