КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Тема 6: Моделирование случайных процессов. АнтонМоделирование случайных процессов – мощнейшее направление в современном математическом моделировании. Событие называется случайным, если оно достоверно непредсказуемо. Случайность окружает нас и чаще всего играет отрицательную роль. Однако есть обстоятельства, в которых случайность может оказаться полезной. В сложных вычислениях, когда искомый результат зависит от многих параметров и результатов большого количества измерений, можно сократить объем вычислений за счет использования случайных величин. Кроме того, часто случайные величины кладут в основу методов получения решения посредством проб и ошибок. Пусть в функционале модели значение нескольких входных параметров определены лишь в вероятностном смысле. В этом случае для работы с такой моделью прибегают к аппарату теории вероятности. При компьютерном моделировании случайных процессов нельзя обойтись без так называемых случайных чисел, которые удовлетворяют заданному закону распределения. На самом деле компьютер генерирует такие числа по определенному алгоритму, т.е. они не являются вполне случайными, хотя бы потому, что при повторном запуске программы мы получим ту же последовательность чисел. Такие числа называются псевдослучайными. В начале рассмотрим генерацию псевдослучайных чисел, равновероятно распределенных на некотором интервале. Большинство программ – генераторов выдают последовательность, в которой предыдущее число используется для нахождения последующих. Такие последовательности повторяются после некоторого конечного числа членов, названного периодом. Это объясняется конечной длиной машинного слова. Самый простой и наиболее распространенный метод генерации случайных чисел – метод вычетов. xn=a∙xn-1+b∙mod m Очевидно, что период такой последовательности не превосходит т. Для компьютера он не может быть бесконечно большим. Чем больше период, тем лучше в любом случае использования; в каждой конкретной задаче выборка случайных чисел должна быть короче периода, иначе задача, скорее всего, будет решена неверно. Обычно генераторы случайных чисел выдают ответ хп, т. е. генерируют псевдослучайные числа , принадлежащие промежутку [0, m). Вопрос о случайности конечной последовательности чисел гораздо сложнее, чем может показаться на первый взгляд. Существуют несколько критериев случайности, но все они не дают исчерпывающего ответа. Один из критериев состоит в следующем: отрезок [0,1] делим на М равных частей. Берем большую последовательность псевдослучайных чисел и подсчитываем долю чисел, попавших в каждый из отрезков. Строим прямоугольники, основаниями которых являются отрезки, я высоты пропорциональны долям попадания чисел в них.
Для большого набора случайных чисел высоты прямоугольников должны быть почти одинаковыми. Это критерий является необходимым для случайности, но недостаточным. Иногда он не замечает даже простейшей периодичности. Как уже говорилось, обычно компьютер выдает случайные числа из интервала [0, 1]. Пусть нам нужно получить случайные числа, равномерно распределенные на некотором интервале (a, b). В этом случае можно использовать формулу a+(b-a)∙RND(1) Пусть надо получать случайные числа на интервале (a, b) с произвольной функцией распределения f(x). Рассмотрим величину
Будем получать случайные точки М(х, у), равномерно распределенные в прямоугольнике ABCD
х= a+(b-a)∙RND(1) у=w∙RND(1) Если точка М находится выше графика функции f(x), то отбрасываем ее, если ниже, то выдаем ее абсциссу в качестве псевдослучайного числа. В результате получаем последовательность чисел с функцией распределения f(x).
|