Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Моделирование. Учебное пособие
.pdf
Продуктивные приемы:
разрабатывать тестовые данные как для нормальных, так и для
экстремальных условий работы объекта исследования;
исследовать качество дополнительно построенных датчиков
случайных чисел с требуемым распределением;
для работающего объекта исследования использовать по воз-
можности в качестве тестовых данных статистические данные о процессах функционирования объекта для определения выходных
данных,
в том числе показателей эффективности работы объекта;
проверять правильность работы программной модели для вновь
проектируемых объектов на тестовых данных, полученных пошаговым
расчетом по концептуальной модели в виде блок-схемы;
проверять правильность расчета числа реализаций для обеспече-
ния статистической устойчивости выходных данных (для имитационного моделирования) по результатам
эксперимента.
Теоретические сведения
Для подтверждения правильности получаемых результатов (пример 1, с. 18, это показатели эффективности функционирования объекта
исследования) необходимо сравнить полученные с помощью имитационной модели показатели со значениями этих же показателей, полученными из других источников. Например, можно выполнить «ручной» расчет показателей для двух-трех заявок, а в случае наличия статистических данных
функционирования объекта исследования, можно рассчитать показатели эффективности по статистическим данным.
В приложении 2 помещено описание порядка сбора и обработки
статистических данных на реальном объекте исследования, а также в
работах
12-е изд., стер. – М.: Юстиция, 2018. – 658 с. – URL: https://static.myshop.ru/product/f16/290/2898750.pdf; Никитин В.И. Первичная статистическая
обработка экспериментальных данных: мет. кк. по вып. к.р. / В.И. Никитин.
Самара: Самар. гос. техн. ун-т, 2017. – 80 с. – URL: http://bngs.samgtu.ru/
sites/bngs.samgtu.ru/files/statmetzaochnikitin.pdf; Савастенко Н.А. Математиче-
ская статистика. Курс лекций:
Минск: МГЭУ им. А.Д. Сахарова, 2015. – 72 с. – URL: http://elib.bsu.by/
bitstream/123456789/165700/1/Математическая%20статистика.pdf
5
.
5
Вентцель Е.С. Теория вероятностей: учебник / Е.С. Вентцель. –
, полученных в ходе наблюдения за процессами
учебно-метод. пособие / Н. А. Савастенко. –
31

РАЗРАБОТКА КОНЦЕПТУАЛЬНОЙ МОДЕЛИ
р
)
Ц
Н
уру
Н
В табл. 4 показано соответствие целей обучающегося требованиям
профессиональных стандартов (трудовых функций, трудовых действий, необходимых умений и знаний) на данном этапе.
Таблица 4
Обобщенная трудовая функция.
Выполнение работ и управление работами по созданию (модификации) и
сопровождению ИС, автоматизирующих задачи организационного управления и бизнес-процессы
Трудовая функция.
аботка архитектуры ИС (С/14.6
Раз
Трудовые действия:
• разработка архитектурной спецификации
ИС;
• согласование архитектурной спецификации ИС с заинтересованными сторонами
еобходимые
умения:
• проектировать архитектуру ИС;
• проверять
(верифициро-
вать) архитект
ИС
еобходимые знания:
• инструменты и методы
проектирования архитектуры ИС;
• инструменты и методы
верификации архитектуры
ИС;
• предметная область автоматизации
В приложении 4 помещен пример аналитического расчета (еще
один способ, кроме имитационного моделирования) показателей эффективности, а именно надежности объекта исследования.
Концептуальная модель (или структуры данных и алгоритмы)
объекта исследования спроектирована качественно, если:
представлена схема иерархии программных модулей – структура
программной модели;
описаны структуры данных;
представлены обобщенные и/или
алгоритмов в зависимости от назначения и сложности;
описаны все функции.
В приложении 1 в анкете № 2 приведены критерии качества концептуальной модели.
ели обучающегося.
Уметь:
• определять количество и
типы переменных, структур
данных;
• проектировать структуру
программной модели;
строить алгоритмы;
• оценивать правильность
алгоритмов.
Знать:
• способы определения стан-
дартных и пользовательских
типов данных
детализированные блок-схемы
32

Пример 1. Концептуальная модель по принципу «особых состояний»
Концептуальная модель в виде блок-схемы алгоритма имитационного моделирования процесса функционирования объекта исследования (пример 1, с. 18) по принципу «особых состояний» представлена
на рис. 4. Содержательная модель и Q-схема объекта исследования
представлены в п. «Разработка содержательной модели». Описание
алгоритма помещено в ЭУМК
№ 4475 «Моделирование».
Пример 2. Концептуальная модель в виде системы уравнений
для динамического моделирования по принципу «Δt»
Задание. Производственная система состоит из двух обрабатыва-
ющих станков. Поток деталей, поступающих на обработку в систему,
описывается равномерным законом распределения в интервале [1 мин,
5 мин]. Поступившая деталь будет обработана тем станком, у которого
в момент
ее поступления в очереди имеется меньше деталей. Определить динамику изменения очередей деталей к станкам и число деталей,
обработанных каждым станком, за 3 часа работы, если время обработки детали первым станком равно 5 мин, а вторым – 6 мин.
В задании уже приведены характеристики объекта, которые нужно
учесть при моделировании: количество станков и время
на обработку
одной детали каждым станком, закон распределения входного потока
деталей. В реальности даже для такого простого объекта можно учесть
больше характеристик, например, отказы станков по различным причинам, необходимость переналадки станка перед началом обработки
следующей детали, плановые перерывы в работе станка, изменение
допустимой скорости обработки деталей из-за внешних
условий и т. д.
Используемые для расчета величины можно определить, начав рассматривать способы расчета требуемых в задании показателей эффективности функционирования объекта исследования, а именно величин
очередей деталей у станков и числа обработанных деталей в течение
интервала моделирования.
Все введенные величины нужно разделить на три группы: уровни,
темпы и вспомогательные
переменные. От типа переменной зависит
способ ее расчета:
Z1
(t), Z2оч(t) – величины очередей из деталей к первому и вто-
оч
рому станку соответственно в момент времени t;
Z1
общ
(t), Z2
(t) – общее число деталей, поступивших на обработ-
общ
ку к первому и второму станку соответственно к моменту времени t;
33

N
N
N
Т
t
Да,
уфер
Да, время моделирования
р
продолжается
канал занят
Да, С = 2, канал
занят, буфер занят
6. t
4. C > 1
< t
прих
=0,
= 0, Т
Т
обсл
λ = 0,75; t
1.
Нет, С = 1, канал занят,
буфер свободен
нач_обсл
Начало
=0,
обсл
необсл
= 24, а = 0,2, b = 0,8
мод
=0, t
осв
прих
3. t
= 0, Тож = 0
прих
+ = –1/ λ *ln(1– x)
2. t
< Т
прих
< t
прих
осв
мод
=0,
=0
простой
Начальные условия
Нет, время моделирования
Нет, канал свободен,
б
свободен
5.С=1,
t
= t
нач_обсл
+ = (t
простой
= а + (b – а)*х
обсл
= t
осв
нач_обсл
прих
прих
+ Δt
– t
обсл
)
осв
Т
Δt
t
Да, канал и буферзаняты,
заявка покидает систему
необслуженной
7. N
++, N++
необсл
Да, время моделирования
п
одолжается
10. Т
+ = Δt
обсл
Нет, канал занят, заявка пришла
после начала обслуживания детали
из буфера и она занимает
освободившееся место
, N
++, N++
обсл
обсл
8. С = 2, t
= а + (b – а)*х, t
Δt
обсл
нач_обсл
9. t
11. N
ср
Т
ср
Т
обсл
ож
= t
, Тож+ = (t
осв
= t
осв
< Т
осв
мод
Нет, время моделирования
закончилось
, N
обсл
необсл
= Т
/ N
обсл
= Т
/ N
ож
обсл
нач_обсл
, Т
простой
обсл
– t
)
осв
прих
+ Δt
обсл
Расчет показателей
эффективности
Конец
Рис. 4. Алгоритм расчета показателей эффективности объекта исследования
34

Z1
(t), Z2
обр
(t) – общее число деталей, обработанных первым и
обр
вторым станком к моменту времени t;
X
(t) – темп (скорость) поступления деталей в объект исследова-
вх
ния в момент времени t;
X1
вых
(t), X2
(t) – выходные темпы обработки деталей соответ-
вых
ственно первым и вторым станком в момент времени t;
k1, k2 – количество шагов моделирования, в течение которых со-
ответственно первый и второй станок обрабатывают поступившие детали;
Т1, Т2 – время обработки деталей соответственно первым и вто-
рым станком;
Δt – шаг
моделирования.
Приведем систему уравнений динамической модели объекта исследования. Описание уравнений динамической модели приведено в
приложении 3.
35

Отметим, что это не единственный вариант системы уравнений динамической модели объекта исследования.
Продуктивные приемы:
концептуальная модель должна соответствовать описательной
модели объекта исследования, т. е. все выделенные ситуации процесса
функционирования объекта должны быть реализованы в алгоритме,
что определяет правильность имитационной модели;
основными выходными данными концептуальной модели явля-
ются показатели
эффективности функционирования объекта исследо-
вания;
ситуации случайного выбора, например, свободного канала об-
служивания, характеристик пришедшей заявки и т. д. решают с помощью правила выбора «по жребию».
Теоретические сведения
Алгоритм моделирования одноканальной системы
массового обслуживания
В блок-схеме (рис. 5) и ее описании использованы следующие обозначения: t
между приходами заявок, t
шедшей заявки, t
– момент прихода очередной заявки, Δt
прих
– момент освобождения канала, ƛ – интенсив-
осв_кан
– момент начала обслуживания при-
нач_обсл
ность входного потока заявок при экспоненциальном законе распределения, μ – интенсивность при экспоненциальном законе распределения
времени обслуживания заявок, T
– временной интервал моделирова-
мод
ния процессов функционирования объекта исследования, T
нее время обслуживания заявки, Δt
заявки, T
– среднее время простоя канала обслуживания, tож –
простоя
время ожидания обслуживания текущей заявки, Т
ожидания заявок, N – число пришедших заявок, N
– время обслуживания текущей
обсл
ож
обсл
женных заявок.
Зададим начальные условия (блок 1, рис. 5) для счетчиков числа
пришедших заявок N = 0, числа обработанных (обслуженных) заявок
= 0, суммарного времени простоя канала Т
N
обсл
освобождения канала t
вания заявок Т
обсл
осв
= 0, времени освобождения канала t
времени прихода заявки t
обслуживания в очереди Т
вания Т
, параметр экспоненциального закона распределения интер-
мод
= 0, счетчика суммарного времени обслужи-
= 0, счетчика времени ожидания заявок
прих
= 0. Также заданы общее время моделиро-
ож
простой
– интервал
прих
– сред-
обсл
– среднее время
– число обслу-
= 0, времени
= 0, момента
осв
36

валов между приходами заявок – λ, параметр экспоненциального закона распределения времени обслуживания заявок – μ.
Начало
Новая заявка
да
5.
t
= t
нач_обсл
Tож+= t
t
T
t
осв_кан=tнач_обсл
N++ , N
осв_кан
–
t
осв_кан
обсл
обсл
++
прих
+ Δ t
= - –
обсл
+= Δ t
обсл
нет
Расчет
показателей
эффективности
обсл
1. ƛ, μ, T
t
нач_обсл
=0, T
T
обсл
2.t
прих
=0,
мод, tприх
=0, t
=0,
осв_кан
=0, Тож=0,
простоя
+= –
3.t
прих≥Tмод
Начальные условия
да
нет
4.t
< t
прих
осв_кан
нет
6.
t
нач_обсл=tприх
T
простоя=tприх
Δ
=
t
обсл
T
+= Δ t
обсл
7.t
оcв_кан Tмод
– вероятность обслуживания
– среднее время обслуживания заявки
– средний интервал между приходами заявок
– время простоя канала обслуживания
T
простоя
–
t
осв_кан
обсл
=
да
Конец
Рис. 5. Алгоритм моделирования одноканальной СМО
(системы массового обслуживания) с очередью
37

Определим момент прихода первой заявки как t
+ =
прих
= –1 / λ * ln(1 – random()), где random() – стандартная функция генерации случайной величины с равномерным законом распределения в интервале [0, 1] (блок 2).
Далее в блоке 3 выполняется проверка условия окончания процесса
моделирования: время прихода заявки меньше времени моделирования
(t
< Т
прих
). Если время прихода заявки меньше времени моделирова-
мод
ния, то процесс моделирования продолжается, при этом управление
передается блоку 4. Если же время прихода заявки больше времени
моделирования, то процесс моделирования заканчивается, заявка не
будет обслужена, при этом управление передается блоку 8.
В блоке 4 проверяется условие: время прихода заявки меньше вре-
мени освобождения канала обслуживания (t
прих
< t
). Если время при-
осв
хода заявки меньше времени освобождения канала, то канал занят.
Управление передается блоку 5.
В блоке 5 рассчитывается время начала обслуживания заявки
= t
t
нач_обсл
Т
+ = (t
ож
= –1/μ * ln(1 – random()), время освобождения канала t
+ Δt
обсл
++. Затем управление передается блоку 7.
N
обсл
, суммарное время ожидания заявок обслуживания
осв
– t
осв
), интервал времени обслуживания заявки Δt
прих
осв
= t
обсл
нач_обсл
=
+
, число пришедших заявок N++ и число обслуженных заявок
В блоке 6 выполняется процесс обслуживания заявок, пришедших
в объект исследования, когда канал свободен. Момент начала обслуживания заявки равен моменту ее прихода в систему (t
нач_обсл
= t
прих
).
Поскольку канал был свободен перед приходом заявки, то нужно
определить суммарное время простоя канала до прихода очередной
заявки Т
заявки определяется по формуле Δt
простой
+= (t
прих
– t
). Длительность обслуживания пришедшей
осв
= –1/ μ * ln(1 – random()), где ran-
обсл
dom() – стандартная функция генерации случайной величины с равномерным законом распределения в интервале [0, 1]. Суммарное время
обслуживания заявок определяется как T
определяется момент освобождения канала t
пришедших заявок N++ и число обслуженных заявок N
+ = Δt
обсл
= t
осв
обсл
нач_обсл
. И, наконец,
+ Δt
, число
обсл
++. Затем
обсл
управление передается блоку 7.
В блоке 7 выполняется проверка условия окончания процесса моделирования t
осв
< Т
. Если условие выполняется, то процесс модели-
мод
рования заканчивается. Управление передается блоку 8. В противном
38

случае процесс моделирования продолжается. Управление передается
s
s
X
блоку 3.
В блоке 8 завершается процесс обработки статистических данных, т. е. рассчитываются показатели эффективности функционирования объекта исследования. Показатели числа обслуженных заявок N
и время простоя канала Т
обсл
не требуют дополнитель-
простой
ной обработки.
Отметим, что представленный алгоритм не является единственно
возможным.
Метод розыгрыша «по жребию»
Данный метод дает возможность определять дополнительные характеристики заявок, например тип приоритета при обслуживании заявки, или выбирать канал обслуживания среди свободных каналов в
момент прихода заявки [10, 11].
Пусть
АА
1
– полная группа событий. При этом
, ...,
РР
1
–
, ...,
вероятность наступления этих событий. Сумма вероятностей полной
группы событий равна единице.
A
Определим
значение
lXl
–1mim
i
Тогда вероятность возникновения события
как событие, состоящее в том, что выбранное
m
случайной величины удовлетворяет неравенству
.
A
равна
m
l
m
()
PA dx P
mm
l
1
m
.
Рассмотрим алгоритм использования метода розыгрыша «по жребию» для выбора одного из двух свободных в момент прихода заявки
каналов обслуживания. По наблюдениям заявка выбирает в среднем из
десяти случаев шесть раз первый канал и четыре раза – второй канал,
следовательно, вероятность выбора первого канала равна 0,6, а второго – 0,4.
Сгенерируем случайное число
х с равномерным законом распреде-
ления в интервале [0, 1]. Затем сравним случайное число х с вероятностью выбора первого канала. Если случайное число х меньше вероятности выбора первого канала, то заявка будет обслужена первым каналом, в противном случае – вторым каналом.
39

Обеспечение заданной точности имитационного
N
моделирования
Имитационная алгоритмическая модель является источником статистических данных о процессе функционирования объекта исследования, что приводит к получению разных значений одних и тех же выходных величин при многократных прогонах программной имитационной модели. Значение одной и той же выходной величины может
изменяться значительно (в разы
). При этом возникает вопрос обеспе-
чения точности выполняемых расчетов.
Статистическую устойчивость значений выходных величин при
имитационном моделировании можно обеспечить при многократных
реализациях программной модели, рассчитанных определенным образом, что позволяет усреднять значения случайных выходных величин [8, 9].
Первый случай. Пусть цель моделирования – вычислить вероят-
ность Р некоторого события А. Статистически вероятность
этого события рассчитывается как Р(A) = m / N, где m – количество появлений
события А в N опытах (реализациях).
Теорема Лапласа (частный случай центральной предельной теоремы теории вероятности) определяет, что при достаточно большом числе опытов N частоту возникновения события А = m / N можно рас-
сматривать как случайную величину, которая
имеет распределение,
близкое к нормальному с математическим ожиданием Р и дисперсией, равной D = P(1 – P) / N.
Для каждого значения можно выбрать из таблиц нормального
t
распределения такую величину
(t
– квантиль нормального
распределения), что точность определения величины Р будет
равна
22
1 / ,()tP P N
точность
.tD
После подстановки значения дисперсии имеем
тогда число опытов, обеспечивающее требуемую
22
1)/.(NtP P
будет равно
,
Полученное выражение
можно использовать, если необходимо оценить вероятность наступления некоторого события.
Таким образом, алгоритм определения необходимого числа программных реализаций имитационной модели объекта исследования
для статистического расчета вероятностных величин, например вероятности обслуживания заявок, включает в себя следующие шаги:
задается начальное значение числа программных реализаций
0
в интервале от 50 до100;
40
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
