|
||||
|
БЕССТРАСТНЫЙ ПАРТНЕР Нелегко было «посадить» электронную машину за шахматную доску. Не сразу удалось составить машинную инструкцию для одной из самых древних и трудных игр. Нужно было точным математическим языком описать правила игры, дать формулы, оценивающие ее ситуации и указывающие правильный путь к победе. В каждой игре, даже самой простой, сталкиваются противоположные интересы, каждый партнер стремится воспользоваться ошибкой противника, повернуть игру в свою пользу и добиться победы. Математика сумела проникнуть в сложный процесс соревнования между разумными существами и раскрыть ее закономерности. «Научить» электронную машину игре в шахматы очень трудно. Но более простые игры — «в камешки» или «крестики и нулики» — она осваивает быстро и проводит безошибочно. На столе кучка камешков. Два мальчика увлечены незатейливой, но интересной игрой. Правила просты. Каждый раз можно брать не больше трех камней. Выиграет тот, кто заставит партнера взять последний камень. Игра идет с переменным успехом — случайно выигрывает то один, то другой из партнеров. А между тем исход зависит не от случайного стечения обстоятельств, а вполне закономерен. И, когда играющие в этом убеждаются, интерес сразу же пропадает. Какая же это игра, если все заранее предопределено! Найти общие закономерности игры «в камешки» не так уж просто. Математические законы игры открыты, и теперь в нее с успехом играет машина. В одном из павильонов научной выставки, организованной во время Британского фестиваля, ежедневно с утра до позднего вечера царило необычайное оживление: громкие споры, восхищенные возгласы и скептические замечания сменялись тишиной, полной напряженного ожидания. Нетерпеливая молодежь, степенные отцы семейств и почтенные люди с увлечением играли в камешки с электронной машиной «Нимрод», специально построенной для игры в «Ним», похожей на нашу мальчишескую игру. Камни раскладываются на произвольное число кучек. Но каждый может при своем ходе брать камни только из одной кучки, сколько угодно камней — даже все. Выигрывает тот, кто заберет последние. Машина вела игру с полным знанием дела, как самый опытный игрок. Точно выполняя руководство к действию, она одерживала одну победу за другой. Только когда исход игры с самого начала был предопределен в пользу безошибочно играющего противника, машина бесстрастно извещала о своем поражении. Кто из нас в детстве не увлекался игрой в «крестики и нулики»? На переменах, а иногда — чего греха таить! — и во время урока на листке бумаги с девятью квадратами разыгрывались самые ожесточенные сражения. Кому удастся поставить подряд три своих значка — тот побеждал. Но чаще всего игра заканчивалась ничьей. Партнеры быстро постигали немудреный секрет. Чтобы электронную вычислительную машину приобщить к этой игре, нужно перевести на машинный язык возможные ситуации на игровом поле. Оказывается, в этой простой игре существует несколько серий вариантов. А в каждой серии — 512 вариантов по четыре хода. Играя по любому из них, машина не проиграет. А если ее партнер невнимателен, то 360 вариантов приведут к победе. В принципе, казалось бы, все очень просто — дело сводится к выбору наилучшего варианта хода из большого числа возможных. Но за простотой кроются немалые технические трудности. Чтобы вложить в машину 512 вариантов по четыре хода, приходится занять все ячейки машинной электронной «памяти». Кроме того, в нее нужно еще поместить программу игры. А это значит, что всей оперативной «памяти» большой электронной вычислительной машины едва-едва хватит для немудреной игры на девяти квадратах. Вернемся снова к шахматам. После знакомства с принципами механизации простых игр можно представить себе те огромные трудности, которые возникают при «обучении» машины квалифицированной шахматной игре. В теории игр доказывается, что исход шахматной партии, как и в игре «крестики и нулики», предрешен первым ходом и выбором стратегии каждого из партнеров. И если бы удалось составить перечень всех стратегий и выявить оптимальные, то древняя игра потеряла бы свою привлекательность. Как ни парадоксально, наше увлечение шахматами зиждется на том, что мы «не умеем» правильно играть, не знаем полностью математического решения этой игры. Бельгийский математик М. Крайчик попытался хотя бы приблизительно подсчитать общее число всевозможных вариантов шахматных партий. Оно оказалось равным 2?100116. Такое число оставляет далеко позади легендарное количество пшеничных зерен, испрошенных в награду за изобретение шахмат Если бы все население земного шара круглые сутки играло в шахматы, делая ежесекундно по одному ходу, то потребовалось бы не менее 10100 веков, чтобы переиграть все варианты шахматных партий. Любители шахматной игры могут не беспокоиться. Составить список всех стратегий и этим решить до конца задачу шахматной игры ближайшим поколениям не удастся даже с помощью самых быстродействующих машин. Шахматам пока не угрожает участь игры «в камешки». Как же при таких условиях составить руководство к действию для машинной игры? Оно строится на системе правил, позволяющих в каждой ситуации на шахматном поле выбрать очередной ход. Эта система правил является тактикой игры. Чаще всего тактика строится на оценке значимости каждой фигуры. Оценка выражается числом очков. Например, король 200 очков, ферзь — 9, ладья — 5, слон и конь — по 3, пешка — 1 очко, а отсталая, изолированная и сдвоенная — по полочка. Определенным образом оцениваются также позиционные преимущества: подвижность фигур, расположение на доске, защищенность. С помощью чисел можно дать общую оценку своей позиции и противника. Отношение общего числа очков позиции белых к числу очков позиции черных характеризует ситуацию игры. Если оно больше единицы — преимущество на стороне белых, если меньше — более выгодное положение у черных. Предположим, машина играет черными и должна сделать очередной ход. В ее «памяти» хранится положение на доске и отношение чисел очков в этой ситуации. Выбирая ход, машина начинает вычислять изменение этого отношения при различных вариантах. Ход, ведущий к максимальному изменению отношения в пользу машины, и будет ее выбором. Машина напечатает его на карточке. Описанная тактика, одноходовая, приведет, конечно, к очень плохой и неинтересной игре. Гораздо лучше строить игру на расчете нескольких ходов вперед. Лучшие шахматисты умеют рассчитывать комбинации вперед на десять и более ходов. Машина гоже может играть с выбором комбинаций на несколько ходов вперед в предположении, что противник будет также отвечать наилучшими ходами. Но ее возможности ограничены скоростью работы и емкостью «памяти». Если считать, что на обдумывание хода нельзя тратить больше 15 минут, то самая быстродействующая машина может планировать игру не более чем на три — четыре хода вперед. При огромном превосходстве над человеком в скорости вычисления машина пока не может с ним соревноваться в скорости игры за шахматной доской. Ведь ей приходится добросовестно перебрать и пересчитать почти все возможные варианты, даже те, которые человек сразу же отбрасывает, не задумываясь. Вот партия, сыгранная машиной (белые) с человеком (черные):
В этой проигранной для белых (машина) позиции партия была прервана. Как видите, машина-шахматист оказалась не на высоте. Но это одна из первых партий. Вычислительная техника быстрыми шагами идет вперед. Совершенствуются методы управления электронной машиной. Уже сейчас электронная вычислительная машина решает трудные шахматные задачи и очень хорошо играет в шашки. Можно не сомневаться, что машина скоро «научится» гораздо лучше играть и в шахматы. Что произойдет, если «посадить» за шахматную доску две машины? Могут ли они вступить в единоборство и кто из них выйдет победителем? Конечно, могут! Машины прекрасно «поймут» друг друга, и каждый из этих бесстрастных партнеров будет упорно добиваться победы. Она достанется тому, кто обладает более совершенным руководством к действию, большей «памятью» и быстрее «соображает», то есть быстрее вычисляет. Игры, о которых я рассказывал, характерны тем, что их исход не зависит от случая. Но для других игр дело обстоит не так. Взять хотя бы домино или разнообразные карточные игры. Ведь их результат определяется не только ходами участников, но и «везением». Пришла хорошая карта — и выигрыш почти гарантирован. А при плохой карте самая совершенная игра мало поможет. Можно ли приобщить электронную вычислительную машину к подобным играм? Как составить руководство к действию, учитывающее неизбежную случайность? Оказывается, и в таких играх машина не «ударит лицом в грязь». Недавно вычислительная электронная машина «Стрела» в перерыве между основной работой сыграла свою первую партию в домино. Человек и машина играли против двух человек. И надо сказать, партнер машины не имел оснований к недовольству своим напарником. А противники очень быстро убедились, что машина играет, как самый опытный любитель, хотя и не сопровождает свои ходы мощными ударами костяшек об стол. Партию выиграли человек и машина. Машинная игра в домино и карты тоже базируется на выборе оптимальной стратегии. Решение задач в играх со случайными ходами производится аналогично играм с предрешенным исходом, но с привлечением законов теории вероятностей. Существуют игры, исход которых вообще не зависит от ходов участников. Они целиком строятся на случае. К таким играм относятся, например, лото и рулетка. Для них не существует ни стратегии, ни руководства к действию. Машина, как и человек, должна здесь играть наугад. Но, оказывается, есть игра, в которой машина предстает более сильным противником, чем человек. Это хорошо известная игра «чет-нечет». Один из участников пишет какое-нибудь число. Другой, не глядя на него, угадывает, четное оно или нечетное. Каждый из участников может играть по любой стратегии — оптимальной здесь не существует. Стратегия может заключаться в том, например, чтобы всегда называть «чет». Но противник очень быстро разгадает такую «чистую» стратегию партнера и начнет систематически выигрывать. Поэтому каждый старается самым произвольным способом чередовать свои ходы. И если два человека будут очень долго играть, то в среднем окажется, что в 50 процентах случаев выиграет один, а в 50 процентах выиграет другой партнер. Исход большого числа игр окажется ничейным. Но игра с машиной привела к другому, неожиданному результату. Запоминая все предшествующие ходы, машина устанавливает некоторую закономерность в случайных ходах человека, которой он бессознательно пользуется. Например, он чаще называет «чет», чем «нечет», или часто после двух ходов «нечет» делает три хода «чет» и так далее. Раскрыв это, машина вычисляет вероятность того или другого очередного хода и выигрывает чаще, чем человек. Оказалось, что из большого числа игр машина выигрывает уже 55 процентов. Побеждает бесстрастный автомат. |
|
||
Главная | Контакты | Прислать материал | Добавить в избранное | Сообщить об ошибке |
||||
|