Советов Б.Я., Яковлев С.А. Моделирование систем (3-е изд., 2001) (1186218), страница 36
Текст из файла (страница 36)
При этомвыбор А; оказывает существенное влияние на ход процесса и результаты моделирования, и если 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 пригодны триспособа проведения вычислений, в основе которых лежит применение цифровой, аналоговой и гибридной вычислительной техники.Рассмотрим методы моделирования систем с точки зрения использования языков программирования. При этом в данном параграфеопустим рассмотрение чисто аналоговых способов вычислений, таккак они реализуются не программно, а путем составления электрических цепей, т. е.
когда язык программирования не требуется (необсуждая вопросы программирования АВМ). По этой же причинене будем рассматривать использование ЯИМ при гибридных методах вычислений. Тогда классификация языков для программирования моделей систем имеет вид, приведенный на рис.
5.3.Для моделирования систем используются как универсальныеи процедурно-ориентированные ЯОН, так и специализированныеЯИМ. При этом ЯОН предоставляют программисту-разработчикумодели Мм больше возможностей в смысле гибкости разработки,отладки и использования модели. Но гибкость приобретается ценойбольших усилий, затрачиваемых на программирование модели, таккак организация выполнения операций, отсчет системного времении контроль хода вычислений существенно усложняются.Имеющиеся ЯИМ можно разбить на три основные группы,соответствующие трем типам математических схем: непрерывные,дискретные и комбинированные.
Языки каждой группы предназначены для соответствующего представления системы S при создании ее машинной модели Мм.В основе рассматриваемой классификации в некоторых ЯИМлежит принцип формирования системного времени. Так как152рI МоделированиеАналоговые]систем IГибридныеЦифровые IЯзыки имитацион ного моделированияftXНепрерывные I I КомбинированныеЯзыки общегоназначения1 ,ДискретныеXItIsи1Рис. 5.3.
Классификация языков для программирования моделей систем«системные часы» предназначены не только для продвижения системного времени в модели Мм, но также для синхронизации различных событий и операций в модели системы S, то при отнесениитого или иного конкретного языка моделирования к определенномутипу нельзя не считаться с типом механизма «системных часов».Непрерывное представление системы S сводится к составлениюуравнений, с помощью которых устанавливается связь между эндогенными и экзогенными переменными модели. Примером такогонепрерывного подхода является использование дифференциальныхуравнений. Причем в дальнейшем дифференциальные уравнениямогут быть применены для непосредственного получения характеристик системы, это, например, реализовано в языке MIMIC.А в том случае, когда экзогенные переменные модели принимаютдискретные значения, уравнения являются разностными. Такой подход реализован, например, в языке DYNAMO.Представление системы 5 в виде типовой схемы, в которойучаствуют как непрерывные, так и дискретные величины, называется комбинированным.
Примером языка, реализующего комбинированный подход, является GASP, построенный на базе языкаFORTRAN. Язык GASP включает в себя набор программ, с помощью которых моделируемая система S представляется в следующем виде. Состояние модели системы М (S) описывается наборомпеременных, некоторые из которых меняются во времени непрерывно. Законы изменения непрерывных компонент заложены в струк153туру, объединяющую дифференциальные уравнения и условия относительно переменных. Предполагается, что в системе могут наступать события двух типов: 1) события, зависящие от состояния z/,2) события, зависящие от времени /,.
События первого типа наступают в результате выполнения условий, относящихся к законам изменения непрерывных переменных. Для событий второго типа процессмоделирования состоит в продвижении системного времени от момента наступления события до следующего аналогичного момента.События приводят к изменениям состояния модели системы и законов изменения непрерывных компонент. При использовании языкаGASP на пользователя возлагается работа по составлению на языкеFORTRAN подпрограмм, в которых он описывает условия наступления событий, зависящих от процесса функционирования системыS, законы изменения непрерывных переменных, а также правилаперехода из одного состояния в другое.Языки моделирования дискретных систем. В рамках дискретногоподхода можно выделить несколько принципиально различныхгрупп ЯИМ.