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

»  Школа преф мастерства, для новичков Подписаться | Сообщить другу | Версия для печати
      » 7/03/2012, 19:06,  Pochemuk 
extasy ( "7/".$m["мар"]."/2012," 18:33)
Снос бубны = создание вариантов на подсад.

Есть такое дело: {К х х х}d.gif и Тc.gif на третьей руке. Наверное, где-то 3-4% наберется ...

Это сообщение отредактировал Pochemuk - 7/03/2012, 19:30
      » 7/03/2012, 19:12,  extasy 
Pochemuk ( "7/".$m["мар"]."/2012," 19:06)
extasy ( "7/".$m["мар"]."/2012," 18:33)
Снос бубны = создание вариантов на подсад.

Есть такое дело: {К В х х}d.gif и Тc.gif на третьей руке. Наверное, где-то 3-4% наберется ...

4-1 это 27.1%, вдвое меньше, чтобы на нужную руку это 13.55%, К не должен быть бланк это 13.55% * 4/5 = 10.84%, с учетом Т треф на руку с длинной бубной это 10.84 * 6/16 = 4.065%

--------------------
the elephant has you..
      » 7/03/2012, 19:50,  extasy 
У меня вопросы из области психофизиологии. )

Как научится удерживать в памяти одновременно много обьектов (карт), создавая цельный образ без потери концентрации?

Как делаете это Вы? Например, играя распасы, какие этапы концентрации на картах проходит Ваш мозг?

Что сделать, чтобы развить мысленную концентрацию на образах карт?

--------------------
the elephant has you..
      » 8/03/2012, 01:56,  Байкер 
Меф ( "7/".$m["мар"]."/2012," 09:52)
...один из весьма толковых людей в эту игру заметил, что если бы Байкер начал разрабатывать алгоритм в полного разбойника, то ему бы давно  уже не было равных в эту игру, так как полный разбойник  - лобовая игра с существующей и просчитываемой оптимальной стратегией.

Значит, нашелся один "толковый", кто положительно оценил результаты моих занятий алгоритмами преферанса? Редкий случай, ибо обычно я здесь читаю отрицательные отзывы и насмешки.

В разбойник я никогда не играл, но понимаю это дело так: гусарик, в котором по очереди с противником надо сыграть в произвольном порядке все возможные в преферансе игры. Если это так, то одна общая задача разбивается на две более простые задачи:
1. оптимальный выбор контракта,
2. безошибочный розыгрыш контракта.

Поскольку в первой задаче торговли как таковой нет, то ситуация становится похожей на торговлю мизера в обычном питере. Там при этом хоть и сидят с картами два соперника, но они редко вмешиваются в событие своим заказом "9" (порядка 5% случаев, если я правильно помню). А если и вмешались, то уже после того, как мы свою работу по идентификации мизера уже сделали.
Короче говоря, как с мизерами (минимум 95%), так и с разбойником (все 100%) успех определяется ПРАВИЛЬНОЙ оценкой МО результата. Главная сложность в том, что это правильное определение МО должно производится для любого случая и очень быстро - в "рабочих" условиях. Для мизеров это удалось обеспечить. Думаю, реализация и для разбойника и возможна, и не намного сложнее.

Со второй задачей всё гораздо хуже. Именно на ней я остановился в своей работе, ибо понимал, что проблема не проще распасов, распасы с доработками заняли часов 800, значит, тут вся 1000. Поскольку мотивация к тому времени пропала (спортивный преферанс никто делать не собирался), не было смысла тратить эту 1000 часов пусть на исследовательскую, но работу.

Итого. Конечно, алгоритм разбойника создать можно. Без сомнений, он будет играть сильнее любого человека по той простой причине, что он будет учитывать то, что человек учитывать физически не может. Но для этого надо потратить более 1000 часов МОЕГО ТРУДА (моего - я имею в виду подготовленного методически человека. Неподготовленный или провозится дольше, или растеряет "качество" ). С учетом того, что маловероятно, что кто-то выполнит ЭТУ ЖЕ работу быстрее, то определилась и минимальная "цена" успеха: год упорного труда "на совесть" по 3 часа каждый день.
Вот и всё. )

Это сообщение отредактировал Байкер - 8/03/2012, 01:58
      » 8/03/2012, 03:49,  extasy 
Байкер ( "8/".$m["мар"]."/2012," 01:56)


В разбойник я никогда не играл, но понимаю это дело так: гусарик, в котором по очереди с противником надо сыграть в произвольном порядке все возможные в преферансе игры. Если это так, то одна общая задача разбивается на две более простые задачи:
1. оптимальный выбор контракта,
2. безошибочный розыгрыш контракта.


3. Оптимальный снос.

Байкер ( "8/".$m["мар"]."/2012," 01:56)

Главная сложность в том, что это правильное определение МО должно производится для любого случая и очень быстро - в "рабочих" условиях. Для мизеров это удалось обеспечить. Думаю, реализация и для разбойника и возможна, и не намного сложнее.

Думаю сложнее. В гладкой каждая сдача есть независимая единица (формально говоря это не так, но абстрактно можно принять это условие). В разбойнике независимая единица - вся партия, как единое целое (каждая сдача коррелирует с остальными) т.е. 30 сдач (формально 60 сдач, ибо корреляция с играми соперника тоже есть). Т.е. одинаковая карта будет иметь различное МО контрактов в различных партиях.

Байкер ( "8/".$m["мар"]."/2012," 01:56)

Со второй задачей всё гораздо хуже. Именно на ней я остановился в своей работе, ибо понимал, что проблема не проще распасов, распасы с доработками заняли часов 800, значит, тут вся 1000. Поскольку мотивация к тому времени пропала (спортивный преферанс никто делать не собирался), не было смысла тратить эту 1000 часов пусть на исследовательскую, но работу.

А разве вторая задача уже не решена профессором Го? (в некотором смысле оптимальности)

Но оптимальный алгоритм возможен, это исключительно статистическая задача. Полностью оптимальный алгоритм можно синтезировать программными методами полного перебора, при достаточно быстром алгоритме розыгрыша всветлую (наподобии профессора Го) и генераторе на алгоритме Мерсенна. Минус в том, что в каждой сдаче нужен программный обсчет карты для получения среднего значения количества взяток ДО ВЗЯТИЯ ПРИКУПА для каждого контракта (6 позиций: игры на каждой масти, бк и мизер). Т.е. алгоритм зависим от программного обеспечения.

--------------------
the elephant has you..
      » 8/03/2012, 04:43,  Байкер 
Ну, конечно, и снос. Возможно, сказывается незнание специфики разбойника, но мне видится, что проблема №3 - мелкая часть любой из №1 или №2.

"В разбойнике - вся партия, как единое целое (каждая сдача коррелирует с остальными). ...одинаковая карта будет иметь различное МО контрактов в различных партиях."
Это само собой. И я даже знаю, как именно это сделать.
Плюс, в разговоре обо всём этом я исхожу из того, что уже есть (у меня) "просто" алгоритм торговли в питере. Точнее, из этого алгоритма можно взять механизм оценки имеющейся руки и совместить его с отсутствующим (у меня) "вся партия, как единое целое". Так вот, создание этого отсутствующего звена и есть задача не намного сложнее, чем алгоритм мизеров. А возможно, и вообще легче, ибо алгоритм мизеров не так уж и прост, как может показаться. Вообще-то там потребовалось сделать несколько "изобретений". Наверное, это чересчур громко сказано, но там используются вещи и понятия, намека на которые я вообще ни разу не встречал в литературе или тутошней конфе. Хотя не исключен вариант, что кто-то еще прошел тот же путь и просто помалкивает.

"Вторая задача" не решена профессором Го примерно настолько же, насколько им не решена задача оптимального разыгрывания распасов. Если коротко, то контракт должен разыгрываться оптимально и при неизвестном сносе (втемную в разбойнике наверняка не играют?).

"обсчет карты для получения среднего значения количества взяток ДО ВЗЯТИЯ ПРИКУПА", то есть перспективы руки с будущим прикупом - это и есть содержание и назначение моего алгоритма на игру. Для такой оценки (что будет с имеющейся рукой и полученным прикупом) с удовлетворительной точностью совсем не требуется ни полный перебор, ни "Монте-Карло", ни Мерсен.
Впрочем, возможно, что тут я не понимаю, о чём ты завел речь.
      » 8/03/2012, 11:03,  extasy 
Байкер ( "8/".$m["мар"]."/2012," 04:43)
Ну, конечно, и снос. Возможно, сказывается незнание специфики разбойника, но мне видится, что проблема №3 - мелкая часть любой из №1 или №2.

Эти 3 проблемы имеют разную степень влияния на результат.

От большего к меньшему: Заказ, розыгрыш, снос. Точно сказать сложно в %-ном соотношении какой компонент в какой степени влияет, условно: 70-20-10

Байкер ( "8/".$m["мар"]."/2012," 04:43)
"В разбойнике - вся партия, как единое целое (каждая сдача коррелирует с остальными). ...одинаковая карта будет иметь различное МО контрактов в различных партиях."
Это само собой. И я даже знаю, как именно это сделать.

Я вот тоже знаю как это сделать, причем программно. Сколько времени может это занять неизвестно, но явно немало.


Байкер ( "8/".$m["мар"]."/2012," 04:43)
"Вторая задача" не решена профессором Го примерно настолько же, насколько им не решена задача оптимального разыгрывания распасов. Если коротко, то контракт должен разыгрываться оптимально и при неизвестном сносе (втемную в разбойнике наверняка не играют?).

Согласен, ГО не решает проблемы оптимального розыгрыша при неизвестном сносе. Об оптимальности по алгоритму тут сложно говорить. Предположение об оптимальности сноса соперника в разбойнике - наивно.


Байкер ( "8/".$m["мар"]."/2012," 04:43)
"обсчет карты для получения среднего значения количества взяток ДО ВЗЯТИЯ ПРИКУПА", то есть перспективы руки с будущим прикупом - это и есть содержание и назначение моего алгоритма на игру. Для такой оценки (что будет с имеющейся рукой и полученным прикупом) с удовлетворительной точностью совсем не требуется ни полный перебор, ни "Монте-Карло", ни Мерсен.
Впрочем, возможно, что тут я не понимаю, о чём ты завел речь.


Так я расскажу, мне не жалко )
Приходит карта на руку. Нам нужно знать какое количество взяток в среднем будет на каждой масти на бк и на мизере. Для этого для каждого возможного прикупа - 462 штуки - производим розыгрыш всветлую. Генератор на Мерсенне генерирует по 100-200.. случайных рук болвана и соперника. Для каждого из 100-200 раскладов производится розыгрыш всветлую (условием влияния неизвестности сноса пренебрегаем). Далее берем среднее арифметическое - получаем среднее число взяток для каждого прикупа. Далее берем среднее арифметическое - получаем среднее число взяток для нашей карты ДО ПРИКУПА. Точность можно обеспечить любую, зависит от того какими мощностями компьютера мы обладаем. Но хватит точности до десятых.

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

А вообще, твой алгоритм походит на продукцию Apple - полная секретность технологий и непонятно как оно работает) Отличие в том, что эплом все пользуются и довольны, да еще и платят большие деньги )

--------------------
the elephant has you..
      » 8/03/2012, 13:55,  Pochemuk 
Прошу прощения, если влажу не в свою тему: в Разбойника играл лет 10-20 назад. И то только в короткого.

Но, IMHO, человеческая игра настолько далека от оптимальной именно с точки зрения заказа с учетом текущей стойки, что построить оптимальный алгоритм на основе статистики человеческой игры на Гамбе вряд ли возможно.

Другое дело, если его сделать самообучающимся. В нулевом приближении составить набор правил исходя из человеческой игры. Они уже будут несколько лучше среднестатистического игрока. А когда алгоритм наберет достаточное количество собственных сдач/партий, то скорректировать его поведение с учетом их результатов.
      » 8/03/2012, 14:40,  extasy 
Pochemuk ( "8/".$m["мар"]."/2012," 13:55)
Прошу прощения, если влажу не в свою тему: в Разбойника играл лет 10-20 назад. И то только в короткого.

Но, IMHO, человеческая игра настолько далека от оптимальной именно с точки зрения заказа с учетом текущей стойки, что построить оптимальный алгоритм на основе статистики человеческой игры на Гамбе вряд ли возможно.

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

Безусловно, человеческий алгоритм слаб и не подходит для обучения. "Статистика" здесь употребляется в смысле анализа подачи карт на равномерном генераторе. Далее, эта статистика определенным образом формируется в самую важную часть алгоритма. Человеческое участие в этом не требуется.

--------------------
the elephant has you..
      » 8/03/2012, 16:05,  Байкер 
extasy ( "8/".$m["мар"]."/2012," 11:03)
Так я расскажу, мне не жалко )
Приходит карта на руку. Нам нужно знать какое количество взяток в среднем будет на каждой масти на бк и на мизере. Для этого ... Точность можно обеспечить любую, зависит от того какими мощностями компьютера мы обладаем. Но хватит точности до десятых.

А вообще, твой алгоритм походит на продукцию Apple - полная секретность технологий и непонятно как оно работает) Отличие в том, что эплом все пользуются и довольны, да еще и платят большие деньги )

То, что ты рассказал ("Монте-Карло" + Мерсен), извини, очевидно и даже банальность (покерные калькуляторы), которая возможна только при машинной реализации. Жалеть тут и не о чем.
Но на практике начинаются "подводные камни" и в этом "простом" и внешне естественном случае. В частности, потребуется порядка 15 секунд на ввод "руки", ее "географии" и предыдущих заявок оппонентов, если рука не первая. Далее порядка 20 секунд (если не больше) на расчеты с требуемой точностью. В случае конкурентной торговли необходимо запускать расчет еще раз, ибо заявки оппов не что иное, как важные "новые данные". Иногда запускать перерасчет придется несколько раз. В принципе, терпимо, хотя уже на грани критерия "реальное время", ибо, на практике и в наихудшем случае надо укладывать всю торговлю хотя бы в минуту своих "раздумий". Иначе это "некорректно" по отношению к партнерам, так как в "ТЗ" должен быть заложен принцип: "определяй своё решение как хочешь, но игру не тормози".
Всё это мне было ясно с самого начала, плюс то, что я не программист (хотя закупил в свое время и соответствующее ПО, и литературу по "ВижуалБейсик" ), поэтому в итоге я пошел другим путем и создал систему классификации рук, которая позволяет силами Экселя находить оценку МО (решение) при торговле в пределах 20 секунд на всё про всё. Точность не хуже +/-0,03 взятки в типовых случаях и порядка +/-0,2...0,5 на краях. Хотя и крупно прокололся с этим делом в тутошней дискуссии с вариантом В987+ТКДВ1+*+_ и козырем В987.

Вот такие рассуждения и рассказ. То есть технологии в моих алгоритмах простейшие, просто они "правильно" применены. Всё в них начинается с вопроса "О чём задача?", которому учат в начальной школе. Продолжается внимательным рассмотрением: что именно является исходными данными для поставленной задачи. Образно говоря, какой-то аспект преферанса, те же мизера, раскладывается "на атомы", потом атомы собираются в молекулы (чем обеспечивается практическая реализация) и для них вводится новая терминология (те же типы дырок в "мизерах" ). Ну, а поняв, как эти атомы и молекулы "соединяются", уже не трудно получить вещество с заданными свойствами. Но никакой "химии" и "алхимии" - всё в рамках статистики и арифметики. Вы будете смеяться, ибо это реально смешно, но я до сих пор вероятности считать не умею, ибо в преферансе это НЕ НУЖНО. Например, в тех же мизерах НЕ НУЖНО знать, с какой вероятностью ловится каждая дырка. Ибо задача "была" о количестве взяток, и нам важно знать, сколько таковых дает каждая дырка. А это совершенно разные вещи, хотя вероятность отлова любого мизера хотя бы на одну взятку алгоритм тоже исчисляет.
Вот такие дела и парадоксы. То есть алгоритм создается совсем не на основе "человеческой игры на Гамбе" - откуда берется такой вывод, непонятно? Но и раскрывать, чем именно отличаются дырки 79ДК и 79ДТ (это совершенно разные дырки, а, например, 8 и 79ДК - совершенно "одинаковые" ) - зачем это? Я именно пользуюсь своим "эпплом" и доволен им. А если кто-то хочет сказать, что он сможет "ловчее" алгоритма выторговывать мизера - вперед, говорите, только это нетрудно проверить: хоть столкнуться "лоб в лоб", хоть пройтись по архиву... )
« Предыдущая тема | Перечень тем | Следующая тема »
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей: