розподілена альфа-бета обрізка


19

Я шукаю ефективний алгоритм, який дозволяє мені обробити шахматне дерево пошуку мінімаксу з обрізкою альфа-бета на розподіленій архітектурі. Знайдені нами алгоритми (PVS, YBWC, DTS див. Нижче) всі досить старі (1990 рік - останній). Я припускаю, що відтоді було багато суттєвих зрушень. Який сучасний стандарт у цій галузі?

Також, будь ласка, вкажіть мені пояснення ідіотів DTS, оскільки я не можу зрозуміти це з дослідницьких робіт, які я прочитав.

Алгоритми, згадані вище:

  • PVS: Розбиття принципу варіації
  • YBWC: Молоді брати чекають концепції
  • DTS: Динамічне розщеплення дерев

все обговорюється тут .


Можливо, це цікаве прочитання: chessbase.com/newsdetail.asp?newsid=8047
Alex ten Brink

2
Ну, а ця проблема (паралельний пошук мінімаксу або будь-якого з його варіантів) особливо складна. У документі Річарда Корфа, який з’явиться у цьому році під назвою «Дослідницькі виклики комбінаторного пошуку», можна прочитати наступне: «[...] пошук у мінімаксі з обрізанням альфа-бета, як відомо, важко паралелізувати», я щиро сумніваюся існує алгоритм, який робить це завжди ефективно ...
Карлос Лінарес Лопес

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

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

Я мав певний успіх з паралельною альфа-бетою (в основному, як описано на сторінці wiki, на яку ви пов’язані).
Список Джеремі

Відповіді:


3

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

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

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

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