Еще шары в урнах
От: nikov США http://www.linkedin.com/in/nikov
Дата: 29.03.09 17:41
Оценка: 3 (1)
Имеется 5 урн, в каждой из них по 3 шара (в 4 урнах по 2 белых и 1 черному шару, а в 1 урне — 1 белый и 2 черных).
Урны в случайном порядке выставляются в ряд (все перестановки равновероятны). Из 1-й урны вынимают наугад шар и перекладывают во 2-ю, затем из 2-й вынимают наугад шар и перекладывают в 3-ю, и т.д. Наконец, наугад вынимают шар из 5-й урны.

1) Какова вероятность, что он окажется белым?
2) Допустим, что шар, вынутый из 5-й урны, оказался белым. (2a) Какова вероятность, что шар, который переложили из 1-й урны во 2-ю, также был белым? (2b) Какая вероятность, что это тот же самый шар?
Re: Еще шары в урнах
От: Кодт Россия  
Дата: 30.03.09 13:46
Оценка:
Здравствуйте, nikov, Вы писали:

N>Имеется 5 урн, в каждой из них по 3 шара (в 4 урнах по 2 белых и 1 черному шару, а в 1 урне — 1 белый и 2 черных).

N>Урны в случайном порядке выставляются в ряд (все перестановки равновероятны). Из 1-й урны вынимают наугад шар и перекладывают во 2-ю, затем из 2-й вынимают наугад шар и перекладывают в 3-ю, и т.д. Наконец, наугад вынимают шар из 5-й урны.

N>1) Какова вероятность, что он окажется белым?


Это ведь этюд для программистов?
# -*- coding: cp866 -*-
# (виндоуз, консоль, русские буквы в программе)

# НОД
def gcd(a,b) :
    if a<0 :
        a = -a
    if b<0 :
        b = -b
    if a<b :
        (a,b) = (b,a)
    while b :
        (a,b) = (b,a%b)
    return a

# по-быстрому класс рациональной арифметики
class Ratio :
    n = 0
    d = 1
    def __init__(self,n,d) :
        g = gcd(n,d)
        self.n=n/g
        self.d=d/g
    def show(self) :
        return "(%d/%d)" % (self.n,self.d)
    def __repr__(self) :
        return self.show()
    def __str__(self) :
        return self.show()
    def __add__(self,other) :
        return Ratio( self.n*other.d + other.n*self.d, self.d*other.d )
    def __sub__(self,other) :
        return Ratio( self.n*other.d - other.n*self.d, self.d*other.d )
    def __mul__(self,other) :
        return Ratio( self.n*other.n, self.d*other.d )
    def __radd__(self,other) :
        return self + Ratio(other,1)

# константы
pzero = Ratio(0,1)
pone = Ratio(1,1)
p14,p24,p34 = Ratio(1,4),Ratio(2,4),Ratio(3,4)

# количество корзин
buckets = 5

# вероятности для каждой перестановки
probs = {}

# всего у нас 5 перестановок - когда корзина с 1 белым и 2 чёрными шарами оказывается на заданной позиции
for specbucket in xrange(1,buckets+1) :
    print "корзина %d особенная" % specbucket
    if specbucket==1 :
        p = Ratio(1,3)
    else :
        p = Ratio(2,3)
    print "  вытаскиваем %d-й шар, он белый с вероятностью %s" % (1,p)
    for bucket in xrange(2,buckets+2) :
        if bucket==specbucket :
            # 1 of 4 <- if ball is black
            # 2 of 4 <- if ball is white
            # 3 of 4 <- never
            (p1,p2,p3) = (pone-p,p,pzero)
        else :
            (p1,p2,p3) = (pzero,pone-p,p)
        print "  в корзине %d лежат 1..3 белых шара из 4 с вероятностями %s" % (bucket,(p1,p2,p3))
        p = p1*p14 + p2*p24 + p3*p34
        print "  вытаскиваем %d-й шар, он белый с вероятностью %s" % (1,p)
    probs[specbucket] = p

print "итого, вероятности"
for i in probs :
    print "  %d -> %s" % (i, probs[i])
print "суммарная вероятность %s" % (sum(probs[i] for i in probs)*Ratio(1,5))



корзина 1 особенная
  вытаскиваем 1-й шар, он белый с вероятностью (1/3)
  в корзине 2 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (2/3), (1/3))
  вытаскиваем 1-й шар, он белый с вероятностью (7/12)
  в корзине 3 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (5/12), (7/12))
  вытаскиваем 1-й шар, он белый с вероятностью (31/48)
  в корзине 4 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (17/48), (31/48))
  вытаскиваем 1-й шар, он белый с вероятностью (127/192)
  в корзине 5 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (65/192), (127/192))
  вытаскиваем 1-й шар, он белый с вероятностью (511/768)
  в корзине 6 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (257/768), (511/768))
  вытаскиваем 1-й шар, он белый с вероятностью (2047/3072)
корзина 2 особенная
  вытаскиваем 1-й шар, он белый с вероятностью (2/3)
  в корзине 2 лежат 1..3 белых шара из 4 с вероятностями ((1/3), (2/3), (0/1))
  вытаскиваем 1-й шар, он белый с вероятностью (5/12)
  в корзине 3 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (7/12), (5/12))
  вытаскиваем 1-й шар, он белый с вероятностью (29/48)
  в корзине 4 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (19/48), (29/48))
  вытаскиваем 1-й шар, он белый с вероятностью (125/192)
  в корзине 5 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (67/192), (125/192))
  вытаскиваем 1-й шар, он белый с вероятностью (509/768)
  в корзине 6 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (259/768), (509/768))
  вытаскиваем 1-й шар, он белый с вероятностью (2045/3072)
корзина 3 особенная
  вытаскиваем 1-й шар, он белый с вероятностью (2/3)
  в корзине 2 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (1/3), (2/3))
  вытаскиваем 1-й шар, он белый с вероятностью (2/3)
  в корзине 3 лежат 1..3 белых шара из 4 с вероятностями ((1/3), (2/3), (0/1))
  вытаскиваем 1-й шар, он белый с вероятностью (5/12)
  в корзине 4 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (7/12), (5/12))
  вытаскиваем 1-й шар, он белый с вероятностью (29/48)
  в корзине 5 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (19/48), (29/48))
  вытаскиваем 1-й шар, он белый с вероятностью (125/192)
  в корзине 6 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (67/192), (125/192))
  вытаскиваем 1-й шар, он белый с вероятностью (509/768)
корзина 4 особенная
  вытаскиваем 1-й шар, он белый с вероятностью (2/3)
  в корзине 2 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (1/3), (2/3))
  вытаскиваем 1-й шар, он белый с вероятностью (2/3)
  в корзине 3 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (1/3), (2/3))
  вытаскиваем 1-й шар, он белый с вероятностью (2/3)
  в корзине 4 лежат 1..3 белых шара из 4 с вероятностями ((1/3), (2/3), (0/1))
  вытаскиваем 1-й шар, он белый с вероятностью (5/12)
  в корзине 5 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (7/12), (5/12))
  вытаскиваем 1-й шар, он белый с вероятностью (29/48)
  в корзине 6 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (19/48), (29/48))
  вытаскиваем 1-й шар, он белый с вероятностью (125/192)
корзина 5 особенная
  вытаскиваем 1-й шар, он белый с вероятностью (2/3)
  в корзине 2 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (1/3), (2/3))
  вытаскиваем 1-й шар, он белый с вероятностью (2/3)
  в корзине 3 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (1/3), (2/3))
  вытаскиваем 1-й шар, он белый с вероятностью (2/3)
  в корзине 4 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (1/3), (2/3))
  вытаскиваем 1-й шар, он белый с вероятностью (2/3)
  в корзине 5 лежат 1..3 белых шара из 4 с вероятностями ((1/3), (2/3), (0/1))
  вытаскиваем 1-й шар, он белый с вероятностью (5/12)
  в корзине 6 лежат 1..3 белых шара из 4 с вероятностями ((0/1), (7/12), (5/12))
  вытаскиваем 1-й шар, он белый с вероятностью (29/48)
итого, вероятности
  1 -> (2047/3072)
  2 -> (2045/3072)
  3 -> (509/768)
  4 -> (125/192)
  5 -> (29/48)
суммарная вероятность (13/20)



N>2) Допустим, что шар, вынутый из 5-й урны, оказался белым.

N> (2a) Какова вероятность, что шар, который переложили из 1-й урны во 2-ю, также был белым?

Это надо считать по Байесу...
Чёрт, всю теорию вероятности позабыл.

N> (2b) Какая вероятность, что это тот же самый шар?


Вероятность вытаскивания белого шара от начала до конца — 3/1280
(1/3+4*2/3)/5 * (1/4)^4
=============    ===  =- количество урн после первой
      |           +----- количество шаров в урне, после вброса
      +----------------- вероятность вынимания белого шара из первой урны

Байес, байес, ау...
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Перекуём баги на фичи!
Re: Еще шары в урнах
От: vadimcher  
Дата: 30.03.09 20:13
Оценка:
Здравствуйте, nikov, Вы писали:

N>Имеется 5 урн, в каждой из них по 3 шара (в 4 урнах по 2 белых и 1 черному шару, а в 1 урне — 1 белый и 2 черных).

N>Урны в случайном порядке выставляются в ряд (все перестановки равновероятны). Из 1-й урны вынимают наугад шар и перекладывают во 2-ю, затем из 2-й вынимают наугад шар и перекладывают в 3-ю, и т.д. Наконец, наугад вынимают шар из 5-й урны.

N>1) Какова вероятность, что он окажется белым?

N>2) Допустим, что шар, вынутый из 5-й урны, оказался белым. (2a) Какова вероятность, что шар, который переложили из 1-й урны во 2-ю, также был белым? (2b) Какая вероятность, что это тот же самый шар?

1) Рассмотрим корзину. Пусть в ней i белых. Если на вход поступает белый, то вероятность вытащить белый равна (i+1)/4, иначе i/4. Таким образом, если на входе вероятность белого p, то на выходе вероятность белого (i+1)p/4+i(1-p)/4=(p+i)/4. Если первая корзина с двумя черными (вероятность 1/5), то на вход второй корзины подается 1/3, которая преобразуется в (1/3)/4^4+2/4^4+2/4^3+2/4^2+2/4. Если же корзина с черными на i-м месте с конца, i<5, то вероятность на выходе (2/3)/4^4+2/4^4+2/4^3+2/4^2+2/4+1/4^i-2/4^i. Сумма всех вероятностей равна (1/5)*(3/4^4+9/4^4+9/4^3+9/4^2+9/4), причем эта формула красиво сворачивается, т.к. 3/4^k+9/4^k=3/4^(k-1), т.е. вероятность равна 3/5.

Кстати, если у нас n корзин с двумя белыми, одна с двумя черными, то ответ будет (1/(n+1))*((2n+1)/3/4^n+(2n+1)/4^n+(2n+1)/4^(n-1)+...), что также сворачивается с использованием (2n+1)/3/4^k+(2n+1)/4^k=(2n+1)/3/4^(k-1), т.е. вероятность будет (2n+1)/[3(n+1)].

При n=0 она равна, очевидно, 1/3, а при n=1 -- 1/2, что также очевидно в данном случае в силу симметрии!

Также, эта вероятность стремится к двум третям, что не удивительно. Действительно, пусть у нас бесконечный ряд корзин с двумя белыми и одним черным. Тогда вероятность будет сходиться к "устойчивой", т.е. такой вероятности p, что подай ее на вход очередного ящика, на выходе будет та же самая вероятность. (p+2)/4=p => p=2/3.

А вот зайца кому, зайца-выбегайца?!
Re[2]: Еще шары в урнах
От: vadimcher  
Дата: 30.03.09 20:16
Оценка:
Здравствуйте, vadimcher, Вы писали:

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


N>>Имеется 5 урн, в каждой из них по 3 шара (в 4 урнах по 2 белых и 1 черному шару, а в 1 урне — 1 белый и 2 черных).

N>>Урны в случайном порядке выставляются в ряд (все перестановки равновероятны). Из 1-й урны вынимают наугад шар и перекладывают во 2-ю, затем из 2-й вынимают наугад шар и перекладывают в 3-ю, и т.д. Наконец, наугад вынимают шар из 5-й урны.

N>>1) Какова вероятность, что он окажется белым?

N>>2) Допустим, что шар, вынутый из 5-й урны, оказался белым. (2a) Какова вероятность, что шар, который переложили из 1-й урны во 2-ю, также был белым? (2b) Какая вероятность, что это тот же самый шар?

Что касается второго пункта, то он более муторный.

2)
a) У нас четыре гипотезы: (из первой переложили белый и из первой переложили черный)x(первая с двумя черными и первая с двумя белыми). Т.е. нам надо найти условную вероятность вытащить в конце белый при этих гипотезах. Если предположить, что первый шар был белый, то это просто меняет вероятность на входе второй корзины с 1/3 или 2/3 на 1, если предположить, что черный -- на 0. Т.е.
— первая с двумя черными, переложили черный (в скобках вероятность самой гипотезы -- 2/15), вероятность белого в конце равна 2/4^4+2/4^3+2/4^2+2/4
— первая с двумя черными, переложили белый (1/15), вероятность белого в конце равна 1/4^4+2/4^3+2/4^2+2/4
— первая с двумя белыми, переложили черный (4/15), вероятность белого в конце равна (1/4)(7/4^4+7/4^3+7/4^2+7/4)
— первая с двумя белыми, переложили белый (8/15), вероятность белого в конце равна 1/4^4+(1/4)(7/4^4+7/4^3+7/4^2+7/4)
Теперь вероятность каждой гипотезы вырастет пропорционально вероятности получить белый в конце при данной гипотезе, т.е. надо перемножить для каждой из них ее вероятность на вероятность получения белого, отнормировать и взять сумму вероятностей второй и четвертой гипотез, чтобы получить ответ.

b) Здесь все проще. Вероятность того, что первый совпал с последним при условии, что вытащили белый в конце, а также, что первый тоже белый, равна вероятности перекладывать его каждый раз, т.е. равна 1/256, а если надо только при условии, что в конце белый, то надо ее умножить на вероятность пункта a).

А вот зайца кому, зайца-выбегайца?!
Re[2]: Еще шары в урнах
От: vadimcher  
Дата: 30.03.09 20:29
Оценка:
Здравствуйте, Кодт, Вы писали:

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


N>>Имеется 5 урн, в каждой из них по 3 шара (в 4 урнах по 2 белых и 1 черному шару, а в 1 урне — 1 белый и 2 черных).

N>>Урны в случайном порядке выставляются в ряд (все перестановки равновероятны). Из 1-й урны вынимают наугад шар и перекладывают во 2-ю, затем из 2-й вынимают наугад шар и перекладывают в 3-ю, и т.д. Наконец, наугад вынимают шар из 5-й урны.

N>>1) Какова вероятность, что он окажется белым?

К>суммарная вероятность (13/20)

У меня что-то аналитически другой результат: 3/5. Мне кажется, ты одно лишнее перекладывание каждый раз делаешь.

N>> (2b) Какая вероятность, что это тот же самый шар?

К>Вероятность вытаскивания белого шара от начала до конца — 3/1280
К>
К>(1/3+4*2/3)/5 * (1/4)^4
К>=============    ===  =- количество урн после первой
К>      |           +----- количество шаров в урне, после вброса
К>      +----------------- вероятность вынимания белого шара из первой урны
К>


Здесь немного не так, первое в произведении будет не безусловная вероятность вытащить белый в начале, а условная по условию, что в конце вытащили белый, т.е. (вероятность пункта 2a)*(1/4)^4, хотя это будет близко.

А вот зайца кому, зайца-выбегайца?!
Re: Еще шары в урнах
От: johnsmith2  
Дата: 31.03.09 10:36
Оценка:
Здравствуйте, nikov, Вы писали:

N>Имеется 5 урн, в каждой из них по 3 шара (в 4 урнах по 2 белых и 1 черному шару, а в 1 урне — 1 белый и 2 черных).

N>Урны в случайном порядке выставляются в ряд (все перестановки равновероятны). Из 1-й урны вынимают наугад шар и перекладывают во 2-ю, затем из 2-й вынимают наугад шар и перекладывают в 3-ю, и т.д. Наконец, наугад вынимают шар из 5-й урны.

N>1) Какова вероятность, что он окажется белым?

N>2) Допустим, что шар, вынутый из 5-й урны, оказался белым. (2a) Какова вероятность, что шар, который переложили из 1-й урны во 2-ю, также был белым? (2b) Какая вероятность, что это тот же самый шар?

1) 3/5
2a) 1369/2304
2b) 1/256 ( в формулировке Допустим, что шар, вынутый из 5-й урны, оказался белым. Какова вероятность, что это тот же шар что переложили из 1-й урны во 2-ю )
2b) 9/1369 ( в формулировке Допустим, что шар, вынутый из 5-й урны, оказался белым. Пусть также шар, который переложили из 1-й урны во 2-ю, также оказался белым. Какая вероятность, что это тот же самый шар? )
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.