Страница: 1 |
Страница: 1 |
Вопрос: Случайное число с заданной вероятностью..
Добавлено: 11.03.07 10:44
Автор вопроса: Sofist | ICQ: 291657044
Помогите.. необходимо генерировать определнные числа с заданной вероятностью.. например число 5 нужно сгенерировать с вероятность 0,75, а число 7 - свероятностью 0,25.. как это написать на VB??
Ответы
Всего ответов: 6
Номер ответа: 1
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #1
Добавлено: 11.03.07 10:58
Круто сказано, ничего не понятно.
Возожно ты это имел ввиду..
Percent = Rnd * 100
If Percent <= 75 Then Number = 5
If Percent <= 25 Then Number = 7
Знаешь, то, что ты сказал, можно понять по-разному.
Номер ответа: 2
Автор ответа:
D o c a l
ICQ: 408802757
Вопросов: 76
Ответов: 985
Web-сайт:
Профиль | | #2
Добавлено: 11.03.07 11:19
Хочешь лохотрон зделать
Номер ответа: 3
Автор ответа:
ANDREY Z5Z
Вопросов: 38
Ответов: 125
Web-сайт:
Профиль | | #3
Добавлено: 11.03.07 12:19
Жалко математика с теорией вероятности у нас была 3 года назад, а то можно было бы сделать
Номер ответа: 4
Автор ответа:
D o c a l
ICQ: 408802757
Вопросов: 76
Ответов: 985
Web-сайт:
Профиль | | #4
Добавлено: 11.03.07 16:41
На здесь штота есть
http://doc-source.pp.net.ua/_ld/0/1_Imovirni.rar
Номер ответа: 5
Автор ответа:
Fever
Вопросов: 60
Ответов: 808
Профиль | | #5
Добавлено: 11.03.07 16:48
Как я понял, необходимо сделать дискретную функцию распределения с 2 уровнями?
Номер ответа: 6
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #6
Добавлено: 11.03.07 23:29
В общем случае пусть тебе нужно число из интервала [a,b], а f(x) - функция распределения вероятности. Тогда C = \int_a^b{f(x)dx}. Генеришь случайное число r от 0 до C и решаешь уравнение \int_a^y{f(x)dx} = r. Число y и будет случайной величиной, полученной в соответствии с функцией распределения вероятности. Так, к примеру, получают случайные величины с нормальным распределением.
Если нужно дискретное распределение с небольшим числом значений, просто составляешь массив, в котором каждый элемент равен сумме вероятностей выпадения предыдущих чисел. После чего по случайному числу от 0 до 1 бинарным поиском находишь это число в таблице. Индекс элемента массива и будет искомым числом.
Пример:
1 0.1
2 0.2
3 0.3
4 0.4
Массив будет иметь вид 0.1, 0.3, 0.6, 1.0. Пусть случайное число от 0 до 1 - 0.8. Тогда тебе надо выбрать число 4. Если 0.2, то 2. Если 0.05, то 1.