green_fr: (Default)
[personal profile] green_fr
Купили очередную игрушку с кубиками, начал считать вероятности, просто как-то не получается.
Кидаем один кубик - всё просто, вероятность у каждой грани 1/6.
Кидаем два кубика - тоже просто, вероятность выкинуть в сумме число n равна (n-1)/36 для n<=7 и (13-n)/36 для n>=7. Т.е. такая крышка треугольная.
А в этой игрушке нужно кидать пару кубиков до тех пор, пока не выпадет 4 разные значения. Т.е. если выпадает уже выпавшая в этом туре сумма, мы перебрасываем кубики.
Задача: пересчитать вероятности всех возможных сумм от 2 до 12.
Провёл час с ручкой и бумажкой - быстро и красиво не получается. Сел написал на VBA метод Monte-Carlo - цифры вылезли, но удовлетворения не принесли. Особенно, если учесть грядущую смену работы именно что с программиста на статистика...

Date: 2007-08-18 11:09 pm (UTC)
From: [identity profile] mihhon.livejournal.com
повторами нельзя пренебречь ...

вот полный перебор, 4:3:3 не получается, моё решение тоже неверное ...

ab 0.125
aab 0.03125
aaab 0.0078125
aaaab 0.001953125
aaaaab 4.8828125E-4
aaaaaab 1.220703125E-4
aaaaaaab 3.0517578125E-5
ac 0.0625
aac 0.015625
aaac 0.00390625
aaaac 9.765625E-4
aaaaac 2.44140625E-4
aaaaaac 6.103515625E-5
aaaaaaac 1.52587890625E-5
ba 0.125
bba 0.0625
bbba 0.03125
bbbba 0.015625
bbbbba 0.0078125
bbbbbba 0.00390625
bbbbbbba 0.001953125
bc 0.125
bbc 0.0625
bbbc 0.03125
bbbbc 0.015625
bbbbbc 0.0078125
bbbbbbc 0.00390625
bbbbbbbc 0.001953125
ca 0.0625
cca 0.015625
ccca 0.00390625
cccca 9.765625E-4
ccccca 2.44140625E-4
cccccca 6.103515625E-5
ccccccca 1.52587890625E-5
cb 0.125
ccb 0.03125
cccb 0.0078125
ccccb 0.001953125
cccccb 4.8828125E-4
ccccccb 1.220703125E-4
cccccccb 3.0517578125E-5
check_sum=0.996063232421875
a:0.25: result=0.58135986328125
b:0.5: result=0.82940673828125
c:0.25: result=0.58135986328125

если увеличить количество повторений, то получится:
check_sum=1.0
a:0.25: result=0.5833333333333334
b:0.5: result=0.8333333333333333
c:0.25: result=0.5833333333333333

кстати, события {будет А, будет Б, будет С} не образуют полную группу, сумма их вероятностей не равна 1.

Date: 2007-08-18 11:27 pm (UTC)
From: [identity profile] kalvado.livejournal.com
ну 10:7:7 как раз получается, я поправился
ето пренебрегая повторами - честным расписыванием вероятностей
надо просто учитывать что эффективные вероятности последуюших событий меняются..
если выпало "б" то во втором а:ц=1:1, а если а - то б:ц=2:1
в брут форсе кстати учесть легко... писал бы на чем нормальном - переделал бы, а так .. спагетти-код получился, не разобраться

Date: 2007-08-18 11:41 pm (UTC)
From: [identity profile] mihhon.livejournal.com
хохо, дошло, я нашёл аналитическое решение - эти хвосты - суммы бесконечных геометрических прогрессий => далее тривиально :)

Date: 2007-08-18 11:42 pm (UTC)
From: [identity profile] kalvado.livejournal.com
осталось код написать!

Date: 2007-08-19 12:02 am (UTC)
From: [identity profile] mihhon.livejournal.com
я проверил для
2 из 3-х: а b c , 0.5, 0.25, 0.25
2 из 4-х: а b c d, 1/6, 2/6, 2/6, 1/6

сходится


только вот для случая, когда выбираешь больше, чем 2, похоже надо ещё учитывать размещения ... +бесконечного+ числа элементов

типа
ababab...c
aaabbb...c
aabbab...c



Date: 2007-08-19 12:29 am (UTC)
From: [identity profile] kalvado.livejournal.com
предложение, которое пока у меня сработало:
во втором круге после выпадения "а" все вероятности остальных результатов домножаются на 1/(1-а); после выпадения "аб" - в третем круге 1/(1-а)(1-б)
никаких прогрессий, тупой перебор.
для случая 0.5, 0.25,0.25:
после выпадения А(0.5), вероятности б и ц будут 0.25/(1-0.5)=0.5
после выпадения Б(0.25) - а'=0.5/(1-0.25)=2/3, ц'=0.25/(1-0.25)=1/3
т.е. вероятность
АБ=АЦ в полном раскладе (включая все повторы) 0.5*0.5=1/4
БА(=ЦА)=0.25*2/3=1/6,
БЦ=ЦБ=0.25*1/3=1/12

вот и фсе, осталось расписать на случай 4 элементов из 11...

Date: 2007-08-19 11:05 am (UTC)
From: [identity profile] mihhon.livejournal.com
вот аналитическое решение:



программа даёт те же результаты для предыдущих примеров:

check_sum=0.9995112419128418
a:0.25: result=0.5830888748168945
b:0.5: result=0.8328447341918945
c:0.25: result=0.5830888748168945

Зелёный, проверь, у тебя то же самое через монтекарло получилось?

4 из 11:

check_sum=0.9999991075274337
2:0.027777777777777776: result=0.13082540553267935
3:0.05555555555555555: result=0.24893756434728012
4:0.08333333333333333: result=0.353921116535629
5:0.1111111111111111: result=0.4456963584380095
6:0.1388888888888889: result=0.5246803714082363
7:0.16666666666666666: result=0.5918747975860624
8:0.1388888888888889: result=0.5246803714082362
9:0.1111111111111111: result=0.4456963584380088
10:0.08333333333333333: result=0.3539211165356294
11:0.05555555555555555: result=0.24893756434727982
12:0.027777777777777776: result=0.13082540553267938

Date: 2007-08-19 11:25 am (UTC)
From: [identity profile] mihhon.livejournal.com
да, там где суммы - суммы по всем подмножествам I :) забыл написать

Date: 2007-08-19 04:56 pm (UTC)
From: [identity profile] mihhon.livejournal.com
Pl - суммировать все такие суммы, куда входит l={l, ik}={l, i, j, z}

Date: 2007-08-20 07:42 am (UTC)
From: [identity profile] green-fr.livejournal.com
Примерно такие числа, да...
Я просто надеялся, что там есть какой-то такой финт ушами, сделав который мы можем сказать "очевидно данная сумма равняется..."

Date: 2007-08-20 07:31 am (UTC)
From: [identity profile] green-fr.livejournal.com
Я на этом же остановился: вероятность корректируется в зависимости от выпавшего, потом сумма по всем вариантам первого элемента. Заткнулся достаточно быстро, ничего там не сворачивается, не сходится. Т.е. можно аккуратно всё выписать и досчитать, но это как-то грустно получается.

Profile

green_fr: (Default)
green_fr

July 2025

S M T W T F S
   1 2 345
6789101112
13141516171819
20212223242526
2728293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 4th, 2025 01:30 am
Powered by Dreamwidth Studios