О.М. Замятина - Компьютерное моделирование (2007). Учебное пособие (1124144), страница 3
Текст из файла (страница 3)
Первая глава будет посвящена методологиямструктурного анализа: IDEF0, IDEF3 и DFD.Вторая глава пособия позволит изучить имитационноемоделирование систем на примере современного программного пакетаArena 7.0. Эти имитационные модели, в свою очередь, являютсядискретными, динамическими и стохастическими одновременно. Такойвид моделей чаще всего называют дискретно-событийным, ониспользуется для построения моделей, отражающих развитие системыво времени, когда состояние переменных системы меняется вконкретные моменты времени.
В такие моменты времени происходятсобытия, которые изменяют состояния системы.1.3. Этапы разработки моделейВ этой работе мы будем рассматривать процесс созданиякомпьютерной модели. Процесс моделирования имеет итерационныйхарактер и проводится в рамках ранее сформулированных целей и ссоблюдением границ моделирования. Построение начинается сизучения (обследования) реальной системы, ее внутренней структуры исодержания взаимосвязей между ее элементами, а также внешнихвоздействий и завершается разработкой модели.15Моделирование – от постановки задачи до получения результатов– проходит следующие этапы:I. Анализ требований и проектирование.1.
Постановка и анализ задачи и цели моделирования.2.Сбор и анализ исходной информации об объектемоделирования.3. Построение концептуальной модели.4. Проверка достоверности концептуальной модели.II. Разработка модели.1. Выбор среды моделирования.2. Составление логической модели.3. Назначение свойств модулям модели.4.
Задание модельного времени.5. Верификация модели.III. Проведение эксперимента.1. Запуск модели, прогон модели.2. Варьирование параметров модели и сбор статистики.3. Анализ результатов моделирования.IV. Подведение итогов моделирования согласно поставленнойцели и задачи моделирования.Схема этапов моделирования представлена на рис. 1.11.Рис. 1.11. Схема создания модели16Необходимо отметить, что при разработке конкретных моделей сопределенными целями и границами моделирования необязательно всеподэтапы должны выполняться. Например, при разработке статическихмоделей IDEF0, DFD 3 и 4 подэтапы «Разработки модели» невыполняются, т.
к. эти методологии не предусматривают заданиевременных параметров модели.На первом этапе моделирования – «Анализ требований ипроектирование» – формулируется концептуальная модель, строитсяее формальная схема и решается вопрос об эффективности ицелесообразности моделирования системы.Концептуальная модель (КМ) – это абстрактная модель,определяющая состав и структуру системы, свойства элементов ипричинно-следственные связи, присущие анализируемой системе исущественные для достижения целей моделирования. В таких моделяхобычно в словесной форме приводятся сведения о природе и параметрах(характеристиках) элементарных явлений исследуемой системы, о видеи степени взаимодействия между ними, о месте и значении каждогоэлементарного явления в общем процессе функционирования системы.При создании КМ практически параллельно формируется областьисходных данных (информационное пространство системы) – этапподготовки исходных данных.
На данном этапе выявляютсяколичественные характеристики (параметры) функционированиясистемы и ее элементов, численные значения которых составятисходные данные для моделирования. Очевидно, что значительнаячасть параметров системы – это случайные величины. Поэтому особоезначение при формировании исходных данных имеют выбор законовраспределения случайных величин, аппроксимация функций и т. д. Врезультате выявления свойств модели и построения концептуальноймодели необходимо проверить адекватность модели.На втором этапе моделирования – «Разработка модели» –происходит уточнение или выбор программного пакета моделирования.Выбор средств моделирования: программные и технические средствавыбираются с учетом ряда критериев.
Непременное условие при этом –достаточность и полнота средств для реализации концептуальноймодели. Среди других критериев можно назвать доступность, простотуи легкость освоения, скорость и корректность создания программноймодели.После выбора среды проектирования концептуальная модель,сформулированнаянапредыдущемэтапе,воплощаетсявкомпьютерную модель, т.
е. решается проблема алгоритмизации идетализации модели.17Модель системы представляется в виде совокупности частей(элементов, подсистем). В эту совокупность включаются все части,которые обеспечивают сохранение целостности системы, с однойстороны, а с другой – достижение поставленных целей моделирования(получения необходимой точности и достоверности результатов припроведении компьютерных экспериментов над моделью). В дальнейшемпроизводится окончательная детализация, локализация (выделениесистемы из окружающей среды), структуризация (указание и общееописание связей между выделенными элементами системы),укрупненное описание динамики функционирования системы и еевозможных состояний.Для того чтобы выполнить подэтап «Задание модельноговремени» введем понятие модельного времени.
В компьютерной моделипеременная, обеспечивающая текущее значение модельного времени,называется часами модельного времени.Существует два основных подхода к продвижению модельноговремени: продвижение времени от события к событию ипродвижение времени с постоянным шагом [14].Подход, использующий продвижение времени в модели отсобытия к событию, применяется всеми основными компьютернымипрограммами и большинством разработчиков, создающих свои моделина универсальных языках (рис. 1.13) [14].Рис. 1.13. Механизм продвижения модельного времениот события к событиюПри использовании продвижения времени от события к событиючасы модельного времени в исходном состоянии устанавливаются в 0, иопределяется время возникновения будущих событий. После этого часымодельного времени переходят на время возникновения ближайшегособытия, и в этот момент обновляются состояние системы, с учетомпроизошедшего события, а также сведения о времени возникновениябудущих событий.
Затем часы модельного времени продвигаются ковремени возникновения следующего нового ближайшего события,18обновляется состояние системы и определяется время будущих событий ит. д. Процесс продвижения модельного времени от времени возникновенияодного события ко времени возникновения другого продолжается до техпор, пока не будет выполнено какое-либо условие останова, указанноезаранее. Поскольку в дискретно-событийной имитационной модели всеизменения происходят только во время возникновения событий, периодыбездействия системы просто пропускаются, и часы переводятся со временивозникновения одного события на время возникновения другого.
Припродвижении времени с постоянным шагом такие периоды бездействия непропускаются, что приводит к большим затратам компьютерного времени.Следует отметить, что длительность интервала продвижения модельноговремени от одного события к другому может быть различной [14].При продвижении времени с постоянным шагом t часымодельного времени продвигаются точно на t единиц времени для какоголибо соответствующего выбора значения t. После каждого обновлениячасов выполняется проверка, чтобы определить, произошли какие-либособытия в течение предыдущего интервала времени t или нет. Если наэтот интервал запланированы одно или несколько событий, считается, чтоданные события происходят в конце интервала, после чего состояниесистемы и статистические счетчики соответствующим образомобновляются.
Продвижение времени посредством постоянного шагапоказано на рис. 1.14, где изогнутые стрелки показывают продвижениечасов модельного времени, а еi (i = 1,2,...) – это действительное времявозникновения события i любого типа, а не значение часов модельноговремени. На интервале [0, t) событие происходит в момент времени е1, нооно рассматривается как произошедшее в момент времени t. На интервале[ t, 2 t) события не происходят, но все же модель выполняет проверку,чтобы убедиться в этом. На интервале [2 t , 3 t) события происходят вмоменты времени е2 и е3, однако считается, что они произошли в моментвремени 3 t и т. д.
В ситуациях, когда принято считать, что два илинесколько событий происходят в одно и то же время, необходимоприменение ряда правил, позволяющих определять, в каком порядкеобрабатывать события. Таким образом, продвижение времени посредствомпостоянного шага имеет два недостатка: возникновение ошибок, связанныхс обработкой событий в конце интервала, в течение которого онипроисходят, а также необходимость решать, какое событие обрабатыватьпервым, если события, в действительности происходящие в разное время,рассматриваются как одновременные. Подобного рода проблемы можночастично решить, сделав интервалы t менее продолжительными, но тогдавозрастает число проверок возникновения событий, что приводит кувеличению времени выполнения задачи. Принимая во внимание это19обстоятельство, продвижение времени с помощью постоянного шага неиспользуют в дискретно-событийных имитационных моделях, когдаинтервалы времени между последовательными событиями могутзначительно отличаться по своей продолжительности [14].Рис.
1.14. Пример продвижения модельного временипосредством постоянного шагаВ основном этот подход предназначен для систем, в которых можнодопустить, что все события в действительности происходят в один измоментов п времени t (n = 0, 1, 2,...) для соответственно выбранного t.Так, в экономических системах данные часто предоставляются загодичные промежутки времени, поэтому естественно в имитационноймодели установить продвижение времени с шагом, равным одномугоду.
Следует заметить, что продвижение времени посредствомпостоянного шага может быть выполнено с помощью механизмапродвижения времени от события к событию, если планировать времявозникновения событий через t единиц времени, т. е. данный подходявляется разновидностью механизма продвижения времени от событияк событию.Третий этап – «Проведение эксперимента» – являетсярешающим, на котором, благодаря процессу имитации моделируемойсистемы, происходит сбор необходимой информации, ее статическойобработки в интерпретации результатов моделирования, в результатечего принимается решение: либо исследование будет продолжено, либозакончено.