Страница: 1 |
Страница: 1 |
Вопрос: RND гауссового распределения
Добавлено: 06.11.05 00:17
Автор вопроса: Victor | Web-сайт:
Вопрос очень простой.
Как получить гауссово распределение случайно сгенерированых чисел? То есть, какую формулу надо применить к результату Rnd, чтобы получить распределение плотности вероятности типа Exp(-x^2) (такое там распределение вроде...)?
Ответы
Всего ответов: 10
Номер ответа: 1
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 06.11.05 03:45
Реши уравнение int(exp(-x*x),x=0..X) = rnd(), где X - искомое число. Плотность распределения таких X будет гауссовой.
Номер ответа: 2
Автор ответа:
Victor
ICQ: 345743490
Вопросов: 42
Ответов: 385
Web-сайт:
Профиль | | #2
Добавлено: 07.11.05 19:39
Int равен Rnd только когда Rnd=0 или Rnd = 1, что случается крайне редко (вроде вообще никогда). Как же решать это уравнение?
Номер ответа: 3
Автор ответа:
Страшный Сон
Вопросов: 46
Ответов: 848
Профиль | | #3
Добавлено: 07.11.05 19:42
А разве Log(Rnd) не даст гауссовое распределение?
Номер ответа: 4
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #4
Добавлено: 08.11.05 22:01
int в смысле интеграл, после запятой диапазон
Номер ответа: 5
Автор ответа:
Victor
ICQ: 345743490
Вопросов: 42
Ответов: 385
Web-сайт:
Профиль | | #5
Добавлено: 11.11.05 22:41
Я кажется понял. Там есть проблема такая. Итнеграл от exp(-x*x) от нуля до бесконечности вовсе не равен единице. По сему надо производить нормировку. Если я правильно помню, то exp(..) надо домножить на 2/sqr(pi). И к тому же, неплохо еще менять рандомно знак, так как вышеописанный метод даст лишь положительные числа.
Спасибо. А итегралить придется численно
Номер ответа: 6
Автор ответа:
Victor
ICQ: 345743490
Вопросов: 42
Ответов: 385
Web-сайт:
Профиль | | #6
Добавлено: 11.11.05 22:43
Номер ответа: 7
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #7
Добавлено: 13.11.05 01:50
/ 1 2\  1/2)
exp|- - x | 2
\ 2 /
f(x) := ------------------
 1/2)
2 Pi
> int(f(x),x=-infinity..+infinity);
1
Номер ответа: 8
Автор ответа:
Страшный Сон
Вопросов: 46
Ответов: 848
Профиль | | #8
Добавлено: 07.12.05 23:56
Cos(Atn(x)) - тоже довольно интересная кривая. Интересно, какое это распределение получается...
Номер ответа: 9
Автор ответа:
Victor
ICQ: 345743490
Вопросов: 42
Ответов: 385
Web-сайт:
Профиль | | #9
Добавлено: 15.01.06 03:30
Такое же, как от 1/sqr(1+x^2).
Номер ответа: 10
Автор ответа:
Страшный Сон
Вопросов: 46
Ответов: 848
Профиль | | #10
Добавлено: 15.01.06 22:16
Угу. Графики идентичны. Тока писал бы уж x*x, кто ж во вторую степень возводит...