Шахи – одна з найдавніших ігор, яка розвиває відразу ж безліч людських навичок. Вже доведено, що той, хто грає в шахи, володіє високим інтелектом і аналітичним мисленням. З моменту появи комп’ютерів з’явилися і шахові програми: тепер людина може грати з машиною. Але як же працює такий софт? Розглянемо максимально простими словами.
Дерево можливостей
Уявімо собі дерево, від якого відходять гілки. Чим більше гілок, тим «глибше» програма аналізує можливі ходи супротивника і свої. Алгоритм «мінімакс» дозволяє програмі максимізувати свою оцінку позиції, маючи на увазі, що супротивник мінімізує її вигоду. Програма «думає» так: якщо я зроблю хід А, то супротивник зробить хід Б, і таким чином перебираються можливі варіанти.
Але кількість можливих шахових комбінацій достеменно невідома, математик Клод Шеннон у 1950 році оцінив кількість можливих шахових партій як 10¹²⁰ (це одиниця з 120 нулями). Після перших 5 ходів (10 напівходів): 69 352 859 712 417 (майже 70 трильйонів) комбінацій. Таким чином, перебрати всі варіанти неможливо, і програма використовує евристику – оцінку ефективності позиції. Наприклад, потрібно контролювати короля, ферзь вартує більше пішака, контроль центру, безпеку фігур і багато-багато іншого. Таким чином відсікається те, що неважливо, тим самим збільшуючи швидкість роботи програми.
Сучасні рушії, такі як Stockfish або Leela Chess Zero, застосовують нейромережі для більш точної оцінки, навчаючись на мільйонах партій, причому як своїх, так і тих, які закладають в них розробники. Програми аналізують помилки як свої, так і інших гравців. Чим більше буде даних для навчання нейромережі, тим ефективніше програма буде грати в шахи.
Щоб не витрачати час на безперспективні гілки, використовується альфа-бета відсікання. Якщо програма розуміє, що поточна лінія веде до явно гіршого результату, ніж вже знайдений варіант, вона припиняє її подальший аналіз. Це дозволяє зрізати до 90% непотрібних розрахунків, не витрачаючи ресурси комп’ютера і час.
Сьогодні топові рушії мають рейтинг Ело вище 3500 (для порівняння: у Карлсена – близько 2850). Але це не означає, що шахи померли – навпаки, комп’ютери допомагають гравцям аналізувати дебюти, знаходити нестандартні рішення і навіть помилятися. Так, ШІ теж не ідеальний, особливо в цейтноті або незвичайних позиціях.
Якщо раніше шахові програми були дуже примітивними – вибираєш рівень складності і граєш, то з розвитком штучного інтелекту виграти у комп’ютера стало дуже складно, тому що програма вже реально «думає». Не кожен гросмейстер зможе обіграти програму.