Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Моделирование систем. Возможности использования имитационного моделирования при формировании систем. Методическое пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
моделирующий алгоритм, в соответствии с которым в ЭВМ бу-
Модель
Е
(,, )wax y
y
a
(,, )wax y
дет вырабатываться информация, описывающая элементарные явления исследуемого процесса с учетом их связей и взаимных влияний. Определенная часть циркулирующей информации вы­водится «на печать» и используется для определения тех харак­теристик процесса, которые требуется получить в результате мо­делирования.
Центральным звеном моделирующего алгоритма является собственно имитационная модель – формализованная схема про­цесса, которая представляет собой формальное описание проце­дуры функционирования сложного объекта в исследуемой опе­рации и позволяет для любых задаваемых значений входных факторов модели (переменных – x, детерминированных – a, случайных – y) просчитать соответствующие им числовые зна­чения выходных характеристик w.
Остальные модели (рис. 3.1) представляют собой внешнее ма­тематическое обеспечение процесса имитации.
y
Модель выхода
Модель
детерминированных
Критерий оптимальности
входов
случайных
входов (ДСЧ
Формализованная
процесса
Цикл по
К
Модель
обратной
схема
x
связи
Цикл по
)
Рис. 3.1. Структура моделирующего алгоритма
для оптимизационной модели со случайными факторами
Модели входов обеспечивают задание тех или иных значений входных факторов. Статические модели детерминированных входов элементарны: это массивы значений констант, соответ­ствующих определенным факторам модели. Динамические мо­дели входов обеспечивают изменение значений детерминирован­ных факторов во времени по известному закону ()at .
21
Модели случайных входов (иначе – датчики случайных чи-
()py
,ax
сел) имитируют поступление на вход изучаемого объекта слу­чайных воздействий с заданными (известными) законами рас­пределения
. Динамические модели случайных входов учитывают, что законы распределения случайных величин яв­ляются функциями времени, т.е. для каждого периода времени либо форма, либо характеристика закона распределения (напри­мер, математическое ожидание, дисперсия и т.д.) будут своими.
В связи с тем, что результат, полученный при воспроизведе­нии единственной реализации, из-за наличия случайных фак­торов не может характеризовать исследуемый процесс в целом, приходится анализировать большое число таких реализаций, так как только тогда по закону больших чисел получаемые оцен­ки приобретают статистическую устойчивость и могут быть с определенной точностью приняты за оценки искомых величин. Модель выхода обеспечивает накопление, обработку и анализ полученного множества случайных результатов. Для этого с ее помощью организуется многократный просчет значений выход­ных характеристик при постоянных значениях факторов и различных значениях случайных факторов y (в соответствии с заданными законами распределения) – «цикл по y». В связи с этим модель выхода включает программы тактического пла­нирования эксперимента на ЭВМ – определение способа прове­дения каждой серии прогонов, соответствующей конкретным значениям a и x. Кроме того, модель решает задачу обработки случайных значений выходных характеристик, в результате ко­торой они «очищаются» от влияний случайных факторов и по­ступают на вход модели обратной связи, т.е. модель выхода ре­ализует сведение стохастической задачи к детерминированной методом «осреднения по результату».
Модель обратной связи позволяет на основе анализа полу­чаемых результатов моделирования изменять значения пере­менных управления, реализуя функцию стратегического пла­нирования имитационного эксперимента. При использовании методов теории оптимального планирования эксперимента од­ной из функций модели обратной связи является представление результатов моделирования в аналитическом виде – определе­ние уровней функции отклика (или характеристической поверх-
22
ности). При оптимизации модель выхода вычисляет на основе
()Ew
значений выходных характеристик значение целевой функции
и с помощью того или иного численного метода оптимиза­ции изменяет значения переменных управления для выбора зна­чений, наилучших с точки зрения целевой функции.
Процедура разработки формализованной схемы состоит из структуризации объекта на модули; выбора математической схемы для формализованного описания работы каждого модуля; формирования входной и выходной информации для каждого модуля; разработки управляющей блок-схемы модели для ото­бражения в ней взаимодействия отдельных модулей.
При структуризации объекта проводится разделение слож­ного объекта на сравнительно автономные части – модули – и фиксация связей между ними. Структуризацию объекта при моделировании целесообразно выполнять таким образом, чтобы решение сложной проблемы расчленялось на ряд более простых исходя из возможностей математического описания отдельных модулей и практической реализации модели на имеющейся вы­числительной технике за заданное время. Выделение элементов (подсистем объекта) из исследуемого объекта и объединение их в сравнительно автономный блок (модуль) проводится на основе функциональной и информационно-процедурной моделей объ­екта только при установлении принципиальной возможности построения математических соотношений между параметрами этих элементов и промежуточными или выходными характери­стиками объекта. В связи с этим ни функции, ни входы и выхо­ды отдельных реальных элементов не определяют обязательно границ модуля, хотя в общем это наиважнейшие факторы. По­лученная схема структуризации объекта может корректиро­ваться с точки зрения опыта или удобства передачи информации в алгоритме, реализуемом на ЭВМ.
Далее для каждого модуля, соответствующего элементар­ному процессу, протекающему в объекте, производится ориен­тировочный выбор метода математического описания, на базе которого будет строиться соответствующая модель операции. Основой выбора метода математического описания является зна­ние физической природы функционирования описываемого эле­мента и особенностей ЭВМ, на которой планируется проведение
23
моделирования. При разработке оригинальных зависимостей существенную роль играют практический опыт, интуиция и изо­бретательность разработчика.
Для каждого выделенного модуля определяется перечень как имеющейся, так и необходимой для реализации предполагаемо­го метода математического описания информации, ее источни­ков и адресатов.
Объединение модулей в единую модель производится на базе моделей операции и информационно-процедурных моделей, приведенных в содержательном описании задачи. На практике этот вопрос решается с помощью построения управляющей блок­схемы модели, дающей упорядоченную последовательность опе­раций, связанных с решением задачи. В ней отдельные модули обозначены прямоугольниками, внутри которых написаны наи­менования решаемых в ней задач. На этом уровне блок-схема показывает, «что следует выполнить», но без каких-либо дета­лей, т.е. не указывает, «как выполнить». Последовательность решения и взаимозависимость отдельных элементарных задач указана направленными стрелками, включающими логические условия, которые определяют процедуру передач управления. Такая блок-схема дает возможность охватить весь процесс в его динамике и взаимосвязи отдельных явлений, являясь рабочим планом, по которому направляются усилия коллектива испол­нителей по конструированию модели в целом.
В процессе построения управляющей блок-схемы проводят согласование входов и выходов отдельных модулей между со­бой, их информационную увязку с привлечением полученного ранее дерева целей-параметров. Практический метод разработки управляющей блок-схемы непосредственно следует из той цели, ради которой она конструируется, т.е. достаточно полно и ясно представить функционирование реальной сложной системы во всем многообразии взаимодействия составляющих явлений. За­пись управляющей блок-схемы целесообразно проводить в опе­раторной форме.
После построения управляющей блок-схемы детализируется содержание отдельных модулей. Детальная блок-схема содер­жит уточнения, отсутствующие в обобщенной блок-схеме. Она уже показывает не только то, что следует выполнять, но и как
24
это следует выполнять, дает детальные и однозначные указания того, как должна выполняться та или иная процедура, как сле­дует вести процесс или реализовать данную функцию.
При построении формализованной схемы следует учитывать следующее. В любой модели функционирования могут иметь ме­сто следующие процессы: получение информации, необходимой для управления, перемещение, «производство», т.е. основной моделируемый процесс, и обеспечение (материально-техниче­ское, энергетическое, ремонтное, транспортное и т.д.).
Рассмотрение всей этой совокупности – дело крайне сложное. Поэтому при построении модели объекта именно «производ­ство», т.е. то, ради чего поставлена задача исследования, опи­сывается достаточно полно. Для учета влияния неосновных про­цессов основную модель процесса дополняют моделями входов, имитирующими воздействия на исследуемый процесс процессов перемещения, обеспечения и т.д., различных случайных факто­ров. Выходами этих достаточно простых моделей служат значе­ния характеристик окружения, являющихся входами в модель «производства».
Таким образом, получаемая формализованная схема содер­жит управляющую блок-схему процесса, описание каждого модуля (наименование решаемой элементарной задачи, мате­матический метод описания, состав входной и выходной инфор­мации, числовые данные), описание правил передачи управ­ления от одного модуля к другому и окончательный перечень искомых величин и исследуемых зависимостей. Формализован­ная схема процесса служит основой для дальнейшей формали­зации имитационной модели и составления программы расчета на ЭВМ, позволяющей вычислить значения выходных характе­ристик объекта при любых заданных значениях управляемых параметров, начальных условий и характеристик окружения.
Имитационная модель является, как правило, динамической моделью, отражающей последовательность протекания элемен­тарных процессов и взаимодействие отдельных элементов по оси «модельного» времени tM.
Процесс функционирования объекта в течение некоторого интервала времени Т можно представить как случайную после­довательность дискретных моментов времени
M
t . В каждый
i
25
из этих моментов происходят изменения состояний элементов
1ii
t tt
+
= +∆
объекта, а в промежутке между ними никаких изменений состо­яния не происходит.
При построении формализованной схемы процесса должно выполняться следующее рекуррентное правило: событие, про­исходящее в момент времени
M
t , может моделироваться толь-
i
ко после того, как промоделированы все события, происшедшие в момент времени
. В противном случае результат моделиро-
1Mit−
вания может быть неверным.
Реализация этого правила может проводиться различными способами.
1. Повременное моделирование с детерминированным шагом («принцип t∆»). При повременном моделировании с детерми­нированным шагом алгоритм одновременно просматривает все элементы системы через достаточно малые промежутки времени (шаг моделирования) и анализирует все возможные взаимодей­ствия между элементами. Для этого определяется минимальный интервал времени, в течении которого не может измениться со­стояние ни одного из элементов системы; детализированная ве­личина t∆ принимается за шаг моделирования.
Способ моделирования с детерминированным шагом состоит
из совокупности многократно повторяющихся действий:
• на i-м шаге в момент ti просматриваются все элементы объ­екта и определяется, какие из них изменяют свое состояние в этот момент;
• моделируются все те изменения состояния, которые проис- ходят в момент ti;
• производится переход к (i+1)-му шагу, который выполняет- ся в момент
.
«Принцип t∆» является наиболее универсальным принци­пом построения моделирующих алгоритмов, охватывающим весьма широкий класс реальных сложных объектов и их элемен­тов дискретного и непрерывного характера. Вместе с тем этот принцип весьма неэкономичен с точки зрения расхода времени работы ЭВМ – в течение длительного периода ни один из элемен­тов системы не может изменить своего состояния, и прогоны мо­дели будут совершаться впустую.
26
2. Современное моделирование со случайным шагом (модели­рование по «особым» состояниям). При рассмотрении большин­ства сложных систем можно обнаружить два типа состояний си­стемы:
1) обычные (неособые) состояния, в которых система нахо­дится большую часть времени;
2) особые состояния, характерные для системы в некото­рые моменты времени, совпадающие с моментами поступления в систему воздействий из окружения, выхода одной из харак­теристик системы на границу области существования и т.д. На­пример, станок работает – обычное состояние, станок сломан – особое состояние. Любое скачкообразное изменение состояния объекта может рассматриваться при моделировании как переход в новое «особое» состояние.
Повременное моделирование со случайным шагом (от собы­тия к событию) заключается в том, что моделирующий алгоритм осматривает модели элементов системы только в такие моменты времени, когда состояние исследуемой системы меняется. В те моменты времени, когда модель какого-либо элемента системы должна менять состояние, происходит осмотр модели именно этого элемента, и с учетом взаимосвязей элементов корректиру­ется состояние модели всей системы. Длительность шага t∆ – величина случайная. Этот способ отличается от «принципа t∆» тем, что включает процедуру определения момента времени, со­ответствующего ближайшему особому состоянию по известным характеристикам предыдущих состояний.
3. Позаявочный способ. При моделировании процессов обра­ботки последовательно идущих заявок иногда удобно строить моделирующие алгоритмы позаявочным способом, при котором прослеживается прохождение каждой заявки (детали, носителя информации) от ее входа в систему и до выхода ее из системы. После этого алгоритм предусматривает переход к рассмотрению следующей заявки. Такого рода моделирующие алгоритмы весь­ма экономичны и не требуют специальных мер для учета особых состояний системы. Однако этот способ может использоваться только в простых моделях в случаях последовательных заявок, не опережающих друг друга, т.к. в противном случае становится
27
весьма затруднительным учет взаимодействия заявок, поступа­ющих в систему.
Моделирующие алгоритмы могут сроиться на нескольких принципах одновременно. Например, общая структура модели­рующего алгоритма базируется на принципе особых состояний, а между особыми состояниями для всех заявок реализуется по­заявочный способ.
Структура моделирующего алгоритма, как показывает прак­тика, имеет специфику, связанную с узкими классами конкрет­ных типов систем и задач, для решений которых предназначена модель.
28
4. РЕАЛИЗАЦИЯ ИМИТАЦИОННЫХ МОДЕЛЕЙ НА ЭВМ
Поиск решений по имитационным моделям осуществляется с помощью методов экспериментальной оптимизации на ЭВМ, являющихся особой разновидностью численных методов опти­мизации. При этом разработчик модели сталкивается с необхо­димостью разработки не только собственно имитационного ал­горитма, но и с разработкой специфических именно для этого алгоритма вспомогательных элементов – моделей входов, выхо­да, обратной связи.
Следует отметить, что в программном обеспечении одно­временных ЭВМ присутствуют пакеты прикладных программ (в первую очередь, по разделу «Математическая статистика»), которые можно использовать при разработке тех или иных вспо­могательных элементов конкретной имитационной модели. В связи с этим остановимся более подробно на задачах, ими ре­шаемых.
Методы имитационного моделирования позволяют сочетать формальные математические методы исследования с интуи­цией и опытом специалистов-производственников. Для того чтобы осуществить сочетание наиболее эффективно, необходи­мо максимально сократить по времени, облегчить и упростить общение специалистов с машиной. Нужно, чтобы указанные специалисты могли при формировании модели и воспроизве­дении на ЭВМ процесса оперировать привычными понятиями и представлениями, а также получали бы из ЭВМ информацию в удобной для восприятия и анализа форме. В связи с этим по­явилась настоящая необходимость в разработке программных средств, специально приспособленных к задаче написания про­грамм моделирования.
Это привело к тому, что параллельно с универсальными алго­ритмическими языками (Алгол, Кобол, Фортран, ПЛ/1, Бэйсик и т.п.) разрабатывалось множество специализированных языков для эффективного описания тех или иных типов моделей, в пер­вую очередь, в качестве программного обеспечения имитацион­ного подхода к изучению того или иного класса объектов. Вы­брав для решения своей задачи конкретный язык, исследователь
29
получает в распоряжение тщательно разработанную систему по­нятий, представляющих ему основу для формализации исследу­емой проблемы.
Преимуществами специализированных языков моделирова-
ния являются:
• краткость, точность выражения понятий, характеризую- щих имитируемые процессы, удобные средства формализации и воспроизведения динамических свойств моделируемого объекта;
• возможность заранее строить для пользователей стандартные программы, меньшие затраты времени на программирование;
• более эффектное выявление ошибок в процессе отладки про- граммы;
• организация данных, обеспечивающая простое и эффектив- ное моделирование, в том числе автоматическое формирование определенных типов данных; удобство накопления и представ­ления выходных данных;
• возможность имитации стохастических систем, т.е. нали- чие процедур генерирования и анализа случайных величин и временных рядов.
Языки имитационного моделирования различаются по прин­ципам построения поискового управляющего алгоритма. По­исковые схемы в них могут быть ориентированы на описание выполнения событий (Симскрипт, Симпак), работ (GSP, GSL), процессов (GPSS, Симула). Каждая из поисковых схем, а соот­ветственно, и языки, ее реализующие, имеют свои преимуще­ства. Для любой из них существуют ситуации, в которых какая­либо одна эффективнее остальных, и ситуации, в которых она работает хуже.
Одним из направлений создания специализированных язы­ков моделирования является создание универсальных комплек­сов программ, способных настраиваться на любой объект мо­делирования из заданного класса. В состав комплекса помимо собственно программ имитации входят программы автомати­ческого преобразования элементов реальной системы и схем со­пряжения к стандартной форме, а также ряд вспомогательных и обслуживающих программ. За человеком остается лишь не­формальная часть действий: постановка задачи и интерпретация результатов моделирования. Все остальные работы (описание
30
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]