Построение имитационной модели с помощью пакета Simulink

Тип работы:
Реферат
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

Содержание

Введение

1. Основные понятия теории моделирования

2. Практическая часть

2.1 Постановка задания

2.2 Построение имитационной модели с помощью пакета Simulink

2.2.2 Конфигурирование блоков

2.2.4 Создание подсистемы

Заключение

Список использованной литературы

Введение

Применение имитационных моделей дает множество преимуществ по сравнению с выполнением экспериментов над реальной системой и использованием других методов.

Стоимость. Допустим, компания уволила часть сотрудников, что в дальнейшем привело к снижению качества обслуживания и потери части клиентов. Принять обоснованное решение помогла бы имитационная модель, затраты на применение которой состоят лишь из цены программного обеспечения и стоимости консалтинговых услуг.

Время. В реальности оценить эффективность, например, новой сети распространения продукции или измененной структуры склада можно лишь через месяцы или даже годы. Имитационная модель позволяет определить оптимальность таких изменений за считанные минуты, необходимые для проведения эксперимента.

Повторяемость. Современная жизнь требует от организаций быстрой реакции на изменение ситуации на рынке. Например, прогноз объемов спроса продукции должен быть составлен в срок, и его изменения критичны. С помощью имитационной модели можно провести неограниченное количество экспериментов с разными параметрами, чтобы определить наилучший вариант.

Точность. Традиционные расчетные математические методы требуют применения высокой степени абстракции и не учитывают важные детали. Имитационное моделирование позволяет описать структуру системы и её процессы в естественном виде, не прибегая к использованию формул и строгих математических зависимостей.

Наглядность. Имитационная модель обладает возможностями визуализации процесса работы системы во времени, схематичного задания её структуры и выдачи результатов в графическом виде. Это позволяет наглядно представить полученное решение и донести заложенные в него идеи до клиента и коллег.

Универсальность. Имитационное моделирование позволяет решать задачи из любых областей: производства, логистики, финансов, здравоохранения и многих других.

1. Основные понятия теории моделирования

Основным понятием теории моделирования являются объект и субъект. Под субъектом понимается элемент реального мира, на который направлена деятельность субъекта.

Рисунок 1.1 — Объекты моделирования

Рассматривая 2 объекта Q1 и Q2 всегда можно сказать, что они в чем-то сходны, а в чем-то различны, который из этих объектов характеризуется множеством параметров, причем интерес представляют те объекты, которые имеют одинаковые или близкие друг к другу атрибуты. Замещение сложного объекта Q1 более простым объектом Q2 с целью изучения свойств Q1 с помощью Q2. При этом Q1 — оригинал, а Q2 — его модель.

Применительно к вычислительной технике под объектом будем понимать некоторую информационную систему S, которая в процессе своего жизненного цикла взаимодействует с внешней средой E. В общем случае информационную систему можно представить так

Рисунок 1.2 — Информационная система

Аналогия — это суждение о каком-либо частном сходстве 2-х объектов.

Гипотеза — это предсказание, основанное на сравнительно небольшом количестве предложенных данных.

Обобщение — это конвергенция данных, полученных в результате выполнения или невыполнения гипотез.

Модель существенна или адекватна реальной системе, если она позволяет не только объяснить существующие факты, но и, что самое главное, предсказать будущее поведение системы. Существует 2-а подхода к разработке моделей:

1) От частного к общему

Рисунок 1.3 — Подход «От частного к общему»

На основе данных д1, д2,. д5 формируется частная и промежуточная цели и каждая из этих целей в модели реализуется компонентами к1 и к2.

2). На сегодняшний день используется системный подход или подход от общего к частному

Рисунок 1.4 — Подход от общего к частному

В основе рассмотрения лежит цель, которая включает совокупность требований, которые реализуются составными частями модели, которые образуют саму модель.

Принято выделять следующие виды моделирования:

­ Физическое моделирование, при котором модель и моделируемый объект представляют собой реальные объекты, причем в модели и оригинале протекают сложные процессы.

­ Структурно-физическое моделирование. Моделями являются схемы, графики, чертежи, диаграммы, выполненные специальными правилами их объединения.

­ Математическое, при котором проводится оперирование математическими формулами уравнениями.

­ Имитационное (программное), при котором математическая модель исследуемого объекта представляется в виде алгоритма, а затем описывается языком программирования и реализуется на ЭВМ. Имитационная модель — формальная, т. е. выполненная на некотором формальном языке описания логики функционирования исследуемой системы и взаимодействия ее отдельных элементов во времени.

Принципы моделирования

1). Принцип информационной достаточности. При полном отсутствии информации об исследуемой системе построение ее модели невозможно. При наличии полной информации — бессмысленно. Поэтому существует некоторый уровень достаточности информации при котором модель целесообразно строить.

2). Принцип осуществимости. Создаваемая модель должна обеспечивать достижимость поставленной цели исследования с вероятностью отличной от «0» и за конечное время.

3). Принцип множественности модели. Создаваемая модель всегда отражает лишь некоторые стороны реального объекта, следовательно, для полного исследования необходимо множество разноплановых моделей.

4). Принцип агрегатирования. Сложная система всегда представима подсистемами (агрегатами). Для описания, которых всегда применимы некоторые стандарты и модели. При этом отдельные агрегаты могут быть заменены на некоторые числовые величины или их множества, при этом не требуется строить их модели.

Основные этапы процесса моделирования:

1. Определение целей моделирования

2). Разработка концептуальной модели

3). Формализация концептуальной модели в виде имитационной модели

4). Программная реализация имитационной модели

5). Планирование экспериментов с моделью

6). Анализ и интерпретация результатов моделирования

Под целью моделирования обычно понимается расчет некоторого показателя эффективности для различных вариантов реализации модели.

Концептуальная модель — это абстрактная модель, определяющая структуру моделированной системы или ее отдельные элементы.

Концептуальная модель включает наиболее общие принципы, среди которых выделяются два: модель статическая и стохастическая.

Ярким примером статической модели является цифровой автомат, в котором четко определены состояния автомата и правила перехода между отдельными состояниями.

Стохастическая модель всегда представляется в любой момент времени множествами состояний, в которых может находиться система со своими вероятностями и соответственно она может перейти в одно из множества состояний.

Программная реализация модели — это формальная запись алгоритма на одном из языков программирования. Планирование эксперимента сводится к выбору общего объема испытаний, при соблюдении требований к достоверности и точности.

Анализ достоверности включает использование кластерного, дисперсионного и корреляционного методов анализа.

Концептуальная модель обычно представляется совокупностью трех блоков

Рисунок 1.5 — Концептуальная модель

S1 — имитатор внешних воздействий

S2 — сама модель системы

S3 — обработчик результатов моделирования

Как правило, блоки S1, S2, S3 имеют четко определенные функции и могут быть реализованы в виде компонентов. Наиболее сложным является S2, который связан с формулами математической модели. Математическая модель

y1=F1(x1,x2,…, xm)

y2=F2(x1,x2,…, xm)

yn=Fn (x1,x2,…, xm)

Если функции F1, F2, Fn известны, то соотношение является идеальной математической моделью. Если подобных соотношений нет, то используется принцип дихотомии, когда блок S2 разбивается на совокупность более простых блоков, каждый из которых может быть описан математической моделью. При этом обычно используются непрерывно детерминированные модели (D-схемы).

В качестве математической модели используется дифференциальное уравнение. Пример математический маятник.

2. Практическая часть

2.1 Постановка задания

В салоне красоты работают два мастера. Клиенты обслуживаются как в порядке живой очереди, так с предварительной записью. Очередь неограниченна. Заявки на обслуживание поступают в соответствии с Пуассоновским распределением в среднем 7 заявок в час. Время обслуживания клиента составляет в среднем 15 минут и подчиняется экспоненциальному закону.

Необходимо построить имитационную модель системы и определить на ее основе основные характеристики:

— Коэффициент загрузки мастеров;

— Среднее время ожидания в очереди;

— Среднее время нахождения в системе;

— Длину очереди.

Порядок выполнения работы:

1. Разработать структуру модели.

Построить имитационную модель с помощью пакета Simulink.

2. Ввести в модель исходные данные и произвести необходимые настройки модели.

3. Используя Subsystem, необходимо создать подсистему на основе созданной модели.

4. Необходимые параметры системы представить в виде графиков.

2.2 Построение имитационной модели с помощью пакета Simulink

В работе рассматривается методика создания и проведения исследований одной из моделей систем массового обслуживания (СМО) — модели D/D/2 в среде SimEvents, являющейся одним из компонентов системы MATLab+SimuLink.

Для обозначения основных допущений, применяемых при моделировании СМО, была разработана так называемая нотация Кепдалла (Kendall's notation). Эта нотация имеет вид X/Y/N, где X обозначает распределение интервалов времени между поступлениями запросов, Y — распределение времени обслуживания, N — количество серверов. В обозначении модели D/D/2 первое D обозначает детерминированное время поступление запросов на обслуживание, второе D — фиксированное время обслуживания запросов, N — количество обслуживающих приборов.

SimEvents позволяет формировать требования с заданными пользователем параметрами и затем соединять блоки между собой таким образом, чтобы перемещение и обработка заявок соответствовала реальным условиям.

2.2.1 Разработка модели

Перефразируем задачу в соответствии с понятиями SimuLink. Рассмотрим сервер, который одновременно обрабатывает 2 задачи (2 мастера), на вход которого заявки прибывают с постоянной скоростью с периодом 8,57 мин (7 заявок в час). Среднее время обслуживания заявок сервером составляет 15 мин. Предположим, что сервер обрабатывает заявку сразу, как только она поступает на его вход. Когда сервер завершает обработку текущей заявки, поступает новая заявка и сервер снова принимается за работу.

В этом случае рассматривается простая система организации очереди, в которой заявки на обслуживание формируются в детерминированные моменты времени, ждут обслуживания в очереди к серверу. Для обслуживания заявок сервер выделяет детерминированные промежутки времени. После окончания обслуживания заявка покидает систему.

Для построения модели были выбраны следующие блоки:

— блок формирования распределенных во времени сигналов, имитирующих последовательность поступающих на вход системы запросов на обслуживание (Time-Based Entity Generator);

— блок, реализующий дисциплину обслуживания заявок (FIFO Queue);

— обслуживающий прибор (N Server);

— приемник обслуженных заявок (Entity Sink);

— блок формирования временных интервалов, используемых в качестве интервалов между заявками (Event-Based Random Number);

— три блока визуализации процесса моделирования (Dlina, Wait time, server utilization);

— дисплей, отображающий количество сформированных заявок на обслуживание.

Выполним необходимые соединения блоков и получим схему модели, представленную на рисунке 2.1.

Рисунок 2.1 — Схема модели

2.2.2 Конфигурирование блоков

Эта процедура необходима для того, чтобы установить параметры блоков, соответствующие требованиям моделируемой системы. Каждый блок имеет диалоговое окно, которое дает возможность установить необходимые параметры для блока. Чтобы выполнить эту процедуру, необходимо сделать следующее:

В блоке Event-Based Random Number указывается в параметре Mean интервал подачи заявок, по условию задачи 7 заявок в час, следовательно, интервал равен 8,57 минут.

Рисунок 2.2 — Установка периода формирования заявок в блоке Event-Based Random Number

В блоке параметров блока FIFO Queue в разделе Statistics в окне параметров Average wait и Average queue length следует выбрать On. Параметр Average wait показывает время ожидания заявок на обслуживание, а параметр Average queue length длину очереди ожидания заявок на обслуживание.

simulink моделирование

Рисунок 2.3 — Установка параметров статистики в блоке FIFO Queue

Для блока N-Server необходимо установить такие параметры окне N-Server: Number of servers -2, Service time — 15; в окне Statics: Utilization — on.

Рисунок 2.4 — Установка параметров в блоке N-Server

2.2.3 Испытание модели

В меню рабочего окна модели нужно установить время моделирования 60 и нажать кнопку Start. Когда моделирование завершится, блоки Signal Scope откроют окна, содержащие графики.

Блок Wait time (рисунок 2. 5) показывает время ожидания каждой заявки в очереди перед обслуживающим прибором. Вертикальная ось отображает номера заявок, а ось Y — время ожидания каждой заявки.

Рисунок 2.5 — Время ожидания заявок на обслуживание

Блок Signal Scope, названный Dlina, показывает длину очереди заявок (рисунок 2. 6). Вертикальная ось отображает количество заявок в очереди, а ось Y — время ожидания каждой заявки.

Рисунок 2.6 — Длина очереди заявок на обслуживание

Блок Utilization (рисунок 2. 7) отображает загрузку сервера при обслуживании каждой заявки. Горизонтальная ось отображает номера заявок, а вертикальная — загрузку.

Рисунок 2.7 — Загрузка сервера

2.2.4 Создание подсистемы

Для создания в модели нужно выделить с помощью мыши нужный фрагмент модели и выполнить команду Create Subsystem из меню Edit окна модели. Выделенный фрагмент будет помещен в подсистему, а входы и выходы подсистемы будут снабжены соответствующими портами. Данный способ позволяет создать виртуальную неуправляемую подсистему. В дальнейшем, если это необходимо, можно сделать подсистему монолитной, изменив ее параметры, или управляемой, добавив управляющий элемент из нужной подсистемы находящейся в библиотеке. Отменить группировку блоков в подсистему можно командой Undo.

На рисунке 2.8 показан результат процесса создания подсистемы.

Рисунок 2.8 — Заключение модели в подсистему

Заключение

В последние годы традиционные технологии моделирования все настойчивее замещаются новыми технологиями создания и использования моделей, названных интеллектуальными технологиями. Свойство интеллектуальности следует понимать таким образом, что большая часть действий, совершаемых ранее разработчиком, передается компьютеру, существенным образом изменяя требования к разработчику, характер его действий, а также свойства самих создаваемых модельных комплексов.

Модель D/D/2 была построена в среде SimEvents с использованием стандартных блоков. Проведено моделирование детерминированной системы, включающей обслуживающий прибор (сервер) с дискретным временем обслуживания заявок и блок генерирования заявок, также имеющий постоянное время поступления. Интеллектуальность модели была достигнута созданием подсистемы, обеспечившим полную автоматизацию процесса моделирования. Результаты моделирования свидетельствуют о работоспособности построенной модели.

Список использованной литературы

1. Иванищев В. В. Моделирование без посредника. /Изв. РАН.

2. Иванищев В. В., Михайлов В. В. Автоматизация моделирования экологических систем СПб. Издательство СПбГТУ. 2000 г., 172 с.

3. Тимоти Бадд. Объектно-ориентированное программирование в действии. /Перевод с англ. -СПб: Питер, 1997, 464 с. :ил.

ПоказатьСвернуть
Заполнить форму текущей работой