Когда выбрать Стохастическое восхождение на вершину по крутому восхождению?


Ответы:


3

Самые крутые алгоритмы восхождения на гору хорошо работают для выпуклой оптимизации. Однако реальные проблемы обычно имеют невыпуклый тип оптимизации: существует множество пиков. В таких случаях, когда этот алгоритм начинается со случайного решения, высока вероятность того, что он достигнет одного из локальных пиков вместо глобального пика. Усовершенствования, такие как имитация отжига, облегчают эту проблему, позволяя алгоритму отойти от локального пика и, таким образом, увеличивая вероятность того, что он найдет глобальный пик.

Очевидно, что для простой задачи с одной вершиной крутое восхождение на гору всегда лучше. Он также может использовать раннюю остановку, если найден глобальный пик. Для сравнения, алгоритм имитации отжига фактически отскочил бы от глобального пика, вернулся назад и снова отскочил. Это будет повторяться до тех пор, пока оно не охладится достаточно или определенное заданное количество итераций не будет завершено.

Проблемы реального мира связаны с шумом и отсутствием данных. Стохастический подход к восхождению на вершину, хотя и медленнее, более устойчив к этим проблемам, и процедура оптимизации имеет более высокую вероятность достижения глобального пика по сравнению с алгоритмом наискорейшего восхождения на вершину.

Эпилог: Это хороший вопрос, который поднимает постоянный вопрос при разработке решения или выборе между различными алгоритмами: компромисс между производительностью и вычислительными затратами. Как вы могли догадаться, ответ всегда: это зависит от приоритетов вашего алгоритма. Если он является частью какой-либо системы онлайн-обучения, которая работает с пакетом данных, то существует сильное временное ограничение, но слабое ограничение производительности (следующие партии данных исправят ошибочное смещение, вызванное первым пакетом данных). С другой стороны, если это задача обучения в автономном режиме со всеми доступными данными, то основным ограничением является производительность, и рекомендуется использовать стохастические подходы.


2

Давайте начнем с некоторых определений в первую очередь.
Альпинизм - это алгоритм поиска, который просто запускает цикл и непрерывно движется в направлении увеличения стоимости, то есть в гору. Цикл завершается, когда он достигает пика, и у соседа нет более высокого значения.

Стохастическое восхождение на гору , вариант восхождения на гору, выбирает случайный из числа движений в гору. Вероятность выбора может варьироваться в зависимости от крутизны подъема в гору. Двумя хорошо известными методами являются:
Восхождение на холм первого выбора: генерирует преемников случайным образом, пока не будет создан один из них, который лучше текущего состояния. * Считается хорошим, если в штате много преемников (например, тысячи или миллионы).
Случайный перезапуск восхождения на гору:Работает над философией «Если у вас ничего не получится, попробуйте, попробуйте еще раз».

Теперь к вашему ответу. Стохастическое восхождение на гору может действительно работать лучше во многих случаях . Рассмотрим следующий случай. Изображение показывает состояние пространства-ландшафта. Пример, представленный на изображении, взят из книги « Искусственный интеллект: современный подход» .

введите описание изображения здесь

Предположим, вы находитесь в точке, показанной текущим состоянием. Если вы реализуете простой алгоритм восхождения на гору, вы достигнете локального максимума, и алгоритм завершится. Несмотря на то, что существует состояние с более оптимальным значением целевой функции, но алгоритм не может достичь его, поскольку он застрял на локальном максимуме. Алгоритм также может застрять в плоских локальных максимумах.
Случайный перезапуск восхождения на гору выполняет серию поисков по восхождению на гору из случайно сгенерированных начальных состояний, пока не будет найдено целевое состояние.

Успех восхождения на холм зависит от формы государственного космического пейзажа. Если есть только несколько локальных максимумов, плоские плато; Случайное возобновление восхождения на холм быстро найдет хорошее решение. Большинство реальных проблем имеют очень грубый ландшафт пространства состояний, что делает их непригодными для использования алгоритма восхождения на холм или любого его варианта.

ПРИМЕЧАНИЕ. Алгоритм Hill Climb также можно использовать для поиска минимального значения , а не только максимального значения. Я использовал термин максимум в своем ответе. Если вы ищете минимальные значения, все будет наоборот, включая график.


Не могли бы вы подробнее рассказать о том, как в действительности работает алгоритм стохастического восхождения на гору?
Мостафа Гадими

1

Я тоже новичок в этих понятиях, но, как я понял, стохастическое восхождение на гору будет работать лучше в тех случаях, когда время вычислений драгоценно (включая вычисление фитнес-функции), но в действительности нет необходимости достигать наилучшего возможное решение. Достигнуть даже местного оптимума было бы хорошо. Роботы, работающие в рое, будут одним из примеров, где это можно использовать.

Единственное отличие, которое я вижу в самом крутом восхождении на холм, заключается в том, что он ищет не только соседние узлы, но и преемников соседей, во многом подобно тому, как шахматный алгоритм ищет еще много дальнейших ходов перед выбором лучшего хода.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.