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


Відповіді:


3

Алгоритми сходження на найкрутіші пагорби добре працюють для опуклої оптимізації. Однак проблеми в реальному світі, як правило, мають неопуклий тип оптимізації: є кілька піків. У таких випадках, коли цей алгоритм починається з випадкового рішення, ймовірність його досягнення одного з локальних піків замість глобального піку висока. Покращення, як-от симульований відпал, покращують цю проблему, дозволяючи алгоритму відійти від локального піку і тим самим збільшує ймовірність того, що він знайде світовий пік.

Очевидно, що для простої проблеми із лише однією вершиною завжди краще сходження на круті сходи. Він також може використовувати ранню зупинку, якщо буде знайдено глобальний пік. Для порівняння, змодельований алгоритм відпалу насправді стрибне з глобального піку, повернеться назад і знову відскочить. Це буде повторюватися до тих пір, поки його охолодження не буде достатньо або певна кількість заданих ітерацій не завершиться.

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

Епілог: Це хороше запитання, яке викликає стійке питання при розробці рішення або вибору між різними алгоритмами: компромісна вартість та обчислення витрат. Як ви могли підозрювати, відповідь завжди: це залежить від пріоритетів вашого алгоритму. Якщо це частина якоїсь он-лайн системи навчання, яка працює на партії даних, то існує сильне обмеження в часі, але слабке обмеження продуктивності (наступні партії даних виправлять помилкові упередження, введені першою партією даних). З іншого боку, якщо це офлайн-завдання навчання з усіма доступними даними, тоді ефективність є основним обмеженням, а стохастичний підходи доцільні.


2

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

Стохастичне сходження на пагорб , варіант сходження на гору, вибирає випадковий з-поміж рухів у гору. Вірогідність вибору може змінюватися залежно від крутості руху в гору. Дві відомі методи:
Підйом на пагорб першого вибору: генерує наступників випадковим чином, доки не буде сформовано один, який кращий за поточний стан. * Вважається хорошим, якщо в штаті є багато наступників (наприклад, тисячі чи мільйони).
Випадкове відновлення сходження на гірку:Працює над філософією "Якщо вам не вдасться, спробуйте, спробуйте ще раз".

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

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

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

Успіх сходження на пагорби залежить від форми державно-космічного ландшафту. Якщо є лише кілька локальних максимумів, плоскі плато; випадкове відновлення сходження на гору дуже швидко знайде хороше рішення. Більшість проблем у реальному житті мають дуже грубий ландшафт стану та простору, що робить їх непридатними для використання алгоритму сходження на гірку або будь-якого його варіанту.

ПРИМІТКА: Алгоритм підйому на Хілл можна також використовувати для пошуку мінімального значення , а не лише максимального значення. Я використав термін максимум у своїй відповіді. У випадку, якщо ви шукаєте мінімальні значення, всі речі будуть зворотніми, включаючи графік.


Чи дасте нам детальну інформацію про те, як алгоритм стохастичного сходження на гірку насправді працює?
Мостафа Гадімі

1

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

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


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.