Пилю программку по обсчёту китайского покера

Последний пост:26.11.2023
22
1 41 61 62 63 64 83 114
  • Цитата (БиллиУбили @ 13.2.2020)
    1. Имеет стартер, 5 карт.
    2. Добавляем 12 карт.
    3. Раскадываем фантазию = находим макс. кол-во очков(ПЕРВОЕ) = разложение стартера.
    Например, 3/14/25, где цифры - номер карты из стартера, / обозначает боксы.
    4. Добавляем к этому разложению стартера (3/14/25) очки, которые он "собрал". Например, 14
    5. Повторяем п.п. 2-4, для других 12 карт
    В итоге разные разложения стартера у нас "набирают" разные очки.
    Проблемы, с которыми я столкнулся, я изложил


    этот алгоритм не решает стартер ...
    чтобы раскладывать стартер алгоритм фантазии надо полностью понять ...

    дальше будет сложнее в экспоненте)
    360/882
    Ответить Цитировать
    0
  • Цитата (c00l0ne @ 13.2.2020)
    логично пару условий сделать чтобы искать комбы только младше наверх ...

    То есть, ты в 12-17 картах флаш ищешь одним алгоритмом, а трипс - другим?
    Поздравляю, у меня все комбинации ищутся поиском по дереву. Я - не расист
    503/741
    Ответить Цитировать
    0
  • Цитата (c00l0ne @ 13.2.2020)
    этот алгоритм не решает стартер ...

    ты СКОЗАЛ? хотелось бы обоснование
    504/741
    Ответить Цитировать
    0
  • Цитата (c00l0ne @ 13.2.2020)
    чтобы раскладывать стартер алгоритм фантазии надо полностью понять ...

    давай, расскажи нам алгоритм фантазии. Как ты его понимаешь? Не класть комбинации старше выше комбинаций младше? Что ещё?
    505/741
    Ответить Цитировать
    0
  • 2 ALL
    Пока c00l0ne перезагружается... Напишите, как сделали бы вы
    Вот алгоримт разложения стартера #1215
    Вот проблемы, с которыми я столкнулся:
    1. Если конкретные 17(5+12) карт дали одно и тоже кол-во очков (например, 8 = фулхас и стрейт и 8 = 2 флаша) для одного(!) стартера, какое разложение записывать??
    2. Что делать, если конкретные 17(5+12) карт всплыл флаш, но к нему есть ещё одномастная. Что же получается, записывать этому разложения стартера в 5 раз больше очков? (5 = мы можем в найденном флаше заменить одну карту на одномастную)?
    506/741
    Ответить Цитировать
    0
  • Цитата (БиллиУбили @ 13.2.2020)
    ты СКОЗАЛ? хотелось бы обоснование


    этот алгоритм ищет максимальное роялти для каждой рандомной сдачи ... т.е. банально раскладывает фантазии с прикрепленными 5ю картами ...

    чтобы решить стартер тебе придется немного усложнить алгоритм ...
    для этого нужно взять 5 карт , записать их все варианты расстановки ,
    далее взять 12 карт
    и с условием что 2 обязательно нужно поставить на доску и 1 в пас отправить ( это правила игры )
    тебе необходимо раскладывать фантазии для каждой сдачи для каждого варианта постановки этих 2х карт ...

    допустим стартер КК ДД А
    1. вариант
    ДД
    КК
    А

    2. вариант
    А
    ДД
    КК

    и т.д.

    первая сдача
    А23


    далее ты должен генерировать новые варианты

    ДД
    КК
    АА2

    ДД
    КК
    АА3

    ДД
    КК
    А23
    ну и совсем дурацкие

    ДДА
    КК
    А2

    ДД
    ККА
    А3

    и тд.д.

    и для каждого раскладывать фантазии записывая роялти в тот или иной вариант ...
    в соответствующий вариант и его вычеркивая как только он станет ниже топов ...на приемлимой дистанции...

    именно такой рост вариантов и требует суперкомпьютер для вычисления решения для китайского ...

    это метод монте карло с извращенным деревом получается ... которое нафик не нужно по идее... массива HR или просто массива 52^5 хватит

    и только оббежав все узлы решения ты можешь вернуться к начальным вариантам стартера и записать ВЕС) а потом сравнить и найти максимальный...
    361/882
    Ответить Цитировать
    0
  • Цитата (c00l0ne @ 13.2.2020)
    первая сдача
    А23

    зачем? Я сразу раскладываю 12 карт, которые ко мне придут. Да, они могут лечь немного не по подьёмам...но общий вектор будет понятен

    Цитата (c00l0ne @ 13.2.2020)
    и только оббежав все узлы решения ты можешь вернуться к начальным вариантам стартера и записать ВЕС) а потом сравнить и найти максимальный...

    я предполагаю, что моё разложение будет не сильно отличаться от данного
    507/741
    Ответить Цитировать
    0
  • Цитата (БиллиУбили @ 13.2.2020)
    Вот проблемы, с которыми я столкнулся:

    Мля, это одна и та же проблема. Просто во втором пункте флаш меняется на флаш*( итоговое кол-во очков за фантазию не меняется, как и пункте №1). Ну, так что, плюсовать все 5 вариантов?
    508/741
    Ответить Цитировать
    0
  • Цитата (БиллиУбили @ 13.2.2020)
    зачем? Я сразу раскладываю 12 карт, которые ко мне придут. Да, они могут лечь немного не по подьёмам...но общий вектор будет понятен

    софт будет решать задачу :
    Цитата (c00l0ne @ 13.2.2020)
    этот алгоритм ищет максимальное роялти для каждой рандомной сдачи ... т.е. банально раскладывает фантазии с прикрепленными 5ю картами ...


    а мы решаем задачу "какой вариант стартера дает максимально прибыльный ход раздачи" ....
    это немного разные задачи ... согласись... а тот вектор правильный будет содержать в себе огромную ошибку , на примере программы Жака мы это увидели ...

    сорян за разбитые мечты)
    362/882
    Ответить Цитировать
    0
  • Цитата (c00l0ne @ 13.2.2020)
    этот алгоритм ищет максимальное роялти для каждой рандомной сдачи ... т.е. банально раскладывает фантазии с прикрепленными 5ю картами ...

    Нет. Максимальное роялити он искал бы для 52 карт(кстати, решается за 0,001с). А мы ищем для 12 конкретных. И делаем 1кк прогонов(разных 12 карт)
    Цитата (c00l0ne @ 13.2.2020)
    примере программы Жака мы это увидели ...

    не знаком с его алгоритмом, не могу отвечать, что он там считает...
    509/741
    Ответить Цитировать
    0
  • Цитата (БиллиУбили @ 13.2.2020)
    Нет. Максимальное роялити он искал бы для 52 карт. А мы ищем для 12 конкретных. И делаем 1кк прогонов(разных 12 карт)


    и получаем 1 млн разложений ... фантазий по максимуму ... и надеемся что в топ накидает топовое разложение которое даст ответ на другую задачу ...
    оно конечно даст ответ ...
    сделай как Жак тебе советует 5+8
    363/882
    Ответить Цитировать
    0
  • Цитата (c00l0ne @ 13.2.2020)
    разложение которое даст ответ на другую задачу ...

    на какую другую? 1кк прогонов и есть закамуфлированное построение дерева решений с присвоением веса каждому узлу.
    Цитата (c00l0ne @ 13.2.2020)
    сделай как жак тебе советует 5+8

    Что делать с #1228?
    510/741
    Ответить Цитировать
    0
  • Цитата (БиллиУбили @ 13.2.2020)
    на какую другую? 1кк прогонов и есть закамуфлированное построение дерева решений с присвоением веса каждому узлу.

    Что делать с #1228?


    составить примитивное дерево решений для записи результатов ...
    в узлы записывай результаты , в узлы выше записывай макс(от узлов ниже ранга) ...
    я слабо понял какой флеш меняется на другой флеш , конкретный пример нужен
    364/882
    Ответить Цитировать
    0
  • Цитата (c00l0ne @ 13.2.2020)
    я слабо понял какой флеш меняется на другой флеш

    стартер
    итоговая фанта на 17 картах дала 4очка макс(предположим, условный пример)



    (в сбросе постоянно мелькает )
    Что делать, если в 12 картах не 2 буби пришло, а 3? а 5? (и всё-равно больше флаша/4 очков набрать не удалось)
    Какой вес давать разложению х/х/ ?
    511/741
    Ответить Цитировать
    0
  • Так, система крашнулась...будем надеяться, что это хорошая примета.
    Отдохнём и мы. Музыкальная пауза


    512/741
    Ответить Цитировать
    0
  • Цитата (БиллиУбили @ 13.2.2020)
    стартер
    итоговая фанта на 17 картах дала 4очка макс(предположим, условный пример)



    (в сбросе постоянно мелькает )
    Что делать, если в 12 картах не 2 буби пришло, а 3? а 5? (и всё-равно больше флаша/4 очков набрать не удалось)
    Какой вес давать разложению х/х/ ?


    для этого нужно строить дерево решений ...
    оно будет оч сложное ... но не сложнее паравоза но потно кодить придется ...
    дерево будет состоять из трех лайнов потому что не только тебе флеш интересен , тебе второй бокс интересен и верхний ...

    для этого надо записать в ROOT

    три параметра
    param(1) = Aчерв
    param(2) = 9крест
    param(3) = 56Jбуб

    далее бахать узлы расширяя своими рандомными генерациями
    , пришло во второй сдаче буба
    пишешь добавляя узел

    param(1) = Ачерв
    param(2)= 9крест
    param(3) = 56Jxбуб

    и другие узлы появятся

    param(1) = АчервХбуб
    param(2) = -=-
    param(3) = 56Jбуб и т.д.
    дерево огромное будет , но тебе получится собрать в 0 уровень достаточно точное решение... в стартер т.е.

    посмотри как гуглоиды в AlphaGoZero ГО решали, там есть дерево монте карло и как с ним работать
    вот немного про MCTS монте карло три серч(поиск по дереву монте карло )


    Ты приблизительно тоже самое делаешь ... бахаешь симуляции раздач ... оценочная функция у тебя это разбор вот фантазии ну грубо говоря макс роялти с набора карт ... и записываешь в ноды разные ... полученные результаты , а потом в нулевых нодах смотришь насколько хорошо функция оценила тот или иной вариант ... смотришь вес )
    Сообщение отредактировал c00l0ne - 13.2.2020, 11:20
    365/882
    Ответить Цитировать
    0
  • Цитата (c00l0ne @ 13.2.2020)
    для этого нужно строить дерево решений ...

    Цитата (c00l0ne @ 13.2.2020)
    пришло во второй сдаче буба

    опять дерево...и опять шаг-за-шагом...
    Надо понять, как трактовать перевыполнение требования к будущим картам. Жирно мне кажется записывать дополнительно С(7,5)*4 вместо 4 "очков"...
    513/741
    Ответить Цитировать
    0
  • Цитата
    опять дерево...и опять шаг-за-шагом...
    Надо понять, как трактовать перевыполнение требования к будущим картам. Жирно мне кажется записывать дополнительно С(7,5)*4 вместо 4 "очков"...


    ты видимо не понимаешь что без этого никак ...
    я тебе по секрету скажу за тебя давно все алгоритмы сделали и они есть в паблике в сети ... тебе просто надо собрать все в одном месте и применить для конкретных входных данных ...
    366/882
    Ответить Цитировать
    0
  • Цитата (c00l0ne @ 13.2.2020)
    за тебя давно все алгоритмы сделали

    какие алгоритмы-то?

    Цитата (c00l0ne @ 13.2.2020)
    ты видимо не понимаешь что без этого никак ...

    Нет, видимо ты не понимаешь, что решение может быть приближённым
    514/741
    Ответить Цитировать
    0
  • Цитата (БиллиУбили @ 13.2.2020)
    какие алгоритмы-то?


    во лол гуглить не научили ?
    https://www.youtube.com/watch?v=Fbs4lnGLS8M

    PO3q711TRCaf8bvEEMGvpQ.png


    мы не можем перебрать все варианты в нодах , мы добавляем только самые интересные для нас ... все остальные сваливаем в кучу)
    367/882
    Ответить Цитировать
    0
1 41 61 62 63 64 83 114
1 человек читает эту тему (1 гость):
Зачем регистрироваться на GipsyTeam?
  • Вы сможете оставлять комментарии, оценивать посты, участвовать в дискуссиях и повышать свой уровень игры.
  • Если вы предпочитаете четырехцветную колоду и хотите отключить анимацию аватаров, эти возможности будут в настройках профиля.
  • Вам станут доступны закладки, бекинг и другие удобные инструменты сайта.
  • На каждой странице будет видно, где появились новые посты и комментарии.
  • Если вы зарегистрированы в покер-румах через GipsyTeam, вы получите статистику рейка, бонусные очки для покупок в магазине, эксклюзивные акции и расширенную поддержку.s