- 1
- 2
- 3
for (i = 0; i < Math.random() * 100; i++) {
//stuff(i);
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−44
for (i = 0; i < Math.random() * 100; i++) {
//stuff(i);
}
Нормальное распределение
3_dar 03.07.2016 18:08 # 0
Vindicar 04.07.2016 10:17 # +2
Или это шлёптимизация суммы N равномерных случайных для получения нормально распределенного?
kurwa 04.07.2016 12:32 # 0
Soul_re@ver 04.07.2016 12:44 # +2
Х.з. какое это распределение.
dxd 04.07.2016 14:44 # +1
Распределение стрёмное, ответ вольфрамальфы я даже причесать толком не смог. Впрочем, никакой порнографии там нет, только факториалы и неполная гамма-функция.
wvxvw 04.07.2016 16:20 # 0
где k - номер итерации которую нужно пройти? Или мы считаем что события как-то зависят друг от друга?
Т.е. шанс зафейлить первую итерацию: 1 из 100 (т.как i=0, и шанс того, что рандом выкатит 0 - 1/100). На следующией итерации, i=1, и шанс, что рандом выкатит 0 или 1 - 2/100).
Дальше скадываем разность всех событий и неудач.
Вцелом, я так понимаю, мы должны ожидать, что примерно 10 итераций пройдем (т.как вероятность около 50%).
Пройти 27 итераций - вероятность 1%.
wvxvw 04.07.2016 16:28 # 0
wvxvw 04.07.2016 16:37 # +1
Вобщем, не 12, а 11. Нужно было возвращать последнюю удачную итерацию.
guestinho 04.07.2016 23:24 # 0
nihau 05.07.2016 01:04 # 0
http://i042.radikal.ru/1607/af/18baf1b01833.png
Soul_re@ver 05.07.2016 01:20 # 0
roman-kashitsyn 04.07.2016 16:38 # +1
> Разве это не просто
Нет. Твоя формула вычисляет вероятность пройти не менее k итераций. Формула Soul_re@ver вычисляет вероятность пройти ровно n-1 итерацию, и упасть на итерации n.
Правда, он забыл указать основание рекуррентной формулы P0 = 0, видимо, посчитал очевидным.
roman-kashitsyn 04.07.2016 16:39 # 0
> не 10, а 12
Возможно, кто-то путает медиану и матожидание.
wvxvw 04.07.2016 16:45 # 0
А почему это вообще интересно считать вероятность пройти конкретное количество итераций?
Вообще идея похожа на "нанять секретаря". Т.е. задача где нужно посчитать затраты если нанимать секретаря по принципу: за собеседование платим всегда, и если нашли кандидата лучше, то нанимаем нового кандидата (и платим агентству). Это какой-то известный пример анализа амортизированой стоимости.
inkanus-gray 04.07.2016 16:52 # 0
The expected value is also known as the expectation, mathematical expectation, EV, average, mean value, mean, or first moment.
wvxvw 04.07.2016 17:00 # 0
В любом случае, вывод был, что нужно будет сделать ln n выплат агентству, что примерно сходится.
roman-kashitsyn 04.07.2016 17:01 # +3
Потому что только так и можно посчитать матожидание (expected value (en), Erwartungswert (de) для иностранных господ), образованный ты наш.
Как всегда, много умных слов и выпендрёжа, а в основах плаваем.
wvxvw 04.07.2016 17:09 # 0
kissarat 11.09.2016 16:00 # 0
Soul_re@ver 11.09.2016 16:30 # 0
kurwa-nextgen 04.07.2016 18:21 # 0
habrophag 05.07.2016 13:55 # +1
У нормального распределения совпадают мода, м.о. и медиана, в то время как тут: 10, 12.2 и 12 соответственно. И это еще и не середина диапазона (15 с дов. интервалом 99.5%), как можно было бы хотеть.
У нормального распределения левая и правая сторона имеют одинаковые по пологости края, в то время как у данного распределения коэффициент асимметрии аж 1.6 (!!!) (впрочем, его положительность следует из порядка мода-медиана-матожидание как раз)
Если уж есть потребность в подобной дискретизации, нормальное лучше всего моделируется биномиальным. А это просто - подкинуть монетку 100 раз и подсчитать количество "решек". Получается "почти нормальное" распределение с м.о. 50 и дисперсией 25. Легко управляется, считается так же за O(N).
И это не говоря о человеческих способах преобразования равномерного в нормальное, навроде Бокса — Мюллера.
kurwa-nextgen 05.07.2016 14:03 # −3
habrophag 05.07.2016 17:04 # +1
Например, могу дать явный ответ на страдания в поисках: "мне не понятно, действительно ли там такая зависимость или просто похож". Нет, не такая даже близко. Ближе биномиального не получится (в том числе, по упомянутым критериям), а от биномиального оно отличается сильно формулой, графиком, поведением моментов и прочих числовых характеристик.
guest 05.07.2016 17:55 # −3