ПРИМЕР МОДЕЛИРОВАНИЯ ПРОЦЕССА ФУНКЦИОНИРОВАНИЯ ВЫЧИСЛИТЕЛЬНОГО ЦЕНТРА Опустим рассмотрение всех разделов пояснительной записки кроме основного, непосредственно связанного с моделированием объекта. В данном примере задание на моделирование содержит следующую постановку задачи. В вычислительный центр (ВЦ) приходят пользователи через интервалы времени 10 ± 2 мин. Если все три имеющихся перфоратора заняты, пользователю отказывают в обслуживании. Перфораторы имеют разную производительность и могут обеспечить обслуживание средней программы пользователя за 20 ± 5, 40 ± 10 и 40 ± 20 мин. Пользователи стремятся занять свободный перфоратор с максимальной производительностью. Полученные программы сдаются в приемный накопитель, откуда выбираются для обработки на 1-ю ЭВМ — программы с 1-го и 2-го перфораторов, на 2-ю ЭВМ — программы с 3-го перфоратора. Времена обработки программ на 1-й и 2-й ЭВМ равны 15 и 30 мин соответственно. Смоделировать процесс обработки 300 заданий. Определить вероятность отказа в обслуживании пользователя ВЦ. На основании этого задания на моделирование процесса взаимодействия пользователей с ВЦ, считая, что задание соответствует концептуальной модели, построим структурную схему (рис. 1). Таким образом, в процессе взаимодействия пользователей с ВЦ возможны следующие ситуации: 1) режим нормального обслуживания, когда Рис. 1. Структурная схема процесса функционирования ВЦ пользователь выбирает один из свободных перфораторов, отдавая предпочтение тому, у которого производительность больше (согласно заданию, тому перфоратору, у которого меньше номер); 2) режим отказа в обслуживании пользователя, когда пользователь уходит из ВЦ, так как все перфораторы заняты. Учитывая, что по своей сути описанные процессы являются процессами обслуживания пользователей ресурсами ВЦ, используем для их формализации аппарат Q-схем. В соответствии с концептуальной моделью, используя символику Q-схем, структурная схема модели данного примера может быть представлена в виде, показанном на рис. 2, где И — источник; К — канал; Н — накопитель. При этом источник И имитирует процесс прихода пользователей в ВЦ. Система клапанов регулирует процесс занятия пользователями (заявками в терминах 0-схем) каналов Kl, K2 и КЗ соответствующих перфораторам с теми же номерами на структурной схеме (см. рис. 5.7). Если канал Kl занят, то клапан / закрыт, а клапан 2 открыт; если канал K2 занят, то клапан 3 закрыт, а клапан 4 открыт, если клапан КЗ занят, то клапан 5 закрыт, а клапан б открыт. В результате если все каналы Kl, K2, КЗ заняты, т. е. клапаны 2, 4 и 6 открыты, то заявка теряется, что соответствует уходу пользователя из ВЦ из-за отстутствия свободных перфораторов. Заявки, обслуженные каналами Kl и K2, поступают в накопитель HI, а затем обслуживаются каналом К5, имитирующим работу ЭВМ1, а заявки, обслу- Р и с. 2. Структурная схема модели процесса функционирования ВЦ в символике Q-схем женные каналом КЗ, поступают в накопитель Н2, а затем обслуживаются каналом Кб, имитирующим работу ЭВМ2 ВЦ. Нумерация накопителей HI и Н2 на рис. 2 соответствует нумерации накопителей на рис. 1. Отметим, что при такой постановке задачи оценки вероятностно-временных характеристик процесса функционирования ВЦ использование аналитического подхода, базирующегося на теории массового обслуживания, не представляется возможным, так как в явном виде не получены выражения для вычисления искомых характеристик. Поэтому для получения необходимых оценок аналитическим методом нужно предварительно упростить модель BER1 PER1 PER2 PER3 PER4 MET МЕТЗ МЕТ2 END FVARIABLE X$PER1/(X$PER1+X$PER3) Вычисление вероятности GENERATE 1000,200 Входной поток TRANSFER ALL,PERI,PER4,4 Поиск терминала SEIZE 1 ADVANCE 2000,500 Работа на терминале 1 RELEASE 1 TRANSFER ,MET SEIZE 2 ADVANCE 4000,1000 Работа на терминале 2 RELEASE 2 TRANSFER ,MET SEIZE 3 ADVANCE 4000,2000 Работа на терминале 3 RELEASE 3 TRANSFER ,MET3 SAVEVALUE PERl+,1 Подсчет отказов TERMINATE ENTER 1 Приемный накопитель SEIZE 4 LEAVE 1 ADVANCE 1500 Обслуживаниена ЭВМ1 RELEASE 4 TRANSFER ,MET2 ENTER 1 Приемный накопитель SEIZE 5 LEAVE 1 ADVANCE 3000 Обслуживание на ЭВМ2 RELEASE 5 SAVEVALUE PER3+.1 TEST E XSPER3,300,END SAVEVALUE 1,V$BER1 Вычисление вероятности отказа TERMINATE 1 рис. 3. Текст программы на GPSS PC моделирования процесса функционирования ВЦ (естественно за счет точности и достоверности получаемых результатов). В исходной постановке воспользуемся методом имитационного моделирования. Запишем переменные и уравнения имитационной модели в следующем виде: Эндогенные переменные: tni - время обработки задания на i-м перфораторе, i=1..3; tpj - время решения задачи на j-й ЭВМ, j=1,2; экзогенные переменные: N0 — число обслуженных пользователей; N1 — число пользователей, получивших отказ; уравнение модели: Pотк=N1/( N0+ N1), где Pотк — вероятность отказа пользователю в обслуживании ВЦ. Рис. 4. Обобщенная схема моделирующего алгоритма процесса функционирования ВЦ номера устройств 1, 2, 3 присвоены перфораторам, а 4 и 5 — ЭВМ1 и ЭВМ2 соответственно; накопитель 1 соответствует приемному накопителю ВЦ. За единицу системного времени выбираем 1/100 мин, так как при этом обеспечивается наилучшее качество псевдослучайных последовательностей. Текст GPSS-программы с комментариями приведен на рис. 3. В результате моделирования на ПЭВМ были получены статистические данные о процессе функционирования ВЦ. Для 60 прогонов модели на различных случайных последовательностях, генерируемых датчиками случайных чисел, было получено среднее число отказов пользователям 86 (на 300 посещений ВЦ), т. е. РОТК=0,286. Рассмотрим особенности имитации процесса функционирования ВЦ при использовании алгоритмического языка общего назначения. Обобщенная схема моделирующего алгоритма приведена на рис. 4. При разработке схемы алгоритма использован «принцип t».