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

22
Статистика
Статистика
22
Статистика за месяц
  • Популярность
    Топ-166
  • Постов
    0
  • Просмотров
    +833
  • Подписок
    0
  • Карма автора
    0
Лучшие посты автора
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, вы получите статистику рейка, бонусные очки для покупок в магазине, эксклюзивные акции и расширенную поддержку.