Norenkov.Osnovy.Avtomatizirovannogo.Proektirovania.2002 (525024), страница 31
Текст из файла (страница 31)
3.18 представлен граф состояний рассматриваемой СМО, где Sk —состояние с k заявками в системе. Матрица интенсивностей представлена втабл. ЗЛО. Уравнения Колмогорова для установившегося режима имеют видИспользуя уравнения Колмогорова, можно выразить все Рр i= 1,2,3,..., черезР0. ПолучимР^Щц^аР^Р2= ((А + ц)/», - АР0)/ц = (1 + я)Р, - аР0 = <ЛР0;Р3= (1 + а)Р2 - aPt = а2Р}= с?Р0 и т. д.Здесь введено обозначение я = А. /ц.
Отметим также, что установившийся режим возможен только при а < 1.Так как S Р = 1, то Р = 1/(1 + а + а2+а3+...) =1-а.Рис. 3.18. Граф состояний1303.6. Математическое обеспечение анализа на системном уровнеТ а б л и ц а 3.10СостояниеSoSi5гSiS*So-КД000SiS2к05з00S4-Х.-ДкЦ-Х-цкц-Х- ц000А.ц-Х-ц000Теперь нетрудно получить и остальные требуемые результаты:Nm - Z Pkk = Р,+ 2Р2+ ЗР3 + ... = а(\ - а\\- а);= Р2 + 2Р3... = Z (k- \)Pk = Р^Времена пребывания в системе и очереди определяются соотношениями:иN av = ^Тav2av = ^которые называют формулами Литтла:Имитационное моделирование СМОДля представления имитационных моделей можно использовать языки программирования общего применения, однако такие представления оказываютсядовольно громоздкими.
Поэтому обычно используют специальные языки имитационного моделирования на системном уровне. Среди языков имитационногомоделирования различают языки, ориентированные на описание событий,средств обслуживания или маршрутов движения заявок (процессов). Выборязыка моделирования определяет структуру модели и методику ее построения.Ориентация на устройства характерна для функционально-логического и более детальных иерархических уровней описания объектов.Для описания имитационных моделей на системном уровне (иногда их называют сетевыми имитационными моделями — СИМ) чаще используютязыки, ориентированные на события или процессы. Примерами первых могутслужить языки Симскрипт, SMPL и ряд других.
К числу вторых относятся языки Симула, SOL, а также популярный язык GPSS.Языки имитационного моделирования реализуются в программно-методических комплексах моделирования СМО, имеющих ту или иную степень специализации. Так, комплексы на базе языка GPSS можно использовать во многихприложениях, но есть специализированные комплексы для моделирования вычислительных сетей, систем управления предприятиями и т. п.5-1313. Математическое обеспечение анализа проектных решенийПри использовании языков, ориентированных на процессы, в составе СИМвыделяются элементарные части и ими могут быть источники входных потоков заявок, устройства, накопители и узлы.Источник входного потока заявок представляет собой алгоритм, в соответствии с которым вычисляются моменты tk появления заявок на выходе источника.
Источники могут быть зависимыми и независимыми. В зависимых источниках моменты появления заявок связаны с наступлением определенныхсобытий, например с приходом другой заявки на вход некоторого устройства.Типичным независимым источником является алгоритм выработки значений tkслучайной величины с заданным законом распределения.Устройства в имитационной модели представлены алгоритмами выработкизначений интервалов (длительностей) обслуживания. Чаще всего это алгоритмыгенерации значений случайных величин с заданным законом распределения.Но могут быть устройства с детерминированным временем обслуживания иливременем, определяемым событиями в других частях СИМ.
Модель устройстваотображает также заданную дисциплину обслуживания, поскольку в модельвходит алгоритм, управляющий очередями на входах устройства.Накопители моделируются алгоритмами определения объемов памяти,занимаемых заявками, приходящими на вход накопителя. Обычно объем памяти, занимаемый заявкой, вычисляется как значение случайной величины, закон и (или) числовые характеристики распределения могут зависеть от типазаявки.Узлы выполняют связующие, управляющие и вспомогательные функции вимитационной модели, например, для выбора направлений движения заявок вСИМ, изменения их параметров и приоритета, разделения заявок на части, ихобъединения и т.
п.Обычно каждому типу элементарной модели, за исключением лишь некоторых узлов, в программной системе соответствует определенная процедура(подпрограмма). Тогда СИМ можно представить как алгоритм, состоящий изупорядоченных обращений к этим процедурам, отражающим поведение моделируемой системы.В процессе моделирования происходят изменения модельного времени, которое чаще всего принимается дискретным, измеряемым в тактах. Время изменяется после того, как закончена имитация очередной группы событий, относящихся к текущему моменту времени tk. Имитация сопровождается накоплениемв отдельном файле статистики таких данных, как количества заявок, вышедшихиз системы обслуженными и необслуженными, суммарное время занятогосостояния для каждого из устройств, средние длины очередей и т. п. Имитация заканчивается, когда текущее время превысит заданный отрезок времениили когда входные источники выработают заданное число заявок.
После этого производят обработку накопленных в файле статистики данных, что позволяет получить значения требуемых выходных параметров.1323.6. Математическое обеспечение анализа на системном уровнеСобытийный метод моделированияВ программах имитационного моделирования СМО преимущественно реализуется событийный метод организации вычислений. Сущность событийногометода заключается в отслеживании на модели последовательности событийв том же порядке, в каком они происходили бы в реальной системе.
Вычисления выполняют только для тех моментов времени и тех частей (процедур) модели, к которым относятся совершаемые события. Другими словами, обращенияна очередном такте моделируемого времени осуществляются только к моделям тех элементов (устройств, накопителей), на входах которых в этом тактепроизошли изменения.
Поскольку изменения состояний в каждом такте обычно наблюдаются лишь у малой доли ОА, событийный метод может существенно ускорить моделирование по сравнению с инкрементным методом, в котором на каждом такте анализируются состояния всех элементов модели.Рассмотрим возможную схему реализации событийного метода имитационного моделирования.Моделирование начинается с просмотра операторов генерирования заявок,т.
е. с обращения к моделям источников входных потоков. Для каждого независимого источника такое обращение позволяет рассчитать момент генерациипервой заявки. Этот момент вместе с именем — ссылкой на заявку — заносится в список будущих событий (СБС), а сведения о генерируемой заявке — всписок заявок (СЗ). Запись в СЗ включает в себя имя заявки, значения ее параметров (атрибутов), место, занимаемое в данный момент в СИМ. События вСБС упорядочиваются по мере увеличения моментов наступления.Затем из СБС выбирают совокупность сведений о событиях, относящихсяк наиболее раннему моменту времени.
Эта совокупность переносится в списоктекущих событий (СТС), из которого извлекаются ссылки на события. Обращение по ссылке к СЗ позволяет установить место в СИМ заявки А, с которойсвязано моделируемое событие. Пусть этим местом является устройство X.Далее программа моделирования выполняет следующие действия(рис. 3.19):ИнтерпретацияПродвижениев СИМзаявка АВыборзаявки Вна обслуживаниеНакоплениестатистикиПрогноз будущих событийРис. 3.19. Иллюстрация событийного моделирования1333. Математическое обеспечение анализа проектных решений1) изменяет параметры состояния устройства X; например, если заявка Аосвобождает X, а очередь к X не была пуста, то в соответствии с заданнойдисциплиной обслуживания из очереди к ^ выбирается заявка В и поступаетна обслуживание в X;2) прогнозируется время наступления следующего события, связанного сзаявкой В, путем обращения к модели устройства X, в которой рассчитываетсяпродолжительность обслуживания заявки В; сведения об этом будущем событии заносятся в СБС и СЗ;3) происходит имитация движения заявки А в СИМ по маршруту, определяемому заданной программой моделирования, до тех пор, пока заявка не придетна вход некоторого ОА; здесь либо заявка задерживается в очереди, либо путемобращения к модели этого ОА прогнозируется наступление некоторого будущегособытия, связанного с дальнейшей судьбой заявки А; сведения об этом будущемсобытии также заносятся в СБС и СЗ;4) в файл статистики добавляются необходимые данные.После отработки всех событий, относящихся к моменту времени tt, происходит увеличение модельного времени до значения, соответствующего ближайшему будущему событию, и рассмотренный процесс имитации повторяется.Краткое описание языка GPSSЯзык GPSS (General Purpose Simulation System), ориентированный на процессы, реализован в ряде программ имитационного моделирования.
Модель (программа) на языке GPSS представляет собой последовательность операторов(их называют блоками), отображающих события, происходящие в СМО приперемещениях транзактов. Поскольку в интерпретаторах GPSS реализуетсясобытийный метод и в СМО может быть одновременно много транзактов, тоинтерпретатор будет попеременно исполнять разные фрагменты программы,имитируя продвижения транзактов в текущий момент времени до их задержкив некоторых устройствах или очередях.Операторы GPSS имеют следующий формат:<метка> <имя оператора> <поле операндов> [<комментарий>],причем метка может занимать позиции, начиная со второй, имя оператора — свосьмой, поле операндов — с 19-й, комментарий обязательно отделяется отполя операндов пробелом.Поле операндов может быть пусто, иметь один или более операнд, обозначаемый ниже при описании блоков символами А, В, С, ... Операндами могутбыть идентификаторы устройств, накопителей, служебные слова и стандартные числовые атрибуты, к которым относятся величины, часто встречающиеся в разных задачах.