И снова я возвращаюсь к распределениям вероятности. Итак заключительная часть моих поисков. читать дальшеКак я уже отмечала, мне осталось самое главное – понять, откуда берется эта чертова формула Пуассона, а как это можно выяснить, я совершенно себе не представляла, острый вопрос – ну с чего начинать то? Вот тебе Неперово число, а каким боком оно здесь встало – ну совершенно непонятно, что с ним делать, как его выразить, куда всунуть?
Нет, ну серьезно, вопрос стоит – как распределяются вероятности между исходами разного числа испытаний, ПРИЧЕМ ТУТ НЕПЕРОВО ЧИСЛО???
Казалось, вопрос моими мозгами неразрешимый, и я как-то даже успокоилась по этому поводу, закинув загадку в далекое будущее, когда я вдруг поумнею, и возьмусь учить высшую математику на более высоком уровне.
А вот по другому вопросу я все же не успокоилась, и загорелась целью этот вопрос добить. Я вспомнила о вопиющем факте – ну почему так трудно работать с числами, бесконечно близкими к единице, такими, как q в примере с цитохромом с. Ну не может быть такого, чтобы для проведения операций с числом 1 – 10^100 необходимо было переводить его в абсолютный вид с неимоверной вереницей девяток. Просто обязан быть способ как-то обойти эту проблему. Теперь еще вопрос – ведь не просто надо как-то представить это страшное число, надо еще его возводить в страшного вида степень! Обычно для возведения в степень многочлена пользуются биномом Ньютона, но нам то это совсем не грозит, ведь у нас степень то жуткая – возведи двучлен в третью степень, получишь четверочлен, возведи его в миллионную степень – и будет тебе выражение из миллиона слагаемых, красота какая!!! Одна мысль об этом меня поначалу так напугала, что я сразу выбила сию перспективу из головы – никакое пентагоновское ЭВМ не поможет мне разобраться с этими степенями, твердо решила я.
Потом же я задумалась – ведь должен существовать способ не само это число близкое к единице возводить, а осуществлять преобразования только с этим отклонением, единица же везде будет оставаться единицей.
В тот вечер я села за листочком, и написала выражение: «(1 – 10^-6)^2»… И я все поняла – ну конечно, от чего то (от каких то слагаемых) придется просто отказываться, упрощая выражение.
Сначала, разумеется, была идея вот в этом выражении: (1 – 10^-6)^2 = 1 – 2*10^-6 + 10^-12 отказаться от 10^-12, так как это слагаемое совершенно не значимо даже по сравнению с 2*10^-6. Получаем (1 – 10^-6)^2 = 1 – 2*10^-6, теперь попробуем третью степень:
(1 – 10^-6)^3 = (1 – 2*10^-6 + 10^-12) (1 – 10^6) = 1 – 2*10^-6 – 10^-6 = 1 – 3*10^-6 (что получается после того, как мы убрали все числа ниже одной миллионной)
(1 – 10^-6)^4 = (1 – 3*10^-6) (1 – 10^6) = 1 – 3*10^-6 – 10^-6 = 1 – 4*10^-6
(1 – 10^-6)^5 = 1 – 5*10^-6…
Стало очевидно, что при таком раскладе единственное значимое число возрастает линейно, что пугает. При возрастании степени нашего двучлена возрастает вычитаемое, а уменьшаемое остается, таким образом при степени, больше миллиона результат вообще станет отрицательным, что нонсенс. Поэтому пришлось запретить себе пренебрегать третьим членом, пришлось учитывать 10^-12 в выражениях.
Ну хорошо, в итоге получилось, что при возрастании степени наше выражение растет в следующем законе: (1 – 10^-6)^n = 1 – n*10^-6 + C^2.n*10^-12. Эту формулу я вывела чисто эмпирически, я обратила внимание на то, что при возрастании n коэффициент при третьем члене проходит последовательность: 0, 1, 3, 6, 10, 15… , вот и поняла, что это C^2.n. Правда вставал вопрос, почему именно двойка стоит в верхнем индексе, но тогда я на этом не зацикливалась, и попросту решила, что ведь это же бином, вот и двойка.
Итак теперь формула стала не столь пугающа, при возрастании степени возрастание отрицательного второго члена уже компенсировало возрастание положительного третьего. Поначалу третий член был вообще не значим, но тот возрастал быстрее, и вскоре становится реальным конкурентом второму члену… но потом-то он резко перегоняет второй член, и опять получается реальная погрешность. Уже при возведении нашего числа в стотысячную степень отличия значительны, если взять калькулятор, и вычислить (1 – 10^-6)^10^5, то получается 0,9048373, а на листочке с помощью моего метода получается 0,9049995. Пока кажется вполне приемлемо, но ведь это степень, которая в десяток раз меньше обратного значения степени в скобке, что же будет дальше?
При возведении нашего числа в миллионную степень в случае использования первоначальной формулы с двумя членами получалось вообще нуль, а сейчас получается число 1 – 1 + 0,5, тогда как истинное значение такого выражения 0,368, явно истина меньше расчетной величины, получается, что здесь уже силу набирает четвертый член выражения, который становится весом, и если его не учитывать и далее, то в итоге q у нас зашкалит за единицу!
Хорошо, будем учитывать четвертый член, растудыть его. Механически складывая одночлены в получающихся выражениях, мы замечаем, что четвертый член растет в следующей последовательности: 0, 0, 0, 1, 4, 10, 20, 35, 56…
Из простого обобщения фактов становится явным один интересный закон – каждый следующий член получающегося многочлена зависит от предыдущего, и увеличивается при увеличении степени на величину этого предшественника! Вот смотрим: Первый член не имеет предшественника вообще, его предшественник равен нулю, вот он и не изменяется никогда, или лучше сказать, что его изменение постоянно и равно нулю, и значение его, получается, тоже постоянно, и равно единице. Второй член имеет предшественника отличающегося от нуля, но постоянного, значит его изменение положительно, но постоянно, изменение всегда равно единице, а знчения: 0, 1, 2, 3, 4, 5, 6…. Третий член, соответственно и изменяется с возрастающей скоростью, сначала его значение ноль, потом опять ноль, ибо предшесвенник был равен нулю, потом один, и т д (0 + 0; 0 + 1; 1 + 2; 3 + 3; 6 + 4; 10 + 5 и т. д.), получаются значения: 0, 0, 1, 3, 6, 10, 15, 21… Ну и, наконец, четвертый член, который увеличивается каждый раз на величину третьего получает уже приведенные недавно значения. Только вот какой именно формуле подчиняется сей ряд? Первый ряд – 1, второй – n, третий C^2.n., четвертый, по-видимому, должен быть еще какой-нибудь из комбинаторики, но я такую последовательность что-то не припомню, и эмпирически подогнать не могу… Была у меня очень интересная мысль, что четвертый член также подчиняется формуле C^2.n., но только под знаком n здесь опять стоит C^2.n., это казалось логичным – то есть здесь имеет место повышение порядка С, но от такой мысли пришлось отказаться просто потому, что не сходилось.
Оставалось одно – отказаться от мысли, что двойка в верхнем индексе отражает бином. И после того, как до меня это доперло, все сошлось! Двойка-то, как оказалось, отражает не бином, она отражает номер члена за вычетом единицы! Все совпало. Тогда первый член подчиняется закону C^0.n., и всегда равен единице, ибо число способов разместить ноль шариков в любом количестве луночек равно одному – то есть не размещать вообще., второй член - C^1.n., и будет возрастать линейно, как возрастает линейно число способов разместить один шарик при возрастании числа луночек. Третий член - C^2.n., четвертый - C^3.n. И действительно C^3.3 равно единице, так как есть только один способ разложить три шарика по трем луночкам (до того же способов вообще не существовало, так как шариков было больше чем луночек), C^3.4 равно 4, C^3.5=4*5/2=10, C^3.6=4*5*6/2*3=20, C^3.7=4*5*6*7/2*3*4=35, C^3.8=4*5*6*7*8/2*3*4*5=56 и т д, вообще C^3.n = (n-2)*(n-1)*n/2*3 (где в числителе всегда есть хоть одно четное и одно делится на три), а C^k.n = (n-(k-1)) * (n-(k-2)) * (n-(k-3)) *… * (n-1) * n / 2 * 3 * … * k.
Так вот мы приходим к общей формуле:
(1 – 10^-m)^n = 1 – n*10^-m + C^2.n*10^-2m - C^3.n*10^-3m + C^4.n*10^-4m… - C^(k-1).n*10^-(k-1)m + C^k.n*10^-km - C^k.n*10^-km. Где k - положительное четное.
Очевидно, что каждый новый член возвращает выражение к истинному, но при этом как бы не успевает затормозить, что напоминает затухающие колебания с очень маленьким коэффициентом затухания.
И все же остается вопрос, так какой член является последним значащим для нас, сколько членов необходимо сохранить, чтобы погрешность была незначительной? А то мы пока только и терпели неудачи каждый раз с новым членом. Проследим еще раз. Итак если степень при нашем многочлене равна миллиону и мы вычисляем q^n на калькуляторе, то получаем число 0,36787926, далее при подсчете самостоятельно по указанной формуле и при отбрасывании всех членов дальше первого ( обозначим номер члена за l, то есть l = 1, при этом надо отметить, что l = k+1) получается q^n = 1, при отбрасывании членов дальше второго (l = 2) она равна нулю, составим табличку:
l = 1 --------- q^n = 1, погрешность = 0,632
l = 2 --------- q^n = 0, погрешность = - 0,367
l = 3 --------- q^n = 0,5, погрешность = 0,132
l = 4 --------- q^n = 0,5 - C^3.10^6 * 10^(-3*6) = 1000 000*999 999*999 998/2*3 * 10^-18 = 0,5 - 500 000*333 333*999 998*10^-18 = 0,5 – 0,5*0.333 333*10^18*10^-18 = 0,5 – 1,6667 = 0.3333, погрешность = - 0,0345
В последних расчетах вскрылась одна очень интересная подробность, в случае больших чисел всегда степень при десятке (10^-km) будет сокращаться на нули в С. То есть в выражении для С, которое представляет из себя дробь о огромным числителем этот числитель у С будет сокращаться на (10^-km) почти без погрешности, и всегда будет оставаться лишь знаменатель от бедного С, знаменатель же этот я уже выразила, знаменатель будет равняться 2 * 3 * … * k = k! (это не восклицание, это мат. выражение). Значит получается, что числитель станет равным единице, а знаменатель k!, то есть все вместе выражение C^k.n*10^-km у нас – ничто иное, как (k!)^-1, ну разве не чудо?
Проверяем, опять все сходится:
l = 1 --------- k=0 k! = 0 q^n = 1
l = 2 --------- k=1 k! = 1 q^n = 1-1 = 0
l = 3 --------- k=2 k! = 2 q^n = 0 + 1/2 = 0,5000
l = 4 --------- k=3 k! = 6 q^n = 0,5 – 1/6 = 0,3333
l = 5 --------- k=4 k! = 24 q^n = 0,3333 + 1/24 = 0,3750
l = 6 --------- k=5 k! = 120 q^n = 0,375 – 1/120 = 0,3666 (погрешность 0,0012)
l = 7 --------- q^n = 0,3681 (и вот погрешность составила 0,0002)
Следующий же член вообще убирает погрешность из четвертого знака, таким образом в данном случае восьми членов хватает, чтобы получить точность до четырех знаков после запятой. Но это все при миллионе, а если мы будем оперировать миллиардом? Совершенно очевидно, что ответ будет примерно тот же, только он будет еще более близок к пределу нашего разложения, способ же разложения остался неизменен, это дает право нам утверждать, что q при 10^m = n = 10^100 вообще невообразимо близко к пределу нашего разложения. Но вот теперь вопрос, а чем же является сам предел разложения?
Стоп! Тут то оно мне и попалось, это чертово неперово число, ведь это именно оно рядами МакЛорена раскладывается примерно таким образом:
e = 1 + 1/1! + 1/2! + +1/3! + … + (k!)^-1 + …
Вот так! А то, что у меня знаки чередуются – так это не проблема, балуясь с рядами МакЛорена я уже сталкивалась с тем, как это разложение заставляют чередоваться – надо просто подставить i и запляшет родная!
Нет, разогналась, пока ничего у меня не плясало, собственно, я и увидела связь чисто эмпирически, случайно, а почему все-таки здесь это неперово число встало – черть ее знаить…
Пришлось идти другим путем…
Что будет, если наши степени в скобке и за скобкой будут отличаться? То есть 10^m не = n?
Допустим, что m = 6, n = 10^7, что же получается?
Сначала, подумав об этом, я даже испугалась, ведь теперь при сокращении дроби у нас будет получаться не единица, а что-то невообразимое. Числитель при С^1.n будет в десять раз больше, чем 10^-m, при С^2.n в сто раз больше, чем 10^-2m, с каждым новым членом значение числителя, сокращенного на 10^-km, будет в десять раз больше, то есть числитель в седьмом члене будет уже в миллион раз больше! Поначалу меня настолько убило это возрастание числителя, что я вообще не приняла во внимание возрастание факториала – ну что там он возрастает: 1, 1, 2, 6, 24… фи, смешно! И только через минуту меня осенило, что ведь возрастание числителя постоянно, пусть и огромно, а вот возрастание факториала – процесс интенсифицирующийся неограниченно, и в итоге знаменатель в более далеких членах начнет преобладать.
Вот так интересно получается – сначала схождением ряда к определенному числу и не пахнет, колебания здесь не затухающие, а, наоборот, разгорающиеся, но потом все-же приходят в равновесие, вот он, этот ряд:
l = 1 --------- q^n = 1
l = 2 --------- q^n = 1- 10/1 = -9
l = 3 --------- q^n = -9 + 100/2 = 41
l = 4 --------- q^n = 41 – 1000/6 = -125,667 и т д:
l = 5 --------- q^n = 291
l = 6 --------- q^n = - 542
l = 7 --------- q^n = 847
l = 8 --------- q^n = -1137
l = 9 --------- q^n = 1343
l = 10 --------- q^n = -1413
Ну и далее уже идет спад:
l = 11 --------- q^n = 1343
l = 12 --------- q^n = - 1162
l = 13 --------- q^n = 925
l = 14 --------- q^n = -681
…
l = 21 --------- q^n = 13,397
…
l = 26 --------- q^n = -0,180 (все еще зашкаливает)
…
l = 31 --------- q^n = 0,00097
…
l = 36 --------- q^n = 0,0000433
…
l = 39 --------- q^n = 0,0000454
…
l = 42 --------- q^n = 0,0000454
Все, колебания совсем затухли, при дальнейшем увеличении получается предел: 0,000045399929676
Ура! Совпадение просто капитальное! На калькуляторе просто возводя 0,999999 в десятимиллионную степень получается 0,0000453997! Все правильно!
Теперь смело можно сказать, что при возрастании степеней в нашем выражении значение их приближается к пределу нашей последовательности, и действительно, если мы берем не шесть и семь, а восемь и девять (n = 10^9, m = 8) то q^n = 0,000045399926 – мы получаем аж семь значащих цифр правильных… ну а если же мы берем маленькие степени, когда m равно двум, а n равняется тысяче (как в примере с нашими опечатками в книге), у нас остается всего одна значащая цифра, а вот если мы берем числа, как в моей генетической задаче (n = 10^65, m = 66), тут погрешность проявляется в просто сума сойти в каком дальнем знаке, то есть выведенную вот так формулу можно спокойно применять, даже если точность должна быть несравнимо выше точности изотопных часов.
Теперь можно вернуться к формуле Пуассона, итак проклятый вопрос – ну откуда там это чертово е взялось? А все просто, как стеклянная ваза. Это исходит из самого определения е, оно у нас подставилось просто потому, что наше выражение, это и есть е, только чуточку прооперированное.
Итак наше q^n выражается, как (1 – 1 / оч. много)^оч. Много, а е, как известно выражается следующим образом: е = lim (1+t)^1/t при t->0 = lim (1+1/t)^t, при t->беск, е = (1 + 1/беск)^беск. Я давно обратила, что единственное (хотя тогда мне казалось, и неразрешимое) отличие в наших формулах, это то, что у Бернулли левый предел, а в неперовом числе правый (у Бернулли (1 – 0), у е (1+0)), но в любом случае у нас и то и другое – все простой бином Ньютона, е, это степень суммы, в Бернулли – степень разности, в одном случае дело раскладывается на бесконечное число слагаемых, в другом случае слагаемые чередуются с вычитаемыми. Получается выражение для е: е = 1 + t*10^-t + C^2.t*10^-2t + C^3.t*10^-3t + C^4.t*10^-4t +… + C^k.t*10^-kt + … = 1 + 1 + ½ + 1/6 + 1/24… – и весь этот ряд Маклорена выведен не из таинственно-величественной формулы Тейлора, а из программы седьмого класса средней школы – из бинома Ньютона!
Но нет, все же это не ряд Маклорена, это лишь одно его значение, ряд Маклорена, это e^x как получить его? Что-ж, посмотрим, итак е = lim (1+1/t)^t, при t->беск, ну просто возьмем, да и возведем это в степень х: е^x = lim (1+1/t)^tx. Теперь просто выбираем другую переменную, tx = y и все как по маслу проходит! е^x = lim (1+1/(y/x))^y = lim (1+x/y)^y, при у -> беск, вот теперь уже точно получилась формула Маклорена: е^x = 1 + 1х + ½х^2 + 1/6 х^3 + 1/24 х^4 … + х^k/k! + … - абсолютно точно так, как я вывела для частного случая, когда мои степени отличались в десять раз, таким образом у меня и появился этот самый икс, поэтому то он у меня и встал в числителе, поэтому-то он у меня и начал расти по закону показательной функции.
Все четко. Ведь икс – это отношение степеней при скобках. В обозначениях, принятых для неперова числа это отношение: y/t в моих обозначениях – n / 10^m. В первом случае моего разложения в ряд отношение было простое - n = 10^m, х = 1, в результате числитель выражения С^k.n полностью сокращался на выражение 10^-km и оставался только знаменатель с факториалом. Во втором случае, когда х = 10, ситуация стала сложнее. Общий вид (k+1)-го члена, упрощая, был таков –
С^k.n / 10^-km = (n^k / k!) * 10^-km, учитывая равенство n = 10^(m + 1) (при котором n в десять раз больше, чем 10^m), получаем
(n^k / k!) * 10^-km = ((10^(m+1))^k * 10^-km) / k! = ((10^m)^k * 10^k * (10^m)^-k) /k! = 10^k /k!
Ну а в общем виде, когда мы заменяем конкретное число 10, на х, получается выражение:
(n^k / k!) * 10^-km = х^k /k!, где х = n / 10^m.
Теперь остается выяснить окончательно вопрос с чередованием знаков в раду, ведь у е они не чередуются, а у нас чередуются. Ранее я высказала предположение, что тут в дело вступило мнимое число, но это было бы слишком кривым выражением, оказалось все гораздо проще. Оказывается, что я просто сделала не совсем правильные обозначения, я заявила, х – это отношение n = 10^m, а минус у меня так и остался не затронутым, по-настоящему же х – это отношение n = 10^-m, в итоге по-настоящему икс в первом моем ряду равен не единице, а минус единице, и теперь, с возрастанием степени, знак его будет чередоваться.
Преобразование таково:
q^n = (1 – 1/10^65)^10^66 = (1 + 1 / -10^65)^(-10^65/-10) = ((1 + 1 / -10^65)^ -10^65) ^-0,1 = е^-0,1
Ответ – для нашей задачи с цитохромом с q^n = е^-0,1
Теперь это остается подставить в распределение Бернулли, которое я вывела ранее:
Итак вероятность образования хотя бы одного функционального цитохрома с, частота которого равна 10^-65, а число попыток создания цитохрома с равно 10^66, равна:
P = 1 - P.m,n, где P.m,n – вероятность, что не получится ни одного цитохрома с
P.m,n = C^m.n * p^m * q^(n-m), где р = 10^-65, q = 1 - 10^-65, n = 10^66, m = 0 (ни одного выпадания)
P.m,n = 1 * 1 * q^n = е^-0,1
Р = 1 - е^-0,1 = 1 – 0,0000453999 = 0,9999546001
Все, задача решена окончательно.
Теперь получился гибрид из формулы Пуассона, ну а чтобы получить настоящую формулу Пуассона, осталось только преобразовать выражение: C^m.n * p^m.
Итак при больших значениях n, получаем C^m.n = n^m / m! Если же у нас р равно 1/n, то идет все то же сокращение до единицы в числителе и факториала в знаменателе, если n отличается от 1/р в а раз (или где np = a), то в числителе при сокращении останется а^m, а в знаменателе все тот же факториал. Отмечу, что этот знак а, принятый у Пуассона, соответствует знаку х, принятому в рядах Маклорена и далее в моих расчетах, так как р = 1/t = 10^-m, а n = y = n, то есть х = n/(1/p) = np, также х = y(1/t) = у/t, также х = n (10^-m) = n /10^m, так что все совпадает.
Резюмирую все преобразования из формулы Бернулли в формулу Пуассона при р->0, n -> беск, а = рn, :
P.m,n = C^m.n * p^m * q^(n-m) = C^m.n * p^m * q^n (пренебрегли мизерным вычитаемым в показателе степени)
C^m.n * p^m * q ^n = C^m.n * p^m * (1-р)^n (преобразовали q в р)
C^m.n * p^m * (1-р)^n = C^m.a/p * p^m * (1+(-р))^(-a)/(-p) (преобразовали n в a/p)
C^m.a/p * p^m * (1-р)^a/p = C^m.a/p * p^m *е^-a (приняли р как стремящееся к нулю, использовали второй замечательный предел (выведенное мною здесь схождение к е из Бинома Ньютона опускаю))
C^m.a/p * p^m *е^-a = а/р*(а/р-1)*(а/р-2)*(а/р-3)* … *(а/р-m) / m! * p^m *е^-a = (а/р)^m * p^m * е^-a / m! (раскрыли выражение C^m.a/p, принебрегли вычитанием из множителей в числителе C мизерных чисел до m, то есть приравняли все выражения (а/р-d) к а/р)
(а/р)^m * p^m * е^-a = а^m * р^-m * p^m * е^-a / m! = а^m/m! * е^-a (сократили p^m)
Формула Черепахи. Часть 3. Заключительная
И снова я возвращаюсь к распределениям вероятности. Итак заключительная часть моих поисков. читать дальше