#1 07.10.10 17:46
[C++] случайная величина, распределенная по нормальному закону.
Может есть у кого идеи как это можно реализовать?
Была следующая идея:
допустим матожидание = 5, дисперсия = 2.
генерируем rand()-омом несколько ПСЧ (например 10) в интервале [3; 7] складываем их, делим на 10, ну и таким образом получаем число распределенное по нормальному закону.
НО! тогда результат всегда ОЧЕНЬ сильно стремится к матожиданию.
Offline
#2 07.10.10 18:46
Re: [C++] случайная величина, распределенная по нормальному закону.
ну напиши свою функцию генерации случайных чисел))
еще вроде в с++ должно быть чтото типа Randomize(), это улучшит случайность.
поищи в инете алгоритмы генерации
хотя тут может дело не в генераторе...
случайная величина дискретная?
Исправлено Fire Stream (07.10.10 18:49)
Offline
#4 08.10.10 09:22
Re: [C++] случайная величина, распределенная по нормальному закону.
чтобы получать случайные величины других законов распределений необходимо использовать методы перевода равномерных чисел в интересующие тебя. Например, существует универсальный интегральный метод, где, с помощью математических преобразований, можно получить формулу для генерации числа, распределенного по нормальному закону распределения. На 3ьем курсе учили всем этому, но я забыл уже. Если вспомню, напишу. А пока копай в сторону "генерация случайных чисел с заданным законом распределения"
UPDATE: первая ссылка Яндекса на запрос "генерация случайных чисел с заданным законом распределения"
http://stratum.ac.ru/textbooks/modelir/lection24.html
Исправлено [PAUL] (08.10.10 09:27)
Offline

