Несколько локальных алгоритмов поиска, чтобы найти глобальные оптимальные
Так что я довольно новичок во всем мире эволюционных и генетических алгоритмов, и сейчас я нахожусь в процессе его написания, который оптимизирует массив и вернет наилучшее возможное решение - пригодность.
Мой алгоритм сейчас оптимизирован с помощью имитации отжига, я могу изменить скорость охлаждения и начальную температуру, чтобы изменить давление и разнообразие населения, чтобы получить разные результаты, это прекрасно работает. У меня вопрос: возможно ли использование двух разных видов локального поиска в одном алгоритме? Скажем, я ограничиваю свои итерации, например, до 5000. Стоит ли использовать 4000 для имитации отжига, а затем посвятить оставшиеся 1000 локальному поиску альпиниста, чтобы найти оптимальное решение из значений, найденных в первом локальном поиске? Или использование двух разных локальных поисков в одном алгоритме не является стандартной практикой? Я новичок в этом мире программирования, поэтому я открыт для любых предложений!
1 ответ
Я использую стимулированный отжиг (SA), чтобы помочь мне оптимизировать оценку ошибок в 3D-принтере дельта-стиля. Я подгоняю функцию ошибки 34 dof к карте ошибок образцов. Я бегу 3 миллиона итераций SA, а затем поднимаюсь на холм (HC). HC уменьшает значение функции ошибки (стоимости). Я не знаю, что это обычное дело, но это работает для меня. Типичные результаты: исходная функция ошибок, 150. После SA, 18. После HC, 2.