Здравствуйте, гость Правила · Помощь

»  Описание алгоритма игры в преферанс Подписаться | Сообщить другу | Версия для печати
      » 1/12/2003, 15:31,  feal 
Привет!

Вот выложил в сети мое видение алгоритма игры в преферанс
http://kpref.boom.ru/algor/
Там еще много - нет, но основные концепции рассмотрены.
Будет инетересно Ваше мнение.

Данное описание разрабатывается как часть проекта "Русский преферанс".
Проект игры для Linux и Windows с открытыми исходниками (лицензия GPL). http://sourceforge.net/projects/rupref/

P.S. Любой желающий может присоединиться к проекту (пишите на feal@pbank.if.ua).
      » 1/12/2003, 16:39,  Добряк 
Использование http://www.review.Pref.ru/help/slovar.html избавит Вас от многих трудностей и ошибок. В частности, термины:

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

Ход - Первая карта, сыгранная во взятку.

Ходить с руки - Переместить из руки на центральную часть стола не первую карту взятки. Аналогичный термин бриджа — ходить во взятку.

Первая рука - Карты в руке игрока, сидящего по часовой стрелке сразу за сдающим; также игрок, имеющий эти карты.

Третья рука - Также — последняя рука. Карты в руке игрока, сидящего по часовой стрелке за игроком второй руки; также игрок, имеющий эти карты.

и т.д.
      » 1/12/2003, 23:34,  Mazer 
2. Мизер.


Применяется алгоритм игры в “открытую”, с параметром gametype = -1 (тип игры).


Мне кажется (хотя я и не удосужился просмотреть gametype = 1 полностью) что компьютер при таком выходе никгда не даст паровоз. То есть "свои" отбирать не будет.
      » 2/12/2003, 00:51,  Байкер 
Насколько я понял, это начальный этап попытки решить задачу в лоб (перебором). Теоретически, конечно, возможно, но в обозримом будущем навряд ли: в реальном времени не потянет, никто из гипотетических партнеров-людей не захочет столько ждать... Да и просто не очень целесообразно заставлять процессор каждый раз перебирать одни и те же очевидные вещи. Я лично пошел другим путем: не от "математики", а от преферанса. Каждый раз компу будет максимум на полсекунды работы, но зато сейчас работы по горло мне самому. ))
Однако, желаю успехов. ))
      » 2/12/2003, 04:04,  Олежек 
Фил...
Есть подозрение,что это студенческая работа.
Тогда слава тебе,успехов в жизни ,ну и всего такого...
Реально это труднее ,чем дипломная работа.
Я даже думаю,что это не кандидатская,а скорее докторская степень.
Если ты не чуешь себя на уровне доктора- бросай. То есть,диплом конечно защищай,если хочешь могу стать "научным оппонентом", только отзыв ,сам знаешь -писать тебе самому:))
==============================
Вообще говоря,преф есть гибрид шахмат и покера. Я думаю,что хороший алгоритм мы сделаем легко. На порядок легче,нет наверное на два порядка легче ,чем шахматный. Дальше идет карточная составляющая.
Тут,проблема "психологии"(только тихо,это ведь все время говорит Сашун...тсс),надо продумать перемену стратегии в зависимости от индивидуальных особенностей партнеров. Это мы тоже сделаем легко.
Эти чудики убеждены,что два соперника -это много,а три -это ваще мрак! Они компа живого не видели...
      » 2/12/2003, 04:09,  Добряк 
Информация для разработчика и для Байкера.

В етом "алгоритме перебора" нету ГЛАВНОГО В ПРЕФЕРАНСЕ. В нем нету КРИТЕРИЕВ отбора вариантов среди тех, которые разработчик считает ОДИНАКОВЫМИ.
Опытный преферансист среди МНОГИХ вариантов с ОДИНАКОВЫМ конечным результатом (при ПРАВИЛЬНОЙ игре оппонентов) выберет такой, где ВЕРОЯТНОСТЬ ОШИБКИ оппонентов ВЫШЕ.

Пример.
Первая рука "ТКДВ109, ТКД7, нет, нет". Правильный заказ - "9 треф".

Требование к КЛАССНОМУ алгоритму - наличие в нем "знания слабостей партнеров" и выбора вариантов С УЧЕТОМ этих слабостей.

Пример.
Вторая рука "ТКхх, КДВх, Тх, хх".
В пуле с СИЛЬНЫМИ партнерами можно (часто имеет смысл) оставить "ТКхх, КДВх, Т, х" и заказать козырем ТРЕФУ.
В пуле со слабыми или НОВЫМИ партнерами нужно оставить "ТКхх, КДВх, Тх" и заказать "6 пик".
      » 2/12/2003, 11:18,  simpleton 
популярно о шахматных алгоритмах написано, например, здесь.

Прошу обратить внимание на печальную историю некоего Б.

Я думаю,что хороший алгоритм мы сделаем легко. На порядок легче,нет наверное на два порядка легче ,чем шахматный.

Олежек, поясните, пожалуйста, эту фразу. Это означает, что преферансный алгоритм будет на два порядка "легче" чем шахматный? Да? Тогда непонятно, что значит "легче". Если имеются в виду вычислительные ресурсы, тогда да, легче и может быть даже не на два порядка. А если имеется в виду простота/сложность, то едва ли.
      » 2/12/2003, 13:18,  simpleton 
Если кто не понял, то, относительно данного топика, ключевым моментом в приведенной мной статье является:

"Программисты любят быстрые программы - хотя бы потому, что можно написать быструю программу, не будучи сильным шахматистом. Эта программа будет играть очень неплохо, во всяком случае, она сумеет обыграть своего автора, равно как и 99% игроков на Земле."

Это означает то, что компьютер достаточно легко "научить" сносно играть в шахматы. Прилично играть в преферанс компьютер "научить" сложнее. Если взять всем известную программу "Марьяж", то видно, что при розыгрыше всветлую программа играет безупречно, но это потому, что прирозыгрыше всветлую преферанс сводится "к игре двух лиц" и работает пресловутый минимакс (перебор). В остальных же компонентах игры "Марьяж" действует далеко не безупречно, особенно это заметно на распасах. За счет этих распасов даже такой слабый игрок как я (с правилами преферанса я познакомился около года назад) может регулярно обыгравать "Марьяж" в ленинградку.
      » 2/12/2003, 13:45,  feal 
01 Дек 2003 20:34 Mazer сказал:
-------------------------------
2. Мизер.

Применяется алгоритм игры в “открытую”, с параметром gametype = -1 (тип игры).

Мне кажется (хотя я и не удосужился просмотреть gametype = 1 полностью) что компьютер при таком выходе никгда не даст паровоз. То есть "свои" отбирать не будет.


Пока я рассмотрел только ситуацию - когда компьютер заказал мизер.
над ловлей мизера еще подумать надо, там действительно не все так просто...
      » 2/12/2003, 13:57,  feal 
01 Дек 2003 21:51 Байкер сказал:
-------------------------------
Насколько я понял, это начальный этап попытки решить задачу в лоб (перебором). Теоретически, конечно, возможно, но в обозримом будущем навряд ли: в реальном времени не потянет, никто из гипотетических партнеров-людей не захочет столько ждать... Да и просто не очень целесообразно заставлять процессор каждый раз перебирать одни и те же очевидные вещи. Я лично пошел другим путем: не от "математики", а от преферанса. Каждый раз компу будет максимум на полсекунды работы, но зато сейчас работы по горло мне самому. ))
Однако, желаю успехов. ))


Видимо тут речь идет о реализации правил игры в преферанс?
Я думаю тоже сделать что-то подобное, НО - вместе с перебором.
У меня уже есть что-то подобное при выборе игры, а именно - "Библиотека дебютов".
« Предыдущая тема | Перечень тем | Следующая тема »
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей: