Я вважаю, що найкраще, якщо я детальніше розповім про ваш другий пункт на прикладі руху в грі 1 між AlphaZero та Stockfish, яка також сьогодні задовольнила мою цікавість.
обмеження в часі 1 хв / хід (як би цей недолік маків?)
Продуктивність Stockfish залежить як від обмеження часу, так і від конфігурації обладнання, тому подумайте, коли хтось подвоює потоки процесора, тоді Stockfish потребує менше часу (не обов'язково половини), щоб знайти рішення, ніж це було б при першій конфігурації.
У першому звіті, який був розміщений на Chess.com, хтось стверджував, що Stockfish не грає оптимально, тому що він не може відтворити ті самі результати, використовуючи ті самі Stockfish на своєму комп’ютері. Він сказав, що на позиції внизу (гра 1 - хід 11) Stockfish грав Kg1-h1 (перемістив свого короля), що зовсім не мало сенсу. З іншого боку, худоба на його комп’ютері виявила більш розвинений хід, як Be3 (переміщення темного квадратного єпископа), давайте подивимось на положення:
Так, це був пасивний хід, і, схоже, що Stockfish повинен був зіграти більш розвинений хід. Але він помилявся. Чому? Оскільки він бігав Stockfish протягом 15 секунд, і якби він пробіг його протягом години, він отримав би Kg1-h1 як найкращий хід у цій позиції. Собака змінює своє рішення, коли аналізує всі можливі кроки більш глибоко. Ось що я спочатку сказав у своїй відповіді :
Я побіг останніх тварин на позиції (на ходу 11):
- Спочатку він дає b4 як оптимальний хід, коли двигун працює близько хвилини. Після цього вирішує, що Be3 краще.
Але через 5 хвилин на моєму апаратному забезпеченні, яке працює на 1400k вузлів / с, він вирішить перейти з Kh1 як оптимальний хід.
У статті йдеться про те, що рибний запас обчислює 70 000 тис. Позицій в секунду і працює 1 хвилину на хід, що приблизно в 50 разів перевищує мою техніку, тому я дозволяю шахті працювати протягом 50 хвилин ... Kg1-h1 все ще вибір для Stockfish.
Час обмеження є ключовим
У вищенаведеному випадку це, мабуть, мало значення, якби Stockfish балотувався вдвічі більше часу, тому що рішення було б однакове, але на наступному кроці воно напевно було б :
У цьому положенні Stockfish вирішив перемістити пішака з лівого боку ( a4-a5 ). Скажімо, у мене є комп’ютер, який працює на двигуні Stockfish зі швидкістю 1400k вузлів в секунду, що приблизно в 50 разів нижче, ніж у Stockfish у реальній грі ( У статті йдеться про 70 000kn / s). Тож я можу імітувати гру, якщо запускати її протягом 50 хвилин на кожному русі. Гаразд.
Я провів аналіз запасів на вищезгаданій позиції і отримав такі результати:
- Stockfish почав пропонувати деякі рухи, але через 6 хвилин на моєму комп’ютері (що відповідає 7,2 секунди на Stockfish в реальній грі) він віддав перевагу a4-a5 так само, як ішла гра .
Це добре, але я продовжував працювати протягом 50 хвилин для того, щоб досягти обчислень Stockfish у грі, дозволеній 1 хвилину:
Сумна правда полягає в тому, що я вважаю, що Stockfish програв усі свої ігри через обмежений час. З часом рибальські риби отримують більш глибокий пошук та оцінку, і в грі не було дозволено використовувати вступну книгу, яка змушує враховувати багато кроків на невеликій глибині. Зауважте, що в реальній грі a4-a5 було зіграно, що показує, що (якщо припустити, що вона може оцінювати 70 мільйонів позицій в секунду), Stockfish в грі не витрачав більше ніж 21,6 секунди на рух. В іншому випадку це змінило б своє рішення на ці три інші рухи в реальній грі. Причина цього досі для мене незрозуміла, оскільки мій Stockfish також споживав менше пам’яті (приблизно ~ 130 Мб оперативної пам’яті порівняно з 1 ГБ, зазначеним у первинному документі , якщо припустити, що все це йде до хеш-таблиць).
Висновок
Як я зазначив, апаратне забезпечення, в якому працювали Stockfish, було в кращому випадку в 18 разів швидше, ніж у мене (оновлення: на одне ядро) на основі аналізу, який я проаналізував. Я не впевнений, чи зможе AlphaZero реально використовувати таке обладнання для тренувань своїх мереж за 4 години, можу лише припустити, що це занадто низько для гри, як шахи. Крім того, AlphaZero витратив ці години на навчання, що також включає побудову міцних отворів (і, як вказує папір, переваги над певними отворами). З іншого боку, Stockfish зазнав перешкод на виворотах, і він не оцінював 70 мільйонів позицій в секунду протягом 60 секунд на кожному русі.
На завершення все, що я сказав, базувалося на моїх припущеннях. Звичайно, результат AlphaZero та ігри були для мене надзвичайно цікавими. Однак мені б хотілося бачити гру, де гра в Stockfish була подібно до того, що я отримую на своєму комп’ютері. Тобто більше часу і відкриття книги дозволяється. Також легко отримувати результати аналізу запасів на кожному кроці, і я б хотів, щоб вони випустили його для того, щоб показати, наскільки добре він виконаний.