Ви задаєте досить складне запитання, але добре повернутися до основ. Є кілька концепцій, які слід врахувати:
Оцінка
Якщо (справжньому) гравцеві відображається позиція і запитується "хто виграє в цій грі?", Як вони приймають рішення? Швидше за все, вони перевірять декілька основних речей, таких як: матеріальні відмінності, ступінь того, наскільки деталі були розроблені або розміщені "добре", подвоєні / ізольовані / підключені / пройшли пішаки, (контрольовані) відкриті файли, як далеко вгору дошки пішаки.
Тепер, якби вам довелося, ви могли б придумати систематичний спосіб обчислити позиційну позицію, виходячи з вищезазначеного. Ви можете вирішити, наприклад, що пішак коштує 1 бал, і що пішохідний пішак коштує на 0,3 бала більше. Ізольовані або подвійні пішаки можуть коштувати трохи менше і т. Д. Якщо скласти все, ви отримаєте оціночне значення для безпосередньої позиції.
Це відоме як оцінка , і в основному всі шахові програми мають спосіб оцінити позиції (ігноруючи новинку AI шахових двигунів, які, як правило, дуже слабкі).
А як же тонкі, глибокі позиційні ходи?
Ну, ми лише ледь не подряпали поверхню оцінки позиції. Фактична реалізація функції оцінювання може бути спрощеною, щоб дозволити оцінювати більше позицій за секунду (хоча і грубо), або більш складними, що призводить до менш оцінених позицій, але з більш високим ступенем впевненості. Незвично, що функція оцінювання враховує сотні чи навіть тисячі окремих фрагментів інформації.
Пошук
Я спеціально випустив щось із вищесказаного, про що більшість реальних гравців одразу подумають - чи є спосіб негайно виграти гру для обох сторін? Будь-які товариші чи «висячі» шматки видно? Хоча трівіалізувати це легко, але це не що інше, як банальне.
Що означає для гравця повну впевненість у поєднанні? Зрештою, це зводиться до обчислення всіх варіантів. Реальні гравці зазвичай цього не роблять (за винятком тривіальних або дуже вимушених товаришів), більшість часу ми будемо розглядати лише кілька варіантів і виключати інших, які здаються "неконструктивними" або очевидно призводять до втрати . Ми часто робимо помилки під час цього розрахунку, наприклад, ми можемо усвідомити, що зміна замовлень на переміщення змушує загрози випаровуватися тощо. Справа в тому, що, щоб бути повністю впевненим у комбінації, потрібно насправді обчислити весь шлях до її висновку, припускаючи кожен гравець зробить лише найкращий можливий хід, доступний їм (це позначається як "min / max").
Тепер, враховуючи, що шахи мають набагато більший простір пошуку (саме на це йдеться про "всі можливі кроки в майбутньому"), ніж те, що комп’ютеру можливо розрахувати, потрібно робити компроміси. Як і люди, комп'ютери можуть вирішити ігнорувати цілі лінії думки на основі певних критеріїв. Це відомо як евристика . Варто зауважити, що, хоча ви можете бути впевнені у комбінації лише у тому випадку, якщо ви змусили її виконувати грубу силу, складна функція оцінювання часто може виявити наявність загроз (наприклад, ми могли б порахувати вилки, можливості шампура тощо, щоб керувати пошуком у цьому напрямку ).
Зрештою, хоча комп'ютери надзвичайно швидкі, саме евристика дозволяє їм обчислити так глибоко. Зважаючи на це, ви можете бути здивовані тим, як глибокі сучасні двигуни підраховують повністю, як правило, це не більше трьох ходів, навіть у швидких іграх.
Висновок / поєднання все це
Отже, підводячи підсумок - функції оцінювання вбудовані у них багато інтелекту (тобто вони враховують більше речей, ніж ваш середній гравець), евристика дозволяє комп’ютеру чітко виражати думки, які, напевно, вирішують, що, мабуть, не закінчуються добре, а комп'ютери надзвичайно, надзвичайно швидко. Додайте їх, і їх досить важко перемогти.