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

Последний пост:26.11.2023
22
1 54 74 75 76 77 96 114
  • Ну, я в принципе всё написал. Дан стартер, разложи. ПОтом сравним результаты.
    653/741
    Ответить Цитировать
    1
  • БиллиУбили,
    работы и так хватает
    да и стартер не интересный
    Сообщение отредактировал c00l0ne - 11.5.2020, 5:29
    442/882
    Ответить Цитировать
    -1
  • Мдя, новая "беда". Уж коли мы берём максимальные очки из набора в 17 карт...то их можно собрать ограниченными комбинациями = ограниченными вариантами -> значит, и варианты разложения стартера задействуются не все.
    546 LJ }x b
    546 }x LJ b
    0 Jx L} b
    0 }J Lx b
    0 Lx }J b
    0 L} Jx b
    0 Jx b} L
    0 }x bJ L
    0 }J bx L
    0 Jx bL }
    0 }x bL J
    0 }J bL x
    0 Lx bJ }
    0 LJ bx }
    0 Lx b} J
    0 LJ b} x
    0 L} bx J
    0 L} bJ x
    0 bx }J L
    0 bJ }x L
    0 b} Jx L
    0 bx LJ }
    0 bJ Lx }
    0 bx L} J
    0 bJ L} x
    0 b} Lx J
    0 b} LJ x
    0 bL Jx }
    0 bL }x J
    0 bL }J x

    Сейчас запустим цикл на ХХХ кругов, посмотрим, что получится
    654/741
    Ответить Цитировать
    0
  • сорян но второй час в с# откладывается ...

    что значат эти кракозяки
    546 LJ }x b
    443/882
    Ответить Цитировать
    0
  • c00l0ne,
    Цитата (c00l0ne @ 13.5.2020)
    546

    14 очков удалось собрать 39 разными вариантами при данном разложении стартера( 2 карты внизу, 2 в середине, 1 в топе) и данных 12 доп. картах
    655/741
    Ответить Цитировать
    0
  • Мдя...очередной провал. Разложение фантазии на отсортированных списках даёт выигрыш только на фантазиях с очками > 12. Сначала мы тратим время на создание и сортировку списков и только потом выигрываем время на сокращении полного перебора. Если набор(фантазия) никакой, то мы начинаем блуждать вокруг 4-6 очков...и не настолько сокращаем ПП, чтобы компенсировать потери на создание и сортировку списков. Если же увеличивать число карт в наборе(чтобы теоретически увеличить очки), то...в итоговое разложение начинают НЕ попадать карты стартера. В итоге скорость 100ф/5с (практически) на любом кол-ве карт остаётся невостребованной - её негде применить.
    Стартер разложить не удалось. Но теперь у нас есть дерево, попробуем вернуться и решить задачку попроще.
    656/741
    Ответить Цитировать
    0
  • https://forum.gipsyteam.ru/index.php?viewtopic=142685&st=60#entry5978018
    задачка уже обсуждалась, но вот мои соображения.
    Имея незаконченную руку, мы можем (с помощью дерева) посчитать все возможные завершения.
    Предположим, у нас осталось 2 подьёма и существует 1 завершение. Для этого одного завершения подойдут 4 годные(нужные) и 2 ненужные карты. Вероятность достать их за 2 подьёма считается.
    После очередного подьёма вероятность достичь завершения может как увеличиться, так и уменьшиться(в зависимости от кол-ва годных карт, которые мы вытащили в текущем подьёме).
    Если мы не вытащили ни одной годной карты, то вероятность вытащить их за оставшиеся подьёмы равна нулю и мы смело пишем -6(или 0) в графу "итоги".
    Теперь увеличим кол-во возможных завершений. На Nом подьёме у нас возникнет дилемма: пришло 2 годных карты, можно пойти к 2 разным завершениям(либо использовать обе для кого-то одного). Выбор сведётся к очкам за то или иное завершение и вероятности его достичь.
    Вероятность у нас строго зависит от кол-ва годных карт, оставшихся в колоде, её каждый раз считать не надо. Находить все возможные завершения тоже не надо, они найдены уже в начале.
    Если какая-та годная для завершения карта пошла в сброс на Nом подьёме, то это завершение либо полностью удаляется из списка(вероятность =0), либо для неё уменьшается вероятность(годных карт стало меньше).
    Нововведение, которое я планирую использовать, это то, что если не пришла ни одна годная карта для списка завершений, то придётся "уничтожить" завершения, которые на текущий момент приносят меньше всего очков.
    Вот такой план. Критика приветствуется )
    657/741
    Ответить Цитировать
    0
  • БиллиУбили, начни с посл подъёма... 5$ можешь не отправлять
    444/882
    Ответить Цитировать
    0
  • Рассмотрим на конкретном примере, что я имею в виду.
    Пусть у нас одна линия и подьём - это 2 карты(одну обязательно положить, одну обязательно сбросить)
    Имеем и 2 подьёма в запасе.
    Находим завершения. Это (включая ) и стрит
    Тогда имеем следующие опции.
    Пришли 2 карты, но нет бубей и нет ни , ни . Мы можем класть что угодно куда угодно - с очковых завершений мы съехали.
    Пришли - очевидно, кладём . Так как надо сравнить "останется 1 подьём и 1 буба" vs "1 подьём и "
    Пришла и . Тут тоже очевидно: кладём . Останется 1 подьём, всё так же будет нужна буба, но мы не теряем шанс собрать стрит-флаш(больше очков, чем просто флаш)
    Ну и т.д. по рекурсии.
    Функция "найти вероятность вытащить Х годных карт за Y подьёмов" легко считается, как мне кажется.
    658/741
    Ответить Цитировать
    0
  • БиллиУбили, неплохой пример... Но нужно ещё проще, но ближе к реальной игре

    Рекомендую рассмотреть доску такого вида:



    И посчитать ее евшку
    445/882
    Ответить Цитировать
    0
  • c00l0ne, это как бы основы программирования. От простого к сложному.
    В твоей руке 2 линии, до неё доберёмся, когда освоим одну
    659/741
    Ответить Цитировать
    0
  • БиллиУбили, в кой то веке обнову решил скачать на VS изза известной ошибки 0x89710067
    службу коллекторов от микрософт нашел
    c1JAl3ctS0qFCGB1WNbM5Q.png

    агенство феникс)
    10 мин ждать пришлось пока службу закроет
    446/882
    Ответить Цитировать
    0
  • фейл от микрософта , та же ошибка на том же месте :
    2s47s-wVSjatcLtzHRjvsA.png


    щас бы в 2020 отладчик грузить для visual studio и разбираться что там в микрософте криво написали
    447/882
    Ответить Цитировать
    0
  • Цитата (БиллиУбили @ 15.5.2020)
    Пришли - очевидно, кладём .

    А вот и первая неприятность.
    функцию ЕВ(карты в руке, годные карты в колоде, кол-во оставшихся подьёмов) придётся считать с учётом того, что по ходу разложения не все годные карты могут попасть в руку. Часть из них отправится в сброс, значит, со старта придётся считать не только ЕВ(карты в руке, годные карты в колоде, 2) -> ЕВ(карты в руке, годные карты в колоде, 1), но и ЕВ(карты в руке, годные карты в колоде - некоторые, 2) -> ЕВ(карты в руке, годные карты в колоде - некоторые, 1).
    Успокаивает одно. Годных карт в колоде не так уж и много + за один подьём больше 1 карты в сброс не улетает ))

    c00l0ne, у меня для тебя плохие новости. Плохому танцору и яй ноги мешают
    660/741
    Ответить Цитировать
    0
  • Цитата (БиллиУбили @ 15.5.2020)
    меня для тебя плохие новости. Плохому танцору и яй ноги мешают



    БиллиУбили, клоунада одна "че с тебя взять" ...

    просто первое сообщение об этой ошибке им отправлено было
    sljyKos_SRaobBkAGE4-sg.png

    пугает что до сих пор они не поправили .net core
    448/882
    Ответить Цитировать
    0
  • c00l0ne, а чо ты порвался? Полно студий без ошибок. Да и твоё приложение на 99,(9)% ни в какие ошибки не влетает. Иначе бы их давным-давно исправили
    661/741
    Ответить Цитировать
    0
  • БиллиУбили, "порвался " ... я не понимаю тебя ... ты можешь перечитывать 2-3 раза свое сообщение перед тем как отправлять ...
    приложения не влетают в ошибки )
    мои тем более )
    Цитата
    давным - давно исправили
    ... ну не всегда ...
    449/882
    Ответить Цитировать
    0
  • — Я сегодня влетел в ошибку вступил в партию!
    — Вечно ты, Кулон Абрам, куда-то вступаешь!
    662/741
    Ответить Цитировать
    0
  • Цитата (БиллиУбили @ 15.5.2020)
    — Я сегодня влетел в ошибку вступил в партию!
    — Вечно ты, Кулон Абрам, куда-то вступаешь!


    смешные баяны тут :
    https://forum.gipsyteam.ru/index.php?viewtopic=140828&pid=6515837&st=5900#entry6515837
    450/882
    Ответить Цитировать
    0
  • Тут ещё возник такой вопрос: а как определить, какие карты из оставшихся - годные, а какие нет?
    Возьмём, для примера руку . Пока у нас осталось 3 свободных места в боксе - годные карты берутся из флашей и стритов. Там также присутствует , но до этого завершения "руки" не доходят(слишком мало очков по итогу). Теперь представим, что в руку попала . Теперь в топ продолжений попадут
    , , и дальше поедут именно они.
    Конечно, можем, как обычно, упереться в производительность. Но будем надеяться, что чем меньше свободных мест в линии - тем меньше толковых продолжений. Так думаю...
    663/741
    Ответить Цитировать
    0
2261 пост
1 54 74 75 76 77 96 114
1 человек читает эту тему (1 гость):
Зачем регистрироваться на GipsyTeam?
  • Вы сможете оставлять комментарии, оценивать посты, участвовать в дискуссиях и повышать свой уровень игры.
  • Если вы предпочитаете четырехцветную колоду и хотите отключить анимацию аватаров, эти возможности будут в настройках профиля.
  • Вам станут доступны закладки, бекинг и другие удобные инструменты сайта.
  • На каждой странице будет видно, где появились новые посты и комментарии.
  • Если вы зарегистрированы в покер-румах через GipsyTeam, вы получите статистику рейка, бонусные очки для покупок в магазине, эксклюзивные акции и расширенную поддержку.