Слаботочка Книги

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 [61] 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199

вание ими содержательного описания моделируемой системы, которое в процессе трансляции переводится в машинную модель описанного выше типа. Для сравнения отметим, что математической моделью «непрерывных» языков являются дифференциальные уравнения. Указанное содержательное описание существенно облегчает пользователю общение с программой, позволяя составлять модель с применением понятий из хорошо известной ему предметной области. Но такая концептуальность может служить препятствием для расширения класса моделируемых задач и для исследования моделей математических методов, требующих знания именно математической модели (остающейся неизвестной пользователю или требующей для своего выявления значительных дополнительных усилий).

Отметим различия между существующими языками. Во-первых, это чисто терминологические отличия (например, в обозначениях объектов, признаков, состояний, событий и т. д.). Во-вторых, отличия в способах обработки последовательности определяющих событий. Третьим и, пожалуй, наиболее существенным отличием является степень гибкости языка. Так, одним из «жестких» языков является язык GPSS, где пользователю представлена лишь возможность формировать свою модель с помощью четко оговоренного набора блоков. Это существенно упрощает процесс составления программы, но снижает ее эффективность. Представителями «гибких» языков являются, например, SIMULA и SIMSCRIPT. В них требуется дополнительная работа по учету последствий событий, происходящих в системе.

Следует отметить, что перечисленные языки хорошо приспособлены для описания систем, изучаемых в теории надежности. Практический выбор того или иного языка чаще диктуется наличием соответствующих трансляторов и подготовкой программистов, нежели их сравнительными качествами.

11.4. ОРГАНИЗАЦИЯ ИМИТАЦИОННОГО ЭКСПЕРИМЕНТА

Процесс машинной имитации, осуществляемый с помощью любого программного средства, можно представить как преобразование некоторого набора исходных данных X в набор выходных данных Y. В приведенном примере набором X может служить последовательность X = t\f,}ki-

Состав выходных данных Y в значительной степени определяется целями Моделирования и обычно представляет собой некоторые стандартные показатели надежности (коэффициент готовности, вероятность безотказной работы на заданном промежутке времени, коэффициент загрузки ремонтного оборудования и т. д.) либо распределения соответствующих случайных величин. Однако в качестве Y могут выбираться и случайные последовательности (или распределения их характеризующие) в случае, например, изучения неустановившегося режима. Поскольку обычно в имитационном эксперименте интерес представляет не один показатель, а некоторый набор, то и выходные данные, как правило, представляют собой большие массивы информации. Их статистическая обработка с целью получения искомых усредненных характеристик вполне аналогична обычной статистической обработке случайных величин или процессов.

Следует, однако, помнить, что традиционно большинство статистических процедур использует предположения о независимости и нормальности случайных величин. Оба эти предположения обычно не выполняются в имитационных экспериментах. Например, последовательные длительности ожидания начала восстановления в приведенном выше примере являются зависимыми и заведомо не-гауссовскими. Поэтому многие процедуры, применяемые для обработки результатов имитационных экспериментов, имеют недостаточное математическое обоснование. В связи с этим при моделировании стремятся так преобразовать наборы данных, чтобы можно было воспользоваться хорошо обоснованными и хорошо за-



рекомендовавшими себя методами. В отличие от натурного эксперимента, здесь имеется дополнительная возможность для повышения точности и достоверности оценок- генерация специальным образом подобранной последовательности случайных чисел, определяющей динамику модели. Так, широко используются методы понижения дисперсии, позволяющие повышать точность оценок. Объясним идею этих методов на одном примере - методе дополняющих переменных.

Пусть искомым показателем является среднее «выходной» случайной величины Y, зависящей от генерируемых в процессе имитации независимых случайных величин 01, 02, ... монотонным образом, т. е. увеличение любого из аргументов 6; функции V = У (01, 02, ...) приводит к увеличению значения функции. Пусть Fi.(x) - функция распределения случайной величины 0. Сформируем новую последовательность {0/} : 0 = F7 (1 - Ft (0j))- Легко показать, что случайная величина 0[- распределена так же, как и 0. При генерации случайные величины 6; и 0[- удобнее получать с помощью одного и того же числа сог, равномерно распределенного на (О, 1) и реализуемого с помощью датчика случайных чисел: 0 = = fr (юг); 0- = Ff (1 - coj). Ясно, что величины 0, и Э- связаны антимонотонной зависимостью: при увеличении 0j величина 0j- убывает. Отсюда и из монотонности функции Y следует, что случайные величины V = V (Q,, Q, ...) и У = = Y (01, 02, ...) имеют отрицательный коэффициент ковариации г. В то же время эти величины имеют одинаковые среднее я и дисперсию а. Поэтому оценка {Y + К)/2, является несмещенной оценкой я с дисперсией al = (а + г)/2, меньшей, чем а/2, которая получилась бы при независимых реализациях Y и Y. Следовательно, можно повысить точность оценок, если добиться монотонной зависимости выхода от генерируемых в процессе моделирования случайных величин. В ряде систем обслуживания такая монотонность имеет место. Например, время ожидания возрастает с ростом времени обслуживания и убывает с ростом интервалов между заявками.

В общем случае для применения метода дополняющих переменных необхо-дамо исследование монотонности. Этот метод представляет собой одну из разновидностей метода зависимых испытаний. В самом деле, его эффективность обусловливается статистической зависимостью величин Y и Y. Другое примсБение метод зависимых испытаний находит при вычислении коэффициентов чувствительности модели относительно вариаций ее параметров, организации поиска экстремума и других ситуациях, когда требуется сравнивать значения некоторого показателя при различных значениях исходных параметров. Так, предположим, что при одном значении исходных параметров искомый показатель является случайной величиной Y, а при другом Y. Требуется оценить Е {Y - Y). Поскольку дисперсия величины Y ~ Y равна (К Г) = (Г) + (Y) - 2г (Г, F), где г (Y, Y) - коэффициент ковариации величин Y и Y, то для повышения точности оценки [т. е. для уменьшения дисперсии оценки {Y - Y)] необходимо так организовать вычисление Y и Y, чтобы они были положительно коррели-рованы. Обычно это достигается использованием одной и той же последовательности случайных (псевдослучайных) величин для формирования определяющих последовательностей при вычислениях Y и Y соответственно. (При методе дополняющих переменных для такого формирования использовались дополняющие случайные величины.) Выигрыш в точности при этом может достигать нескольких порядков.

Одной из форм применения классических результатов математической статистики к обработке результатов моделирования может служить так называемый регенеративный метод. Этот метод используется, когда моделируются системы, описывающиеся регенерирующими процессами. В этом случае весь процесс разбивается на независимые одинаково распределенные «циклы», и это обусловливает применимость классических методов оценки стационарных характеристик. Эти же методы используются для нахождения времени моделирования при заданной точности оценок.



11.5. МОДЕЛИРОВАНИЕ РЕДКИХ СОБЫТИЙ

Здесь остановимся еще на одном аспекте, представляющем особый интерес для вопросов надежности . Как известно, смысл многих мероприятий, рассматриваемых в теории надежности (восстановления, резервирования, замен, профи-лактик и т. п.), заключается в повышении надежности изучаемых ими проектируемых систем, т. е. уменьшении вероятности их отказа. Если применять моделирование для анализа подобных систем, то непосредственная оценка указанных вероятностей р невозможна, поскольку число реализаций, требуемое для подобных оценок, имеет слишком большой порядок (ер)-, где е - относительная погреш-"ность оценки. Опишем вкратце идею двух методов, пригодных для оценивания в этой ситуации.

1. Метод взвешенных испытаний. Пусть вновь 0 = (Gj, Gg, ...) - случайные величины,- определяющие динамику процесса. Предположим для простоты, что имеется конечное число этих величин (отметим, что в действительности число этих величин всегда конечно). Пусть w (х) - плотность случайного вектора 0. Случай, когда 0 имеет дискретное распределение, рассматривается аналогично. Если задана конкретная реализация вектора 0, то по ней определяется, происходит ли требуемое событие, вероятность р которого оценивается. Будем считать, что р = Р {& В). Тогда

р = J W (х) dx = 8в (х) W (х) dx.

где бв (х) -характеристическая функция (индикатор) множества В, т. е. Ьв{х) = = О, если хфВ, и Ьв{х) = 1 при х S В. Если брать независимые реализации Xl, Х2, Xk вектора 0 и строить несмещенную оценку

то ее дисперсия равна (1 - p)/kp и неограниченно возрастает с уменьшением р. Это и означает, что малую вероятность точно оценить невозможно. Причина - практическая нереализуемость события {0 в В}. Выберем теперь случайный вектор g с плотностью V (х). Очевидно [при необходимых оговорках относительно обращения в нуль функции v (х)],

Р = JSb (х) (х) dx = {X) V (х) dx=Eg {%).

1 *

Таким образом, величина "Г 2 (Уз) (iJj представляют собой независимые реали-

зации случайного вектора g) также является несмещенной оценкой вероятности р. Однако если величина J v {x)dx не является малой, то событие (С 6 В} не

является редким, и трудности, связанные с получением оценки в предыдущем случае, отпадают. В обмен, правда, должны быть известны плотности w{x) и v{x), но, как правило, их вычисление в точках i/j не составляет труда и получается на основе знания плотностей отдельных (обычно независимых) членов определяющей последовательности. Оптимальным выбором является

W {х)/р при X е в, О при X фВ,

Подробно эти вопросы рассматриваются в гл. 12.




0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 [61] 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199
Яндекс.Метрика