Google
 

Полезно знать

Сайт Андрея Иванова

Андрей Иванов - все секреты шашек и шашистов

Шашисту на заметку

Login





 


 Забыли пароль?
 или новый пользователь? Зарегистрируйся!

Кто с нами

Пользователей:  На сайте
Пользователей:  Пользователей: 0
Гостей:  Гостей: 426
Всего:  Всего: 426
Пользователей:  Зарегистрированные
No members connected

В записную книжку

Компьютерные новости: Компьютерные шашки

Комп новости Уважаемые коллеги!

Благодарю всех, кто принял и продолжает принимать участие в обсуждении предложенного мной регламента интернет турниров. Как видно из ваших писем, возник достаточно широкий спектр обсуждаемых вопросов. И это хорошо. В дальнейшем я попробую произвести анализ всех ваших мнений, и довести до Вас его результаты и самые интересные высказывания.
Для меня было неожиданным, что на этой почве, трое из участников обсуждения коснулись в той или иной форме, другой интересной темы.
Более кратко ее сформулировал, на мой взгляд, судья национальной категории из Беларуси Юрий Липницкий. Надеюсь, он будет не против, если я приведу маленькую выдержку из его письма.
Вообще использование компьютеров для анализа - это большой минус в заочных соревнованиях, игра перестает быть борьбой интеллектов, превращаясь в борьбу двух груд металлолома, кошельков, способных оплатить более мощный компьютер и более совершенную программу, если хотите... Но это - тема для отдельного разговора, извините, отвлекся.
В свое время, по другому поводу, я готовил предлагаемый ниже материал. Он в какой-то степени устарел по времени, но не, по сути. Возможно, для кого-то эта тема покажется интересной. Принимайте участие – обсудим.

г. Мурманск, Георгий Иванович Криворучко, G.I.Krivoruchko@email.ru

Компьютерные шашки

Персональный компьютер, сокращенно ПК, полностью вошел в нашу жизнь практически во всех сферах жизнедеятельности человека. С этим введением появился сильный партнер для игры в шахматы и шашки. Не все еще в состоянии иметь компьютер у себя дома, многие шашисты мечтают приобрести, надеясь на чудо. Насколько этот партнер сильный, как он играет и как играть с ним, чтобы выиграть? Где у компьютерных программ слабые и сильные места? Об этом мы и поговорим в этом разделе, для тех, кто еще с компьютером, как с партнером по шашкам пока мало знаком.

Чемпион мира по шахматам Гарри Каспаров проиграл компьютерной программе “Deep Blue”, хотя справедливости ради надо заметить, что если бы Гарри мог сыграть с ней 5-10 тренировочных партий, то наверняка программе пришлось бы туго. Ведь не секрет что к каждому сильному игроку персонально готовятся.
В шашках ситуация немного иная. “Шашки оказались для программистов гораздо более крепким орешком, чем шахматы: до сих пор не создано программы, играющей на уровне сильного гроссмейстера”. Алексей Чижов, чемпион мира. (Из интервью газете “Спорт-Экспресс”, 15.03.2001 г.)

С одной стороны, число вариантов на такой же доске в русские шашки меньше, их легче машине посчитать, а она именно считает все варианты без разбора, а только потом выбирает оптимальный. А вот тут то и начинаются трудности для программирования. Трудно объяснить компьютеру, что одинаковые с виду шашки, свойства которых заложены в программу, все одинаково ходят, бьют одинаково и т.п., на самом деле все разные и ценность их постоянно меняется в зависимости от очереди хода, позиции на доске и многих других факторов, в отличие от шахмат, где ферзь ходит так, слон этак, а конь вообще скачет буквой Г. Например, если вы в шахматах напали ладьей или скажем слоном на ферзя, предлагая размен, то понятно, что размен не равноценный и ферзя нужно уводить из-под боя. Определить равноценность размена, без увязки к конкретной позиции, в шашках не возможно. В них присутствуют комбинационные угрозы и позиционное давление. Если с комбинационными угрозами, “умная железка” справляется довольно хорошо, то поставить диагноз позиционной оценки, когда нет единой базовой оценки позиции, довольно сложно. Такую позиционную оценку для программы очень трудно формализовать – абстрактные шахматные понятия типа “фигура в центре”, владение открытыми линиями” в шашках не проходят.

Компьютерной программе в шахматы легче играть с человеком. Она считает варианты на определенное количество ходов вперед, которое достаточно по глубине просчета требуемого, чтобы довольно успешно противостоять человеку. Если нет в обозримом поле заведомо выигрыша, то можно сыграть назад, вернуть позицию, усилив по заложенным в программу шахматным понятиям, оценку позиции. Попробовать другие варианты. Начать атаку с начала и по другому сценарию. Перегруппировать силы и т.п.

В шашках нет. Первый ход, он как последний самый. Назад позицию не вернешь. Изначально нужно предвидеть, что будет в результате очередного хода, в конце игры. Как данный ход в последствии скажется в эндшпиле, трудно представить и объяснить программе.

Компьютеру легче играть и в русские шашки. Меньше вариантов и в сильных программах, много расписанной и заложенной в него теории. А если взять международные, стоклеточные шашки, пусть не обидятся любители русских, то арсенал количества вариантов и тактических возможностей не осязаем по сравнению с этими двумя играми. Тогда понятны другие слова чемпиона мира Алексея Рудольфовича Чижова: “Ни одна программа не выиграет у меня турнирную партию, это я могу гарантировать. Тут вариант с Каспаровым и шахматной программой “Deer Blue ” не пройдет: компьютеры пока не играют в шашки, они смотрят конкретные позиции, не понимая логики игры."

Так как же тогда все-таки играют компьютерные программы?

Неужели они просчитывают все варианты, что заменяет им логику человека? Возможно ли это? Сколько тогда этих вариантов?

В международные шашки в начальной позиции белые имеют выбор из девяти ходов, в свою очередь столько же ответов имеют черные. Следовательно, уже после первого хода может возникнуть 81 позиция. После второго хода количество позиций, отличающихся друг от друга, будет уже 81 × 81 = 6561. После третьего хода возникает уже 531441 позиция. Далее 4304671. Правда, без учета совпадений, вызванных перестановкой ходов. Но мы и не учитываем другой фактор. После первого и второго хода каждая сторона имеет выбор по 9 ходов. После третьего, как правило, по 10 продолжений, после 4-6 уже 11-12, а после 7-8 их может быть и по 11-14. В дамочных же эндшпилях возможно по 30-40 продолжений.

Подсчитано, что если каждый житель России, включая стариков и грудных младенцев, совместно с нашими соседями китайцами, общими усилиями в один миллиард человек станет перебирать все шашечные варианты. То тогда с этой задачей, при условии, что каждый житель будет играть круглосуточно по 5 партий, и не одна из них не будет повторяться, мы должны справиться всего то за 600-700 тысяч триллионов лет. И это, замете, по самым скромным подсчетам.

Конечно, не один самый быстродействующий компьютер с подобной задачей пока не справится. А значит, нужен другой подход.

В настоящее время существует достаточно много программ по шашкам. Более ближе к человеку подбираются русские шашки, вооружаясь памятью и умом человека. В стоклетках же, пока слишком большое, если можно так сказать, “не паханое поле”.

Более простые программы работают за счет заложенной программы логарифма. Сильнейшие программы имеют внутренние встроенные библиотеки баз данных дебютов и окончаний. Некоторые имеют еще дополнительную возможность подключения внешней очень большой библиотеки баз данных эндшпиля. В некоторых есть еще возможность подключения библиотеки базы партий содержащих до нескольких сотен тысяч сыгранных человеком партий. В том числе с возможностью заносить новые свои и чужие партии. Такие базы данных не бесполезны для русских шашек, где, как известно, есть теоретически разработанные варианты игры от первого до последнего хода. В прочем, как не специалист, не берусь судить в этом вопросе окончательно. Что касается международных шашек, то, пожалуй, это однозначно бессмысленно.

Чтобы совпала хоть одна партия из сотен тысяч имеющихся в библиотеке, с тем громадным количеством вариантов, то это все равно, что найти одну единственную каплю в мировом океане. Но даже если и совпала, то где гарантия, что она сыгранна, верно, и не содержит ошибок. Много примеров когда чуть ли не столетия играли одну и туже позицию, а потом кто-то ее опровергал.

Как правило, программы имеют выбор, ограничивающий время на обдумывание хода для компьютера. Это может быть от одной секунды до нескольких минут и более. Наиболее оптимальным временем при современном быстродействующем компьютере, это 1-3 минуты на ход. Обычно этого вполне достаточно, чтобы компьютер с хорошей программой играл в силу среднего мастера спорта. Дальнейшее увеличение времени на обдумывание к большим качественным переменам, как правило, не приводит. Программа попадает при более глубоком расчете в те громадные дебри, которые она не в состоянии до конца просчитать.

Дебютные библиотеки для программ обычно содержат все известные дебютные схемы и их варианты. Вы начинаете игру с компьютером, установив ему, время на обдумывание оду минуту, а он моментально отвечает на первые ваши хода. Это происходит потому что, он, просто не думая, как в шпаргалку подглядывает в свою дебютную библиотеку, пользуясь теми знаниями, чему научил его человек.

Проходит 5-10, реже 15 ходов и дебютная база данных себя исчерпала. Компьютер вынужден думать сам. Вот тут то он с человеком остается один на один в честной дуэли.

А в прочем, в честной ли? Ведь у человека опыт схем накопленных еще предками. Человек не может посчитать до конца, но по опыту знает, что в данной позиции лучше играть, скажем, 2-7, чем 1-7.

Справедливости ради нужно заметить, что в русских шашках, на сколько мне известно, возможны такие варианты, когда компьютер и вовсе думать не будет. В них есть теории, расписанные от второго до последнего хода. Компьютер уже с первых ходов может знать результат игры, используя заложенные в него данные.

Далее, как мы уже говорили, после дебюта наступает середина игры – миттельшпиль, где у человека явное преимущество. Программа просто считает позицию, но не видит, что будет в конце игры. Не понимает, достаточно глубоко, общего стратегического плана. Человек же помнит те знания, которые ему передались путем ранее сыгранных партий, может без расчетов сразу сказать, как в этой позиции лучше сыграть, опираясь на свой опыт. И только спустя много ходов, или уже в эндшпиле это станет явным.

Компьютер может допустить, по мнению человека, грубейшую ошибку. Представим себе позицию в международных шашках, когда боевых единиц еще достаточно много, а у компьютера есть возможность сыграть активно, поставив кол. В своих расчетах, на определенную глубину компьютер видит выгоду в занятии этого поля. До конца просчитать последствия этого поступка он не в состоянии, хотя перебрал миллионы вариантов. Человеку, для принятия решения, достаточно посчитать, сколько у него шашек для защиты кола и сколько у соперника для нападения. После серии подготовительных ходов и нападений на кол, программа поймет, что допустила ошибку, но будет уже поздно.

Человек часто играет интуитивно, правильно оценивая позицию. Программе это не дано. Более того, программа всегда ищет самый сильный ход, не скрывая своих намерений. А человек часто играет так, чтобы до поры до времени скрыть главный свой замысел. Ради этой цели, делая не всегда сильнейший ход с точки зрения программы. Например, увидев комбинацию, в которую может попасться противник, человек может сыграть, против человека, рассчитывая именно на ловушку. И часто это бывает оправданно. Человек может на первый взгляд сделать незначительную перестановку ходов, или вообще сыграть крайне пассивно. При этом именно это и будет сильнейшим ходом в данной позиции.

Надо сказать, что игра на ловушки будет оправдана только против человека, но не как против программы. Комбинационные удары, даже слабые программы, видит намного лучше человека. Поймать компьютер на удар невозможно, если он не отвратим. Если человек в партии ставит ловушки, то компьютер на ловушки не играет, видя возможную комбинацию. Программа, которая в нем заложена, предполагает, что его партнер все это видит в том же свете, что и он, а значит, не попадется на удар. А зря.

Используя эти недостатки программ, человек имеет шансы обыграть компьютер в миттельшпиле. Если этого не произошло, то в эндшпиле компьютер опять становится практически не уязвимым. Шашек становится мало, а с ними, количество вариантов резко сокращается. Компьютер в состоянии их все просто просчитывать до конца, особенно если к нему подключена большая внешняя библиотека окончаний.

Обычно свою штатную внутреннюю библиотеку базы данных эндшпиля, программы имеют емкостью по две – четыре шашки. Это означает, что туда занесены уже решенные окончания во всей вариантах соответствующих этому количеству шашек.

В настоящее время имеется возможность подключения в международных шашках внешней базы, где разобраны все варианты с семью шашками с каждой стороны на доске, (например 3 белых + 4 черных). Объем такой базы составляет более полутора гигабайт, что естественно требует от компьютера очень большого объема памяти и быстродействия. Есть программа, с которой компьютер сам создает такую базу, проанализировав все варианты. Но для этого требуется, чтобы современный мощный компьютер работал, не выключаясь недели для базы из пяти шашек и месяцы для базы из шести шашек.

С такой базой библиотеки, когда у вас осталось по семь шашек в сумме на доске, компьютер уже знает результат. Он даже знает его раньше, когда остается по 8-12 шашек, если в своих расчетах он, как бы в уме, поменял их до семи, а дальше результат ему уже известен. Человеку просчитать с такой точностью конечно не под силу.

Подобная база данных содержит отдельные файлы очень большого объема, более 100 мегабайт каждый. Видимо это обстоятельство, как показала практика, сказывается на нормальной работе компьютера. В оболочках Windows 95, 98, либо Millennium такая библиотека с программой работает не корректно. Чем больше память у компьютера, тем дольше работает программа. Затем постепенно память компьютера заполняется полностью и происходит либо зависание компьютера, либо сброс программы. Виною такой ситуации является дефект работы с памятью перечисленных выше оболочек Windows.

В оболочке Windows xp этот дефект устранен, и программа с данной библиотекой работает без замечаний.

В среднем партия в международные шашки длится 60-70 ходов. Конечно, бывают случаи, когда и далеко за сотню ходов. Когда на доске остается по шесть шашек, обычно к этому времени сделано 40-50 ходов. Учитывая, что компьютер в начале игры 5-10 ходов, пользуется своей дебютной библиотекой, а в конце базой данных эндшпиля, то преимущество человека распространяется на “не паханое поле” для компьютера в 30-40 ходов в миттельшпиле. Но этого в принципе вполне достаточно. Не берусь судить как в шахматах, но в русских шашках это “не паханое поле” намного меньше. Следовательно, в стоклетках успешно сражаться с компьютером у человека пока шансов больше.

До этого момента мы обсуждали аспекты борьбы человека с компьютером. А как быть тогда с понятием спортивной составляющей, когда в соревнованиях по интернет турнирам и обычной почтовой переписке, спортсмен использует себе в помощники компьютер. Кому тогда принадлежит спортивный результат? Надо ли с этим бороться, а если бороться, то как?

Практика турнирных поединков по переписке говорит примерно о том, что некоторые спортсмены получают более высокие результаты за счет компьютерных мозгов. Значит, напрашивается вывод, что шашечный спорт по переписке умирает. Будут выигрывать “новые русские”, чей компьютер по своей мощности и быстродействию будет, сопоставим с крутым джипом, против горбатого Запорожца.

Все это было бы крайне печально, если бы соответствовало истине. Да действительно, слабые спортсмены получают помощь до определенного уровня, но и только. В турнире мастеров, сильных кандидатов и гроссмейстеров такие фокусы не проходят.

Выше мы говорили, что в миттельшпиле сильный игрок сильнее “умной железки”. Та, в отличие от человека, считает варианты, не понимая до конца позиции, при этом частенько ошибается.о этому не все так плачевно, как кажется. Более того, игрок, имеющий компьютер, (а в интернет турнирах это практически все игроки) который, напрягает собственное серое вещество, имеет преимущество против игрока, который заставляет бегать только электроны в компьютере, для поиска сильнейшего хода.

Все очень просто. Шашки учат логике, и по этому такого игрока очень легко вычислить по ответам. Компьютерные программы логики мышления не понимают. Они больше похожи на бухгалтера со счетами.

Да и без логики легко проверить. Вы сделали, предположим, пять-шесть ходов и после каждого для себя на своем компьютере проверили, а как же компьютер будет отвечать.

По ответу соперника Вы поймете, отвечает он сам, или за него отвечает электронный партнер. Если партнер больше доверяет интеллекту компьютера, то далее на свой ход, или на серию ходов вы можете найти вариант, когда компьютер совершит роковую ошибку, а значит с ним и соперник.

Выводы, что не так страшен черт, как его рисуют, подтверждаются результативными результатами интернет турниров. Результативность последних не чуть не хуже очных соревнований. Если предположить обратное, то был бы сплошной ничейный штиль.

Последнее время стали чаще проходить турнирные встречи между компьютерными программами. Из наиболее сильных программ по международным шашкам можно назвать Flits, Buggy, Damage, Dam 2.2.7. Если первые программы достаточно дорогие, то Голландская программа Dam 2.2.7, автор распространяется бесплатно. Ее можно скачать в интернете с авторского сайта www.xs4all.nl/~hjetten/dameng.html. Эта программа привлекательна не только тем, что распространяется бесплатно, она имеет перевод на шести языках, в том числе и русском. Удобный интерфейс, по силе занимает 3-6 место среди других программ. Можно рекомендовать менее профессиональную, но интересную программу Олега Адибекова “Шашечная игротека” www.olv.na.rod.ru. Программа интересна тем, что можно по своему желанию делать доску любой формы. Например, с полями 7 на 9 клеток.

По русским шашкам достаточно много программ, вот некоторые из них:

“Plus600” Автор - Сергей Старцев (Москва) www.gambler.ru/plus/

“Магистр-III” Авторы - Александр и Дмитрий Князевы (Санкт-Петербург) www.magistr3.com/.

“ADC” Авторы – Владимир Агафонов, Сергей Бобровский (Москва)

ttp://agasoft.chat.ru

Максим Хорин из Хабаровска предлагает для мужчин не плохо сделанные свои программы “Русские стрип-шашки” и “Стрип-поддавки”. http://hmaks.chat.ru/.

Сами программы, в отличие от баз данных, небольшие, их всегда можно без проблем скачать с интернета.

г. Мурманск

Георгий Иванович Криворучко

G.I.Krivoruchko@email.ru

Автор Alkand в Четверг, Апреля 17, 2003 (41144 Просмотр(а)(ов))
    Страница для печати
 
Page created in 0.527207136154 seconds.