9.3. Методы имитации случайных факторов
Базовой последовательностью случайных чисел, используемой для формирования в ЭВМ случайных элементов различной природы, с различными законами распределения является совокупность случайных чисел с равномерным законом распределения:
где – дифференциальный закон распределения равномерно распределенных чиселх в интервале
Строго говоря, на цифровой ЭВМ получить последовательность случайных величин с равномерным распределением не представляется возможным[1]. Поэтому, если считать, что число разрядов ЭВМ равно k, а случайное число сформировано согласно формуле:
где принимает значениес вероятностью
Такое распределение чисел х называется квазиравномерным в интервале [0; 1], причем математическое ожидание и дисперсия определяются следующими соотношениями:
Из формул (9.2) видно, что математическое ожидание М[х] точно совпадает с генеральным средним для равномерного распределения в интервале [0; 1], а дисперсия при асимптотически стремится к дисперсии для равномерного распределения при а = 0,b = 1, равной 1/12.
Практически при k > 15 обеспечивается требуемая точность в имитационных исследованиях. Поэтому в дальнейшем будем говорить о равномерном законе, хотя в действительности при программном моделировании имеем дело с квазиравномерным законом. При выводе выражений (9.2) предполагалось, что х формируется на основе случайных чисел αi, принимающих значения (0; 1) с вероятностью = 1/2, для чего в машине должен существовать случайный генератор, дающий строго случайные последовательности чиселαi с соответствующим распределением. Так как в ЭВМ такого генератора нет, случайные числа вырабатываются программным путем, в силу чего они, строго говоря, не являются случайными, так как формируются на основе вполне детерминированных преобразований, поэтому их называют псевдослучайными. Такие последовательности случайных чисел являются периодическими, поэтому очень длинные последовательности, длина которых превосходит период, уже не будут строго случайными.
Однако, если при моделировании количество обращений к программному датчику случайных чисел оказывается меньше периода, измеряемого количеством различных случайных чисел, то такая периодичность программного датчика не оказывает существенного влияния на результаты моделирования.
Основные достоинства программного способа получения псевдослучайных чисел состоят в следующем:
не требуются специальные внешние устройства;
получение чиселдостаточно быстрое (обычно требуется 3–10 команд на число);
возможно повторное воспроизведение чисел;
требуется только однократная проверка алгоритма получения заданной последовательности чисел.
Методы получения псевдослучайных квазиравномерных чисел программным путем можно разделить на две основные группы: а) аналитические; б) методы перемешивания. При использовании аналитических методов очередное число в псевдослучайной последовательности получается с помощью некоторого рекуррентного соотношения, аргументами которого являются одно или несколько предыдущих чисел последовательности:
Простейшим примером указанного способа получения случайных чисел, равномерно распределенных в интервале [0; 1], может служить метод вычетов, в котором используется следующее рекуррентное соотношение:
где выражение bxi (mod M) означает остаток от деления произведения bxi на число М;
– очередное случайное число;
хi – предыдущее случайное число;
b – некоторая константа;
М – число, определяющее наибольшее значение получаемых случайных чисел.
Данный способ является основой построения мультипликативного программного датчика случайных чисел. В этом случае алгоритм построения последовательности случайных чисел сводится к следующему:
Выбрать в качестве параметра – произвольное нечетное число, например при разрядности ЭВМ k = 32, bМ = 231-1;
Вычислить коэффициент b по формуле , гдес – любое целое положительное число, в частном случае
Вычислить произведение bа0; взять k младших разрядов в качестве первого члена последовательности а1, остальные отбросить;
Провести нормализацию числа по формуле
Вычислить очередное псевдослучайное число а2 как k младших разрядов произведения bа1 и вернуться к пункту 4.
Описанный генератор подвергался, как отмечено в [3] широкой экспериментальной проверке и проявил достаточно хорошие свойства. С другими аналитическими способами получения случайных чисел, равномерно распределенных в интервале [0; 1], можно ознакомиться в [1]. В случае применения методов перемешивания очередное число последовательности получается путем хаотического перемешивания разрядов предыдущего случайного числа с помощью операций сдвига, специальных сложений и различных арифметических операций. Например, часто используются следующие комбинации операций для перемешивания разрядов предыдущего случайного числа:
сдвиг предыдущего числа на некоторое число разрядов влево и специальное сложение результатов этого сдвига с предыдущим числом последовательности;
сдвиг предыдущего числа на некоторое число разрядов влево и вправо и специальное сложение результатов этих сдвигов.
Данные операции заканчиваются взятием модуля и нормализацией. В качестве начальной константы для формирования последовательности обычно берут иррациональные числа.
Имитация случайных событий. Пусть в результате эксперимента должно наступить одно из несовместимых событий которые образуют полную группу событий, то есть:
где Pk – вероятность наступления события Аk.
Разбиваем отрезок [0; 1] на n частей длиной P1, P2, ..., Рп; при этом точки деления отрезка имеют следующие координаты:
Пусть теперь х – очередное число от генератора случайных чисел. Если то считаем, что произошло событиеAk.
Действительно:
Рассмотренная процедура может быть положена в основу выбора направления передачи требований при моделировании замкнутых сетей массового обслуживания. Аналогичным образом можно моделировать дискретные случайные величины при конечном числе их значений. Если имеем дискретную случайную величину у, причем у = 1 с вероятностью Р, а у = 0 с вероятностью 1 – Р, то при имитации ее на ЭВМ необходимо каждый раз решать следующую систему неравенств: если ; если, гдех1 – очередное случайное число от генератора случайных равномерно распределенных чисел.
Имитация непрерывных случайных величин. В литературе рассматриваются несколько способов имитации, основанных на различных преобразованиях равномерно распределенных случайных чисел в числа с заданным законом распределения.
Метод обратной функции. Он основан на использовании следующей теоремы. Если х – случайная величина, равномерно распределенная на отрезке [0; 1], то случайная величина у, являющаяся решением уравнения:
имеет плотность распределения f(y).
Данный метод позволяет сформулировать правило генерирования случайных чисел, имеющих произвольное непрерывное распределение f(y):
• вырабатывается случайное число х1 генератором случайной равномерной последовательности;
• случайное число yi, имеющее распределение f(y), находится из решения уравнения:
Таким образом, последовательность чисел преобразуется в последовательностьимеющую заданную плотность распределенияf(y). Рассмотрим примеры.
Пример 1. Необходимо получить последовательность чисел, равномерно распределенных на отрезке [а, b]. Тогда, используя (9.3) имеем:
откуда
Пример 2. Необходимо получить последовательность чисел, имеющих распределение по показательной функции:
В соответствии с (9.3) имеем:
откуда
Так как величина также имеет равномерное распределение на отрезке [0; 1], то формула (9.4) может быть записана другим способом:
Однако формула (9.3) не для всех распределений может быть использована по следующим причинам:
• зависимость нельзя получить в явном виде;
• зависимость является сложной для численных расчетов.
В этом случае используют приближенные методы, например метод ступенчатой аппроксимации и предельные теоремы теории вероятности.
Метод ступенчатой аппроксимации. Зависимость плотности распределения f(y) от возможных значений случайной величины у представляется графически в интервале изменения у от а до b. Если случайная величина задана на бесконечном интервале, то производим усечение распределения с заданной точностью. В данном случае указанная плотность f(у) может быть получена также и экспериментально. Разобьем отрезок [а, b] на n, частей таких, что:
где αi – координата точки разбиения
Тогда вероятность того, что случайная величина у попадет в один из интервалов,
То есть попадание на любой отрезок случайной точки равновероятно. На каждом из интервалов функцияf(y) аппроксимируется ступенчатой функцией так, чтобы значение f(у) в каждом интервале было постоянным; тогда координата случайной точки может быть представлена как – расстояние точки от левого конца интервала. В силу ступенчатой аппроксимациисi является равномерно распределенной величиной на интервале . Правило имитации в этом случае сводится к следующему:
получаем два числа от генератора равномерно распределенных чисел;
с помощью x1 находим индекс для интервала, где– целая часть числа, причем
с помощью числа х2 находим
находим случайное число, имеющее интересующий нас закон распределения f(y):
Таким образом, для получения случайного числа у, имеющего закон f(y), используются два числа от генератора случайных чисел х1, x2.
Использование предельных теорем. В некоторых случаях для имитации определенных законов распределения используют предельные теоремы теории вероятностей. Так, например, для получения нормального закона распределения используется свойство сходимости независимых величин к нормальному распределению. Метод обратной функции в этом случае оказывается неэффективным, так как получаемый при этом интеграл:
не раскрывает явную зависимость
Для получения нормально распределенных чисел с параметрами удобен искусственный прием, основанный на центральной предельной теореме теории вероятностей. Для этого в качестве исходных чисел возьмемn равномерно распределенных на отрезке [–1; 1] чисел, получаемых из интервала [0; 1] по правилу:
Сформируем величину z согласно следующей формуле:
По центральной предельной теореме при достаточно большом значении п величина z может считаться нормально распределенной с параметрами:
Проведя нормирование величины z1 получим, что величина:
будет иметь нормальное распределение с параметрами . Практически установлено, что приn > 8 формула (9.5) дает вполне хорошие результаты.
Имитация дискретных случайных величин. Из всего множества законов распределения дискретных случайных величин рассмотрим наиболее часто встречающиеся в задачах имитации систем управления:
• величины уi имеют биномиальное распределение:
• величины уi имеют пуассоновское распределение с параметром аi:
В первом случае имитация величины уi сводится к n-кратной имитации эксперимента с двумя исходами: = 1 с вероятностьюР и хij = 0 с вероятностью , что реализуется по уже рассмотренной выше схеме имитации дискретных случайных событий. Тогда:
имеет распределение, близкое к биномиальному.
Во втором случае необходимо воспользоваться предельной теоремой Пуассона: если Р0 – вероятность наступления события А при одном испытании, то вероятность наступления i события при n независимых испытаниях в случае, если , асимптотически стремится к (9.6) при:
Поэтому имитация в этом случае проводится так же, как и в первом, только при условии, что:
Чем больше значение n, тем больше распределение чисел уi будет приближаться к закону Пуассона (9.6). Значение л выбирается из условия (9.7) при известном параметре а.
Имитация потоков дискретных событий. Под потоком событий, как ранее было отмечено, понимают последовательность однородных событий, происходящих в какие-то, вообще говоря, случайные моменты времени. В системе управления мы имеем дело с различными видами потоков (например, потоки задач, вызовов, справок в информационных системах; потоки отказов и восстановлений; потоки команд управления типа «включить», «отключить» в сложных иерархических системах управления рассредоточенными объектами; потоки требований на занятие определенного ресурса, причем в вычислительных системах – требование на занятие магистрали, внешнего запоминающего устройства, процессора, в системах связи – требование на занятие канала связи и т. д.).
При имитационном моделировании поток событий чаще всего воспроизводится через интервалы времени между соседними событиями. Если время между соседними событиями случайно, то в зависимости от вида распределения воспроизведение его в ЭВМ происходит в соответствии с теми способами, которые были рассмотрены при имитации непрерывных случайных величин, причем случайной величиной является длительность интервала между соседними событиями. Например, для простейшего потока событий время между событиями подчинено показательному закону; следовательно, имитация данного потока должна происходить в соответствии с выражением (9.4). Модификация простейшего потока – поток Эрланга – получается в результате имитации простейшего потока и последующего просеивания его событий в соответствии с порядком этого потока. Регулярный поток в системе легко имитируется, так как он задается постоянным временем интервала между событиями. Аналогичным образом могут быть смоделированы и потоки более общего вида через задание соответствующего распределения интервалов между соседними событиями в потоке.
Рассмотренные выше способы имитации случайных факторов являются далеко не полным перечнем способов моделирования различных возможных случайных ситуаций, возникающих в системе управления.
NB
Имитационное моделирование является относительно новым и быстро развивающимся методом исследования поведения систем управления. Этот метод состоит в том, что с помощью ЭВМ воспроизводится поведение исследуемой системы управления, а исследователь-системотехник, управляя ходом процесса имитации и обозревая получаемые результаты, делает вывод о ее свойствах и качестве поведения.
При имитационном моделировании на ЭВМ можно выделить следующие основные этапы исследования:
формулировка проблемы;
построение математической модели функционирования системы;
составление и отладка программы для ЭВМ, включая и разработку процедур моделирования различных случайных факторов;
планирование имитационных экспериментов;
проведение экспериментов и обработка результатов исследования.
Составление машинной программы. Решаются следующие задачи:
составление самой программы с использованием как универсальных алгоритмических языков, так и проблемно-ориентированных на решение задач имитации;
разработка программных процедур имитации различных случайных факторов, имеющихся в системе;
отладка программы.
Планирование экспериментов. Решаются следующие основные задачи:
выбор способов ускорения сходимости статистических оценок интересующих нас критериев к истинным значениям;
определение объема имитационных экспериментов;
составление плана проведения машинных экспериментов, что особенно важно при решении задач оптимизации на основе имитации. Решение вышеуказанных задач и составляет содержание этапа планирования экспериментов.
Метод ступенчатой аппроксимации. Зависимость плотности распределения f(у) от возможных значений случайной величины у представляется графически в интервале изменения у от а до b. Если случайная величина задана на бесконечном интервале, то производим усечение распределения с заданной точностью.
Использование предельных теорем. В некоторых случаях для имитации определенных законов распределения используют предельные теоремы теории вероятностей. Так, например, для получения нормального закона распределения используется свойство сходимости независимых величин к нормальному распределению.
Имитация потоков дискретных событий. Под потоком событий, как ранее было отмечено, понимают последовательность однородных событий, происходящих в случайные моменты времени.
Литература
Голенко Д.И. Моделирование псевдослучайных чисел на ЭВМ. – М.: Наука, 1982.
Денисов А.A., Колесников Д.H. Теория больших систем управления. – Л.; Энергоиздат, 1982.
Ермаков С.М. Метод Монте-Карло и смежные вопросы. – М.: Наука, 1981.
Моисеев Н.Н. Имитационные модели. – М.: Знание, 1983.
Полляк Ю.Г. Вероятностное моделирование на ЭВМ. – М.: Советское радио, 1981.
Растригин Л.А. Современные принципы управления сложными объектами. – М.: Советское радио, 1980.
Шеннон К. Имитационное моделирование. – М.: Наука, 1989.
- «Мати» – Российский государственный технологический университет им. К.Э. Циолковского
- В.В. Мыльника
- Предисловие
- Часть I. Основы построения и финансирования систем управления Глава 1. Системы и их Закономерности
- 1.1. Системы
- 1.2. Классификация систем и их характеристика
- 1.3. Основные закономерности сметем
- Литература
- Глава 2. Управление и кибернетика
- 2.1. Управление
- 2.2. Кибернетика и ее принципы
- 2.3. Производственная организация как кибернетическая система
- Литература
- Глава 3. Автоматизация управления
- 3.1. Основные направления автоматизации управления
- 3.2. Классификация аису
- 3.3. Структурное построение иаису
- 3.4. Общесистемные принципы создания иаису
- 3.5. Методы синтеза структуры иаису
- 3.6. Цели и критерии эффективности систем управления
- Глава 4. Методология разработки систем управления
- 4.1. Организация разработки систем управления
- Взаимосвязь отдельных фаз инвестиционного проекта с сетевым графиком создания системы управления
- 4.2. Инвестиционный цикл проекта и его структура
- Литература
- Глава 5. Источники и методы финансирования систем управления
- 5.1. Источники финансирования
- 5.2. Основные методы финансирования
- Литература
- Глава 6. Методологические основы принятия решений
- 6.1. Сущность принятия решений
- 6.2. Классификация управленческих решений
- 6.3. Постановка задачи принятия управленческих решений
- 6.4. Модель процесса принятия и реализации управленческих решений
- 6.5. Человеческий фактор в принятии и реализации уоравленческих решений
- Литература
- Часть II. Методы исследования и оценки эффективности систем управления Глава 7. Системный анализ
- 7.1. Предмет системного анализа
- 7.2. Процедуры системного анализа
- 7.3. Разработка, построение и исследование моделей
- Литература
- Глава 8. Исследование операций
- 8.1. Вводные понятия
- 8.2. Методы безусловной и условной оптимизации
- 8.3. Корреляционный и регрессионный анализ
- 8.4. Робастные методы и процедуры
- 8.5. Выводы по анализу применяемых методов
- Литература
- Глава 9. Имитационное моделирование
- 9.1. Понятие об имитационном моделировании
- 9.2. Имитация функционирования систем с дискретными событиями
- 9.3. Методы имитации случайных факторов
- Глава 10. Планирование экспериментов
- 10.1. Полный факторный эксперимент и дробные реплики
- Полный факторный эксперимент для двух независимых переменных, варьируемых на двух уровнях (планирование типа 22)
- Полный факторный эксперимент для двух независимых переменных, варьируемых на двух уровнях (планирование типа 23)
- Первая полуреплика от полного факторного эксперимента типа 23 (планирование типа 23-1)
- Вторая полуреплика от полного факторного эксперимента типа 23 (планирование типа 23-1)
- 10.2. Поиск области оптимума
- Глава 11. Распознавание объектов, явлений и ситуации
- 11.1. Сущность процесса распознавания
- 11.2. Системы распознавания и их классификация
- 11.3. Задачи при создании системы распознавания
- 11.4. Математические методы распознавания
- Глава 12. «Черный» и «белый» ящики как научные методы
- 12.1. Понятие «черного» и квелого» ящика
- 12.2. Исследование поведения «черного» ящика
- Глава 13. Экспертные оценки
- 13.1. Сущность метода экспертных оценок
- 13.2. Подбор экспертов
- 13.3. Методы проведения опроса экспертов
- 13.4. Обработка экспертных оценок
- Анализ оценки относительной важности влияния I-X локальных аису на статьи затрат себестоимости продукции
- Мнение экспертов источников аргументации
- Литература
- Глава 14. Оценка эффективности систем управления
- 14.1. Эффективность инвестиций в системы управления
- 14.2. Методы оценки эффективности систем управления
- 14.3. Статические методы
- 14.4. Дисконтирование потоков денежных ресурсов
- 14.6. Динамические методы
- 14.6. Определение затрат на создание и эксплуатацию систем управления
- 14.7. Факторы и источники формирования социально-экономических результатов
- 14.8. Оценка социально-экономических результатов
- 14.9. Учет инфляционных процессов
- 14.10. Учет неопределенности и рисков
- Литература
- Глоссарий
- Содержание