IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Расчет мат. ожидания с учетом закона больших чисел. Опровержение теории об "ошибке игрока"
cfytr
сообщение 21.11.2010, 11:57
Сообщение #1


Новичок
*

Группа: Продвинутые
Сообщений: 3
Регистрация: 21.11.2010
Город: Санкт-Петербург



Пост начинается с достаточно непонятных слов, но затем все будет изложено попроще.
Считается, что вероятность желаемого исхода не зависит от предыдущих исходов случайного события. Но в то же время Зако́н больши́х чи́сел утверждает, что среднее арифметическое достаточно большой конечной выборки из фиксированного распределения близко к математическому ожиданию этого распределения.
Основываясь на этих двух утверждениях я решил проверить справедливость первого, проведя эксперимент с "подбрасыванием монетки". Естественно в век компьютерных технологий бросать монетку никто не собирается.
Итак суть эксперимента:
1) До начала эксперимента у нас имеется 0 условных единиц.
2) Будем бросать идеальную монетку, вероятность выпадания орла=вероятности выпадания решки=0,5.
3) Перед броском, будем загадывать, что выпадет: орел или решка.
4) Если наше "предсказание сбывается", то мы увеличиваем количество условных единиц на 1, если нет, уменьшаем на 1.
Тогда плотность распределения выглядит так:
(IMG:http://img72.imageshack.us/img72/4459/23082620.png)
5) После каждого броска будем вести подсчет количества выпавших орлов и количество выпавших решек.
6) Загадывать сторону монетки будем так: если орлов выпало меньше чем решек, то загадываем орла.

Теперь давайте посчитаем мат ожидание каждого броска. M(x)=1*0.5+(-1)*0.5=0
Условия для каждого броска одинаковые, а значит сколько бы раз монетку не бросали, в среднем у нас будет 0 условных единиц. Этого результата я и ждал когда писал код эксперимента. Но каково же было мое удивление, когда среднее арифметическое по результатам эксперимента оказалось >0!!!
Вот результаты 100 экспериментов, каждый начинался с обнуления всех параметров. В каждом эксперименте проводилось 100млн бросков монеток.
Код
баланс   | среднее    |максимальное
условных | арифмети-  |отрицательное
единиц   | ческое     |значение
         | каждого    |баланса
         | броска     |
______________________________
  244030 |    0.00244 |     96
  537102 |    0.00537 |    134
  500348 |    0.00500 |     64
  579780 |    0.00580 |    142
  799488 |    0.00799 |     42
  695784 |    0.00696 |     34
  726128 |    0.00726 |     74
  476026 |    0.00476 |    130
  536974 |    0.00537 |     82
  579778 |    0.00580 |    132
  836118 |    0.00836 |     36
  750650 |    0.00751 |    108
  927792 |    0.00928 |     66
  640830 |    0.00641 |     77
1013202 |    0.01013 |     74
1037648 |    0.01038 |     28
  823932 |    0.00824 |     60
  592004 |    0.00592 |     20
  842228 |    0.00842 |     38
  695802 |    0.00696 |     19
1000912 |    0.01001 |     58
  793426 |    0.00793 |     35
  878856 |    0.00879 |     62
  579744 |    0.00580 |     33
  530894 |    0.00531 |    114
  750602 |    0.00751 |     63
  372300 |    0.00372 |     84
  561408 |    0.00561 |     16
  268530 |    0.00269 |    124
  280630 |    0.00281 |     84
  341716 |    0.00342 |    144
  524718 |    0.00525 |     66
  311198 |    0.00311 |    190
  359986 |    0.00360 |    100
  500436 |    0.00500 |    134
  689588 |    0.00690 |     30
  659106 |    0.00659 |    150
  823868 |    0.00824 |     24
  695784 |    0.00696 |     54
  689596 |    0.00690 |     52
  750716 |    0.00751 |     85
  750658 |    0.00751 |     40
  860624 |    0.00861 |     61
  836124 |    0.00836 |     50
  732426 |    0.00732 |     69
  823986 |    0.00824 |     24
  683626 |    0.00684 |     22
  830082 |    0.00830 |     70
1037620 |    0.01038 |     54
  622466 |    0.00622 |    104
  579786 |    0.00580 |     24
  836104 |    0.00836 |     47
  878912 |    0.00879 |      9
  830010 |    0.00830 |     92
1013150 |    0.01013 |     35
  689688 |    0.00690 |     62
  842202 |    0.00842 |     51
  207484 |    0.00207 |    134
  659068 |    0.00659 |      4
  286798 |    0.00287 |    148
  671218 |    0.00671 |     16
  488174 |    0.00488 |    140
  671174 |    0.00671 |     68
  341736 |    0.00342 |    144
  305064 |    0.00305 |     82
  531000 |    0.00531 |    128
  536984 |    0.00537 |     52
  463824 |    0.00464 |    144
  836130 |    0.00836 |     54
  683582 |    0.00684 |     36
  671188 |    0.00671 |     96
  494318 |    0.00494 |    116
  500346 |    0.00500 |     86
  524856 |    0.00525 |    132
  799464 |    0.00799 |     38
  842178 |    0.00842 |    108
  830130 |    0.00830 |     56
  549288 |    0.00549 |     79
1037624 |    0.01038 |     82
1013240 |    0.01013 |     20
  787290 |    0.00787 |     74
  524860 |    0.00525 |     20
  750676 |    0.00751 |     40
  683588 |    0.00684 |     21
  891054 |    0.00891 |     58
  878872 |    0.00879 |     29
  793436 |    0.00793 |     60
  524806 |    0.00525 |     27
  536994 |    0.00537 |    122
  836056 |    0.00836 |     67
  311256 |    0.00311 |    108
  433226 |    0.00433 |     32
  323472 |    0.00323 |    100
  256212 |    0.00256 |     94
  384442 |    0.00384 |    132
  591846 |    0.00592 |     60
  372222 |    0.00372 |    186
  439334 |    0.00439 |    100
  537054 |    0.00537 |    114
  567518 |    0.00568 |     24
итоги:
среднее  | среднее    |максимальное
  644162 |    0.00644 |    190


А вот код программы на с++
Код

#include<time.h>
#include<iostream>
using namespace std;
int main()
{
    FILE *file=fopen("test.txt","w");
    srand(time(0));
    long double Nflip=100000000;
    long double Ntries=100;
    bool a1,a2,a;
    bool stavka=0;
    long double maxloss=0;
    long double win=0;
    long double nol=0;
    long double odin=0;
    long double maxmaxloss=0;
    long double everagewin=0;
    long double sumwin=0;
    for(long double j=0;j<Ntries;++j)
    {
        stavka=0;
        maxloss=0;
        win=0;
        nol=0;
        odin=0;
        for(long double i=0;i<Nflip;++i)
        {
            if(nol>=odin)
                stavka=0;
            else
                stavka=1;
            do
            {
                a1=rand()%2;
                a2=rand()%2;
            }
            while(a1==a2);
            if(a1==1)
                a=true;
            else
                a=false;
            if(a==true)
                ++nol;
            else
                ++odin;
            if(a==stavka)
                ++win;
            else
                --win;
            if((win<0)&&(abs(win)>maxloss))
            {
                maxloss=abs(win);
            }
        }
        if(maxmaxloss<maxloss)
            maxmaxloss=maxloss;
        sumwin+=win;
        printf("% 8.0Lf | % 10.5Lf | % 6.0Lf\n",win,win/Nflip,maxloss);
        fprintf(file,"% 8.0Lf | % 10.5Lf | % 6.0Lf\n",win,win/Nflip,maxloss);
    }
    everagewin=sumwin/Ntries;
    printf("% 8.0Lf | % 10.5Lf | % 6.0Lf\n",everagewin,everagewin/Nflip,maxmaxloss);
    fprintf(file,"% 8.0Lf | % 10.5Lf | % 6.0Lf\n",everagewin,everagewin/Nflip,maxmaxloss);
    fclose(file);
    char t;
    cin>>t;
}


Ну вот теперь я подошел к самому главному.
1)Как вы считаете чем определяются такие отличия теоретического мат. ожидания от практического средне арифметического?
2)Как можно рассчитать вероятность выпадания орла, если в прошлый раз орел уже выпадал. Ведь как показал эксперимент вероятность выпадания орла при каждом последующем броске различны. ИМХО, они должны в теории отличаться на бесконечно малую величину, но 0,644%/2=0,322% это не такая уж бесконечно малая.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
malkolm
сообщение 21.11.2010, 21:14
Сообщение #2


Старший преподаватель
*****

Группа: Преподаватели
Сообщений: 2 167
Регистрация: 14.6.2008
Город: Н-ск
Вы: преподаватель



Объясните, что за колонки у Вас в таблице. Непонятно, что такое "среднее арифметическое одного броска", "баланс у.е." и т.п.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cfytr
сообщение 22.11.2010, 13:23
Сообщение #3


Новичок
*

Группа: Продвинутые
Сообщений: 3
Регистрация: 21.11.2010
Город: Санкт-Петербург



Цитата(malkolm @ 21.11.2010, 21:14) *

Объясните, что за колонки у Вас в таблице. Непонятно, что такое "среднее арифметическое одного броска", "баланс у.е." и т.п.

"баланс у.е." - это количество условных единиц после окончания одного эксперимента, то есть после 100млн бросков монеток. Можно сказать наш выигрыш, после 100млн бросков.
"среднее арифметическое одного броска" - показывает сколько в среднем мы выигрываем за каждый бросок, считал как "баланс у.е." деленное на 100млн. бросков, этот показатель соответствует теоретическому мат ожиданию.
"максимальное отрицательное значение баланса" - показывает сколько у.е. мы максимально проиграли, понимаю что в мат статистике вместо этого показателя должна быть дисперсия или среднеквадратичное значение такой стратегии, но было лень разбираться как их измерять.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
malkolm
сообщение 22.11.2010, 16:55
Сообщение #4


Старший преподаватель
*****

Группа: Преподаватели
Сообщений: 2 167
Регистрация: 14.6.2008
Город: Н-ск
Вы: преподаватель



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

Код

   26362 |    0.00026 |   2051
    5124 |    0.00005 |   5315
   -3186 |   -0.00003 |   3413
  -13726 |   -0.00014 |  15831
     464 |    0.00000 |   3158
   18382 |    0.00018 |   1846
   18714 |    0.00019 |     42
   -1298 |   -0.00001 |   3046
    2142 |    0.00002 |   3796
   -5120 |   -0.00005 |   5323
   -2762 |   -0.00003 |   7987
    6542 |    0.00007 |   3699
   -1180 |   -0.00001 |   3789
    -226 |   -0.00000 |  12835
   14314 |    0.00014 |   2641
  -14960 |   -0.00015 |  22516
    2248 |    0.00002 |   6856
    8992 |    0.00009 |   1466
  -13430 |   -0.00013 |  14159
   10436 |    0.00010 |   4148
  -12612 |   -0.00013 |  13514
    3126 |    0.00003 |    213
   12198 |    0.00012 |   1392
   18058 |    0.00018 |   1928
   13782 |    0.00014 |  11689
   19840 |    0.00020 |    344
  -12420 |   -0.00012 |  16226
   19520 |    0.00020 |   1838
    5240 |    0.00005 |   3666
   -1244 |   -0.00001 |   2214
   10494 |    0.00010 |   3589
   -1188 |   -0.00001 |   3415
   -8092 |   -0.00008 |  13201
   13366 |    0.00013 |   1471
   10378 |    0.00010 |   1204
    3402 |    0.00003 |   6511
   -7250 |   -0.00007 |   9080
     174 |    0.00000 |   4646
   10428 |    0.00010 |   4335
     978 |    0.00001 |   6677
   -4794 |   -0.00005 |   8423
    6950 |    0.00007 |    833
  -23550 |   -0.00024 |  24763
   14282 |    0.00014 |   1749
    2042 |    0.00002 |   5381
     270 |    0.00000 |   2935
  -10856 |   -0.00011 |  12329
  -10168 |   -0.00010 |  10608
   12424 |    0.00012 |    922
   17284 |    0.00017 |   2069
   -4222 |   -0.00004 |   8796
   -1014 |   -0.00001 |   6351
    -566 |   -0.00001 |   5002
  -12760 |   -0.00013 |  16305
   12062 |    0.00012 |   1820
   -2142 |   -0.00002 |   4497
      36 |    0.00000 |  15281
   12128 |    0.00012 |   1286
  -15670 |   -0.00016 |  19880
   22388 |    0.00022 |   3792
    6884 |    0.00007 |    562
   -2254 |   -0.00002 |   6591
   -1506 |   -0.00002 |   4716
  -15926 |   -0.00016 |  16869
   -2470 |   -0.00002 |   5399
    6746 |    0.00007 |   1789
   23854 |    0.00024 |   3214
    4180 |    0.00004 |   9989
   13014 |    0.00013 |   5563
  -11604 |   -0.00012 |  15700
   16938 |    0.00017 |   3051
    5764 |    0.00006 |   4468
    9432 |    0.00009 |   2032
    9634 |    0.00010 |   4301
   -1594 |   -0.00002 |   2388
   -3072 |   -0.00003 |   8539
   15078 |    0.00015 |   1957
   13332 |    0.00013 |   1051
    2256 |    0.00002 |  11053
  -10270 |   -0.00010 |  10407
   -2532 |   -0.00003 |   5784
    1008 |    0.00001 |   3013
    8678 |    0.00009 |   6700
   -5988 |   -0.00006 |   7181
    2350 |    0.00002 |   3371
  -22938 |   -0.00023 |  25369
...

Код

   -5910 |   -0.00006 |  14302
   -1684 |   -0.00002 |  10053
   -3674 |   -0.00004 |   6542
  -13896 |   -0.00014 |  15399
   -9444 |   -0.00009 |  16324
    8164 |    0.00008 |   1072
  -20748 |   -0.00021 |  21401
  -17556 |   -0.00018 |  19409
    7450 |    0.00007 |     30
    -464 |   -0.00000 |   5393
   14578 |    0.00015 |   2733
    2914 |    0.00003 |   4407
   -2680 |   -0.00003 |   4697
   -8268 |   -0.00008 |   9757
    1162 |    0.00001 |   5090
   -6342 |   -0.00006 |  10239
    4128 |    0.00004 |   8780
  -13140 |   -0.00013 |  15489
   -9552 |   -0.00010 |   9943
   15942 |    0.00016 |   1371
   -6792 |   -0.00007 |   7190
   10804 |    0.00011 |   7068
   11680 |    0.00012 |   4698
    1526 |    0.00002 |   5989
     550 |    0.00001 |   2152
    2308 |    0.00002 |   3738
   -2636 |   -0.00003 |   3095
    1412 |    0.00001 |   7046
   -3846 |   -0.00004 |  14260
    5190 |    0.00005 |   2519
   14554 |    0.00015 |    856
    7752 |    0.00008 |   2896
  -18550 |   -0.00019 |  22068
   15138 |    0.00015 |   2826
    9282 |    0.00009 |   6566
  -13082 |   -0.00013 |  17382
   -5194 |   -0.00005 |   8144
  -14010 |   -0.00014 |  15383
   11450 |    0.00011 |   2535
  -27556 |   -0.00028 |  31020
    7942 |    0.00008 |   3174
     688 |    0.00001 |   5588
   22398 |    0.00022 |    500
   -6266 |   -0.00006 |  17106
    -576 |   -0.00001 |   6033
  -14948 |   -0.00015 |  17825
  -18566 |   -0.00019 |  19845
   -6112 |   -0.00006 |  16668
     960 |    0.00001 |   8188
    -366 |   -0.00000 |   3571
  -10356 |   -0.00010 |  14136
   -2296 |   -0.00002 |   3288
   -2378 |   -0.00002 |   7229
   13360 |    0.00013 |    943
    5542 |    0.00006 |   4843
    1818 |    0.00002 |   5304
    2652 |    0.00003 |   7887
   -2296 |   -0.00002 |   6360
  -19182 |   -0.00019 |  19582
    1498 |    0.00001 |   7198
   -6528 |   -0.00007 |  11281
  -16750 |   -0.00017 |  16803
   14692 |    0.00015 |    511
  -12828 |   -0.00013 |  15994
   12784 |    0.00013 |   5854
   12218 |    0.00012 |   5458
    4778 |    0.00005 |   3685
   -4842 |   -0.00005 |   8372
   -1714 |   -0.00002 |   2144
   -5308 |   -0.00005 |   8342
    4952 |    0.00005 |   5722
    -352 |   -0.00000 |   7258
    -314 |   -0.00000 |   5251
   13608 |    0.00014 |    184
    5868 |    0.00006 |   4338
   -7776 |   -0.00008 |  15274
    9490 |    0.00009 |   3776
   16020 |    0.00016 |   2520
   -1494 |   -0.00001 |   5116
   -4306 |   -0.00004 |   5562
  -14472 |   -0.00014 |  14569
   14282 |    0.00014 |    803
  -22394 |   -0.00022 |  28290
    1782 |    0.00002 |   6386
    8004 |    0.00008 |   2722
   19660 |    0.00020 |    756
    3200 |    0.00003 |   9798
   -2992 |   -0.00003 |  11421
   -9420 |   -0.00009 |  13473
  -21364 |   -0.00021 |  21550
    1410 |    0.00001 |  10266
   -1608 |   -0.00002 |   7994
  -14162 |   -0.00014 |  16497
   -4812 |   -0.00005 |   9918
   -7612 |   -0.00008 |   7880
    5656 |    0.00006 |   4285
    7190 |    0.00007 |   3179
    9180 |    0.00009 |   1941
   -1064 |   -0.00001 |  11190
...
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cfytr
сообщение 22.11.2010, 18:18
Сообщение #5


Новичок
*

Группа: Продвинутые
Сообщений: 3
Регистрация: 21.11.2010
Город: Санкт-Петербург



забавно) такой результат я и ждал...
malkolm, каким гсч ты пользовался?
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
malkolm
сообщение 22.11.2010, 20:44
Сообщение #6


Старший преподаватель
*****

Группа: Преподаватели
Сообщений: 2 167
Регистрация: 14.6.2008
Город: Н-ск
Вы: преподаватель



Завтра спрошу у сына, какой генератор на его дебиан линюксах дома и на работе (IMG:style_emoticons/default/smile.gif)
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
malkolm
сообщение 23.11.2010, 17:58
Сообщение #7


Старший преподаватель
*****

Группа: Преподаватели
Сообщений: 2 167
Регистрация: 14.6.2008
Город: Н-ск
Вы: преподаватель



Обычный /dev/random в UNIX/Linux: http://ru.wikipedia.org/wiki/Генератор_псевдослучайных_чисел
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 24.5.2025, 22:03

Книжки в помощь: "Сборник заданий по высшей математике" Кузнецов Л.А., "Сборник заданий по высшей математике" Чудесенко В.Ф., "Индивидуальные задания по высшей математике" Рябушко А.П., и другие.




Зеркало сайта Решебник.Ру - reshebnik.org.ru