Можно ли выиграть в азартные игры? Симуляция на языке Python +26



Привет, Geektimes.

В процессе праздного ничегонеделания возникла идея поизучать разные азартные игры, заодно получше разобраться с тем как это работает. Результаты оказались хотя и в целом очевидными, но достаточно интересными, чтобы поделиться ими с общественностью.



Кому интересны подробности, прошу под кат.

Игральные кости: игра крэпс


Самый наверное, интуитивно простой и понятный вариант — есть кубик с метками от 1 до 6, и вероятность выпадения того или иного числа равна 1/6. Но играть таким способом было бы скучно, поэтому популярны игры с более сложными правилами. Популярной азартной игрой является крэпс, на рисунке выше приведена картинка игрового стола. Как можно видеть, там много всего, но мы не будем вдаваться в глубокие тонкости.

Каждый ход игры состоит из бросания двух кубиков, набранные очки суммируются. Как написано в статье, “Правила игры незамысловаты: игрок кидает две кости, и, если сумма очков на них равна 7 или 11, он выигрывает, если 2, 3 или 12 — проигрывает. Когда на кубиках выпадает другая сумма, шутер бросает их до выигрышной или проигрышной комбинаций”.

Посмотрим, сколько можно выиграть таким способом. Для этого необязательно идти в казино, для симуляции игры воспользуемся Python. Напишем функцию для одного броска:

import random

def shoot():
    return random.randint(1,6) + random.randint(1,6)

Напишем функцию симуляции одного хода по вышеописанным правилам.

def move():
    while True:
        val = shoot()
        print "Dice roll:", val
        if val == 7 or val == 11:
            return True
        if val == 2 or val == 3 or val == 12:
            return False

Зададим нашему виртуальному игроку начальную сумму в 100 у.е., и запустим процесс игры. Пусть наш игрок сделает 100 ставок, каждый раз по 1у.е.

money_total = 100
win = 0
loss = 0
for p in range(100):
    bet = 1
    step = move()
    if step is True:
        money_total += bet
        win += 1
    else:
        money_total -= bet
        loss += 1
print "Win", win, "Loss", loss, "Money", money_total

Запускаем симуляцию 100 игр и удивляемся результату, игрок выиграл, причем с заметным отрывом побед от поражений: Win 63, Loss 37, Money 126. Увеличиваем число игр до 1000 и запускаем еще раз, игрок опять выиграл: Win 680, Loss 320, Money 460.

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

Интуитивно кажется, что при бросании кубика вероятность выпадения любой грани равновероятна. И это действительно так, но в случае одного кубика. Если кубиков два, то все становится сложнее. К примеру, число 7 может выпасть как 3+4, 2+5, 1+6, а вот число 12 может выпасть только в виде комбинации 6+6.

Построим в Jupyter notebook график выпадения сумм от 1 до 12 для 100 бросков:

from matplotlib import pyplot as plt
%matplotlib inline
y = [ shoot() for v in range(100) ]
plt.hist(y)



Предположение подтвердилось, и суммы из центра действительно выпадают чаще. Таким образом, числа 7 и 11 действительно выпадают чаще чем 2,3 или 12. И вероятность получить выигрышную комбинацию “7 или 11” действительно выше.

Как такое может быть? Увы, ответ прост — автор процитированной выше статьи просто не разобрался досконально в правилах игры. Текст “правила игры незамысловаты: игрок кидает две кости, и, если сумма очков на них равна 7 или 11, он выигрывает, если 2, 3 или 12 — проигрывает” весьма далек от правды, и правила в крэпс совсем не так незамысловаты как кажутся.

Реальные правила для ставки на pass line оказались несколько сложнее (есть и другие виды ставок, желающие могут разобраться самостоятельно).

Ход-1: Делается бросок. Если выпадает 7 или 11, игрок выигрывает, если 2, 3 или 12, игрок проигрывает. Если выпадает другое число, оно запоминается под названием point.

Ход-2: Делается бросок. Если выпадает 7, то игрок проиграл. Если выпадает point то игрок выиграл. Если выпадают другие числа, ход повторяется (в это время игроки могут также делать ставки на другие числа).

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

def move():
    point = 0
    while True:
        val = shoot()
        if point == 0:
            # First move
            if val == 7 or val == 11:
                return True
            if val == 2 or val == 3 or val == 12:
                return False
            point = val
        else:
            # 2..N move
            if val == 7:
                return False
            if val == point:
                return True

Результат теперь более похож на правду: за 100 игр игрок выиграл 43 раза, проиграл 57 раз, баланс в конце игры составил 86у.е. от изначальных 100. Интересно и то, что число выигрышей оказалось довольно-таки велико, и составляет лишь немногим менее 50%. Это грамотная стратегия с точки зрения казино — она позволяет поддерживать интерес участника к игре (все время проигрывать было бы неинтересно), но в то же время баланс прибыли казино остается положительным, а баланс денег игрока — соответственно, отрицательным.

Посмотрим подробнее, что получается для симуляции в 100 игр.
— Шанс выиграть на первом шаге выпал примерно в 20 случаях.
— Шанс проиграть сразу на первом шаге выпал в 15 случаях.
— В остальных 65 случаях игра продолжается, и тут все хитро: выбор происходит из двух чисел, 7 и point, но как было видно из графика выше, вероятность выпадения “проигрышной” цифры 7 максимальна, что в общем-то и требовалось доказать.

Интересно заметить, что шанс выигрыша в 45% — довольно-таки высок. Так можно ли выиграть? В краткосрочном периоде, да, например, в другой симуляции игроку “повезло”, и он за 100 игр увеличил свой виртуальный капитал со 100 до 112уе.



Но уже следующая симуляция показала отрицательный баланс: игрок уменьшил свое состояние со 100 до 88уе, потеряв, кстати, те же самые 12уе, “выигранные” в предыдущий раз.

Если увеличить число итераций до 1000, то можно увидеть как может выглядеть денежный баланс игрока в долгосрочной перспективе:



Понятно, что при шансе выигрыша каждой игры менее 50%, результирующая сумма денег на счету игрока будет постепенно уменьшаться, а сумма прибыли казино постепенно увеличиваться. На графике кстати, видны всплески и падения, и может возникнуть резонный вопрос — можно ли их предсказать? Увы нет, т.к. бросания кубика — это независимые друг от друга события, и предыдущие результаты никак не влияют на следующие. Можно еще раз повторить главную мысль — можно выиграть один или даже несколько раз, но в долгосрочном периоде остаться в плюсе у казино невозможно, правила игры составлены так что баланс будет не в пользу игрока.

В игре крэпс есть и другие виды ставок, желающие могут проанализировать их самостоятельно.

Американская рулетка


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



Игровое поле рулетки делится на 38 ячеек: 36 зон с цифрами + 2 зоны “zero” и “double zero”. Брошенный на рулетку шарик очевидно, остановится в одной из зон. Игрок может делать разнообразные ставки, видов которых более 10, рассмотрим некоторые из них.

Черное-красное (или чет-нечет)

Игрок выигрывает, если названная им ставка совпала. Очевидно, что вероятность черного или красного была бы 50/50, если бы не два поля zero — при попадании на них ставка проигрывает. Как и в случае с крэпсом, это делает вероятность выигрыша лишь чуть менее 50% — но этого “чуть” достаточно, чтобы быть в минусе.

Напишем функцию симуляции хода с помощью случайных чисел от 1 до 38, последние 2 цифры будем считать за “зеро”.

def move_roulette1():
    val = random.randint(1,38)
    if val == 37 or val == 38: 
        return False
    return val % 2 != 0

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

money_total = 100
win = 0
loss = 0
for p in range(100):
    bet = 1
    step = move_roulette1()
    if step is True:
        money_total += bet
        win += 1
    else:
        money_total -= bet
        loss += 1
print "Win", win, "Loss", loss, "Money", money_total

Результат: за 100 попыток игрок выиграл 46 раз и проиграл 54 раза. На графике видно, что у игрока были и “взлеты” и “падения”, но итоговый баланс все равно негативный.



Чем больше мы играем, тем глубже мы уходим в минус, а казино соответственно, в плюс:



Был вопрос от читателя, почему я не рассмотрел Европейскую рулетку с одним полем «зеро» — как нетрудно догадаться, шанс выигрыша там действительно выше, но общий принцип не меняется. По сути, разница лишь в «скорости проигрыша». Вот так выглядит совместный график для американского и европейского варианта игры:


Желающие протестировать Европейский вариант рулетки с 37 слотами, могут воспользоваться вторым вариантом функции:

def move_roulette1():
    val = random.randint(1,37)
    if val == 37: 
        return False
    return val % 2 != 0

Ставка на конкретный номер

Игрок также может поставить на определенный номер, ставка при выигрыше составляет 35:1. Это кажется большим, но нетрудно догадаться, что вероятность выпадения определенного номера рулетки 1:38, т.е. опять же, чуть меньше.

Допишем функцию ставки на конкретный номер:

def move_roulette2(num):
    val = random.randint(1,38)
    return val == num

Симуляция, будем считать что игрок ставит на число 10:

money_total = 100
win = 0
loss = 0
for p in range(100):
    bet = 1
    step = move_roulette2(10)
    if step is True:
        money_total += 35*bet
        win += 1
    else:
        money_total -= bet
        loss += 1
print "Win", win, "Loss", loss, "Money", money_total

В результате, игрок выиграл 2 раза и проиграл 98 раз, итоговый баланс -28у.е.



Ставка на два номера

Можно поставить на два номера — шанс выигрыша выше, но зато ставка меньше и составляет 17:1.

Напишем функцию:

def move_roulette3(num1, num2):
    val = random.randint(1,38)
    return val == num1 or val == num2

За 100 попыток нашей симуляции игрок выиграл 3 раза и проиграл 97 раз, баланс составил -46у.е.

Существуют и другие виды ставок, например, на 4 номера с коэффициентом 1:8, желающие могут поэкспериментировать самостоятельно. Как нетрудно догадаться, все коэффициенты рассчитаны так, чтобы игрок оказался в минусе. Кажется заманчивым поставить 1уе на номер, чтобы выиграть целых 35уе. Но сумма выигрыша увеличивается в 35 раз, а шанс выигрыша уменьшается в 38 раз — итоговый баланс все равно будет в пользу казино.

Лото 6 из 45


Следующее, что интересно проверить, это лото. Принцип игры довольно прост — в барабане находятся 45 шаров, выпадают случайным образом 6 из них. Цена билета согласно сайту «Гослото», составляет 100р, а выигрыш зависит от количества угаданных шаров. Примерный порядок сумм выигрыша таков: 2 угаданных шара дают выигрыш в 100р, 3 угаданных шара дают 300р, 4 шара — 3000р, 5 шаров — 300.000р и 6 шаров — суперприз порядка 10.000.000р.

Для начала напишем программу выбрасывания шаров и сравнения результата:

def lottery(values):
    balls = range(1, 45+1)
    b1 = balls.pop(random.randint(0, len(balls)-1))
    b2 = balls.pop(random.randint(0, len(balls)-1))
    b3 = balls.pop(random.randint(0, len(balls)-1))
    b4 = balls.pop(random.randint(0, len(balls)-1))
    b5 = balls.pop(random.randint(0, len(balls)-1))
    b6 = balls.pop(random.randint(0, len(balls)-1))
    s = [b1,b2,b3,b4,b5,b6]

    res = list(set(s) & set(values))
    return len(res)

Из массива balls 6 раз “достается” случайный шар, затем определяется число элементов пересечений двух множеств. Теперь построим график суммарного выигрыша от количества купленных билетов. Для простоты будем считать что игрок ставит на одни и те же числа.

money = [] 
money_total = 0
ticket_price = 100
for p in xrange(N):
    val = lottery([3,7,12,18,33,28])
    if val == 2:
        money_total += 100 
    if val == 3:
        money_total += 300 
    if val == 4:
        money_total += 3000 
    if val == 5:
        money_total += 300000 
    if val == 6:
        money_total += 10000000 
    money.append(money_total)

x = range(0, N)
price = map(lambda x: ticket_price*x, x)

from matplotlib import pyplot as plt
%matplotlib inline
plt.plot(price, money)

Для понимания порядка величин: если купить 100 билетов (суммарная потраченная сумма будет 10.000р), то это дает 14 угаданных “двойных” шаров и один угаданный “тройной”. Суммарный выигрыш составляет около 2000р при потраченных 10.000р.

График выигрыша от потраченной суммы получился практически линейным:



Получается, что если купить билетов на миллион, выигрыш составит 250тыс. “Суперприз” в симуляции так не разу и не выпал, хотя теоретически, он конечно возможен. Кстати, как написано в правилах, призовой фонд составляет 50% с проданных билетов, но “суперприз” выпадает далеко не всегда, так что как и в случае с казино, организаторы разумеется, всегда в выигрыше.

Игровые автоматы


Тоже работают на (псевдо)случайном принципе, «псевдо» т.к. код в них давно программный и чистой механики там почти нет. Общие принципы, описанные выше, для игровых автоматов тоже работают, да и графики скорее всего, не будут отличаться, желающие могут дописать функцию симуляции самостоятельно.

Хорошая статья по конструкции игровых автоматов уже была на Geektimes.

Заключение


Наверное эта статья не открыла америку для многих, но на графиках оно в принципе нагляднее. Интереснее оказалось сравить принципиально разный психологический подход к игре. В лотерее выигрыши потенциально велики, но весьма редки. В казино подход обратный — ставки настроены так, что человек будет выигрывать максимально часто. Условно, сделав 10 игр в казино, человек выиграет 4 раза и проиграет 6 раз. Это позволяет игроку не терять интерес к игре, но в любом случае общий баланс остается негативным — человек будет много раз выигрывать, но и чуть-чуть больше проигрывать.

Наверно это и так очевидно, но речь в статье идет только об играх, основанных на случайности, не о покере, картах, шахматах и пр. Может ли существовать «выигрышная стратегия» в таких случайных играх? Очевидно нет, т.к. ни кость, ни шарик, ни лотерейные билеты, не имеют памяти, и их поведение не зависит от предыдущих итераций. Кстати, этот момент важно запомнить — интуитивно, проиграв несколько раз, человек может решить, что вот сейчас-то он “точно” выиграет. Увы нет — рулетка или кубик не имеют памяти, и “не знают” о количестве предыдущих попыток, каждая игра по сути начинается с чистого листа.

Отвечая на вопрос заголовка статьи — можно ли выиграть в азартные игры? Как показывает, симуляция, в принципе можно, теория вероятности допускает. Но недолго — стоит начать играть 2й, 3й,… Nй раз, как баланс пойдет вниз. В долгосрочной перспективе выиграть у казино невозможно.

PS: Для желающих поэкспериментировать, исходный код одним файлом выложен под спойлер. Его можно запустить в онлайн Python IDE, например здесь. Чтобы протестировать европейский вариант рулетки вместо американского, достаточно в коде поменять 38 на 37. Данная симуляция является достаточно базовой, и не учитывает различных дополнительных факторов, таких как количество денег у игрока или лимит ставок в казино, желающие могут добавить все это самостоятельно.
Исходный код
import random

def move_roulette1():
    val = random.randint(1,38)
    if val == 37 or val == 38: 
        return False
    return val % 2 != 0
    
def move_roulette2(num):
    val = random.randint(1,38)
    return val == num
    
def move_roulette3(num1, num2):
    val = random.randint(1,38)
    return val == num1 or val == num2
    
money_total = 100
steps = 100
win = 0
loss = 0
for p in range(steps):
    bet = 1
    step = move_roulette1()
    if step is True:
        money_total += bet
        win += 1
    else:
        money_total -= bet
        loss += 1
    print "Step", p+1, "Bet", bet, "Result", step, "Win", win, "Loss", loss, "Money total", money_total

Вы можете помочь и перевести немного средств на развитие сайта



Комментарии (119):

  1. Braveflyer
    /#10697673

    > В долгосрочной перспективе выиграть у казино невозможно.

    В рулетку и кости — может быть — не играл. В блэкджек и покер — всегда (при условии, что вам не нужно писать программы, чтобы понять суть игры).

    • vasimv
      /#10697751

      Рулетка — вообще классический случай «нельзя выиграть у казино». Один или два зеро — не дадут как раз выиграть (в долгосрочной перспективе).

      • x67
        /#10697763

        А что если иметь условно бесконечный бюджет и каждый раз увеличивать ставку, например в 381/350 раза? Думаю, в реальности просто выгонят из казино)
        Для примерно 80 попыток нужно всего примерно 12к $, если начинать со ставки в 1 доллар(смотрел в вольфраме по формуле sum(1,09^n)).
        Проблема только в том, что фишки казино дискретны и нельзя поставить 1.09 $, можно или 1 или 2 $. Но это легко решается увеличением начальной ставки до 100 баксов, хотя и бюджет растет пропорционально

        • humanelement
          /#10697771

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

          ru.wikipedia.org/wiki/Мартингейл

          • Rsa97
            /#10697895

            Потому что без ограничений такая схема позволяет выигрывать в рулетку и другие игры, построенные на вероятности. В простейшем случае делаются ставки на красное/чёрное, чёт/нечет или половину. При проигрыше следующая ставка удваивается, при выигрыше — сбрасывается на начальную.
            После серии из n-1 проигрыша следует выигрыш. Всего было поставлено (i-я ставка равняется 2i-1):
            1 + 2 + 22 + ... + 2n-2 + 2n-1 = 2n - 1
            Выигрыш составит (удвоенная последняя ставка):
            2n-1 * 2 = 2n
            Таким образом, баланс будет:
            2n - (2n - 1) = 1
            Каждая серия даёт небольшой выигрыш, но может потребовать очень крупных ставок. Чтобы не дать игрокам использовать такую схему казино часто ограничивает минимальные и максимальные ставки, лимитируя тем самым длину серии.

            • Sadler
              /#10697905

              Не позволяет. Уже на 30-м круге требуется ставка, в миллиард раз большая изначальной, плюс не забывайте про зеро. Мартингейл — это надёжный способ слить все средства разом.

              • Rsa97
                /#10697991 / -1

                Зеро не влияет. Шанс выигрыша влияет только на ожидаемую длину серии. Ну и шанс 30 проигрышей подряд (20/39)30 ? 4*10-9

                • Sadler
                  /#10698009 / +1

                  Потому что шанс проигрыша следует сравнивать с шансом выиграть сколько-нибудь значимую сумму. А зеро влияет на математическое ожидание, которое в долгосроке неизбежно приведёт к прибыли казино.

                  • Rsa97
                    /#10698037

                    В Маргинтейле без ограничений — не приведёт. Если есть возможность заканчивать все серии выигрышем, то абсолютно неважно, сколько будет проигрышей подряд, в конце каждой серии игрок всё равно в плюсе.
                    Ограничение — либо искусственное от казино, либо запас денег для роста ставок.

                    • Sadler
                      /#10698063

                      «Мартингейл без ограничений» есть только у Вас в голове. Для любой конечной суммы несложно рассчитать среднюю длину серии, после которой все средства будут проиграны. Разве что у Вас будет сумма, при которой длина серии уложится в длину Вашей жизни. Но с такими деньгами зачем Вам вообще играть в казино и чем-то рисковать?

                      • edelkier
                        /#10703009

                        Чтобы выиграть начальную ставку, очевидно же!

            • humanelement
              /#10697949

              Так вы всё равно не прояснили, зачем искусственно ограничивать такую стратегию, если в среднем клиент всё равно будет проигрывать.
              Чем всё-таки такие игроки плохи для казино?

              • Sadler
                /#10697957

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

              • Rsa97
                /#10697993

                Если не ограничивать, то игрок будет выигрывать. В конце каждой серии он будет оставаться в плюсе.

                • humanelement
                  /#10698015

                  Да и Бог с ним.
                  Если я проставлю всю рулетку по номерам, кроме одного числа, я тоже буду оставаться в плюсе.
                  Запретите что ли? Я же весь месяц почти буду выигрывать.

                  • Sadler
                    /#10698041 / +1

                    Если я проставлю всю рулетку по номерам, кроме одного числа, я тоже буду оставаться в плюсе.
                    Нет, не будете. Пусть вы ставите по $1 на все 36 чисел, не ставя только на зеро. С вероятностью 36/37 вы выигрываете. Итоговый баланс $1*36*36/37 = $35.027, почти доллар потеряли.

                    • humanelement
                      /#10698123

                      Спасибо за пояснение, но я хотел донести саму суть. Досконально нюансов рулетки не знаю. Придётся отнять больше ячеек.
                      А суть просто была в том, чтобы без всякого Мартингейла можно размазать распределение вероятностей так, чтобы за одну игру выигрывать немного, а потом потерять очень много.

                      • DmitrySpb79
                        /#10698179

                        Здесь приведены все возможные ставки в рулетке: www.gambling-roulette.info/roulette-payoffs-house-edge
                        И они расчитаны так, что казино всегда в плюсе, можете на досуге проверить.

                        Если поставите на все 38 ячеек сразу — проиграете 38р а выиграете 35р (т.к. ячеек 38, а ставка 35:1), прибыль все равно пойдет в доход казино.

                        • humanelement
                          /#10698421

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

                          • DmitrySpb79
                            /#10698427

                            Код симуляции в статье выложен, можете проверить любые варианты гипотез :)

                        • 3aBulon
                          /#10699223

                          Не знаю как в америке, у нас фишку выигравшую не забирали, ее точней запрещалось трогать даже. Т.е 38 ставишь, 37 заберут и 35 выплатят, как то так

                          • vasimv
                            /#10699251

                            Это уже извращение какое-то. Стандартные правила рулетки — получаешь все. Только зеро (один или два) добавляют, чтобы казино в выигрыше было.

                            • 3aBulon
                              /#10699263

                              В смысле извращение? Вы поставили 38 фишек по всему полю, выиграла одна, у вас забрали 37, выплата составляет 35к1. Итого после спина у вас 36 фишек на счету.
                              Ну это я про американскую.
                              В нашей было 37 соответственно. Оставлось 36.

                              • vasimv
                                /#10699271

                                Эмм. Если на рулетке цифры от 1 до 36 с одним или двумя зеро, то выплачивают 36 при выигрыше. Не слышал про такие, где бы выплачивали только 35. Или у них там нулей нет на барабане? Тогда объяснимо.

                                • 3aBulon
                                  /#10699273

                                  Нет, всегда выплачивают 35:1.

                                  • vasimv
                                    /#10699275

                                    Хм. Чего-то я запутался уже. Тогда ведь и ставку вернут, получится как раз 36. :)

                    • 3aBulon
                      /#10699221

                      Та фишка, которая сыграла, в номере, тоже остается.
                      Т.е. 35 к одному и плюс одна сыгравшая, итого 36.
                      Минус 1, вот на этот доллар казино и живет.

                • Lexxnech
                  /#10698099 / +1

                  Мартингейл без ограничений подразумевает, что у Вас уже есть бесконечные деньги. Непонятно, зачем в таком случае пытаться обыграть казино, проще его купить и закрыть.
                  Пока у Вас количество денег ограничено (сколь угодно большой, но конечной суммой) в среднем метод будет проигрышным.
                  В целом, вероятность единичного выигрыша в одной партии действительно велика. Утрировано, если у Вас чуть более миллиона рублей (на 20 шагов) Вы можете почти гарантировано выиграть 1 рубль, но при этом с очень небольшой вероятностью проиграете более миллиона рублей. Но при попытке выиграть сумму, сравнимую с изначальным капиталом (т.е. выиграть около миллиона раз подряд), в какой-то момент Вы просадите сразу миллион, и окажитесь в большом минусе.

                  • mephy
                    /#10698547

                    Играл удвоением ставки на 1 сатоши. У казино даже был встроенный бот для такой игры. За неделю работы бота от 0.1 btc дошел до 7btc (тогда биток стоил меньше). Финальная ставка была около 4btc и я програл. Вывел 3btc и забил.


                    Друг пытался также, но все время проигрывал.
                    Дисперсия она такая.
                    Что важно — казино не брало % с выигрыша.

              • kablag
                /#10698163

                Может всё проще и это законодательные/налоговые ограничения?

          • wordman
            /#10698417

            Причина почему казино лимитирует ставки очень проста — страх мошенничества.
            Опытный крупье запросто может бросить шарик если не на число то в определённую область круга, что при сговоре с игроком сильно повышает шансы последнего.
            Кстати этот фактор можно учитывать при игре и допустим ставить на зерро когда большие ставки на цвет или в поле и крупье пытается выкинуть именно зерро для максимализации выигыша казино.
            Некоторые утверждают, что также можно заметить закономерность в бросании шарика крупье, но как по мне это слишком сложно.

            ps: обычный выигрыш казино для покера рулетки и тп 3% и только на блекджеке он ниже и при высокой квалификации игрока может быть чуть меньше 0.

        • vasimv
          /#10697787 / -1

          В лучшем случае — останетесь на нуле, хоть как играйте, в этом вся рулетка как она есть (даже если учитывать зеро каким-то макаром). В нашем местном казино есть рулетка полуэлектронная (шарик настоящий катается, ставки делаются через терминалы), я там часто время трачу, благо минимальная ставка — 10 центов. Запихиваю туда 10 долларов и ставлю по статистике (то есть если несколько раз четное — ставлю на нечетное, и т.д.), повышая ставки при проигрыше. Часто забираю лишние $5. Но иногда вылезает последовательность в виде 8-9 одинаковых (четное/нечетное/черное/красное/0-18/19-36) и плакали мои $10. :)

          • Sadler
            /#10697891

            ставлю по статистике (то есть если несколько раз четное — ставлю на нечетное
            Вы путаете априорные и апостериорные вероятности, полагая, что «статистика» даст Вам преимущество. Это популярное заблуждение, в случае рулетки нет никакого толку в подсчёте предыдущих состояний.

            • vasimv
              /#10699169

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

      • stardust1
        /#10698415

        Рулетка — вообще классический случай «нельзя выиграть у казино».


        У меня учитель по математике (у него специализация была Теория Вероятности) в гимназии в Германии больше 10 лет назад рассказывал про какого-то русского ученого из Санкт-Петербурга, который якобы разработал способ, при котором если играть на длинную дистанцию, то будешь в плюсе против рулетки. Может кто знает или слышал про эту теорию?

        • humanelement
          /#10698431

          Возможно, что это Эйлер и имелся ввиду, в честь которого назван Санкт-петербургский парадокс (по сути то же самое, что Мартингейл, который выше обсуждается).

        • Braveflyer
          /#10698493

          Баек по теме много разнообразных ходит ))
          Я вот слышал историю, как долгая работа в казино вырабатывает навык попадать шариком в нужный сектор рулетки и все гениальные системы великих комбинаторов не могут ничего этому противопоставить.
          А если вы посмотрите (только не играйте) на работу электронной рулетки, то с удивлением обнаружите, что теория вероятности чудесным образом превращается в закон подлости.

          • DmitrySpb79
            /#10698509

            Это вроде и не байка, где-то тоже читал что казино меняют крупье раз в несколько лет, т.к. они начинают кидать шарик слишком одинаково (хотя про попадание в конкретную цифру наверно все же байка). Еще казино может отказать в игре любому без объяснения причин, если владельцам кажется что человек выигрывает чаще положенного.

        • vasimv
          /#10699185

          На бесконечно длинной с бесконечными деньгами? :)

      • 3aBulon
        /#10699219

        Расскажу одну историю.
        Однажды в городе Красноярске было казино. И для привлечения посетителей придумали они гениальную штуку — число дня, которое выплачивалось 45 к 1.
        А так как работали мы в другом казино, то довольно быстро смогли в свободное от работы время смоделировать и поиграть в эту улучшенную рулетку.
        И тогда казино в проигрыше. Пошли и реально стали «выносить»(так это называется на жаргоне). Понемногу, не жадничая, каждый день.
        Потом казино перестало пускать нежелательного клиента к себе, ну как так день за днем выигрывает 1-2 тыщи баксов и уходит. Клиент давал тыщу баксов другому человеку, тот шел и ставил раз за разом свое число дня, выигрывал нужную 1000, отдавал и получал свою зарплату, 100 баксов за час.
        Еще небольшой ньюанс, после выпадения номера фишка из номера не забирается, а остается в нем(выигравшая). Тогда мы просто добавляем еще одну и при повторе номера получаем х90 выплату. А повторы в рулетке — очень нередки, опыт работы у меня порядка 3 лет.
        История не выдуманная, но любые совпадения случайны, цифры выигрышей взяты от балды.

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

        А вообще в казино наливают водку и шампанское бесплатно. Чтобы клиент не расстраивался проигрышу, или отметил выигрыш и спустил его обратно.

        • vasimv
          /#10699241

          Ну, понятно, что если повысить шансы игрока до цифры больше 0.5, то казино будет в проигрыше. Только нормальные казино так не делают. Даже вероятность джек-потов всяких высчитывают так, чтобы все равно было меньше.

        • DmitrySpb79
          /#10699503

          Странный подход того казино, повысить шансы выше 0.5 а затем банить клиентов за то что выиграли.

        • ariklus
          /#10700485

          Ну, если владелец казино — идиот то от банкротства его спасет только еще большая тупость клиентов )))

          • 3aBulon
            /#10700489

            Ну основная часть посетителей не ставила одну цифру, и скатывалась. Это работает если играть строго по схеме.

            • ariklus
              /#10700687

              Ну, это и есть еще больший тупняк клиентов ))

    • alexgreat7
      /#10697917

      Всегда можно выиграть? Если да, то поделитесь стратегией)

      • Braveflyer
        /#10697939

        Пример: садитесь за стол с блэкджеком, где при одинаковых раскладах у крупье с вами выигрываете вы. Играете только по минималке. Это всё.

        • LexaVas
          /#10697951

          Проблема блекджека в казино в том, что там колоды «заряжены» на победу крупье. Особенно если игра 1х1.

          • Braveflyer
            /#10697959

            Вы в казино вообще были хоть раз?

          • 3aBulon
            /#10699231

            Ничего там нет. Да и колоду вы всегда можете попросить поменять. Вам принесут новую, запечатанную заводскую, и крупье убрать могут.
            В блэкджеке сразу 6 колод. Перемешанных. Сразу играются.

        • spag002
          /#10698461

          Интернет подсказывает, что такой случай называется «Push», и никто не выигрывает.

          If the player and dealer have the same total (not counting blackjacks), this is called a «push», and the player typically does not win or lose money on that hand. Otherwise, the dealer wins.

          en.wikipedia.org/wiki/Blackjack

          • Braveflyer
            /#10698517

            По моим наблюдениям крупье никогда не останавливается на одинаковой с игроком сумме. Это меня самого удивляло вначале, а потом радовало =)

    • Max257
      /#10698399

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

      • Braveflyer
        /#10698447

        Да, но крупье не может выбирать, когда остановиться, а игрок может. Не надо быть гением, чтобы примерно прикинуть, много ли вышло карт с номиналом 10 (картинки). И оценив это, останавливаться на минимальной или максимальной границе, после которой есть большая вероятность получить перебор. Если у вас на руках сумма в 17-20, никакого преимущества у крупье нет.
        Так же не забываем, что крупье — тоже человек, а на столе с несколькими игроками вы имеете возможность лучше оценивать риски, особенно если сидите на месте, где сдают последнему.
        Профи вообще считают карты. Систем, которые позволяют это делать, не запоминая все вышедшие — много. Но я таких умельцев лично не встречал.

      • wordman
        /#10698479

        да. Всё верно.
        Только крупье не играет, а набирает как игральный автомат до момента когда наступит одно из событий: его набор привысит набор игрока OR он наберёт 17 очков OR он переберёт.
        При этом казино выигрывает игрока с +3% вероятностью, но при очень грамотной игре можно свести выигрыш казино до 0.

  2. BubaVV
    /#10697703

    Вопрос про лото 6 из 45. Есть ли оптимальный способ заполнить 100 купленных билетов, чтобы максимизировать выигрыш? Например, вариант угадывать только нечетные шары заведомо проигрышный

    • tangro
      /#10697735

      Не понял про «только нечетные шары». Они ничем не хуже чётных или любых других. Что касается 100 билетов — главное чтобы не было двух в точности одинаковых, а в остальном любые 100 разных билетов дают те же шансы, что и любые 100 других разных билетов.

    • DS28
      /#10697983

      Нам на теорвере профессор рассказывал, что была схема покупки множества билетов и заполнение значениями типа (10,11,12,13,14,15). Объяснение такое: любая комбинация равновероятна, а на такую почти никто не поставит, т.к. она кажется невероятной — значит выигрыш, в случае выпадения будет максимальный. Но нужно много билетов и много розыгрышей (а на это не у всех денег хватит).
      За достоверность того, что это работало не ручаюсь. (и правила немного отличались)

      • DmitrySpb79
        /#10698185

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

        • DS28
          /#10698263

          Я думаю, что там было какое-то правило, что джекпот делится на победителей. Давно было дело… Сейчас поищу в интернете упоминания…

          • DmitrySpb79
            /#10698371

            Спасибо. Прочитал, но все равно не понял :) Там сказано, что выигрыш распределяется поровну среди угадавших такое же число шаров, но не среди угадавших точно такие же номера. В подписи увидел «доктор психологических наук», стало понятно что математического обоснования там явно нет.

            Можно было бы проверить в симуляции, но непонятно что проверять.

            • wordman
              /#10698487

              Всё там верно.
              технология разработана для лотерей 6 из 36 и подобных.
              зачеркивая 1 2 3 4 5 6 можно быть увереным что при выпадении допустим 2 3 4 5 6 12 ты будеш единственным или на крайняк одним из 3 выигрывших а не как обычно одним на 12 человек. Соответсвенно выиггрыш будет не 3000 а >=12000
              И таки да, тут рулит именно психология но подкреплённая тервером.

              • DmitrySpb79
                /#10698499

                > зачеркивая 1 2 3 4 5 6 можно быть увереным что при выпадении допустим 2 3 4 5 6 12 ты будеш единственным или на крайняк одним из 3 выигрывших а не как обычно одним на 12 человек

                Тут да, согласен, об этом не подумал.

  3. Popadanec
    /#10697705 / +1

    Это надо не здесь выкладывать, а показать по телевизору с разжевыванием до уровня 11 класса хотя бы.
    А тут вы будете Капитаном очевидность для всей аудитории ГТ(но это не точно).

    • tangro
      /#10697737

      Вот-вот. Университетский курс теорвера и статистики напрочь отбивает желание играть в лотереи и казино на всю жизнь.

    • immaculate
      /#10697833

      Тут люди регулярно «доказывают», что биткойн — не пирамида, а статьи про ICO публикуются несколько раз в неделю.

      • coturnix19
        /#10698281

        Тю, биткоин… пару лет назад тут всерьез обсуждали эмдрайв. [не подумайте что я против псевдонауки — сам люблю жить верой и считаю что все имеют на это право. Просто для иллюстрации.]

        • dimas6000
          /#10698763

          А чем всё кончилось? Последнее, что нашел, на вики:

          В сентябре 2017 года появились новые сообщения об успешном создании работающего прототипа двигателя EmDrive в Китае.
          И тишина.

          • coturnix19
            /#10698921

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

      • ABy
        /#10698301

        Сатоши не играет в кости :)
        Хотя второй график игры в кости похож на текущий график битка. Такие же падения и отскоки. И общий тренд на понижение.

    • Beaglz
      /#10699421

      Давеча на почте был свидетелем давки за последними билетами какой-то супервыигрышной лотереи. Но телевизор занят совсем другим ликбезом.

      Одна из причин, почему надо получать высшее техническое.

  4. Togran
    /#10697729 / +1

    Лото 6 из 45

    val = lottery([3,7,12,18,33,78])

    “Суперприз” в симуляции так не разу и не выпал


    Может, я неверно понял код — но 78 в лото «6 из 45» вряд ли когда-нибудь выпадет

    • DmitrySpb79
      /#10697913

      Опечатка конечно, спасибо, исправил.

  5. ilya_1
    /#10697733

    При любом ограниченном бюджете игра приведет к проигрышу при любом шансе выигрыша не более 0,5. Когда-то пытаясь изучать программирование такие-же примерно формулы выводил. Особенно если ставка пропорционально биджету. Очень примитивно: Имеем 100р ставим 10% (10р) выигрываем (0,5), ставим 10% (уже 11р) проигрываем, имеем 99р, при любом раскладе в долгосрочной перспективе мы в проигрыше

  6. smer44
    /#10697745

    какие там правила насчёт ставки на зеро?

  7. daiver19
    /#10697779 / +1

    Вы серьёзно считаете, что 100 игр — это достаточная выборка для каких-либо выводов? А вообще, как можно писать статью об азартных играх и не упомянуть матожидание ни разу? В казино вот прекрасно знают, что это такое и не делают игр с заведомо положительным матожиданием выигрыша (исключая игры с нулевой суммой вроде покера).

    • DmitrySpb79
      /#10697943

      Цифра 100 была выбрана как достаточная с практической точки зрения (вряд ли кто-то реально сделает в казино миллион ставок), и уже достаточная с точки зрения наглядности результатов.

      • daiver19
        /#10697969

        Вы сейчас серьёзно? Да на 100 играх у вас даже ставка на одно число в рулетке не выпадет с вероятностью 6 процентов. Т.е. если бы внезапно рулетка имела положительное матожидание (например, выплата 39:1 при ставке на одно число), то вы бы это не смогли показать своей «симуляцией». Я уже молчу об общем случае, в котором вероятность может быть сколь угодно мала (конечно, можно еще определить utility function, но это уже детали).
        Вот хорошая статья на тему максимизации матожидания, советую ознакомиться.

        • DmitrySpb79
          /#10697973

          Согласен, разумеется, но целью статьи не было строгое математическое доказательство.

          • daiver19
            /#10697987

            Не понимаю, в чем цель, но не хочу флэймить. Просто хочу напомнить, что статистика без соответственной математики является в основном инструментом манипуляции. На эту тему тоже есть литература, например, «Как врать с помощью статистики».

            • DmitrySpb79
              /#10698107

              Что же тут непонятного, цель симуляции — не доказать теорему или вывести тот или иной коэффициент, а показать что может получиться с реальным пользователем за реальные 100 игр. И да, было показано что он может иногда и выиграть в том числе.

              Последовательность в 10 миллионов игр может и интересна математикам, но вряд ли кому-то актуальна на практике.

              Наврать и подогнать результаты — да, можно, но зачем?

              • daiver19
                /#10699035

                Вы привели анекдотическое доказательство, которое само по себе не обладает достаточной значимостью. Я понимаю, что легко объяснить результаты задним числом, но если бы вдруг вы исели дело с неизвестной игрой, то такие симуляции без доверительных интервалов можно было бы расценить как введение в заблуждение (и подгонять не надо ничего вообще-то)

      • humanelement
        /#10697975

        Даже в случае с «равномерной» игрой типа чёрное/красное вы за 100 попыток с вероятностью 0,3015 остались бы в плюсе. И статья бы тогда выглядела немного странно.

        • DmitrySpb79
          /#10698109

          Если бы на «равномерной» рулетке было только черное и красное, то шанс был бы ровно 0.5 — вы бы не выиграли, но и не проиграли.

          • humanelement
            /#10698139

            Слово «равномерная» было приведено для противопоставления вероятностей выигрыша/проигрыша при игре на цвет с «неравномерными» вероятностями для ставок на число.
            В первом случае для сбора статистики нужно меньше попыток. Но и их недостаточно. Написал выше, почему.

            Речь шла об традиционной игре, описанной в статье.

  8. humanelement
    /#10698011

    del

  9. yogghy
    /#10698065

    Написал вот я, кажется, курсе на четвёртом лабу про блекджек, вбил туда табличку из википедии и сел с ней играть. И табличка из вики гарантированно уводила мой виртуальный баланс в глубокие минуса :)

  10. mozgosteb
    /#10698083 / -1

    Насчёт азартных игр. Когда-то придумал стратегию 100%-го выигрыша на тотализаторе. Нужно дождаться определенных условий, поставить ровно 1 раз и гарантированно выиграть вне зависимости от исхода события.

    Вот эти условия:
    — 2 разных тотализатора (А и B) с отличающимися ставками
    — Ставка на событие с дуальным исходом (без ничьи)
    — Если на А ставка (x1:y1) а на B (x2:y2), то либо x1*y2 > 1, либо y1*x2 > 1

    При этих условиях можно сделать ставки в двух тотализаторах на противоположные исходы события и выиграть в любом случае. Утрированный пример: встречаются на ринге некие Буно и Хулио. В Мексиканском тотализаторе люди ставят больше на Хулио и там ставки 0.4:2. В европейском на Буно, там наоборот, 2:0.4. Ставим по сотне и там и там и выигрываем сотню при любом раскладе.

    В реальности, конечно, ставок, на которых можно так вкусно выиграть нет. Немного выиграть иногда (очень редко) можно, но надо прям большие деньги ставить и ради небольшой маржи как-то стрёмно.

    • DmitrySpb79
      /#10698191

      Это бы могло сработать, но «проблема» в том что владельцы тотализаторов обычно адекватно оценивают шансы игроков :) И шанс что в одном тотализаторе ставка 2:0.4 а на другом 0.4:2 на этих же спортсменов, сам по себе крайне мал.

      • mozgosteb
        /#10698225

        Именно таких ставок, конечно, никогда не будет, это утрированный пример.

        А шансы игроков никто не оценивает. Задача букмекера — не правильно оценить вероятность спортивной победы, а правильно оценить ожидания игроков, которые несут им деньги. Если они правильно оценили ожидания игроков (в пределах 10%), то букмекер получит выигрыш в любом случае. Кроме того, у них есть инструменты стимуляции в виде изменения привлекательности ставок, если идёт перекос.

        Поэтому, если у разных букмекеров будут игроки с немного разным ожиданием от спортивного события, то и ставки будут разными. Например ставки А(0.9:0.9) и В(1.15:0.8) вполне вероятны.

        • DmitrySpb79
          /#10698237

          Я все-таки думаю, что букмекеры оценивают шансы игроков, если хотят быть максимально в плюсе, это же их работа, следить за соревнованиями и делать на этом деньги. Но тут я не особо в теме, может и ошибаюсь.

          • mozgosteb
            /#10698253

            Увы, это работает не так. Если букмекер сделал всё правильно, ему всё равно кто выиграет. В идеале ему нужно, чтобы на каждую ставку была сделана пропорциональная выигрышу контрставка. Тогда проигравшие полностью покроют выплаты выигравшим при любом исходе. Букмекеры играют совсем в другую игру, она более стабильна и прогнозируема.

            Конечно, ориентироваться в спорте им надо, чтобы правильно выставить начальные коэффициенты до получения информации о реальном спросе.

            • wickated
              /#10698323

              Для выигрыша букмекерам достаточно общего коэффициента — выплаты выигравшим меньше 100% общей суммы ставок

              • mozgosteb
                /#10698333

                Ну да. Именно для выплаты выигравшим меньше 100% общей суммы ставок и нужно учитывать соотношение ожиданий тех, кто несёт деньги.

    • humanelement
      /#10698445

      По сути это то же самое, что т.н. арбитраж между валютными биржами.

      • mozgosteb
        /#10698481

        Скорей всего, да, что-то похожее

    • ariklus
      /#10698551

      Вопрос в том, сколько усилий в денежном эквиваленте требуется затратить чтобы найти такие два тотализатора )))

      • mozgosteb
        /#10698557

        Вопрос, что называется, не в бровь а в глаз. Я, например, решил, что лучше просто устроиться на работу)

      • Bor15Bor15ov
        /#10698805

        Данное явление называется «букмекерской вилкой», для поиска используют специализированный софт, запрещено правилами БК, как и многое другое, например ставки по сговору группой лиц с целью изменения коэффициента ставки. При ставке на событие вероятность которого заранее не известно (например спортивные события), коэффициенты часто меняются и не синхронно по БК, к примеру в начале дня П1 1.95 П2 1.95, вечером П1 1.85 П2 2.05 (утрированно конечно), то есть если утром поставить в конторе А на П1 100р с коэф. 1.95 а вечером в конторе B на П2 100р с коэф. 2.05 выигрыш составит 5р. Если вероятность заранее известна, ставки на исход в лотерею, например выпадет больше четных чисел из 5 номеров, ситуация может быть вообще интересной, иногда выпадают длинные серии четных и многие начинают думать что на этот раз-то уж точно нечетное будет, соответственно суммы ставок неравномерны и БК компенсирует коэффициенты, больше чётных 1.95, нечетных 1.75, при равновероятном исходе событий.

  11. bars_arseniy
    /#10698097

    Это кажется большим, но нетрудно догадаться, что шанс выпадения определенного номера рулетки 1:38, т.е. опять же, чуть меньше.

    Шанс выпадения определённого номера 1:37.

    • DmitrySpb79
      /#10698189

      В американской рулетке 38 ячеек.

      • bars_arseniy
        /#10698197

        Поэтому шанс выпадения 1:37, а вероятность выпадения 1/38.
        Шансы и вероятность — это не одно и тоже.

        • DmitrySpb79
          /#10698223

          Понял, я сначала думал что вопрос про различия видов рулеток. Спасибо, исправил.

  12. Dmitriy62
    /#10698305

    Читая комментарии понял, что народ всё ещё надеется выиграть у казино… Ну-ну…
    Статья классная. Чётко разложено по полочкам что к чему.

  13. wolfy_str
    /#10698307

    dd

  14. bro-dev
    /#10698453

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

    • Sadler
      /#10698475 / +1

      Можете открыть казино.

    • DmitrySpb79
      /#10698495

      Вероятность выигрыша любой ставки в казино — менее 50%, так что заработать там может только его владелец. Туда можно идти с любой целью (отдохнуть, приятно провести время, пощекотать нервы и пр) кроме заработка.

      • gohan
        /#10699525

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

        Кроме того, игровой автомат можно «победить» с помощью смартфона. Выигрыш идёт за счёт того, что там рандом не истинный, как и в большинстве компьютеров (не связанных с аппаратным ГСЧ).
        Была история в новостях про группу мошенников, которые это научились делать, потренировавшись с автоматом у себя дома. Владельцам казино оказалось невыгодно снимать всю серию автоматов, это больше убытков. Как я понимаю, способ работает и сейчас, просто выгоняют при определённом выигрыше. А может хватают и на основе данных с камер приглашают полицию. Сам этим не занимался, так что могу только гадать о способах борьбы. Читал только, что злоумышленников выдаёт непрерывное наблюдение за экраном телефона после запуска игры на автомате, но ведь можно способ модифицировать и использовать более мелкое устройство.

        Владельцы казино закрывают как мошенников с телефонами, так и честных игроков, которые в блэкджеке используют только свою голову. Также, считается преступлением, если игрок заметил заводской брак на рубашках карт и за счёт этого обыгрывал казино. Хотя, казалось бы, они сами виноваты. Но такие законы. У кого больше денег, тот и прав. Для интересующихся предлагаю гуглить что-то типа «Фил Айви против казино, суд».

        А про лохов, которые играют по чуйке («сегодня мой день» и т.д.) вот отличный ролик:

        Заголовок спойлера
  15. dfgwer
    /#10698651

    Есть ли лото или казино на блокчейне работающие по полностью открытым алгоритмам, используя в качестве источника энтропии что-то очень случайное, но при этом общедоступное (хэш от следующего блока битка например).
    Что-то вроде такого
    За сутки от n кошельков приходят x крипты (крипта должна быть с открытыми транзакциями и кошельками), все транзакции в блокчейн намертво вписываются, раз в сутки открытый алгоритм выявляет победителей и отправляет им 99% пришедшей валюты, все абсолютно прозрачно.

    • unclejocker
      /#10698721

      Есть на контрактах эфира. Тут было несколько статей, где уязвимости разбирали.

  16. amarao
    /#10698675

    Для усиления драмы нужно дать возможность контролировать алгоритму exit() в любой момент, а симуляция должна идти по достижению нуля.

    Дальше надо пробовать разные стратегии и наблюдать, что чем более агрессивная стратегия (нацеленная на больший куш), тем реже она выигрывает. Вероятнее всего, у нас будет меньше 50% стратегий, которые остались в плюсе (100->10x), а дальше по убывающей.

  17. XmmmiR
    /#10698715

    Запускаем симуляцию 100 игр и удивляемся результату, игрок выиграл


    Есть одна комбинация костей, дающая выпадение 2 и 12, по две комбинации на 3 и 11, шесть комбинаций для 7. Итого 6 + 2 = 8 на победу, 2 + 1 + 1 = 4 на поражение. Итого шансы на победу вдвое больше.

    Для понимания этого примера достаточно базовых подсчетов в уме. Да, симуляция в рамках статьи наглядна(хотя при 100 играх дисперсия слишком большая для каких-то выводов), но вас действительно удивляет результат?

  18. GarryC
    /#10700281

    Автор составил программу для проверки основных формул теории вероятности и получил подтверждение. Что на очереди — проверка таблицы умножения?

    • SandroSmith
      /#10702451

      Тут уже выше упоминали, что тут не та ЦА. А так статья хороша и показательна.
      И про таблицу не каркайте. С нынешними то тенденциями в системе образования.

  19. Olorin111
    /#10702467

    Помнится, подсказали как-то мне тактику ставок на спорт на этих ваших париматчах. Тактика была интересная, и на первый взгляд я не нашел подвоха. Но мы-то знаем… В общем я таки решился написать симуляцию. Странно, но и симуляция при переходе через некоторую критическую сумму начального капитала более чем в 50% случаях выходила в бесконечную прибыль. Уж как не тестил. если кому интересно — скину исходник.тут выкладывать стыдно. Не хабр, но все-же.