Бросаем монетку
От: baily Россия  
Дата: 06.07.18 08:32
Оценка: 5 (1) :)
Вася бросил монетку 10 раз. А Петя 11 раз. Какова вероятность того, что у Пети монетка выпадет орлом больше чем у Васи?
Считаем, что при броске вероятность выпадания орла и решки одинакова.
Re: Бросаем монетку
От: alpha21264 СССР  
Дата: 06.07.18 08:49
Оценка: -1
Здравствуйте, baily, Вы писали:

B>Вася бросил монетку 10 раз. А Петя 11 раз. Какова вероятность того, что у Пети монетка выпадет орлом больше чем у Васи?

B>Считаем, что при броске вероятность выпадания орла и решки одинакова.

Ну ты чё, посчитать не можешь? Программка за 5 минут пишется.
Можно и вручную посчитать, но муторно.
http://s19.rimg.info/0871fde0709f1bd37b3b012eb22a4583.gif
Течёт вода Кубань-реки куда велят большевики.
Re[2]: Бросаем монетку
От: baily Россия  
Дата: 06.07.18 09:00
Оценка:
Здравствуйте, alpha21264, Вы писали:

A>Здравствуйте, baily, Вы писали:


B>>Вася бросил монетку 10 раз. А Петя 11 раз. Какова вероятность того, что у Пети монетка выпадет орлом больше чем у Васи?

B>>Считаем, что при броске вероятность выпадания орла и решки одинакова.

A>Ну ты чё, посчитать не можешь? Программка за 5 минут пишется.

A>Можно и вручную посчитать, но муторно.

Для таких любителей можно попросить посчитать вероятность, когда бросали 1000 и 1001 раз соответственно.
Re[3]: Бросаем монетку
От: alpha21264 СССР  
Дата: 06.07.18 09:09
Оценка: +1
Здравствуйте, baily, Вы писали:

A>>Ну ты чё, посчитать не можешь? Программка за 5 минут пишется.

A>>Можно и вручную посчитать, но муторно.

B>Для таких любителей можно попросить посчитать вероятность, когда бросали 1000 и 1001 раз соответственно.


Вручную факториалы тоже считать заколебёшся.
С вероятностью 1/2 их шансы равны (первая монетка Пети выпала на решку).
С вероятностью 1/2 (первая монетка Пети выпала на орёл) Петя имеет какое-то преимущество.
Эээ... наверное есть какой-то трюк, который позволяет это преимущество точно посчитать.
Рекурсивно.
http://s19.rimg.info/0871fde0709f1bd37b3b012eb22a4583.gif
Течёт вода Кубань-реки куда велят большевики.
Отредактировано 06.07.2018 9:14 alpha21264 . Предыдущая версия .
Re: Бросаем монетку
От: StatujaLeha на правах ИМХО
Дата: 06.07.18 10:54
Оценка: 10 (2)
Здравствуйте, baily, Вы писали:

X, Y ~ дискретная, {0: 1/2; 1: 1/2}
X1 + ... + Xn ~ Бернулли Bin(n; 1/2)

Sвася = X0 + ... + X10
Sпетя = Y0 + ... + Y10 + Y11

P(Sпетя > Sвася) = ?

Sпетя(10) = Y0 + ... + Y10 -> Sпетя = Sпетя(10) + Y11
Sпетя(10) и Sвася ~ Bin(10; 1/2)
Y11 ~ дискретная, {0: 1/2; 1: 1/2}

P(Sпетя > Sвася) =
1. P(Y11 = 0 и Sпетя(10) > Sвася)
2. P(Y11 = 1 и Sпетя(10) >= Sвася)

Sпетя(10), Sвася — имеют распределение Бернулли с одинаковыми параметрами, поэтому
P(Sпетя(10) > Sвася) = P(Sпетя(10) < Sвася) = (1 — P(Sпетя(10) = Sвася))/2

Обозначим, P(Sпетя(10) = Sвася) = Peq.

P(Sпетя > Sвася) =
P(Y11 = 0) * P(Sпетя(10) > Sвася)
+
P(Y11 = 1) * P(Sпетя(10) >= Sвася)
=
1/2 * (1 — Peq)/2
+
1/2 * ((1 — Peq)/2 + Peq)
= (1 — Peq)/4 + (1 + Peq)/4
= 1/2
Re: Бросаем монетку
От: Буравчик Россия  
Дата: 06.07.18 13:20
Оценка:
Здравствуйте, baily, Вы писали:

B>Вася бросил монетку 10 раз. А Петя 11 раз. Какова вероятность того, что у Пети монетка выпадет орлом больше чем у Васи?

B>Считаем, что при броске вероятность выпадания орла и решки одинакова.

from scipy.stats import binom

def vasya_less_petya(vasya_count, petya_count, p=0.5):
    prob = 0.0
    for k in range(petya_count+1):
        petya_throw_k_avers = binom.pmf(k, petya_count, p)
        vasya_throw_less_k_avers = binom.cdf(k-1, vasya_count, p)
        prob += petya_throw_k_avers * vasya_throw_less_k_avers
    return prob

vasya_less_petya(vasya_count=10, petya_count=11)


Результат:

0.5000000000000003


  Рефакторинг
def vasya_less_petya(vasya_count, petya_count, p=0.5):
    
    def vasya_less_petya_for_k_avers(k):
        petya_throw_exactly_k_avers = binom.pmf(k, petya_count, p)
        vasya_throw_less_k_avers = binom.cdf(k-1, vasya_count, p)
        return petya_throw_exactly_k_avers * vasya_throw_less_k_avers
    
    return sum([vasya_less_petya_for_k_avers(k) for k in range(petya_count+1)])
Best regards, Буравчик
Отредактировано 06.07.2018 13:52 Буравчик . Предыдущая версия .
Re[3]: Бросаем монетку
От: cures Россия cures.narod.ru
Дата: 06.07.18 15:14
Оценка:
Здравствуйте, baily, Вы писали:

B>Для таких любителей можно попросить посчитать вероятность, когда бросали 1000 и 1001 раз соответственно.


Для этого программка пишется с параметром

import sympy as sp

n = int(input())

bi0 = [0] * (n + 1)
bi1 = [0] * (n + 2)
bi0[0] = 1
for i in range(n):
    bi0[i + 1] = bi0[i] * (n - i) // (i + 1)

bi1[0] = 1
bi1[n + 1] = 1
for i in range(n):
    bi1[i + 1] = bi0[i] + bi0[i + 1]

bic1 = [0] * (n + 3)
for i in range(n + 2):
    bic1[i + 1] = bic1[i] + bi1[i]

res = 0
for i in range(n + 1):
    res += bi0[i] * bic1[n + 1 - i]

print sp.Rational(res, sp.Pow(2, 2 * n + 1))


Да, при всех натуральных n выдаёт 1/2, чистое доказательство уже привели выше, но догадаться до него "по индукции", имея данную программку, совсем не сложно.
Re: Бросаем монетку
От: Sophist Россия http://freelearner-ru.blogspot.com
Дата: 07.07.18 14:05
Оценка: 47 (5)
Здравствуйте, baily, Вы писали:

B>Вася бросил монетку 10 раз. А Петя 11 раз. Какова вероятность того, что у Пети монетка выпадет орлом больше чем у Васи?

B>Считаем, что при броске вероятность выпадания орла и решки одинакова.


Гораздо проще можно решить, на одном здравом смысле.

Рассмотрим вариант игры, когда и Вася, и Петя бросают монетку одинаковое количество раз. Какова вероятность победы Пети в этом случае? Пусть вероятность ничьей равна alpha. Тогда, из соображений симметрии, искомая вероятность равна (1 — alpha) / 2.

Теперь рассмотрим игру, когда Петя бросает монетку на один раз больше Васи. Ее можно представить таким образом: сначала Петя бросает монетку один раз, а потом они оба бросают одинаковое количество раз. С вероятностью 1/2 в первый раз у Пети выпадает решка. В этом случае искомая вероятность снова будет равна (1 — alpha) / 2. С вероятностью 1/2 у Пети выпадает орел. В этом случае к вероятности (1 — alpha) / 2 нужно прибавить вероятность, что в оставшихся бросках будет ничья. Эта вероятность равна alpha. Итого имеем: 1/2 * (1 — alpha) / 2 + 1/2 * ((1 — alpha) / 2 + alpha) = 1/2 * (2 * (1 — alpha) / 2 + alpha) = 1/2 * (1 — alpha + alpha) = 1/2.

Очевидно, игра из формулировки задачи является частным случаем последней игры.
Мир не просто сложнее, чем мы себе представляем, -- он сложнее, чем мы можем себе представить.
Re: Бросаем монетку
От: kov_serg Россия  
Дата: 07.07.18 19:05
Оценка:
Здравствуйте, baily, Вы писали:

B>Вася бросил монетку 10 раз. А Петя 11 раз. Какова вероятность того, что у Пети монетка выпадет орлом больше чем у Васи?

B>Считаем, что при броске вероятность выпадания орла и решки одинакова.

Если строго больше (а не больше и равно) то строго 50/50
Re[2]: Бросаем монетку
От: kov_serg Россия  
Дата: 07.07.18 19:12
Оценка: +1
Здравствуйте, Буравчик, Вы писали:

Б>Результат:

Б>

Б>0.5000000000000003

Вы вводите в заблуждение у вас всего 2^(21) вариантов т.е погрешность +-4.8e-7, так что более семи знаков в результате это оверкил, достаточно было написать 0.5000000
Отредактировано 07.07.2018 19:13 kov_serg . Предыдущая версия .
Re[2]: Бросаем монетку
От: baily Россия  
Дата: 09.07.18 08:12
Оценка:
Здравствуйте, Sophist, Вы писали:

Отлично! Я ждал именно этого решения. Без всяких распределений Бернулли и прочего.

Лично мне задача понравилась по многим причинам.
Во первых, изначально на уровне интуиции кажется что шансы выиграть будут 1/2 при равном числе бросков, а это не так.
Во вторых, именно при равном числе бросков точный ответ получить сложно. alpha есть сумма квадратов биномиальных коэффициентов и простой расчетной формулы тут получить сложно.
Ну и в третьих, удивительно, что давая один дополнительный бросок все чудесным образом сокращается и получается точный простой ответ.
Re: Бросаем монетку
От: VladFein США www.FeinSoftware.com
Дата: 18.07.18 02:57
Оценка:
Здравствуйте, baily, Вы писали:

B>Вася бросил монетку 10 раз. А Петя 11 раз. Какова вероятность того, что у Пети монетка выпадет орлом больше чем у Васи?

B>Считаем, что при броске вероятность выпадания орла и решки одинакова.

Покритикуйте мой наивный подход:
Количество орлов у них обоих за первые 10 (ну или 1000) бросков одинаковое; последний бросок даёт орла с вероятностью 50% — это и есть ответ...
Re[3]: Бросаем монетку
От: StatujaLeha на правах ИМХО
Дата: 18.07.18 06:37
Оценка: 11 (2)
Здравствуйте, baily, Вы писали:

B>alpha есть сумма квадратов биномиальных коэффициентов и простой расчетной формулы тут получить сложно.


Все уже придумано до нас
https://ru.wikipedia.org/wiki/Биномиальный_коэффициент#Свёртка_Вандермонда_и_следствия

Когда делал свое решение выше, то наткнулся на эту сумму. Ее можно посчитать
Потом уже оказалось, что из финального решение можно это убрать.
Re[4]: Бросаем монетку
От: baily Россия  
Дата: 18.07.18 08:15
Оценка:
Здравствуйте, StatujaLeha, Вы писали:

SL>Здравствуйте, baily, Вы писали:


B>>alpha есть сумма квадратов биномиальных коэффициентов и простой расчетной формулы тут получить сложно.


SL>Все уже придумано до нас

SL>https://ru.wikipedia.org/wiki/Биномиальный_коэффициент#Свёртка_Вандермонда_и_следствия
SL>Когда делал свое решение выше, то наткнулся на эту сумму. Ее можно посчитать

Супер!!! Т.е, если бы они бросали одинаковое число раз, например, N, то вероятность ничьи будет C(2N, N)/2^N.
И если использовать формулу Стирлинга, то там все чудесно сокращается и вероятность будет примерно равна 1/sqrt(N)
Re[2]: Бросаем монетку
От: baily Россия  
Дата: 18.07.18 08:25
Оценка:
Здравствуйте, VladFein, Вы писали:

VF>Здравствуйте, baily, Вы писали:


B>>Вася бросил монетку 10 раз. А Петя 11 раз. Какова вероятность того, что у Пети монетка выпадет орлом больше чем у Васи?

B>>Считаем, что при броске вероятность выпадания орла и решки одинакова.

VF>Покритикуйте мой наивный подход:

VF>Количество орлов у них обоих за первые 10 (ну или 1000) бросков одинаковое; последний бросок даёт орла с вероятностью 50% — это и есть ответ...

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

Если идти таким путем, то надо еще кое что сделать. Во первых, найти вероятность выполнения такого условия. Пусть она будет P1.
Во вторых, найти вероятность что перед последним броском у Пети уже было строго большее количество орлов. Пусть она будет P2.

Тогда та вероятность, что мы ищем будет 1/2P1 + P2
Re: Этюды для программистов
От: Аноним931 Германия  
Дата: 18.12.18 15:10
Оценка: +1
B>Вася бросил монетку 10 раз. А Петя 11 раз.

Представим Васины и Петины броски как двоичное число, где 1 — это орел, 0 — это решка либо вообще неброшенная монетка, а позиция бита — номер попытки.
У обоих число 11-битовое, только у Васи старший бит жестко установлен в 0, а у Пети меняется.
Следовательно, количество возможных комбинаций у Васи — 1024, у Пети — 2048.
Из 2048 Петиных комбинаций
— в половине (1024) случаев старший бит = 0, а младшие 10 бит идентичны Васиным младшим 10 битам. Эти случаи невыигрышные.
— в оставшейся половине случаев старший бит = 1, а младшие 10 бит опять же идентичны Васиным младшим 10 битам. Эти случаи выигрышные.

B>Какова вероятность того, что у Пети монетка выпадет орлом больше чем у Васи?


Вот и у меня получилось 50%.
Макаревича у нас усиленно травят Шариковы © Ziaw
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.