Чому навчальне підкріплення настільки рідко застосовується в обробці маршрутів?


12

Поважний теоретичний алгоритм графіку A * з найкоротшим шляхом та наступні вдосконалення (наприклад, Ієрархічна анотація A *) - це явно техніка вибору для проходження маршруту в розробці гри.

Натомість мені просто здається, що RL - це більш природна парадигма для переміщення персонажа навколо ігрового простору.

І все-таки я не знаю жодного розробника ігор, який впровадив механізм маршрутизації на основі Reinforcement Learning. (Я не випливаю з цього, що застосування RL в доріжці маршрутів дорівнює 0, тільки що це дуже мало відносно A * та друзів.)

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

Це запитання не є приводом для того, щоб запропонувати думку щодо RL у проходженні маршрутів; насправді я припускаю, що мовчазна перевага A * та ін. над RL правильно - але це явно не вважає за краще, і мені дуже цікаво про причину цього, особливо від тих, хто намагався використовувати RL для проходження маршруту.


1
"це не тому, що ці розробники не знають про РЛ" Ви впевнені? Це здається великим припущенням.
Тетрад

Хочете поділитися деякими посиланнями чи документами на RL у шляху проходження?
falstro

3
Враховуючи різні докази оптимальності / меж для A * (та пов'язаних з ними алгоритмів), що ви думаєте, що RL вносить до таблиці для проходження маршруту?

1
Відносяться (знайшов в іншому питанні): ai-blog.net/archives/000178.html
Зошит

Відповіді:


14

Я думаю, це тому, що, оскільки ви не отримаєте корисного узагальнення політики, окрім проблем із іграшками, а функція винагороди підозріло виглядатиме як евристика A *, перспектива використання RL має тенденцію виглядати як справді переобладнаний, неефективний спосіб отримання результатів, які в кращому випадку тотожні A *, але, ймовірно, не будуть майже такими хорошими.

Це може бути несправедливим щодо RL, і якщо так, мені було б цікаво почути чому, але я насправді нічого не бачу, щоб це засвідчити.

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


1
+1 за вашу заяву про функцію винагороди. І, ні, я вважаю, що це справедлива характеристика. RL може бути чудовим у тому, що він робить, але я б не очікував, що в цьому наборі буде суворий проїзд. (Зверніть увагу, що я навмисно виключаю планування руху з цієї дискусії. RL успішно застосовано до такої проблеми).
Кидок1986

5

Не знаючи багато про RL, я спробую відповісти на ваше запитання іншими питаннями:

Використовуючи RL, чи можете ви визначити, чи можна досягти точки A з точки B?

Чи може гарантувати RL відтворювану / послідовну / перевірену поведінку навігації?

Як порівнюються вимоги часу до пам'яті та процесора порівняно з A *? Так само, наскільки ви можете обчислити порівняно з, скажімо, наві-сітками?

Як RL спрацьовує в умовах динамічного зіткнення?

Наскільки складніше зрозуміти та реалізувати RL правильно, скажімо, спрямовуючу поведінку?

Чи є якісні провайдери середнього програмного забезпечення для RL?

Можливо, ці питання можуть допомогти вам у відповіді.


Швидкий погляд A * здається дешевшим у впровадженні, швидше обробляє, займає менше пам’яті, більш передбачуваний тощо, ніж RL. Однак RL може дати більш реальні результати.
Jari Komppa

4
Навпаки, агенти RL, як правило, дають надзвичайно нереальні результати під час початкової фази навчання. A * з невеликою поведінкою в рулі виглядає набагато природніше.

Гаразд, більш реалістичні результати зрештою =)
Jari Komppa

RL по суті попередньо обчислює ідеальну поведінку на шляху просування. Він швидший і простіший за A *, але займає набагато більше пам’яті. Коли ви намагаєтесь знизити вимоги до пам'яті, вона стає складною та / або непослідовною.
Дон Реба

5

Мене бентежить припущення про те, що РЛ є "більш природною парадигмою". Я не бачу, як підкріплення вивчає карти до проблемного домену в будь-якому місці поблизу так само чітко чи точно, як це робить пошук графіків. Зазвичай ви не хочете, щоб агент вчився - ви припустили, що вони вже знають маршрут. Натомість ви хочете, щоб вони обирали та використовували найбільш прямий доступний маршрут, а пошук графіків полегшує це майже оптимальним способом. Якщо ви використовували RL в режимі офлайн, щоб обчислити найкращий напрямок, який потрібно здійснити на будь-якому даному вузлі для будь-якого пункту призначення, це в кінцевому підсумку принесе в цілому еквівалент A *, за винятком того, що потрібно значно більше пам’яті *, а також потрібно, щоб розробники були дуже обережні до стежте за тим, щоб під час навчання всі вузли були достатньо досліджені. І це тренування просто дасть значення, яке ми можемо вже дуже добре наблизити до рівняння Піфагора, завдяки тому, що заздалегідь знаємо, що графік підкоряється правилам дистанції Евкліда. (Це, звичайно, не у всіх ситуаціях, коли може бути використаний пошук графіка та / або навчання з підсиленням.)

(Що стосується проблеми з пам'яттю. Якщо на карті було 1000 можливих кількісних позицій, це 1000 вузлів плюс 1000 * М ребер (де М - середня кількість вузлів, доступних для будь-якого іншого вузла). Цього, плюс евристичний, достатньо для A для роботи. Для того, щоб навчитись працювати підсилювачем, принаймні так, як я це передбачаю, вам також знадобиться 1000 записів для кожного з цих 1000 * M країв, щоб набрати значення нагороди за цим краєм для будь-якого з 1000 Це багато даних - і кожен її біт повинен бути досить точним, щоб уникнути циклів, об'їздів або тупиків.


3

Pathfinding є відносно "вирішеною" проблемою, RL - ні.

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


1

Це дійсно залежить від типів гри. Якщо все в грі статичне, ефективніше використовувати пошук A *. Однак якщо в цьому ж районі рухаються інші гравці людини, пошук A * гарантується невдачею. Пошук * не має уявлення про те, куди прямують інші гравці. З іншого боку, RL може моделювати поведінку інших гравців і знайти кращий шлях, який враховує рух інших гравців.

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