Советов Б.Я., Яковлев С.А. Моделирование систем (2001) (1186219), страница 36
Текст из файла (страница 36)
п.).Заданная схема моделирующего алгоритма преобразуется в системусовместно рассматриваемых дифференциальных уравнений. Моделирование в этом случае сводится, по сути дела, к отысканиючисленных решений этих уравнений при использовании некоторогостандартного пошагового метода.Примером языка моделирования непрерывных систем на ЭВМпутем представления моделируемой системы в виде уравнений в конечных разностях является язык DYNAMO, для которого уравненияустанавливают соотношения между значениями функций в моменты времени t и t+dt и между значениями их производных в моментвремени t+dt/2. И в этом случае моделирование, по существу,представляет собой пошаговое решение заданной системы дифференциальных уравнений [46].Универсальная ЭВМ — устройство дискретного типа, а поэтомудолжна обеспечивать дискретную аппроксимацию процесса функционирования исследуемой системы S. Непрерывные изменения в процессе функционирования реальной системы отображаются в дискретной модели Мм, реализуемой на ЭВМ, некоторой последовательностью дискретных событий, и такие модели называются моделямидискретных событий.
Отдельные события, отражаемые в дискретной модели, могут определяться с большой степенью приближенияк действительности, что обеспечивает адекватность таких дискретных моделей реальным процессам, протекающим в системах S.Архитектура языков моделирования. Архитектуру ЯИМ, т.
е.концепцию взаимосвязей элементов языка как сложной системы,и технологию перехода от системы S к ее машинной модели Мы можно представить следующим образом: 1) объекты моделирования(системы S) описываются (отображаются в языке) с помощьюнекоторых атрибутов языка; 2) атрибуты взаимодействуют с процессами, адекватными реально протекающим явлениям в моделируемой системе S; 3) процессы требуют конкретных условий, определяющих логическую основу и последовательность взаимодействияэтих процессов во времени; 4) условия влияют на события, имеющие место внутри объекта моделирования (системы 5) и привзаимодействии с внешней средой Е; 5) события изменяют состояния модели системы М в пространстве и во времени.Типовая схема архитектуры ЯИМ и технология его использования при моделировании систем показана на рис. 5.1.148ОбъектыtoгОписанияАтрибутыВ займаВейстВия6to-аТре5оЙанияУсловияagoПроцессыВлиянияXСобытияИзмененияСостоянияРис.
5.1. Типовая схема архитектуры ЯИМ и технологияего использованияВ большинстве случаев с помощью машинных моделей исследуются характеристики и поведение системы S на определенном отрезке времени, поэтому одной из наиболее важных задач при создании модели системы и выборе языка программирования моделиявляется реализация двух функций: 1) корректировка временнойкоординаты состояния системы («продвижение» времени, организация «часов»); 2) обеспечение согласованности различных блокови событий в системе (синхронизация во времени, координацияс другими блоками).Таким образом, функционирование модели Мы должно протекать в искусственном (не в реальном и не в машинном) времени,обеспечивая появление событий в требуемом логикой работы исследуемой системы порядке и с надлежащими временными интервалами между ними.
При этом надо учитывать, что элементы реальной системы S функционируют одновременно (параллельно), а компоненты машинной модели Мм действуют последовательно, так какреализуются с помощью ЭВМ последовательного действия. Поскольку в различных частях объекта моделирования события могутвозникать одновременно, то для сохранения адекватности причинно-следственных временных связей необходимо в ЯИМ создать«механизм» задания времени для синхронизации действий элементов модели системы [17, 46].Задание времени в машинной модели. Как уже отмечалось в гл. 3,существует два основных подхода к заданию времени: с помощьюпостоянных и переменных интервалов времени, которым соответствуют два принципа реализации моделирующих алгоритмов, т.
е.«принцип Дг» и «принцип 5z».Рассмотрим соответствующие спрособы управления временем в модели системыМ(S) на примере, показанном на рис. 3.2, где но оси реального временя отложенапоследовательность событий в системе {s,) во времени, причем события sA и s5происходят одновременно (рис. S.2, а).
Под действием событий s, изменяютсясостояния модели z, в момент времени tzi, причем такое изменение происходитскачком 5г.В модели, построенной по «принципу Д(» (рис. 5.2, б), моменты системного149времени будут последовательно принимать значения t^—Al, t'2=2At, t'3=3At,t'A=4At, t'5=5At. Эти моменты системного времени <у'(Л() никак не связаныс моментами появления событий sh которые имитируются в модели системы.Системное время при этом получаетпостоянное приращение, выбираемоеи задаваемое перед началом имитационного эксперимента.В модели, построенной по «принципу дз» (рис. 5.2, в), изменение времени наступает в момент смены состоРис.
5.2. Способы управления временемяния системы, и последовательностьв модели системымоментов системного времени имеетвид <,"=<*!, f j - t e , ' j - ' r i . Ч-tt*.'5 = 'i5, т. е. моменты системного времени t£(5z) непосредственно связаны с моментами появления событий в системе st.У каждого из этих методов есть свои преимущества с точкизрения адекватного отражения реальных событий в системе 5 и затрат машинных ресурсов на моделирование. При использовании«принципа 8z» события обрабатываются последовательно и времясмещается каждый раз вперед до начала следующего события.В модели, построенной по «принципу At», обработка событий происходит по группам, пакетам или множествам событий.
При этомвыбор А; оказывает существенное влияние на ход процесса и результаты моделирования, и если At задана неправильно, то результатымогут получиться недостоверными, так как все события появляютсяв точке, соответствующей верхней границе каждого интервала моделирования. При применении «принципа Sz» одновременная обработка событий в модели имеет место только тогда, когда этисобытия появляются одновременно и в реальной системе.
Этопозволяет избежать необходимости искусственного введения ранжирования событий при их обработке в конце интервала At.При моделировании по «принципу At» можно добиться хорошейаппроксимации: для этого At должно быть малым, чтобы дванеодновременных события не попали в один и тот же временнойинтервал. Но уменьшение At приводит к увеличению затрат машинного времени на моделирование, так как значительная часть тратится на корректировку «часов» и отслеживание событий, которыхв большинстве интервалов может и не быть.
При этом даже присильном «сжатии» At два неодновременных события могут попастьв один и тот же временной интервал At, что создает ложноепредставление об их одновременности.Для выбора принципа построения машинной модели Мм и соответственно ЯИМ необходимо знать: цель и назначение модели;требуемую точность результатов моделирования; затраты машинного времени при использовании того или иного принципа; необходимый объем машинной памяти для реализации модели, постро150еныой по принципу At и Sz; трудоемкость программирования модели и ее отладки.Требования к языкам имитационного моделирования.
Таким образом, при разработке моделей систем возникает целый ряд специфических трудностей, поэтому в ЯИМ должен быть предусмотреннабор таких программных средств и понятий, которые не встречаются в обычных ЯОН.Совмещение. Параллельно протекающие в реальных системах5 процессы представляются с помощью последовательно работающей ЭВМ. Языки моделирования позволяют обойти эту трудность путем введения понятия системного времени, используемогодля представления упорядоченных во времени событий.Размер.
Большинство моделируемых систем имеет сложнуюструктуру и алгоритмы поведения, а их модели велики по объему.Поэтому используют динамическое распределение памяти, когдакомпоненты модели системы Мм появляются в оперативной памятиЭВМ или покидают ее в зависимости от текущего состояния. Важным аспектом реализуемости модели Мы на ЭВМ в этом случаеявляется блочность ее конструкции, т. е. возможность разбиениямодели на блоки, подблоки и т.
д.Изменения. Динамические системы связаны с движением и характеризуются развитием процесса, вследствие чего пространственнаяконфигурация этих систем претерпевает изменения по времени.Поэтому во всех ЯИМ предусматривают обработку списков, отражающих изменения состояний процесса функционирования моделируемой системы S.Взаимосвязанность. Условия, необходимые для свершения различных событий в модели Мм процесса функционирования системыS, могут оказаться весьма сложными из-за наличия большого количества взаимных связей между компонентами модели. Для разрешения связанных с этим вопросом трудностей в большинство ЯИМВключают соответствующие логические возможности и понятиятеории множеств.Стохастичность.
Для моделирования случайных событий и процессов используют специальные программы генерации последовательностей псевдослучайных чисел, квазиравномерно распределенныхна заданном интервале, на основе которых можно получить стохастические воздействия на модель Ми, имитируемые случайнымивеличинами с соответствующим законом распределения.Анализ. Для получения наглядного и удобного в практическомотношении ответа на вопросы, решаемые методом машинного моделирования, необходимо получать статистические характеристикипроцесса функционирования модели системы М(5). Поэтому предусматривают в языках моделирования способы статистической обработки и анализа результатов моделирования.\'ЛПеречисленным требованиям при исследовании и проектировании различных систем S отвечают такие наиболее известные языкимоделирования дискретных событий, как SIMULA, SIMSCRIPT,GPSS, SOL, CSL и др.5.2.
СРАВНИТЕЛЬНЫЙ АНАЛИЗ ЯЗЫКОВИМИТАЦИОННОГО МОДЕЛИРОВАНИЯЗа сравнительно небольшой срок в области машинного моделирования систем произошел скачок, который был обусловлен потребностью в принципиально новом методе исследования и развитиемсредств вычислительной техники и который в первую очередь выразился в увеличении количества специализированных ЯИМ, причемэтот процесс имеет лавинообразный характер. К настоящему времени насчитывается несколько сотен развитых ЯИМ, поэтому оченьважно разобраться в этом многообразии ЯИМ и выбрать длямоделирования конкретной системы S наиболее эффективный язык[17, 31, 37, 46].Основы классификации языков моделирования.
Как уже отмечалось, для машинного моделирования системы 5 пригодны триспособа проведения вычислений, в основе которых лежит применение цифровой, аналоговой и гибридной вычислительной техники.Рассмотрим методы моделирования систем с точки зрения использования языков программирования. При этом в данном параграфеопустим рассмотрение чисто аналоговых способов вычислений, таккак они реализуются не программно, а путем составления электрических цепей, т.