Крестики-Нолики, Рэндзю, Коннект

Объявление


Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Крестики-Нолики, Рэндзю, Коннект » Обсуждения » Программа разбора и анализа партий.


Программа разбора и анализа партий.

Сообщений 1 страница 5 из 5

1

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

Интерфейсный модуль может быть как windows приложением, так и java аплетом. Он должен уметь взаимодействовать с пользователем, сохранять и загружать партии, выдавать рекомендации и аналитику позиции, формировать запросы к базе данных.

Блок анализа содержит информацию о текущей позиции,  угрозах из 4-ок, 3-ек, обозов, и пауз,  может решать VCF последовательности (победа на 4-ках) и VCT (победа на 3-х) последовательности на заданную глубину, оценивать возможные ходы по заданным критериям и предлагать лучшие. При взаимодействии с базой данной блок приводит позицию к стандартному значению и формирует критерии, которые позволяют ускорить выборку из базы данных.

База данных должна быть построена на сервере базы данных, например MySQL, Firebird, Oracle. Она должна хранить в себе информацию об игроках, играх, позициях. Позиции должны содержать в себе информацию о положении камней на доске, ходах, которые приводят к победам, поражениям, ходах помеченных как нейтральные и еще не сделанные.

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

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

На данный момент я реализовал на Delphi 2007 в минимальном виде модуль отображения, который отображает доску и позволяет делать ходы. Работаю над модулем анализа, сделал построение списка угроз и ответов для 4-к и 3-к. Смог сделать VCF – поиск победы на 4-ках. Приступаю к реализации построения списка обозов и после этого можно приступать к VCT - поиск победы на 3-ках. Это, как мне кажется, самый тяжелый участок для реализации. После этого можно формировать списки пауз. Базы данных ещё не трогал.
К сожалению, задумка затягивается за неимением времени. К тому же я не обладаю необходимой квалификации для работы с графикой. Если кто заинтересовался данным проектом и желает принять в нем участие, прошу откликнуться.

0

2

Добрый день!

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

0

3

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

0

4

Mikle написал(а):

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

Подсказку дать могу.
На Гамблере есть такой человек - Сергей Баталов, ник - Дядя_Сергей.
У него на гамблере играет пара десятков ботов в разные игры, в том числе и в крестики-нолики.
Связаться с ним - лучший вариант.

0

5

Спасибо.
Может быть еще есть идеи.

0


Вы здесь » Крестики-Нолики, Рэндзю, Коннект » Обсуждения » Программа разбора и анализа партий.