Суто тренований шахи AI


46

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

  1. вивчає тисячі чи мільйони можливих майбутніх посад;
  2. оцінює кожну майбутню позицію згідно з деякою евристичною, званою функцією оцінювання;
  3. окремо оцінює кожну майбутню позицію для спокою, щоб вирішити, чи слід досліджувати продовження з позиції;
  4. вибирає серед доступних ходів мінімакс; і
  5. використовує вступну книгу.

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

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

У чистому вигляді такій програмі ніколи б не пропонувались майстерні ігри для вивчення, а лише власні ігри, зіграні проти себе. Тільки один раз, коли повністю навчився, він би розв'язався на змаганнях людини.

Чи існує такий чистий шаховий ШІ? Чи коли-небудь з'явився механічний шаховий автодидакт? Дійсно, чи може сам старий турк навчити себе?

Ось, здається, коротке повідомлення про чистий шаховий ШІ, який не вдався.

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

ОНОВЛЕННЯ

Питання поширюється трьома різними, висвітлюючими відповідями на момент написання цього повідомлення, від @WesFreeman, @GregE. і @Landei. Всі троє настійно рекомендуються, і я буду відчувати свою провину, коли згідно з політикою щодо сайту я офіційно приймаю одного до виключення інших. Дозвольте мені подякувати і висловити вдячність усім трьом.

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

Коли я задавав питання, мав на увазі щось подібне.

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

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

Таким жителям села може бути не відразу зрозуміло, що грак був кращим за лицаря, але народ все одно може поступово відпрацьовувати відносні сили шахістів у грі багатьох ігор. Крім того, їм може бути не відразу очевидно, що 1. a4 був поганим відкриттям: вони могли, але спробувати це і врахувати результати.

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

Чи може будь-яке їх відкриття, незалежно розроблене, виявитись цікавим для навколишнього світу, коли наступний мандрівник проїхав, щоб взяти їх до відома, через 200 років? Чи може Шангрі-Ла подарувати світові нову, новельну, «Оборону Шангрі-Ла»?

Якщо так, то, що стосується мого первісного питання про шаховий AI, то, що я мав на увазі, було більш-менш таким: чи міг шаховий AI більше чи менше дублювати шаховий прогрес жителів села на околиці Шангі-Ла?

Розглядаючи історію Суссмана у відповіді @ Ландея нижче, це, безсумнівно, правда, що мої жителі села принесуть певні передумови до гри. Наприклад, вони б зрозуміли, що володіти більшою кількістю корисної речі, як правило, краще, ніж володіти меншою кількістю цього, і тому, можливо, захопити шахматів противника, мабуть, переважно, ніж страждати захопленням власного. Наскільки територіальні вигадані люди Шангрі-Ла за своєю природою є питанням для літератури, але можна припустити, що вони визнавали б позицію, яка командувала більшою кількістю простору, вищою за позицію, яка менше наказувала. І будь-який яскравий новачок, щойно показує шаховий набір і проінструктований у правилах гри, може зробити висновок, що королева, швидше за все, піша пішака, просто завдяки тому, що королева має до 27 ходів,

Тому моє запитання не повинно тлумачитися таким, що означає абсолютну заборону в стилі Суссмана проти приведення будь-яких знань до шахової дошки; а скоріше для загального заборони проти попередньо задуманих шахових знань. Зрештою (нехтуючи питанням еволюції правил гри давно), в певний час у минулому відбулася перша гра в шахи. Можливо, перший гравець відкрив 1. a4; але врешті-решт він краще навчився та навчив своїх учнів; який, у свою чергу, дізнавався більше і вчив більше, покоління в покоління, щоб дати нам Каспаров.

Чи не міг ШІ зробити щось подібне лише за тиждень, а не про століття?

Платон був би скептично налаштований. Юм був би більш оптимістичним, але питання вже не вирішується лише філософією. Зараз у нас є електронні комп’ютери, за допомогою яких можна перевірити пропозицію, і мені було цікаво, що таке стан мистецтва AI. Найкращі шахові ІС на даний момент здаються цілком неінтелектуальними експертними системами, які б'ють усіх, не розуміючи нічого. Мені було цікаво, чи трохи ширші ШІ, які в деякому сенсі насправді думають про шахи, мали чималий успіх у навчанні гри.

Я вважаю, що відповідь ні, напевно, ні.


4
Це справді одне з кращих питань на цьому сайті.
prusswan

5
Схоже, відповідь "так", так як DeepMind щойно опублікував дослідження нового стану мистецьких шахів AI, які вони тренували з нуля (лише самостійна гра, без довідкових ігор). arxiv.org/pdf/1712.01815.pdf
Lalaland

1
Додаючи коментар @Lalaland, після тренінгу я думаю, що за 10 годин він повністю розчавив тваринницьку рибу (не впевнений, яка версія), ніби запас риби - початківець. Досить нечувано в іграх двигунів проти двигунів. Здається, альфаго нуль любить грати в стилі Тал
Аріана

2
"Чи міг ШІ зробити щось подібне за кілька тижнів, а не століть? Мабуть, ні". Що ж, ви певним чином мали рацію ... Це минуло лише години.
user230452

1
Мало хто з гравців, наприклад, Капабланка, повинен був зрозуміти гру, побачивши, що вона грала один раз. І пам’ятайте, що Альфа Зеро не мала про що думати.
Філіп Роу

Відповіді:


26

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

Дослідження в цьому районі

По-перше, дослідження в цій галузі, безумовно, відбуваються - пошук «шахів еволюційного підходу» повернувся з цим документом з 2001 року, роблячи майже все саме те, що ви запропонували, залишивши підхід min / max і лише змінивши функцію оцінювання. Можна викопати ще багато, і я знаю кількох людей, які працювали в цій галузі взагалі.

Теоретичні можливості

На мою думку, єдиний реальний обмежуючий фактор для створення «чистого» шахового грального AI - це час обчислення. Не існує абсолютно жодної причини, чому такий ІС теоретично неможливо створити, використовуючи сучасні підходи.

Практика

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

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

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

Наприкінці того часу у вас з'явився цікавий алгоритм, який, мабуть, мав би багато розумінь у грі, які ніколи насправді не були виявлені. Важко сказати, чи були вони корисними чи навіть зрозумілими людям. Чому це правило існує? Тому що понад кілька тисяч ігор, здавалося, спрацювали.

Майбутнє

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

Оновлення 2018 травня

Як згадує Роберт Каучер у коментарі нижче, останні новини заслуговують на згадку тут. Зокрема, проект AlphaGo Google, здається, є першим по-справжньому життєздатним підходом на основі AI до таких типів ігор, і наприкінці 2017 року стверджує, що виграв проти StockFish 2 , після того, як був повторно призначений для виконання завдання.


Дякую. Я зауважую, що документ, до якого ви посилаєтесь, тренує його ШІ спочатку проти опонентів людини, що не має господарів, а згодом проти існуючого шахового програмного забезпечення, що ви не з того, що ви і я мали на увазі. Платоніст, як я, не здивувався б, дізнавшись, що такий тип, який ми з вами обговорюємо, був практичною неможливістю (ми знаємо, що це теоретична неможливість, оскільки шахи теоретично можна вирішити мінімаксом); але чи не здивує мене відповідь, справа не в цьому. Слід сказати - запитати, чи досяг AI досягнутого подвигу. Здається, відповідь - ні.
вт

2
@thb Я думаю, що було досить багато спроб цього типу ШІ, хоча ви можете вважати їх "невдалими". Я підозрюю, що надзвичайно успішна спроба (сьогодні), ймовірно, грала б на дуже слабкому аматорському рівні; велике досягнення, тільки не в очах громадськості. Крім того, я не думаю, що тренування проти існуючих програм і людей, як наслідок, є просто великою оптимізацією, хоч і такою, яка може змінити напрямок стилю гри розвиваючого ШІ.
Даніель Б

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

1
@DanielB Чи AlphaZero такий AI?
Гаррі Візлі

1
Ви можете оновити свою відповідь. chess.com/news/view/…
Роберт

17

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

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


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

2
Таких людських упереджень не знадобиться. Просто генеруйте 1000 випадкових алгоритмів, здатних грати в легальні шахи, протиставляйте їх один одному в турнірі, а потім беруть топ-20% та застосовують мутацію та кросовер для створення наступного покоління. Повторіть це для декількох груп населення протягом кількох поколінь, і ви повинні мати щось наполовину пристойне наприкінці. Єдиною необхідною функцією фітнесу буде виграш / програш.
суперлюмінація

15

Дивіться сторінку Вікіпедії про Загальні ігри . Це активний напрямок досліджень. Є щорічний турнір GGP, в рамках якого програмам даються правила нової гри, задумайтесь над цим на деякий час, а потім пограйте в гру один проти одного.

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


13

Варто переглянути це питання у світлі недавнього вражаючого успіху AlphaZero проти Stockfish 8 . Подальшу еволюцію програм AlphaGo та AlphaGo Zero DeepMind завершив з надзвичайною оцінкою +28 = 72 -0 проти одного з найсильніших "традиційних" шахових двигунів на планеті.

AlphaZero навчив себе грати через підкріплення, навчаючи свою нейронну мережеву архітектуру через ряд ігор проти себе. Згідно із супровідним документом :

  1. Вхідні функції, що описують положення, і вихідні функції, що описують рух, структуруються як набір площин; тобто архітектура нейронної мережі підбирається до структури сітки плати.
  2. AlphaZero надає досконалі знання правил гри. Вони використовуються під час MCTS для імітації позицій, що виникають внаслідок послідовності рухів, для визначення припинення гри та для оцінки будь-яких симуляцій, що досягають термінального стану.
  3. Знання правил також застосовується для кодування вхідних площин (наприклад, закидання, повторення, непрогрес) та площин виведення (як переміщення штук, просування та скидання штук у шоги).
  4. Типова кількість законних кроків використовується для масштабування шуму від розвідки (див. Нижче).
  5. Ігри в шахи та шоги, що перевищують максимальну кількість кроків (визначається типовою тривалістю гри), були припинені та отримано результат; Ігри Go були припинені та забиті за правилами Тромпа-Тейлора, як у попередній роботі (29).

AlphaZero не використовував жодної форми знань про домен, окрім зазначених вище пунктів.

Я впевнений , що один може підняти питання про те , як відрізняється використовуваному обладнанні - " AlphaZero ... використовуються одна машини з 4 - TPUs . Stockfish ... грали на [його] найсильнішому рівні кваліфікації з використанням 64 потоків і розміром хеша 1 Гб. " - але в будь-якому випадку результат AlphaZero є чудовим, і дуже сильним у веденні ОП.

Виявивши, можливо, ще більшу підтримку того, як мало грати знань, що стосуються домену, окрім побиття Stockfish у шахах, AlphaZero також тренувався в шогі до кращого рівня чемпіонської програми Елмо, і звичайно також перевершив свого попередника AlphaGo Zero в Go .

Ось одна з ігор проти Stockfish, Берлін, в якій матеріальний дисбаланс, зрештою, AlphaZero з єпископською парою проти лицаря та 4 пішаки для Stockfish після 31.Qxc7. У такому положенні всі твори AlphaZero знаходяться на задніх позиціях, а єпископи - на своїх початкових площах. Зрештою, після того, як королеви зійдуть, чорні шматки повільно маневрують, щоб забрати білі пішаки, і це штори.

Стокові риби - AlphaZero, 2017-12-04, 0-1
1. e4 e5 2. Nf3 Nc6 3. Bb5 Nf6 4. d3 Bc5 5. Bxc6 dxc6 6. OO Nd7 7. Nbd2 O-O 8. Qe1 f6 9. Nc4 Rf7 10. a4 Bf8 11. Kh1 Nc5 12. a5 Ne6 13. Ncxe5 fxe5 14. Nxe5 Rf6 15. Ng4 Rf7 16. Ne5 Re7 17. a6 c5 18. f4 Qe8 19. axb7 Bxb7 20. Qa5 Nd4 21. Qc3 Re6 22. Be3 Rb6 23. Nc4 Rb4 24. b3 a5 25. Rxa5 Rxa5 26. Nxa5 Ba6 27. Bxd4 Rxd4 28. Nc4 Rd8 29. g3 h6 30. Qa5 Bc8 31. Qxc7 Bh3 32. Rg1 Rd7 33. Qe5 Qxe5 34. Nxe5 Ra7 35. Nc4 g5 36. Rc1 Bg7 37. Ne5 Ra8 38. Nf3 Bb2 39. Rb1 Bc3 40. Ng1 Bd7 41. Ne2 Bd2 42. Rd1 Be3 43. Kg2 Bg4 44. Re1 Bd2 45. Rf1 Ra2 46. ​​h3 Bxe2 47. Rf2 Bxf4 48. Rxe2 Be5 49. Rf2 Kg7 50. g4 Bd4 51. Re2 Kf6 52. e5 + Bxe5 53. Kf3 Ra1 54. Rf2 Re1 55. Kg2 + Bf4 56. c3 Rc1 57. d4 Rxc3 58. dxc5 Rxc5 59. b4 Rc3 60. h4 Ke5 61 . hxg5 hxg5 62. Re2 + Kf6 63. Kf2 Be5 64. Ra2 Rc4 65. Ra6 + Ke7 66. Ra5 Ke6 67. Ra6 + Bd6 0-1

11

Я думаю, що головна причина, по якій складно виробляти такий ШІ, полягає в тому, що необхідний простір для зберігання "тренувань" є ефективним.

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

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

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


Відповідь цінується. Я вважаю, що мав на увазі ІІ, який (а) володів мінімальними можливостями, але (b) не мав заздалегідь визначеної функції оцінки. Такий AI неодмінно вирішить таку маленьку гру, як тик-так-нок, чистим мінімаксом. У шахах, грі, лише теоретично сприйнятливій до мінімаксу, AI буде оцінювати не теперішню позицію на дошці, а майбутні позиції, після чого minimax обирає хід. Можливо, можна сказати, що Німзович революціонізував шахи шляхом відстоювання відомої евристики оцінювання. Якщо так, то чи може машина зробити те саме?
вт

1
Отже, ви кажете, що це виробить власну оціночну функцію?
Єва Фріман

2
@thb, як програміст, я думаю, що проблема з вашим поняттям полягає в тому, що, наскільки я бачу, жоден правдоподібний шаховий ШІ не може починатися з абсолютно порожнього рейтингу для функції оцінювання. Можна було написати AI, який аналізує ігри на закономірності та використовує статистичні / ймовірнісні методи (наприклад, байєсівський висновок) для точного налаштування своїх оцінок та прийняття рішень, але програміст повинен визначити, які мотиви, позиційні фактори, послідовності переміщення складають зазначені зразки і за якими критеріями їх оцінювати. Іншими словами, основне ядро ​​функції оцінювання все-таки потрібно було б створити людиною.
Грег Е.

1
Можливо, буде цікаво подивитися, з чим складається генетичний мінімакс, наприклад, якщо ви повинні почати всі фігури з однаковою матеріальною цінністю, виходячи з виграшу / втрати / нічиї, і дозволити матеріальним значенням мутувати. Я впевнений, що творці двигунів уже намагалися підправити їх, як-от зробити лицарів 2.9 та єпископів 3.1 пішаків.
Єва Freeman

1
@thb, я не експерт, але я думаю, що це так. Навіть AI, з яким ви пов’язані, обмежується упередженнями програмістів. Якщо ви читаєте оригінальний дослідницький документ, він зазначає, що тренінг "функціонального вектора" оцінювальна функція містила функції дошки, які "були ретельно розроблені вручну". Тобто програмісту все ж належить вказати набір статичних позиційних факторів, на яких AI спирається на прийняття рішення. Головною перевагою нейронної мережі для цього конкретного проекту, я вважаю, є те, що навчання можна проводити паралельно, що дозволяє ефективно асинхронно обробляти величезну кількість ігор.
Грег Е.

10

Я просто хочу розкрити тут відповіді Грега та Веса. Таких AI, які пропонує thb, просто не існують із вишуканістю, необхідною для цієї програми. І навіть якщо вони це зробили, я підозрюю, що вони не зможуть у цьому. Так, ніби thb хоче сильний AI загального призначення, якого можна навчити основним правилам гри і потім відправити. Але якщо дивитися на загальнодоступні ІС, що знаходяться в стадії розвитку, всі вони навчаються тому, як розпізнавання предметів і мовлення на рівні від 1 до 2 років. Будь-яка загальна мета AI спочатку повинна мати витонченість, щоб мати можливість зрозуміти, що таке гра, перш ніж вона зможе зрозуміти, як грати в гру. Ви не можете спроектувати AI загального призначення та очікувати, що він буде виконуватись як вузький або спеціалізований ІС. Загального призначення AI потрібно було б навчити шахам, як людину, і ви не можете розраховувати зібрати двох початківців гравців, які не знають історії шахів, і спонтанно винаходити відкриття та стратегічні теми. Минуло б багато сотень екземплярів AI, що грали один з одним, кожен з яких отримав доступ до історичних даних усіх своїх ігор протягом багатьох сотень тисяч ітерацій. І кожен ШІ повинен мати певні чіткі характеристики, зважені на різних рівнях.

Людям знадобилося майже 500 років, щоб дістатися з Родріго (Руя) Лопеса де Сегура та Педро Даміано до Пола Морфі, а потім розглянути подальші зміни, що відбулися між грою Штейніца та Алехіна. І вся ця зміна відбулася через динамізм багатьох сотень тисяч гравців з різними темпераментами та іншими впливовими характеристиками (наприклад, випадково віддаючи перевагу лицарям над єпископами або єпископами над лицарями), не кажучи вже про ігри та стилі мод. Все це сприяло динамо змін, які впливали на шахи через століття. Жоден слабкий ШІ - навіть слабкий ІІ загального призначення не міг би дублювати подібне динамо, оскільки йому не вистачає бажання. Лише бажання може змусити щось сидіти годинами протягом багатьох днів, щоб проаналізувати отвір з наміром його обвалити або покращити після того, як суперник "розбив" його. Дійсно саме такий потяг до аналізу та підготовки покращив гру протягом століть - не сліпу гру мільйонів ігор між однаково слабкими гравцями.

Це як взяти купу людей, які не розмовляють англійською мовою і які ніколи не читають рідної мови майстрами літератури, і помістити їх у кімнату з англійською мовою як книги другої мови та очікувати, що вони придумають щось подібне до творів Шекспіра. Це ніколи, ніколи не відбудеться.

EDIT : Я мав би знати краще, ніж заявляти цю претензію, бо це сталося .

"AlphaZero не був" навчений "грі в традиційному розумінні", - пояснює Chess.com. «Це означає, що немає відкриття книги, жодних таблиць ігор, і, мабуть, немає складних алгоритмів, що розсікають хвилинну різницю між центральними пішаками та бічними пішаками. Це було б схоже на те, щоб робот отримав доступ до тисяч металевих шматочків і деталей, але не знаючи двигуна згоряння, тоді він експериментує багато разів з кожною можливою комбінацією, поки не створить Ferrari. ... У програмі було чотири години, щоб грати на собі багато, багато разів, тим самим стаючи її власним викладачем. "

Моє продовження, очевидно, безпідставне блукання:

Ми приймаємо як належне всі неявні знання, які ми маємо про світ. Для того, щоб я міг зрозуміти, що якщо мені доводиться шматочки дерева та цвяха, то молоток для мене корисніший, ніж викрутка, я повинен спочатку зрозуміти, що певні класи речей корисніші в певних ситуаціях, ніж інші речі. Я також повинен розуміти, що речі мають користь, яку можна застосувати до цілі. Це евристика. Якщо AI не можна сказати, що певні п'єси мають більшу цінність, ніж інші, то як він навіть може зрозуміти, що таке товариш? Якщо вона не може бути запрограмована з певною евристикою, вона повинна бути в змозі екстраполювати такі ідеї, як досвід "цінність" та "корисність". І це не домен вузького ШІ. Це домен загального призначення, сильний AI.


1
Відмінна відповідь. Я думаю, що ваш перший абзац справді викристалізує думку про те, що я намагався перейти, але робить це з більшою чіткістю.
Грег Е.

Спасибі, Грег. Я просто хочу додати, що я кажу про слабкий ШІ загального призначення. Я вважаю, що справжній Сильний ШІ міг би зробити щось подібне через безліч екземплярів протягом багатьох ітерацій у сильно стиснених часових межах. Але у нас ще немає Сильного ШІ. en.wikipedia.org/wiki/Strong_AI
Роберт Каучер

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

Це правда, Вес, але тоді ми вводимо упередженість «програміста» чи будь-чого іншого в ШІ; що є одним із речей, яких автор запитання не хотів.
Роберт Каучер

@EveFreeman, я думаю, ти не розумієш того, що я говорю. Я не кажу, що комп’ютери не «вирішуватимуть шахи». Я кажу, що конкретний сценарій ОП посилюється до того, що він не працюватиме. Якщо система не має евристики, як вона може поставити значення на шматки?
Роберт Каучер

9

Будь ласка, розмірковуйте про наступного А.І. Коана:

У часи, коли Суссман був послушником, Минський одного разу прийшов до нього, коли він сидів, ламаючи PDP-6. "Що ти робиш?", Запитав Мінський. "Я тренуюсь випадково провідної нейронної сіткою для гри в Tic-Tac-Toe", - відповіла Суссман. "Чому мережа проводиться випадково?", Запитав Мінський. "Я не хочу, щоб у нього були якісь передумови, як грати", - сказав Суссман. Потім Мінський заплющив очі. "Чому ти закриваєш очі?", - запитав Суссман у свого вчителя. "Так що в кімнаті буде порожньо". У цей момент Суссман просвітився.

Наші програми завжди мають попередження, незалежно від того, чи закриєте ви очі чи ні ...


Ваш анекдот є найбільш переконливим. Наскільки це вас цікавить, ваш анекдот спонукав мене поширити питання з оновленням, яке ви можете побачити вище, коли у вас є деякий час.
вт

8

Хтось коли-небудь писав шахову програму, яка має власну думку? Що пізнає гру самостійно? Що тренує себе?

Так. Ознайомтеся з шаховим двигуном жирафа, написаним Метью Лаєм. Він написав шаховий двигун як частину свого дослідження штучного інтелекту для отримання ступеня магістра інформатики.

Про це в минулому році було багато дискусій на шаховому форумі програмування TalkChess . Я знаю, бо я автор шахового двигуна, двигун якого приблизно такий же сильний, як Жирафа. Однак я реалізував свій двигун за допомогою традиційних методик, тоді як автор Giraffe навчав його двигуну, використовуючи "навчання з підсиленням часової різниці з глибокими нейронними мережами". Метью все-таки довелося впроваджувати традиційний альфа-бета-пошук, щоб динамічно оцінювати позицію - іншими словами, переглядати багато кроків уперед. Його інновація полягає у навчанні двигуна для оцінки статичної позиції. Для порівняння, я записав конкретні знання в методику статичного оцінювання мого двигуна.

Я написав код для налаштування параметрів оцінки за допомогою алгоритму рою частинок (див. Сторінку " Дякую " в моєму блозі за посиланнями на технічну дискусію), який дав позитивні результати - сильніший механізм. Однак це не було завданням змусити двигун «навчитися» настільки, як мінімізувати помилки в надзвичайно великому просторі параметрів оцінки (порядку 10 ^ 150 дискретних комбінацій параметрів).

Метью обговорює свою дисертацію на форумі TalkChess. Зараз він працює в Google на DeepMind, якщо я правильно пам’ятаю.

Також перегляньте блог Томаса Петцке . Він написав надзвичайно сильний шаховий двигун iCE та використав генетичні алгоритми для покращення статичної оцінки двигуна. Перегляньте його публікації від 2013 р. І раніше, наприклад, Народонаселення на основі населення .


Ласкаво просимо на форум! Плюс один.
SmallChess


5

Пошук Google , як це може виявитися результати , як це .

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


+1, бо я ціную цікаве цитування IEEE. Мені здається, я вже був знайомий зі сторінкою NeuroChess. Але, здається, ні один із них не робить зовсім те, що я мав на увазі.
вт

3

Це можливо за допомогою машинного навчання.

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

Після закінчення фази відкриття двигун припиняє використання книги і починає використовувати функцію оцінювання.


Як реалізувати двигун самонавчання за допомогою машинного навчання?

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

Двигун починає грати з цією порожньою книгою, і не закриває її до кінця гри. Ми можемо подумати про це як звичайний двигун, який використовує вступну книгу до кінця гри.

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

Оновлення грудня 2017 року : Ну, напевно, Альфа Зеро виявила мене неправильно, тренуючись досить сильно, щоб перемогти один із найсильніших двигунів, Stockfish, практичною кількістю ігор.


2

Що б ви не спробували в цій галузі, не забудьте прочитати тут першу історію Террі: http://waitbutwhy.com/2015/01/artificial-intelligence-revolution-2.html

TL; ЛІКАР; версія спойлера на запит:

У розповіді про Террі, тренінг самоврядування Туррі повинен писати приємні рукописні замітки та закінчувати звільнення від людей, оскільки вони не потрібні для досягнення очевидно нешкідливої ​​мети - написання приємних рукописних нотаток. Аналогія полягає в тому, що самонавчений шаховий двигун з ШІ, швидше за все, також позбудеться людей, оскільки вони не потрібні для вдосконалення, очевидно, нешкідливої ​​мети - вдосконалення шахових навичок.


Ваша відповідь цікава, хоча, можливо, не зовсім переконлива. Я прочитав пов'язану статтю (обидві частини) за вашою порадою. Письменник трохи ослаблює свій випадок, напавши на деяких солом’яних чоловіків, але він вдумливий хлопець. Я не думаю, що я мав на увазі щось дуже схоже на статтю Turry. Шахова дошка 8 на 8, на якій два гравці роблять 40 або більше дискретних поворотів, є настільки принципово простішим випадком. Мені здається чудовим, що AI навіть не може думати про шахи загалом. Для протилежного погляду призначено читання: Feser, Edward. Останній забобон. Все-таки +1 за відсотки.
вт


0

Використання антропоморфної термінології при роботі з обчислювальними системами є симптомом професійної незрілості

З Як ми можемо сказати правди, які можуть нашкодити? автор Edsger W.Dijkstra в значній мірі підсумовує помилкове припущення, яке лежить в основі вашого питання. Штучний інтелект може бути штучним, але це не інтелект у людському розумінні.

У Лекціях Рейта 1984 року для BBC американський філософ Джон Сірл пояснює, що не так з жорстким ШІ. Підсумок його аргументу "занадто довго, не слухав" - "Синтаксис - це не семантика", але я все-таки закликаю вас принаймні прослухати лекцію 2 "Пивні банки та м'ясні машини ".

Щойно ви зрозуміли, що говорили Дайкстра та Серл більше 30 років тому, ви зрозумієте, що не так у ваших питаннях:

Хтось коли-небудь писав шахову програму, яка має власну думку? Що пізнає гру самостійно?

Людина має "розуміння" і може вчитися. Комп'ютери не можуть. Ваше село первісних людей протягом століть могло відтворити теорію відкриття шахів, але комп'ютери ні.


Чи стверджуєте ви, що комп'ютери не досягають інтелекту людського рівня, або навіть те, що "мислення" та "розуміння" зарезервоване для людей?
BlindKungFuMaster

@BlindKungFuMaster Якщо у вас виникли проблеми слухати "Пивні банки та м'ясні машини" за посиланням вище, вам буде зрозуміло, що думає Джон Сірл. Він переконав мене, і я поділяю його думку.
Брайан Тауерс

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

Отже, аргумент «Китайська кімната» є хибним, якщо припустити, що ви могли б імітувати взаєморозуміння лише з великим правилом правил, що насправді є досить абсурдним, і випереджаючи можливість того, що натомість семантичний контент може бути захоплений відповідною архітектурою з великої кількості даних. Насправді, це саме те, що стосується обробки природних мов у ці дні: cs224d.stanford.edu/syllabus.html
BlindKungFuMaster

@BlindKungFuMaster Є одне ключове слово в тому, що ти кажеш, і мені здається, ти не розумієш. Це слово "імітувати". Я вже 35 років інженер програмного забезпечення комп’ютера, і за цей час я мав багато тренажерів, а також написав кілька своїх власних. Симулятори часто є життєво важливими складовими проекту, але в реальному часі вони ніколи не повністю замінюють цільове обладнання. Без сумніву, комп'ютери чудово моделюють інтелект та семантичне розуміння, але вони ніколи не можуть досягти свідомості, волі, розуміння.
Брайан Тауерс

0

Цю відповідь дає запитувач оригінального запитання через чотири роки після запитання. Він не замінює і не замінює відповіді раніше, оскільки більшість попередніх відповідей цікавіші, ніж ця. Однак ця відповідь може додати деякий додатковий контекст.

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

Зрештою, в дослідженні ШІ, як це не повинно бути передумовою? Дослідники ШІ повинні працювати над матеріальними процесами, чи будуть вони, чи будуть їхніми.

Школярі реалістичної філософії, повернувшись до Дунса Скотса, Св. Тома, Арістотеля та Платона, мали багато що сказати щодо теорії розуму. Такі представники, як Кант, мали сказати досить різні речі. Дослідження AI, мабуть, ближче до Канта, але це не робить школярів помилятися.

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

Я підозрюю, що суто тренованого шахового ІІ справді можна досягти, і це буде - що, з точки зору Арістотеля, це питання виявиться адекватно вирішуваним з огляду на просто ефективну причину. Я в основному скептичніше ставляться до сильного ШІ, але це доведеться довести досвідом, чи не так? Ніхто насправді ще не знає.

Філософія причинно-наслідкового зв'язку та розуму є тонкою, її розуміють мало хто (і, мабуть, мало хто, навіть серед дослідників ШІ, які є більш практичними людьми). Якщо ви хочете вивчити таку філософію, варто навчитися; але майте на увазі, що в Інтернеті і навіть часто друкованому викладі вкрай просто знайти помилкові пояснення на основі не підтверджених непорозумінь. На мої гроші найкращий вступний вчитель, що пише сьогодні на цю тему, - Едвард Фесер, книги якого залишаються в друку за розумними цінами. Ти можеш дізнатися набагато більше від нього.

Однак, можна сумніватися, що навіть доктор Фесер зважиться на авторитетну відповідь на це питання! Відповідь залишається довести в лабораторіях ШІ.


-3

Я хочу, щоб вони випустили код, і тоді ми можемо поговорити. Шахи вирішити не так просто, Альфа не вирішить її навіть через півстоліття. Як не дивно, він все ще відтворює 1.d4. Чому? Оскільки він навчався на людських іграх, а теорія людини дає найвищий показник продуктивності для 1.d4. Бідна річ не знає, що 1 ... c5 досягає нічиї точно за 8 ходів. Тепер вони хочуть, щоб я повірив, що Альфа не використала змодельовану вступну книгу ... Кажуть, Альфа чудово зіграла відкриття. Ну так, за деякими винятками. 1.d4, безумовно, не говорить про рівень інтелекту, досягнутий програмою. На щастя, SF ще слабша у стадії відкриття. :)


3
Ви робите сміливі претензії, кажучи, що 1. ... c5 досягає нічиї за 8 кроків і що Stockfish слабкий на стадії відкриття. Чи можете ви надати посилання на ці претензії?
Пабло С. Окаль

1
1.d4, безумовно, не говорить про рівень інтелекту, досягнутий програмою. Як гравець 1.d4, мені цікаво, чи варто мені вважати, що тут міняється мій інтелект.
Еваргало

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