Каковы ограничения алгоритма восхождения на гору и как их преодолеть?


Ответы:


6

Как уже сказал @nbro, Hill Climbing - это семейство локальных алгоритмов поиска . Итак, когда вы сказали «Скалолазание в вопросе», я предположил, что вы говорите о стандартном восхождении на холм. Стандартная версия набора высоты имеет некоторые ограничения и часто застревает в следующем сценарии:

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

Для решения этих проблем было разработано много вариантов алгоритмов подъема на гору. Это наиболее часто используемые:

  • Stochastic Hill Climbing выбирает случайным образом из движений в гору. Вероятность выбора зависит от крутизны движения в гору.
  • First-Choice Climbing реализует вышеупомянутое, генерируя преемников случайным образом, пока не будет найден лучший.
  • Произвольно возобновить поиск восхождений на холм по случайно сгенерированным начальным ходам, пока не будет достигнуто целевое состояние.

Успех алгоритмов восхождения на холм зависит от архитектуры пространственно-государственного ландшафта. Всякий раз, когда существует несколько максимумов и плато, варианты алгоритмов поиска восхождения на гору работают очень хорошо. Но в реальных проблемах есть пейзаж, который больше похож на рассеянное семейство лысеющих дикобразов на плоском полу, с миниатюрными дикобразами, живущими на кончике каждой иглы дикобраза (как описано в 4-й главе книги «Искусственный интеллект: Современный подход). Проблемы NP-Hard обычно имеют экспоненциальное количество локальных максимумов, на которые можно застрять.
Данные алгоритмы были разработаны для решения следующих проблем:

  • Стимулированный отжиг
  • Локальный Поиск Луча
  • Генетические алгоритмы

Справочник - Искусственный интеллект: современный подход


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

Да, @ManuelRodriguez. Алгоритмы, зависящие от предметно-ориентированных знаний, дают отличные результаты. Но я постарался сохранить ответ на общие проблемы, упомянув несколько способов преодоления ограничений Hill Climb Search.
Ugnes

5

Скалолазание - это не алгоритм, а семейство алгоритмов «локального поиска». Конкретные алгоритмы, которые попадают в категорию алгоритмов «восхождения на холм», включают 2-вариант, 3-вариант, 2,5-вариант, 4-вариант или, в общем, любой N-вариант. См. Главу 3 статьи « Проблема коммивояжера: тематическое исследование по локальной оптимизации » (Дэвид С. Джонсон и Лайл А. МакГеох) для получения более подробной информации о некоторых из этих алгоритмов локального поиска (применительно к TSP).

То, что отличает один алгоритм в этой категории от другой, это «функция соседства», которую они используют (простыми словами, способ, которым они находят соседние решения для данного решения). Обратите внимание, что на практике это не всегда так: часто эти алгоритмы имеют несколько разных реализаций.

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

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


Хороший ответ (+1)! Можете ли вы порекомендовать ресурс (YouTube, сообщение в блоге, архивную книгу, книгу), чтобы узнать об алгоритмах муравьиных колоний? Я никогда не слышал об этом и хотел бы получить общее представление о них.
Мартин Тома

1
@MartinThoma Боюсь, я действительно не знаю очень хорошего учебника по ACS. Возможно, вы можете начать со следующего краткого руководства и соответствующей реализации: cleveralgorithms.com/nature-inspired/swarm/… . Если вы также заинтересованы в более серьезной реализации, примененной к TSP, взгляните на это: aco-metaheuristic.org/aco-code , реализованный Stützle (и другими), одним из участников разработки из этих методов.
nbro

Аскер знает, каково формальное определение альпинизма, потому что он прочитал статью в Википедии. Вопрос больше направлен на то, как использовать его для искусственного интеллекта. Известно, что альпинизм может искать только в локальном пространстве, что затрудняет проблемы, связанные с ИИ. Обычно поиск застревает в локальном оптимуме, что означает, что кратчайший маршрут в задаче коммивояжера не может быть найден.
Мануэль Родригес

1
@MartinThoma В любом случае, вы также можете взглянуть на научные статьи. Я могу сказать вам только несколько важных исследователей: Дориго (первый, кто представил эти методы, AFAIK), Гамбарделла и Штютцле. Посмотрите на их документы. Я не уверен, что предложить. Кроме того, есть книга, посвященная разведке роя (Бонабо), если вы действительно хотите углубиться в детали.
nbro
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.