Математичні дозвілля
Мартін Гарднер"Математичні дозвілля" - 14
Саморобна самонавчальна машина із сірникових коробок
Мал. 80. Гра в шість пішаків.
У шість пішаків грають на дошці розміром 3х3 клітини Кожен із гравців має по 3 пішаки. Початкова позиція показана на рис. 80. Замість «справжніх» пішаків з тим самим успіхом можна скористатися монетками двох різних переваг або фішками. Ходи дозволяється робити лише двох типів: 1) пішак може пересунутись на одну клітинку вперед, якщо ця клітина порожня; 2) пішак може взяти пішака іншого кольору, що стоїть праворуч або ліворуч, сусідній клітині і по діагоналі, і залишитися на клітині, що звільнилася. Взята пішака знімається з дошки. Ходи пішаків, як видно з цих правил, здебільшого збігаються з ходами пішаків у звичайних шахах. Однак на відміну від шахів нашим пішакам не дозволяється робити подвійний хід на початку партії, брати пішака противника на проході і перетворюватися на будь-які інші фігури того ж кольору. Партія вважається виграною у наступних трьох випадках:
1) коли одну з пішаків вдається провести до третього ряду; 2) коли взяті всі пішаки супротивника; 3) коли противник не може зробити чергового ходу. Гравці роблять ходи по черзі, пересуваючи щоразу по одному пішаку. Очевидно, що закінчитися внічию гра не може; далеко не так очевидно, який з гравців має перевагу: той, хто робить другий хід або той, хто починає гру.
Для виготовлення машини САМА (Машина з Адаптацією, що самонавчається) потрібно взяти двадцять чотири порожніх сірникових коробка і багато різнокольорових бусинок. Замість бусинок можна взяти різнокольорові льодяники або розфарбовані горошини. На кожну коробку наклейте малюнок однієї з позицій, що зустрічаються при грі в шість пішаків (вони показані на рис. 81). У кожній партії робот повинен робитихід другим. Діаграми, позначені цифрою 2, зображують дві позиції, які можуть виникнути перед другим перебігом. Роблячи перший хід, ви можете пересунути або середню пішака, або одну з крайніх. Ми будемо розглядати тільки ті випадки, коли з двох крайніх гру починає ліва пішака, тому що, розпочавши гру правою пішаком, ви отримаєте дзеркально-симетричну послідовність ходів. Діаграми, позначені цифрою 4, є одинадцять позицій, з якими може зіткнутися ваш робот перед своїм другим (четвертим після початку гри) ходом. Цифрою 6 позначені одинадцять можливих позицій перед останнім ходом робота (шостим після початку гри). (На малюнках зображені всі можливі позиції, у тому числі і дзеркально-симетричні. Я це зробив просто для того, щоб читачеві було легше поводитися з машиною. Насправді ж досить дев'ятнадцяти коробок).

У кожну коробку покладіть стільки бусинок, скільки стрілок на діаграмі. Кожній стрілці має відповідати бусинка певного кольору. Тепер робот готовий до гри. Кожна стрілка позначає допустимий, тобто узгоджується з правилами гри, хід. На діаграмах зображено всі допустимі ходи. Звідси випливає, що машина, по-перше, ходитиме лише за правилами і, по-друге, зможе зробити будь-який дозволений хід. Однак жодної певної стратегії у нашого робота немає і поки що він ще нічого не вміє. Навчання відбувається в такий спосіб. Зробивши перший хід, ви берете коробку, на якій намальована позиція, що створилася на дошці, струшуєте його і, заплющивши очі, відсуваєте кришку. Вийнявши з коробки навмання одну бусинку, визакриваєте його, ставите на стіл, а зверху кладете вийняту бусинку. Тепер розплющте очі, подивіться, якого кольору намистинка, і, знайшовши на діаграмі відповідну стрілку, зробіть вказаний нею хід. Після цього ви робите свій черговий хід (попередній був ходом машини). Зробивши його, повторіть описану процедуру. Так слід продовжувати доти, доки партія не закінчиться. Якщо виграє робот, покладіть усі вийняті намистинки на місце і почніть наступну партію. Якщо ж робот програє, його треба покарати. Заберіть у нього одну бусинку, що відповідає його останньому ходу. Всі інші намистинки покладіть на місце і продовжуйте курс навчання, почніть наступну гру. Якщо остання коробка виявиться порожньою (так іноді буває), це означає, що всі ходи машини призводять до її програшу і вона відмовляється грати далі. У цьому випадку намистинку треба вийняти з передостанньої коробки. У перших п'ятдесяти партіях записуйте всі перемоги та поразки робота, а потім складіть графік. Система покарань вигадана спеціально для того, щоб максимально скоротити час навчання, проте цей час істотно залежить від майстерності вчителя. Машина вчиться грати тим швидше, чим майстерніший її противник. Можна вигадати й іншу систему навчання. Нехай, наприклад, вам хочеться, щоб робот отримував максимальну кількість перемог у кожних двадцяти п'яти іграх. Тоді найкраще заохочувати його (як і карати), додаючи в кожну коробку бусинки потрібного кольору. При такому способі неправильні ходи ліквідуються дещо повільніше, але машина робить їх все рідше. Цікаво було б спорудити ще одну машину, яка спочатку теж не вміє грати, і навчити її за другою системою. Цей робот можна назвати САМ (Машина, що самонавчається). Збільшивши число елементів сірникових коробок в тій і в іншіймашині, їх можна було б навчити робити як парні, а й непарні ходи, і зокрема перший хід. Потім можна було б влаштувати турнір із шістдесяти партій між машинами і подивитися, яка з машин САМ чи САМА-отримає більше перемог. Перший хід у кожній партії роботи роблять по черзі. Аналогічні машини неважко вигадати і для інших ігор. Наприклад, Ст'юарт К. Хайт нещодавно сконструював із сірникових коробків робота NIMBLE (NIM Box Logic Engine - логічний пристрій із коробок для гри в ньому), який навчається грі в ньому за схемою 3-3-3 (фішки розділені на три купки, по три фішки в кожній). Робот Хайта може робити як перший, і другий хід; після кожної партії його або заохочують або карають. NIMBLE складається всього з вісімнадцяти сірникових коробок; після тридцяти партій він уже майже непереможний. Гра ним докладно розібрана в розділі 14 моєї першої книги.


Найбезпечніший хід, який тільки можна зробити, щоб противник не взяв мою пішака. Я майже напевно виграю... Він узяв пішака у мене, але я не залишився в боргу і взяв його пішака. Якщо він піде так, як я думаю, то я втрачу одного пішака, зате наступного ходу зможу замкнути всі його фігури. ¦Який же я бовдур! ¦Чудовий хід! Думаю, що я програю цю партію”. По-моєму, він зовсім не думає. Міг би тепер уже й не позіхати. Здорово грає! Вона починає розуміти, чого я хочу. Нарешті він став думати, і грати стало куди цікавіше. Який дивний хід! Хіба не бачить, що я виграю, якщо він піде вперед? Мій противник грав добре, але, по-моєму, я першою розкусила гру. Першим розкусив гру я.
Якщо обидва противники роблять найбільш раціональні ходи, то партія у шашки на дошці 4х4 закінчується внічию. На рис. 84 показано триможливі перші ходи чорних: С5; С6; D6.
