Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: Крестики-нолики
Показать сообщение отдельно
pva pva вне форума

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


мне кажется вэтой игре такой подход не катит. Предлагаю функцию, которая оценивает тактическое преимущество. Допустим она состоит из 2-х частей: нападение и защита. Цель нападения - поставить 5 крестиков сподряд. Цель защиты - не дать поставить 5 крестиков сподряд.
Пусть у нас есть список вариантов, которыми можно поставить 5 крестиков сподряд (назовём их стратегиями) и степень их выполнения (сколько поставлено из 5).
нападение: ищем такой ход, который довыполнит максимально заполненные стратегии.
защита: ищем ход, который разрушит максимально заполненные.
На основании степени дозаполненности выбираем основной род деятельности: если наша дозаполненность выше, то нападаем. Оставшийся вариант назовём фоновым родом деятельности. Далее рассматриваем только стратегии с максимальной дозаполненностью каждого рода деятельности.
Ищем общие ходы для стратегий основного и фонового рода деятельностей. Если такие есть, то выбираем с наибольшим пересечением стратегий основного рода деятельсности. Если нет, то среди всех вариантов выбираем с наибольшим пересечением стратегий основного рода деятельсности.
Если таких стратегий несколько, то среди них выбираем из других условий, например с наибольшим пересечением срели всех стратегий нападения (подчёркиваю, не осноыного рода деятельности). Если всё ещё не можем определиться, то случайно.

Таким образом, оценивающая функция следит чтобы повысить свою степень заполнения либо понизить вражескую (в первую очередь) и обеспечить себе наибольшее число выигрышных вариантов (на случай хорошей защиты противника). Ведь цель игры всё-таки поставить 5 крестиков
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:09, 31-10-2009 | #4

Название темы: Крестики-нолики