Основные принципы моделирования непрерывно-стохастических систем
Непрерывно-стохастические системы наиболее характерны для исследования вероятностных моделей компьютерных сетей.
В настоящее время разработан ряд принципов построения алгоритмов для моделирования таких систем. В общем, все алгоритмы данного типа можно разделить на две группы: детерминированные и стохастические.
В детерминированных алгоритмах используется так называемый "принцип ?t", по которому состояние системы последовательно рассматривается через определенные (детерминированные) интервалы времени ?t.
Каждое новое состояние блоков системы определяется в момент времени t+?t в соответствии с действующими случайными факторами, задаваемыми распределениями их вероятностей.
Данный принцип универсален, может быть реализован набором стандартных программных блоков. После определенного практического навыка на первоначальном периоде освоения этого принципа, процесс составления алгоритмов и программ при реализации различных моделей по ?t — принципу может быть значительно упрощен. Однако этот принцип неэкономичен, поскольку на каждом шаге необходимо просматривать состояние всех узлов и блоков системы, несмотря на то, что большинство (а то и все) этих блоков за время ?t не изменяют своего состояния. Если же увеличивать интервал ?t, то появляется опасность пропуска отдельных событий в системе.
Сам характер процессов, происходящих в непрерывно-стохастических системах, исходит из того факта, что состояние отдельных ее узлов изменяется с моментом времени, совпадающего с наступлением определенных событий — поступлением очередной заявки на обслуживание, окончания ее обработки, момента выхода из строя оборудования и т.п. Поэтому моделирование таких систем удобно проводить, используя событийный принцип. Этот принцип заключается в том, что текущее время в моделируемой системе изменяется дискретно, проходя последовательно через все события, т. е. моменты изменения состояния блоков системы. Момент наступления следующего события в системе определяется минимальным значением моментов времени из их списка будущих событий, которые будут происходить в каждом блоке системы.
В процессе имитационного моделирования этих потоков заявок можно определить случайные времена наступления первого и второго события при каждой реализации ( соответственно t1
и t2). При t1<t2 принимается событие, когда в систему поступает новая заявка. В модели после этого реализуются шаги, связанные с последствием наступления такого события. Одновременно разыгрывается новое время t'1 поступления следующей заявки. На следующем шаге будут сравниваться величины t'1
и t2 . Таким образом, на каждом шаге моделирования выбирается событие с минимальным временем его наступления по отношению к другим событиям, которые могут иметь место в системе.
При событийном принципе интервалы времени, в которые просматривается состояние системы, изменяются с переменным шагом. Кроме того, просматриваются состояния не всех узлов системы, а только тех, в которых события произошли.
Известны разновидности возможных вариантов реализации событийного принципа (или принципа ?Z): с синхронизацией работы всех узлов системы по одному выбранному в качестве ведущего «или без синхронизации с рассмотрением состояния отдельных узлов автономно, независимо от других, с циклическим или спорадическим (выборочным) просмотром состояний отдельных узлов. Целесообразность выбора того или иного варианта алгоритма обуславливается видом моделируемой системы.
Ниже приводятся отдельные имитационные модели непрерывно-стохастических систем в основном на основе событийного принципа, имеющего вышеприведенные преимущества по сравнению с принципом ?t.