Игра в шашки человек - компьютер

Содержание Введение 1. Описание задачи 2. Выбор метода решения 3. Описание алгоритма решения 4. Описание структуры данных 5. Описание процедур и функций 6. Пример работы программы 13 Заключение. 22 Список литературы 23 Приложение. Текст программы 24 Введение Компьютерные программы по шашкам А как сильно играют программы по шашкам Вроде бы уже Гарри Каспаров проиграл компьютеру в шахматы, почему же в шашках все тихо Что касается Каспарова, то он играл не в полную силу, пунктов на 200 ниже своего рейтинга, а в последней партии просто стал непонятно почему экспериментировать.

На самом деле если бы Гарри мог сыграть с Deep Blue 15-20 тренировочных партий, то он вычесал бы ее на ноль. В шашках ситуация немного иная. С одной стороны, число вариантов в игре меньше, и они легче поддаются перебору. С другой стороны, правила боя и одинаковость всех шашек создают определенные трудности для программирования.

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

Кроме того, создаются специальные исследовательские группы типа Deep Blue, которые только и занимаются программированием шахмат. Если бы нашлись источники финансирования для группы из 3-4 человек, то за один-два года реально создать шашечную программу в русские шашки, играющую на уровне чемпиона мира. Наглядный пример - канадская программа Chinook. Занимались ей профессионалы несколько лет - теперь она выигрывает у чемпиона мира. Программа Агафонова новая тестовая версия для Windows недавно сыграла несколько партий по 15 минут с известным экс-чемпионом мира. Несколько ничьих, два проигрыша один в выигранной позиции.

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

При контроле по 1-3 минуты на ход сила игры - примерно на мастерском уровне, может быть, немного слабее. Причина некоего застоя в компьютерных шашках одна - нет хороших стимулов, отсутствует конкуренция. В Нидерландах ежегодно проводится турнир программ, но победитель ничего, кроме морального удовлетворения, не получает. Наглядный пример - DAM 2.xxx. Постоянные третьи-четвертые места в турнирах - и бесплатное распространение. Так что потенциально шашечные программы уже давно готовы выигрывать у человека.

Остается ждать, когда появятся команды с хорошей финансовой поддержкой. Пока же при нормальном контроле сильнейшие программы реально могут сражаться с средними мастерами. Российская Федерация Шашек официально признает только две разновидности игры - русские и международные шашки. В дополнение следует сказать, что в последнее время соревнования по русским шашкам проводятся по двум вариантам - классические русские шашки и т.н. турниры с выборочным жребием.

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

Список дебютов и позиций, применяемых в таких турнирах, постоянно пересматривается и утверждается РФШ раз в два года. 1.

Описание задачи

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

Выбор метода решения

Выбор метода решения Данную задачу удобно решить методами объектно ориентированного программирования на языке Турбо Паскаль.

Язык Турбо Паскаль является универсальным, имеет широкие возможности в области использования графики, а концепция ООП, поддерживаемая им позволит максимально приблизить решение задачи к образу человеческого решения, упростив тем самым задачу. 3.

Описание алгоритма решения

Проверить, можно ли еще что-то побить той шашкой, которой мы только чт... Если можно - на п.6 если нельзя - на п.4. . 7. Если да - то на п.6 , если нет - то на п.2 2.

Описание структуры данных

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

Описание процедур и функций

procedure Beep Пищит. Run Выдача сообщений, инициализация игроков и запуск др. когда походит. procedure TPlayer. Init Инициализация игроков.

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

Список литературы 1. Зуев. Язык программирования Turbo Pascal 6.0 М. Унитех, 1992 298 с. 2. Довгаль С.И Сбитнев А.И. Персональные ЭВМ Турбо - Паскаль V 7.0, Объектное программирование Киев Довгаль,1995 320 с. 3. Епаншенков А.М Епаншенков В.А. Программирование в среде TURBO PASCAL 7.0 М. Диалог - МИФИ, 1996 288 с. 4. Турбо Паскаль 7.0 - К. Торгово - издательское бюро BHV, 1995 - 448 с.