Як використовувати штучний інтелект в комп'ютерних шахах


19

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

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

Складнішим прикладом є використання функції оцінювання навчання (наприклад, можна налаштувати значення таблиць із квадратних квадратів ). Однак я думаю:

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

Як можна це зробити ефективно? (чи варто дивитись на інші методи, наприклад нейронні мережі.)


3
Стандартним підходом є альфа-бета обрізаний мінімакс. з евристикою. Це з родини Пошукових ШІ, а не з сім'ї машинного навчання.
Ліндон Уайт

2
Справжні майстри шахів в основному просто запам'ятовують усі ігри, в які раніше грали ... Тож у них сильне запам'ятовування.

2
Є також зустрічна претензія. Я не можу пригадати, хто це сказав, але це йде так. Біологи використовують експерименти з дрозофілою для глибшого та глибшого розуміння фізіології, генетики тощо. AI люди пишуть шахові комп’ютери, щоб краще і краще грати в шахи. Це зовсім не вчить нас про інформатику; це було б як біологи, що розводять надшвидку, надсильну дрозофілу і змушують їх боротися один з одним.
Девід Річербі

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

Відповіді:


16

Весь простір у шахах величезний - його можна приблизно оцінити як 10 43 (число Шеннона (Shannon, 1950) , ( Wikipedia )).

Ідея, яку ви презентуєте - агенти з посилення навчання, що грають один з одним для вивчення гри - успішно застосована до нарди - TD-Gammon (Tesauro, 1995) , ( Розділ у навчанні підкріпленню від Sutton & Barto ). Він також використовував Нейронні мережі для оцінки вартості функції гри. Однак ця проблема є набагато простішою, оскільки кількість станів у нардах значно менша, ніж у шахах, а саме: 18,528,584,051,601,162,496 ( тема Архів форуму нардів ).

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

Список літератури:


1
Найважча частина справді - це емпіричний спосіб оцінити результат відкриття. Різні отвори гарні по-різному, тому, мабуть, існує безліч прийнятних отворів.
JDong

3

Я майже впевнений, що будь-який можливий (або дивний) метод ІІ або МЛ у підручниках був випробуваний і в значній мірі не вдався порівняно з простою грубою силою.

Моя особиста думка полягає в тому, що шахи самі по собі вже не цікавлять сучасний ШІ ... Просто тому, що це вирішується : просто використовуючи сучасний комп’ютер і грубу силу. Отже, я не відчуваю, що потрібно створити "розумну" систему, щоб її вирішити ефективніше (справно працює у моєму мобільному телефоні), і я вважаю, що немає навіть необхідності у чомусь невідомому та багато іншого "розумний" підхід до існування.


1
Я не впевнений, чому це було знято. Аргумент того, що шахи "вирішені", є дещо неточним, оскільки жоден комп’ютер не може розглянути будь-яку можливу позицію та оцінити її ідеально. Але сказати, що iasfl є чітко вираженим, що шахи втратили більшу частину привабливості для досліджень на ІС. По-перше, найкращі комп'ютерні шахові програми зараз набагато сильніші за найкращих людей, враховуючи достатню потужність і час на обробку. Це ускладнює програмістам навіть оцінку того, наскільки добре працює алгоритм.
еліксинід

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

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

Я думаю, що цю відповідь та її зауваження досить чітко спростував AlphaZero від Google: en.wikipedia.org/wiki/AlphaZero Навіть якщо ви приймаєте критику щодо налаштування для Stockfish, і вони розіграли всі матчі, систему, яка вийшла на цей рівень з декількома годинами навчання явно перевершує.
Камаль

2

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

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

Мінімакс, зокрема, має

O(bn)

O(bm)

Тож у випадку шахів b буде 35, а m - 100 Є навколо цього способи або стратегії, щоб зробити його більш ефективним, як, наприклад, відрізання альфа-бета.


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

Це звичайний підхід, але не підхід до машинного навчання. У питанні використовується тег машинного навчання.
Ліндон Уайт

@Oxinabox, хоча це раніше було правдою, запитуючий не зазначив, де в заголовку чи тілі його цікавить підхід до машинного навчання, лише в кінці, де він ділився одним із прикладів підходу, який він мав на увазі. Не потрібно обмежувати проблему машинним навчанням, ані єдиного алгоритму навчання (NN).
Янковичі

Дійсно, це добре
Ліндон Уайт

якщо бути точним, шахи не є Повними Спостережними, оскільки, маючи на увазі позицію, яку ми не знаємо, наприклад, король чи грак уже переміщений чи ні, хоча це важливо для генерації переїздів (чи все-таки можлива лиття?), але програміст може зробити його повністю помітним, змінивши представлення позиції, розрізняючи не переміщеного короля / ладья та переміщеного короля / грака як різні фігури, хоча це створює певні труднощі.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.