Графическая оболочка Kallisto (релиз 4) позволяет играть в шашки и анализировать позиции с помощью разных шашечных программ (движков).
Варианты шашек: русские, бразильские, пул, чекерс.
Архив включает несколько движков:
Каллисто 4 - серебрянный призер первого чемпионата мира.
Каллисто 3 - первый чемпион Европы среди программ.
Каллисто 2 - версия выигравшая турнир В. Санцевича.
Каллисто 1 - версия игравшая на первом кубке сайта "Шашки в России" (второе место).
Kallisto Brazil - бразильские шашки.
Kallisto Pool - пул.
Kallisto Losers - поддавки.
Kallisto Checkers - чекерс (слабый движок, т.к. ОФ совсем не подходящая для чекерса).
Kallisto Checkers Losers - чекерсные поддавки.
В каталогах ..\ED\Kallisto ...\ находятся генераторы эндшпильных баз
для каждого из видов шашек. После запуска нужно ввести число шашек в базе.
Максимально можно генерировать ЭБ-6.
Для нормальной игры достаточно ЭБ-4.
Эти базы также используются Skifi и KestoG.
Моя первая попытка сделать шашечный движок (2000 год). Играет в силу кандидата. Использует ЭБ-3. Имеет ошибку в генераторе ходов, которая может проявляться примерно в одной партии из 300.
Очень слабенький движок.
Сделан в качестве демонстрации подключения движка к оболочке и основных приемов шашечного программирования.
Практически отстутствуют какие-либо алгоритмы.
Распространяется вместе с исходниками!
Skifi 0.39 - бронзовый призер чемпионата мира.
Skifi 0.35 - чуть более сильная версия с агрессивным стилем игры.
Автор Сергей Нефедов из Санкт-Петербурга:
Движок написан на Дельфи.
Очень простая оценочная функция с элементами эндшпильных знаний.
# алгоритм перебора: fail soft PVS
# безранговые эндшпильные базы включительно до 6 шашек (поддерживаются оболочкой)
# таблица перестановок
# взятия и превращения рассматриваются и за горизонтом (depth <= 0)
# удлинение варианта в случае единственного хода
# селективный аналог multiProbCut
# LMR
# сортировка ходов:
Автор Александр Быков из Екатеринбурга:
Шашечный движок Мариночка - это переделка моей более ранней программы
Draughts Navigator. Navigator был написан в 1999 г. на Delphi,
а идея генератора ходов была взята из чекерсной программы Мартина Фиерца.
Позднее генератор был переписан на С. По сравнению с Navigatoro'м, Мариночка
использует улучшенную функцию перебора, хэш-таблицу, сортировку ходов.
Оценочная функция осталась почти неизменной - учитываются: материал, ценность полей
и баланс шашек по флангам
Автор Владимир Ильин из Новгорода:
Как то бесцельно лазая по порталу GameDev.ru я наткнулся на пост Дикой
Кошки со ссылкой на этот сайт. Шашки я всегда любил, поэтому решил написать
свою программу. Никакого опыта программирования логических игр у меня не
было, поэтому для старта была взята "Сидра". И постепенно стал переделывать
части этого движка на свои. Написал свой генератор ходов, затем ОФ, сделал
хеш-таблицу. Собственно принципиальные отличия от "Сидры" на этом и
заканчиваются. По большому счету функция поиска остается (пока)
"сидровской". То есть это итеративные углубления и классический альфа-бета
перебор с "полным окном". Нет никаких эвристик и сортировок. Конечно, игра
Чекиста не идет ни в какое сравнение с монстрами, залегающими в этом же
архиве, но я не унываю, ведь все с чего то начинали, и, например, у
Skifi0.03 и у Skifi - призера Чемпионата мира - один автор. :)
Описание протокола подключения движков к оболочке можно найти в файле Main.cpp (SiDra). Благодаря такому подходу программистам не нужно отвлекаться на создание своей графики, а можно сосредоточиться на сути шашечной программы. С другой стороны такой подход позволяет проводить матчи разных движков в автоматическом режиме. Также можно сделать свою, красивую, оболочку и получить сразу несколько движков (например, Аврора).