Сразу оговорюсь, что я в покер не играю, и знаю его хуже чем те, кто играет свои первые партии в жизни. Но может это не так уж и важно?
Нет, это важно, если вы хотите какую-то ценность вашей программы. Как я понял, у вас получилось что-то типа покерного калькулятора. Среди покерного софта это самое базовое. Вы можете посмотреть уже готовые реализации, например FlopZilla или Equilab, уверен, есть и другие, но это самые распространенные.
Есть софт по сбору статистики на основе открытых раздач: HoldemManager, PokerTracker, Hand 2 Note и др.
Если хотите посмотреть на реализацию тех самых деревьев действий - загуглите "poker solover", есть триалы, но они сложные для понимания даже для игроков с неким опытом.
Этими программами пользуются для корректировок своей своей стратегии и работы над игрой, на это не панацея, хоть и игра по соловеру будет прибыльной.
Тут нужно немного погрузиться в теорию покера: сейчас существует 2 (мне известные) прибыльные стратегии: Эксплоит (эксплуатирующая) и GTO. По первой - мы анализируем игры оппонента, ищем в ней ошибки и используем их себе во благо, по второй - мы делаем свою игру максимально не эксплуатируемой. Для надежности первой нам нужно иметь базу раздач на оппонента, чем больше база - тем больше будет вероятность правильности наших действий. Поэтому, строить какой-то выигрывающий софт лучше по GTO стратегии. Наверно глупо будет описывать тут всю покерную математику, просто скажу, что она сложнее, чем вы себе представляете в этой статье.
ко мне с вопросом, как сделать программу, которая будет выигрывать в покер
не совсем понятно, что хотели получить на выходе, но мне кажется, что бота для онлайн игры. Тут нужно будет анализировать конкретный покерный рум (сайт), его системы безопасности и алгоритмы поиска ботов, а они есть на всех нормальных румах. Вам нужно будет рандомизировать время принятия решений, эмулировать движение мышкой и кучу всего интересного. И с очень большой вероятностью ваш аккаунт все равно забанят, с конфискацией средств.
Если же заказ был для офлайн покера, (типа подсказка в наушники, профессор лопух), то тут все сложнее. Не одна программа и не одна стратегия не может гарантировать выигрыш за живым столом из-за его короткой продолжительности. В мире покера очень плотно зашло понятие математической дисперсии. Кто не знает и лень гуглить, на пальцах: в близких к идеальным условиях выпадение решки или орла 50 на 50. И так и будет, на 1кк бросков мы получим ~500к на ~500к. На 1к числа близкие к 500. Но, на 10 бросков мы можем получить перекос 10 к 0. Так же в покере, в ситуации, где у оппонента 2% (округленная вероятность выпадения одной карты) а у вас 98% любой софт будет советовать вкидывать в такие банки максимум фишек. Но, у соперника все же есть вероятность победы. В общем, та самая доля везения. Ни одна стратегия не будет хорошо работать на короткое количество раздач.
По поводу легальности в покер румах: боты под запретом везде. Калькуляторы и соловеры нельзя использовать во время игры (клиент это отслеживает). Сбор статистики сейчас разрешен на некоторых румах, например, самый крупный - PokerStars, но с оговорками для самих программ, иногда они вынуждены подстраиваться под правила румов и урезать часть функционала в апдейта. Но, в целом, тенденция запрещать любой софт уже пару лет как набирает обороты.
Эта ниша сейчас имеет много сильных решений, занявших рынок и укрепившихся на нем. Это большие деньги (аудитория не бедная) и серьезные команды, которые хорошо понимают покерную математику и тенденции игры. При всем уважении, разработчик - одиночка без опыта игры с пет-проектом ничего не сможет предложить рынку. Если у вас научный интерес - посмотрите программы в спойлере, если вы хотите сделать крутого бота - как подсказал комментатор выше - смотрите в сторону нейронок, но, в игре его едва ли удастся использовать (повторю, это не легально, но, как поговаривают, боты водятся). Удачи!
ps Волшебных палочек в нашей жизни практически нет, а если и есть, то стоят они дорого. Посоветуйте вашему заказчику найти покерного тренера. Неделя тренировок за $500-$1000 помогут ему уверенно обыгрывать большинство катранов ;)
pps Я сознательно не рассматривал моральную сторону ботоводства, мы тут все же про технические реализации.
ppps Прошу прощения за такой длинный комментарий, просто тема для меня инересная.
В спойлере нудный текст
Нет, это важно, если вы хотите какую-то ценность вашей программы.
Как я понял, у вас получилось что-то типа покерного калькулятора. Среди покерного софта это самое базовое. Вы можете посмотреть уже готовые реализации, например FlopZilla или Equilab, уверен, есть и другие, но это самые распространенные.
Есть софт по сбору статистики на основе открытых раздач: HoldemManager, PokerTracker, Hand 2 Note и др.
Если хотите посмотреть на реализацию тех самых деревьев действий - загуглите "poker solover", есть триалы, но они сложные для понимания даже для игроков с неким опытом.
Этими программами пользуются для корректировок своей своей стратегии и работы над игрой, на это не панацея, хоть и игра по соловеру будет прибыльной.
Тут нужно немного погрузиться в теорию покера: сейчас существует 2 (мне известные) прибыльные стратегии: Эксплоит (эксплуатирующая) и GTO. По первой - мы анализируем игры оппонента, ищем в ней ошибки и используем их себе во благо, по второй - мы делаем свою игру максимально не эксплуатируемой. Для надежности первой нам нужно иметь базу раздач на оппонента, чем больше база - тем больше будет вероятность правильности наших действий. Поэтому, строить какой-то выигрывающий софт лучше по GTO стратегии. Наверно глупо будет описывать тут всю покерную математику, просто скажу, что она сложнее, чем вы себе представляете в этой статье.
не совсем понятно, что хотели получить на выходе, но мне кажется, что бота для онлайн игры. Тут нужно будет анализировать конкретный покерный рум (сайт), его системы безопасности и алгоритмы поиска ботов, а они есть на всех нормальных румах. Вам нужно будет рандомизировать время принятия решений, эмулировать движение мышкой и кучу всего интересного. И с очень большой вероятностью ваш аккаунт все равно забанят, с конфискацией средств.
Если же заказ был для офлайн покера, (типа подсказка в наушники, профессор лопух), то тут все сложнее. Не одна программа и не одна стратегия не может гарантировать выигрыш за живым столом из-за его короткой продолжительности. В мире покера очень плотно зашло понятие математической дисперсии. Кто не знает и лень гуглить, на пальцах: в близких к идеальным условиях выпадение решки или орла 50 на 50. И так и будет, на 1кк бросков мы получим ~500к на ~500к. На 1к числа близкие к 500. Но, на 10 бросков мы можем получить перекос 10 к 0. Так же в покере, в ситуации, где у оппонента 2% (округленная вероятность выпадения одной карты) а у вас 98% любой софт будет советовать вкидывать в такие банки максимум фишек. Но, у соперника все же есть вероятность победы. В общем, та самая доля везения. Ни одна стратегия не будет хорошо работать на короткое количество раздач.
По поводу легальности в покер румах: боты под запретом везде. Калькуляторы и соловеры нельзя использовать во время игры (клиент это отслеживает). Сбор статистики сейчас разрешен на некоторых румах, например, самый крупный - PokerStars, но с оговорками для самих программ, иногда они вынуждены подстраиваться под правила румов и урезать часть функционала в апдейта. Но, в целом, тенденция запрещать любой софт уже пару лет как набирает обороты.
Эта ниша сейчас имеет много сильных решений, занявших рынок и укрепившихся на нем. Это большие деньги (аудитория не бедная) и серьезные команды, которые хорошо понимают покерную математику и тенденции игры. При всем уважении, разработчик - одиночка без опыта игры с пет-проектом ничего не сможет предложить рынку. Если у вас научный интерес - посмотрите программы в спойлере, если вы хотите сделать крутого бота - как подсказал комментатор выше - смотрите в сторону нейронок, но, в игре его едва ли удастся использовать (повторю, это не легально, но, как поговаривают, боты водятся). Удачи!
ps Волшебных палочек в нашей жизни практически нет, а если и есть, то стоят они дорого. Посоветуйте вашему заказчику найти покерного тренера. Неделя тренировок за $500-$1000 помогут ему уверенно обыгрывать большинство катранов ;)
pps Я сознательно не рассматривал моральную сторону ботоводства, мы тут все же про технические реализации.
ppps Прошу прощения за такой длинный комментарий, просто тема для меня инересная.