Имитационное моделирование
Построение схемы модели процесса и разработка анимации; определение характеристики модели с использованием AnyLogic. Сеть Петри для процесса работы порта. Описание программного продукта. Объекты библиотеки Enterprise Library. Результаты работы модели.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 25.04.2015 |
Размер файла | 334,1 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Содержание
- Введение
- 1. Построение схемы модели
- 2. Сеть Петри для процесса работы порта
- 3. Построение модели
- 3.1 Описание программного продукта
3.2 Переменные и классы
- 3.3 Объекты библиотеки Enterprise Library
3.4 Разработка модели
3.5 Создание анимации
- 4. Результаты работы программной модели
- Заключение
- Список использованных источников
- Введение
- Имитационное моделирование -- это метод исследования, при котором изучаемая система заменяется моделью и с ней проводятся эксперименты с целью получения информации об этой системе. Имитационная модель -- логико-математическое описание объекта, которое может быть использовано для экспериментирования на компьютере в целях проектирования, анализа и оценки функционирования объекта.
- Экспериментирование с моделью называют имитацией. Модель можно "проиграть" во времени как для одного испытания, так и заданного их множества. При этом результаты будут определяться случайным характером процессов. По этим данным можно получить достаточно устойчивую статистику.
- К имитационному моделированию прибегают, когда:
- дорого или невозможно экспериментировать на реальном объекте;
- невозможно построить аналитическую модель: в системе есть время, причинные связи, последствие, нелинейности, стохастические (случайные) переменные;
- необходимо сымитировать поведение системы во времени.
Цель имитационного моделирования состоит в воспроизведении поведения исследуемой системы на основе результатов анализа наиболее существенных взаимосвязей между ее элементами или другими словами -- разработке симулятора исследуемой предметной области для проведения различных экспериментов.
Имитационное моделирование позволяет имитировать поведение системы во времени. Причём плюсом является то, что временем в модели можно управлять: замедлять в случае с быстропротекающими процессами и ускорять для моделирования систем с медленной изменчивостью. Можно имитировать поведение тех объектов, реальные эксперименты с которыми дороги, невозможны или опасны. С наступлением эпохи персональных компьютеров производство сложных и уникальных изделий, как правило, сопровождается компьютерным трёхмерным имитационным моделированием.
AnyLogic -- программное обеспечение для имитационного моделирования сложных систем и процессов. Программа обладает графической средой пользователя и позволяет использовать язык Java для разработки моделей.
Задача на курсовую работу: смоделировать процесс и разработать анимацию к ней, определить характеристики модели, используя AnyLogic.
Задание на курсовую работу: в системе передачи цифровой информации передается речь в цифровом виде. Речевые пакеты передаются через два транзитных канала, буферизуясь в накопителях перед каждым каналом. Время передачи пакета по каналу составляет 5 мс. Пакеты поступают через 6 ± 3 мс. Пакеты, передававшиеся более 10 мс, на выходе системы уничтожаются, так как их появление в декодере значительно снизит качество передаваемой речи. Уничтожение более 30% пакетов недопустимо. При достижении такого уровня система за счет ресурсов ускоряет передачу до 4 мс на канал. При снижении уровня до приемлемого происходит отключение ресурсов.
Смоделировать 10 с работы системы. Определить частоту уничтожения пакетов и частоту подключения ресурса.
1. Построение схемы модели
Структурные схемы определяют основные функциональные части процесса работы, их назначение и взаимосвязи. На структурной схеме раскрывается не принцип работы отдельных функциональных частей изделия, а взаимодействие между ними. Поэтому составные части изделия изображают упрощенно в виде прямоугольников произвольной формы.
На основании условия задачи была построена структурная схема процесса работы порта, представленная на рисунке 1.
Рисунок 1 - Структурная схема процесса работы
На рисунке 1 цифрами обозначено:
1 -- передача пакета из источника в накопитель 1;
2 -- передача пакета из накопителя 1 в канал 1 ;
3 -- передача пакета из канала 1 в накопитель 2;
4 -- передача пакета накопителя 2 в канал 2;
5 -- выход пакета из системы.
Для формализации систем применяют Q-схемы. Q-схемы представляют собой объединение отдельных элементарных приборов обслуживания. Если каналы этих приборов соединены параллельно, то имеет место многоканальное обслуживание. Если приборы и их параллельные композиции соединены последовательно, то имеет место многофазное обслуживание. В разомкнутых Q-схемах поток обслуженных заявок не может снова поступить на какой-либо элемент, т.е. обратные связи отсутствуют. В замкнутых Q-схемах имеются обратные связи, по которым заявки двигаются в направлении, обратном направлению вход/выход.
Для описания Q-схемы необходимо задать алгоритм ее функционирования, который определяет набор правил поведения заявок в системе в различных неоднозначных ситуациях.
Для формализации процессов используем аппарат Q-схем. Структурная схема модели может быть представлена в виде, изображенном на рисунке 2.
Рисунок 2 - Q-схема процесса
Источник И1 имитирует источник речевых пакетов. Накопитель Н1 имитирует первый накопитель перед первым транзитным каналом, где буферизуются пакеты, К1 имитирует первый транзитный канал передачи, накопитель Н2 имитирует второй накопитель перед вторым транзитным каналом, К2 имитирует второй транзитный канал передачи. Т1 имитирует уничтожение пакетов, Т2 имитирует выход системы.
2. Сеть Петри для процесса работы порта
Сеть Петри представляет собой двудольный ориентированный граф, состоящий из вершин двух типов -- позиций и переходов, соединённых между собой дугами. Вершины одного типа не могут быть соединены непосредственно. В позициях могут размещаться метки (маркеры), способные перемещаться по сети. Они используются для причинно-следственных связей в системах с множеством параллельных процессов.
На рисунке 3 представлена сеть Петри для полного описания модели.
Рисунок 3 - Сеть Петри
3. Построение модели
3.1 Описание программного продукта
AnyLogic -- инструмент имитационного моделирования, поддерживающий следующие подходы к созданию имитационных моделей: процессно-ориентированный (дискретно-событийный), системно динамический и агентный, а также любую их комбинацию. Уникальность, гибкость и мощность языка моделирования, предоставляемого AnyLogic, позволяет учесть любой аспект моделируемой системы с любым уровнем детализации. Графический интерфейс AnyLogic, инструменты и библиотеки позволяют быстро создавать модели для широко спектра задач от моделирования производства, логистики, бизнес-процессов до стратегических моделей развития компании и рынков.
Для построения модели используются переменные различного типа данных и компоненты из библиотеки Enterprise Library.
С помощью объектов Enterprise Library можно моделировать системы реального мира, динамика которых представляется как последовательность операций (прибытие, задержка, захват ресурса, разделение) над некими сущностями, представляющими клиентов, документы, звонки, пакеты данных, транспортные средства. Процессы задаются в форме потоковых диаграмм (блок-схем) -- графическом представлении, принятом во многих областях: производстве, бизнес-процессах, центрах обработки звонков, логистике, здравоохранении. Потоковые диаграммы AnyLogic иерархичны, масштабируемы, расширяемы и объектно-ориентированы, что позволяет пользователю моделировать сложные системы любого уровня детальности. Другой важной особенностью Enterprise Library является возможность создания достаточно сложных анимаций процессных моделей.
3.2 Переменные и классы
Основные переменные и параметры, необходимые для построения модели, представлены в таблице 1.
Таблица 1 - Переменные
Sink3.getCount() |
Количество уничтоженных пакетов |
|
sum |
Количество пакетов |
|
var1 |
Процент уничтоженных пакетов |
|
path |
Логическая переменная, значение которой указывает на выполнение условия выхода или уничтожения пакета |
|
showTime |
Время прохождения системы пакетом |
|
Herz1 |
Частота подключения резерва |
|
Count1 |
Количество пакетов, которые прошли через каналы с подключением ресурса |
Создан класс packet, который характеризует речевой пакет, проходящий через систему. Параметры класса: Enter - время вхождения пакета в систему, Exit - время выхода пакета из системы.
3.3 Объекты библиотеки Enterprise Library
Для построения модели использовались следующие объекты библиотеки Enterprise Library:
- Source - генератор заявок;
- Sink - удаление заявок;
- Queue - моделирует очередь и хранит поступающие заявки в определенном порядке;
- SelectOutput - в зависимости от заданного условия пересылает заявку на один из выходных портов;
- Delay - задерживает заявки на заданный промежуток времени.
3.4 Разработка модели
На рисунках 4 и 5 представлена реализованная модель системы.
Рисунок 4 - Схема модели
Рисунок 5 - Альтернативная схема модели
Опишем подробно устройство одной из схем. Source2 - источник пакетов, за ним объект selectOutput1, который проверяет условия уничтожения 30% пакетов. Если уничтожено больше 30%, то пакеты идут на нижнюю ветку, где время задержки каналов установлено в 4 мс. Если уничтожено меньше 30%, то пакеты идут по верхней ветке, где время задержки каналов 5 мс. Каждая их двух веток состоят из двух накопителей (объект Queue) и двух каналов (объект Delay). После перехода по ветке пакет заходит в объект SelectOutput, где проверяется время обслуживания пакета и определяется направление выхода пакета из системы.
Рассмотрим отдельные параметры каждого объекта.
Source:
- newEntity - тип вызываемой заявки. Здесь определяем созданный ранее класс MyMessage.
- interarrivalTime - выражение, вычисляющее время до создания следующей заявки. По условию задания это время равно 6±3 с (triangular(3, 6, 9)).
selectOutput1:
В условии данного объекта прописана переменная path. Если переменная имеет истинное значение, то пакет передается в ветку с каналами, задержка которых равна 5 мс, иначе передача пакетов идет по ветке с каналами, которые имеют задержку 4 мс.
Ветки, которые идут параллельно имеют одинаковые параметры за исключением времени задержки.
queue:
- onEnter - код, который выполняется при входе в объект. Здесь определяется переменная Enter класса MyMessage. ((MyMessage)entity).Enter = getTime().
delay2 и delay4:
- delayTime - время задержки заявки (по условию 5 или 4 с), для верхней ветки это значение равно пяти, для нижней четырём.
delay3 и delay5:
- onExit - код, выполняемый, когда заявка покидает объект. Определяется переменная Exit класса packet - время окончания перехода заявки по каналам ((MyMessage)entity).Exit = getTime().
selectOutput:
onEnter - вызывается метод NewControlDelayTime(), в котором описана функция, вычисляющая время перехода пакета по каналу. Если время больше 10с, то заявка отправляется на первый выход, если нет, то на второй.
3.5 Создание анимации
Анимация модели помогает визуализировать работу модели. Анимация предназначена для конечного пользователя.
В анимации представлены динамические изменения основных переменных двух аналогичных схем - процент уничтоженных заявок, частота подключения резервного ресурса. Для наглядности основной параметр - процент отклоненных пакетов - выводится на график.
На рисунке 6 представлена разработанная анимация отражающая работу моделей.
Рисунок 6 - Корректная передача пакета
4. Результаты работы программной модели
anylogic порт программный анимация
В результате работы имитационной модели наглядно демонстрируется передача речевых пакетов. В ходе моделирования по заданным условиям и параметрам получены значения следующих показателей: количество передаваемых пакетов, количество уничтожаемых пакетов, время задержки пакета в канале, процентное соотношение передаваемых и уничтожаемых пакетов.
Рисунок 7 - Динамика отношения полученных и недошедших пакетов второй схемы
Рисунок 8 - Динамика отношения полученных и недошедших пакетов второй схемы
Из данных графиков можно сделать вывод о том, что использование резервов позволяет удерживать количество удаляемых пакетов в пределах допустимой нормы - 30%.
Кроме того из рисунка 6 видно, что частота подключения резервного ресурса достаточно мала - порядка 0,036 Гц. А так же она с допустимой точностью совпадает у основной и альтернативной схемы модели.
Заключение
В ходе выполнения курсовой работы были построены структурная схема процесса, формализованная Q-схема процесса, сеть Петри, а также имитационная модель и анимация для нее, демонстрирующие работу системы передачи пакетов речевой информации в цифровом виде с помощью программного продукта.
Реализованная анимация дает наглядное изображение процессов, происходящих в модели.
Кроме того были получены и проанализированы данные работы системы.
Список использованных источников
1. XJ Technologies [Электронный ресурс]. - Режим доступа: http://www.xjtek.ru, свободный.
2. XJ Technologies Company Ltd. Справочное руководство по Enterprise Library. - 2012. - 134 с.
3. XJ Technologies Company Ltd. Учебное пособие по Enterprise Library. - 2010. - 117 с.
4. СТО 01.04 - 2005. Работы студентов. Общие требования и правила оформления. - Архангельск.: Изд-во АГТУ, 2009. - 104 с.
Размещено на Allbest.ru
Подобные документы
Оптимальное время для обслуживания пользователей как основная цель работы компьютерного зала библиотеки. Построение модели деятельности подписного отдела с помощью средства имитационного моделирования AnyLogic. Описание процессов и построение сценария.
курсовая работа [1,9 M], добавлен 19.06.2015Построение концептуальной модели системы и ее формализация. Алгоритмизация модели системы и ее машинная реализация. Построение логической схемы модели. Проверка достоверности модели системы. Получение и интерпретация результатов моделирования системы.
курсовая работа [67,9 K], добавлен 07.12.2009Анализ и формализация задачи моделирования: построение концептуальной модели, ее формализация в виде Q-схемы. Построение имитационной модели: создание блок-схемы, представление базовой исходной имитационной модели. Исследование экономических процессов.
контрольная работа [156,0 K], добавлен 21.11.2010Создание программы на языке C++, обеспечивающей ввод исходной информации, ее обработку, реализацию алгоритма имитации процесса и выдачу необходимой информации. Разработка имитационной модели очереди с разнотипными заявками (модели работы порта).
курсовая работа [563,8 K], добавлен 13.09.2012Понятие сетей Петри, их применение и возможности. Сетевое планирование, математические модели с использованием сетей Петри. Применение сетевых моделей для описания параллельных процессов. Моделирование процесса обучения с помощью вложенных сетей Петри.
курсовая работа [1,0 M], добавлен 17.11.2009Методы прогнозирования, их классификация. Использование рекламы в социологии. Пооперационная разработка, реализация и конфигурирование модели в пакете Anylogic. Создание анимации. Описание имитационных вычислительных экспериментов, анализ результатов.
курсовая работа [1,7 M], добавлен 03.06.2012Описание программного обеспечения AnyLogic, поддерживающего три метода имитационного моделирования (системная динамика, дискретно-событийное и агентное моделирование). Разработка модели процесса перехода пассажиров на монорельсы через кассы и турникеты.
контрольная работа [524,9 K], добавлен 21.05.2015Специфика работы терапевтического отделения. Разработка имитационной модели в среде AnyLogic. Выбор средств моделирования. Описание схемы моделирующего алгоритма. Организация вычислительного эксперимента над математической моделью, анализ его результатов.
курсовая работа [1,2 M], добавлен 10.06.2015Концептуальное, физическое, структурно-функциональное, математическое (логико-математическое), имитационное (программное) и компьютерное моделирование. Построение имитационной модели в среде AnyLogic. Дискретные и непрерывно изменяющиеся модели.
курсовая работа [1,6 M], добавлен 21.11.2013Разработка математической модели системы. Моделирование работы конвейера сборочного цеха в течении 8 часов. Определение вероятности пропуска секции. Расчет количества скомплектованных изделий за 8 часов. Исследование системы на имитационной модели.
контрольная работа [98,3 K], добавлен 24.09.2014