Имитационное моделирование
Процедура создания логико-аналитической имитации функционирования системы. Упрощённая схема математической модели внешних воздействий и процессов со структурным принципом управления. Моделирование систем и языков программирования. Их основные функции.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | лекция |
Язык | русский |
Дата добавления | 18.10.2013 |
Размер файла | 148,8 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Лекция
Имитационное моделирование
1.1 Процедура имитационного моделирования
Определение метода имитационного моделирования. Метод ИМ заключается в создании логико-аналитической (математической модели системы и внешних воздействий), имитации функционирования системы, т.е. в определении временных изменений состояния системы под влиянием внешних воздействий и в поучении выборок значений выходных параметров, по которым определяются их основные вероятностные характеристики. Данное определение справедливо для стохастических систем.
При исследовании детерминированных систем отпадает необходимость изучения выборок значений выходных параметров.
Модель системы со структурным принципом управления представляет собой совокупность моделей элементов и их функциональные взаимосвязи. Модель элемента (агрегата, обслуживающего прибора) - это, в первую очередь, набор правил (алгоритмов) поведения устройства по отношению к выходным воздействиям (заявкам) и правил изменений состояний элемента. Элемент отображает функциональное устройство на том или ином уровне детализации. В простейшем случае устройство может находится в работоспособном состоянии или в состоянии отказа. В работоспособном состоянии устройство может быть занято, например, выполнение операции по обслуживанию заявки или быть свободным. К правилам поведения устройства относятся правила выборки заявок из очереди; реакция устройства на поступление заявки, когда устройство занято или к нему имеется очередь заявок; реакция устройства на возникновение отказа в процессе обслуживания заявки и некоторые другие.
Имитационное моделирование (ИМ) - это метод исследования, который основан на том, что анализируемая динамическая система заменяется имитатором и с ним производятся эксперименты для получения об изучаемой системе. Роль имитатора зачастую выполняет программа ЭВМ.
Основная идея метода ИМ состоит в следующем. Пусть необходимо определить функцию распределения случайной величины y. Допустим, что искомая величина y может быть представлена в виде зависимости: y=f( где случайные величины с известными функциями распределения. имитация моделирование математическая программирование
Для решения задач такого вида применяется следующий алгоритм:
по каждой из величин производится случайное испытание, в результате каждого определяется некоторое конкретное значение случайной величины iii;
используя найденные величины, определяется одно частное значение yi по выше приведённой зависимости;
предыдущие операции повторяются N раз, в результате чего определяется N значений случайной величины y;
на основании N значений величины находится её эмпирическая функция распределения.
1.2 Имитация функционирования системы
Предположим, исследуется вычислительная система (ВС), состоящая из процессора 1 с основной памятью, устройство вода перфокарт 4, АЦПУ 2 и дисплея 3 (рис. 1.).
Рис. 1. Упрощённая схема моделируемой системы
Через устройство 4 поступает поток заданий Х 1. Процессор обрабатывает задания, и результаты выдаёт на АЦПУ 2. Одновременно с этим ВС используется, например, как информационно-справочная система. Оператор-пользователь, работающий за дисплеем, посылает в систему запросы Х 2, которые обрабатываются процессором и ответы выводятся на экран дисплея. Процессор работает в 2-х программном режиме: в одном разделе обрабатываются задания Х 1, в другом, с более высоким относительным приоритетом запросы Х 2. Представим данную ВС в упрощённом варианте в виде стохастической сети из 4-х СМО. Потоки заданий и запросы будем называть потоками заявок. Считаем потоки Х 1 и Х 2 независимыми. Известны ф.р. периодов следования заявок 1 и 2 и длительность обслуживания Т 1К, T2К заявок в к-ом устройстве. Требуется определить времена загрузки каждого устройства и времена реакции по каждому из потоков.
Вначале определяется момент поступления в систему 1-ой заявки потока Х 1 по результатам случайного испытания в соответствии с ф.р. периода следования заявок.
Рис. 2. Временная диаграмма функционирования ВС
На рис. 2 это момент времени t1=0+11 (здесь и далее верхний индекс обозначает порядковый номер заявки данного потока). То же самое делается для потока Х 2. На рис. 2 момент поступления 1-ой заявки потока Х 2 t2=0+21. Затем находится минимальное время, т.е. наиболее раннее событие. В примере это время t1. Для 1-ой заявки потока Х 1определяется время обслуживания устройством ввода перфокарт Т 114 методом случайного испытания и отмечается момент окончания обслуживания:
t4=t1+ Т 114.
На рис. показан переход устройства 4 в состояние "занято". Одновременно определяется момент поступления следующей заявки потока Х 1:
t12=t1+12.
Следующее минимальное время это момент поступления заявки потока Х 2 - t2. Для этой заявки находится время обслуживания на дисплее Т 123 и отслеживается время окончания обслуживания:
t3=t2+Т 123.
Определяется момент поступления второй заявки потока Х 2:
t7=t2+22.
Снова выбирается минимальное время - это t3. В этот момент заявка потока Х 2 начинает обрабатываться процессором. По результату случайного испытания определяется время её обслуживания T121 и отмечается момент окончания обслуживания.
t5=t3+ T121.
Следующее минимальное время t4 - момент завершения обслуживания заявки потока Х 1 устройством 4. С этого момента заявка может начать обрабатываться процессором, но он занят обслуживанием потока Х 2. Тогда заявка потока Х 1 переходит в состояние ожидания, становиться в очередь. В следующий момент времени t5 освобождается процессор. С этого момента процессор начинает обрабатывать заявку потока Х 1, а заявка потока Х 2 переходит на обслуживание дисплеем, т.е. ответ на запрос пользователя передаётся из основной памяти в буферный накопитель дисплея. Далее определяются соответствующие времена обслуживания: T111 и T123 и отмечаются моменты времени:
t9=t5+ T111,
t6=t5+ T123.
В момент t6 полностью завершается обработка первой заявки потока Х 2. По разности времени t6 и t2 вычисляется время реакции по этой заявке:
u12= t6- t2.
Следующий минимальный момент t7 - это наступление 2-ой заявки потока Х 2. Определяет время поступления очередной заявки этого потока:
t15= t7+23.
Затем вычисляется время обслуживания 2-ой заявки на дисплее T223 и отмечается момент:
t8=t7+ T223,
после чего заявка становится в очередь, т.к. процессор занят. Эта заявка поступит на обслуживание в процессор только после его освобождения в момент t9. В этот момент заявка потока Х 1 начинает обслуживаться в АЦПУ. Определяются времена обслуживания Т 221 и Т 112 по результатам случайных испытаний и отмечаются моменты окончания обслуживания:
t11= t9+Т 223
t10= t9+Т 112.
В момент времени t10 завершается полное обслуживание 1-ой заявки потока Х 1. Разность между этим моментом и моментом времени t1 даёт 1-ое значение времени реакции по потоку Х 1:
u11= t10- t1.
Указанные процедуры выполняются до истечения времени моделирования. В результате получается некоторое количество (выборка) случайных значений времени реакции (u1) и (u2) по 1-ому и 2-ому потокам. По этим значениям могут быть определены эмпирические функции распределения и вычислены количественные вероятностные характеристики времени реакции. В процессе моделирования можно суммировать продолжительности занятости каждого устройства обслуживанием всех потоков. Например, на рис. 2 занятость процессора 1 выделена заштрихованными ступеньками. Если результаты суммирования разделить на время моделирования, то получатся коэффициенты загрузки устройств.
Можно определить время ожидания заявок в очереди, обслуженных системой, среднюю и максимальную длину очереди заявок к каждому устройству, требуемая ёмкость памяти и др.
Имитация даёт возможность учесть надёжностные характеристики ВС. В частности, если известны времена наработки на отказ и восстановления всех входящих в систему устройств, то определяются моменты возникновения отказов устройств в период моделирования и моменты восстановления. Если устройство отказало, то возможны решения:
снятие заявки без возврата;
помещение заявки в очередь и дообслуживание после восстановления;
поступление на повторное обслуживание из очереди.
1.3 Моделирование систем и языки программирования
Большое значение при реализации модели на ЭВМ имеет вопрос правильного выбора языка программирования.
Язык программирования должен отражать внутреннюю структуру понятий при описании широкого круга понятий. Высокий уровень языка моделирования значительно упрощает программирование моделей. Основными моментами при выборе ЯМ является:
проблемная ориентация;
возможности сбора, обработки, вывода результатов;
быстродействие;
простота отладки;
доступность восприятия.
Этими свойствами обладают процедурные языки высокого уровня. Для моделирования могут быть использованы языки Имитационного моделирования (ЯИМ) и общего назначения (ЯОМ).
Более удобными являются ЯИМ. Они обеспечивают:
удобство программирования модели системы;
проблемная ориентация.
Недостатки ЯИМ:
неэффективность рабочих программ;
сложность отладки;
недостаток документации.
Основные функции языка программирования:
управление процессами (согласование системного и машинного времени);
управление ресурсами (выбор и распределение ограниченных средств описываемой системы).
Как специализированные языки, ЯИМ обладают некоторыми программными свойствами и понятиями, которые не встречаются в ЯОН. К ним относятся:
Совмещение. Параллельно протекающие в реальных системах S процессы представляются с помощью последовательно работающей ЭВМ. ЯИМ позволяют обойти эту трудность путём введения понятий системного времени.
Размер. ЯИМ используют динамическое распределение памяти (компоненты модели системы М появляются в ОЗУ и исчезают в зависимости от текущего состояния. Эффективность моделирования достигается так же использованием блочных конструкций: блоков, подблоков и т.д.
Изменения. ЯИМ предусматривают обработку списков, отражающих изменения состояний процесса функционирования моделируемой системы на системном уровне.
Взаимосвязь. Для отражения большого количества между компонентами модели в статике и динамике ЯИМ включаем системно организованные логические возможности и реализации теории множеств.
Стохастичность. ЯИМ используют специальные программные генерации последовательностей случайных чисел, программы преобразования в соответствующие законы распределения.
Анализ. ЯИМ предусматривают системные способы статистической обработки и анализа результатов моделирования.
Наиболее известными языками моделирования являются SIMULA, SIMSCRIPT, GPSS, SOL, CSL.
Для языков, используемых в задачах моделирования, можно составить классификацию следующего вида. (см. рис. 1.).
Рис. 3. Классификация языков моделирования
Язык DYNAMO используется для решения разностных уравнений.
Представление системы S в виде типовой схемы, в которой участвуют как дискретные, так и непрерывные величины, называются комбинированными. Предполагается, что в системе могут наступать события двух видов: 1) события, от состоянии Zi; 2) события, зависящие от времени t. При использовании языка GAPS на пользователь возлагается работа по составлению на яз. FORTRAN подпрограмм, в которых описываются условия наступления событий, законы изменения непрерывной величины, правил перехода из одного состояния в другое. SIMSCRIPT - язык событий, созданный на базе языка FORNRAN. Каждая модель Mj состоит из элементов, с которыми происходят события, представляющие собой последовательность формул, изменяющих состояние моделируемой системы с течением времени. Работа со списками, определяемые пользователем, последовательность событий в системном времени, работа с множествами. FORSIT - пакет ПП на языке FORNRAN позволяет оперировать только фиксированными массивами данных, описывающих объекты моделируемой системы. Удобен для описания систем с большим числом разнообразных ресурсов. Полное описание динамики модели можно получить с помощью ПП.
SIMULA - расширение языка ALGOL. Блочное представление моделируемой системы. Функционирование процесса разбивается на этапы, происходящие в системном времени. Главная роль в языке SIMULA отводится понятию параллельного оперирования с процессами в системном времени, универсальной обработки списков с процессами в роли компонент.
GPSS- интегрирующая языковая система, применяющаяся для описания пространственного движения объектов. Такие динамические объекты в языке GPSS называются транзактами и представляют собой элементы потока. Транзакты "создаются" и "уничтожаются". Функцию каждого из них можно представить как движение через модель М с поочерёдным воздействием на её блоки. Функциональный аппарат языка образуют блоки, описывающие логику модели, сообщая транзактам, куда двигаться и что делать дальше. Данные для ЭВМ подготавливаются в виде пакета управляющих и определяющих карт, которым составляется по схеме модели, набранной из стандартных символов. Созданная программа GPSS, работая в режиме интерпретации, генерирует и передаёт транзакты из блока в блок. Каждый переход транзакта приписывается к определенному моменту системного времени.
При моделировании предпочтение отдают языку, который более знаком, универсален. Вместе с увеличением числа команд возрастают трудности использования ЯИМ. Получены экспертные оценки ЯИМ по степени их эффективности.
Баллы |
Возможности |
Простота применения |
Предпочтение пользователя |
|
5 |
SIMULA |
GPSS |
SIMSCRIPT |
|
4 |
SIMSCRIPT |
SIMSCRIPT |
GPSS |
|
3 |
GPSS |
SIMULA |
SIMULA |
Суммарный бал:
SIMULA - 11, SIMSCRIPT - 13, GPSS - 12.
Если предпочтение отдаётся блочной конструкции модели при наличии минимального опыта в моделировании, то следует выбрать язык GPSS, но при этом следует помнить, что он негибок, требует большого объёма памяти и затрат машинного времени для счёта.
Размещено на Allbest.ru
...Подобные документы
Основные подходы при построении математических моделей процессов функционирования систем. Применение непрерывно-стохастического подхода для формализации процессов обслуживания. Функции моделирующего алгоритма. Использование языков программирования.
контрольная работа [262,7 K], добавлен 04.06.2011Моделирование термодинамической системы с распределенными параметрами, случайных процессов и систем. Статистическое (имитационное) моделирование физических процессов, его результаты. Компьютерное моделирование систем управления с помощью пакета VisSim.
методичка [2,7 M], добавлен 24.10.2012Имитационное моделирование кредитной системы коммерческого банка с применением экспоненциального, дискретного равномерного и нормального распределения. Создание и программная реализация математической модели на языке С++ и ее построение в MathCad.
курсовая работа [319,1 K], добавлен 13.02.2013Основы систематизации языков имитационного моделирования, моделирование систем и языки программирования. Особенности использования алгоритмических языков, подходы к их разработке. Анализ характеристик и эффективности языков имитационного моделирования.
курсовая работа [1,4 M], добавлен 15.03.2012Сущность понятия "имитационное моделирование". Подклассы систем, ориентированных на системное и логическое моделирование. Способы построения моделирующего алгоритма. Имитационные модели производственных процессов. Структура обобщенной имитационной модели.
реферат [453,5 K], добавлен 26.10.2010Понятия структурного программирования и алгоритма решения задачи. Краткая история развития языков программирования от машинных до языков ассемблера и языков высокого уровня. Процедурное программирование на C#. Методы и программы для моделирования.
учебное пособие [1,7 M], добавлен 26.10.2010Понятие и принципы моделирования. Специфика систем и основных моделей управления запасами. Создание программы на языке C++, обеспечивающей ввод исходной информации, ее обработку, реализацию алгоритма имитации процесса и выдачу необходимой информации.
курсовая работа [1,0 M], добавлен 13.09.2012Разработка системы расчета характеристик разомкнутых экспоненциальных сетевых моделей, выполняющая имитационное моделирование заданной сетевой модели. Построение модели на языке GPSS, анализ эффективности аналитической модели, выполняющей роль эталона.
курсовая работа [483,6 K], добавлен 01.12.2010Основные принципы моделирования систем массового обслуживания (СМО) на ЭВМ. Разработка моделирующего алгоритма и составление блок-схемы имитации торгового центра на ПЭВМ. Программа моделирования торгового центра на одном из языков программирования.
лабораторная работа [77,4 K], добавлен 15.06.2010Построение концептуальной модели системы и ее формализация. Алгоритмизация модели системы и ее машинная реализация. Построение логической схемы модели. Проверка достоверности модели системы. Получение и интерпретация результатов моделирования системы.
курсовая работа [67,9 K], добавлен 07.12.2009Имитационное моделирование как один из наиболее широко используемых методов при решении задач анализа и синтеза сложных систем. Особенности имитационного моделирования систем массового обслуживания. Анализ структурной схемы системы передачи пакетов.
курсовая работа [1,2 M], добавлен 28.05.2013Исследование метода математического моделирования чрезвычайной ситуации. Модели макрокинетики трансформации веществ и потоков энергии. Имитационное моделирование. Процесс построения математической модели. Структура моделирования происшествий в техносфере.
реферат [240,5 K], добавлен 05.03.2017Использование языка GPSS для описания модели автосервиса, обслуживающего автомобили различных моделей с учетом их приоритета. Сущность и возможности имитационного моделирования. Разработка GPSS-модели функционирования ремонтных работ в автосервисе.
курсовая работа [259,4 K], добавлен 08.05.2013Концептуальное, физическое, структурно-функциональное, математическое (логико-математическое), имитационное (программное) и компьютерное моделирование. Построение имитационной модели в среде AnyLogic. Дискретные и непрерывно изменяющиеся модели.
курсовая работа [1,6 M], добавлен 21.11.2013Определение необходимого количества работников и их распределение между операциями, при которых достигается максимальная экономическая эффективность работы цеха. Описание процессов, протекающих в моделях систем массового обслуживания. Листинг программы.
курсовая работа [314,9 K], добавлен 09.06.2015Моделирование как замещение одного объекта другим, фиксация и изучение свойств модели. Система Arena: общее описание и структура, оценка функциональных возможностей, используемое программное обеспечение. Моделирование работы магистрали передачи данных.
курсовая работа [376,1 K], добавлен 21.02.2015Построение модели системы массового обслуживания с помощью ЭВМ с использованием методов имитационного моделирования. Моделирование проводилось с помощью GPSS World Student version, позволяющего достоверно воссоздать систему массового обслуживания.
курсовая работа [555,7 K], добавлен 29.06.2011Описание объекта управления - флотомашина ФПМ-16. Определение передаточной функции формирующего фильтра сигнала помехи. Имитационное моделирование САУ при действии сигнала помехи. Определение соотношения "Сигнал/шум" на выходе фильтра и выходе САУ.
курсовая работа [1021,4 K], добавлен 23.12.2012Структурная схема, классификация устройств СМО и анализ динамики ее функционирования. Формализация модели СМО средствами GPSS World. Модификация имитационной модели. Реализация модельных экспериментов. Имитационное моделирование СМО в среде GPSS World.
курсовая работа [504,6 K], добавлен 14.12.2012GPSS как один из эффективных и распространенных языков моделирования сложных дискретных систем. Возможности языка GPSS. Построение имитационной модели "Моделирование мини-АТС". Разработка программы работы диспетчерского пункта в торговом предприятии.
курсовая работа [118,8 K], добавлен 19.01.2016