Главная страница

КР Моделирование. Пояснительная записка к курсовой работе по дисциплине Моделирование систем инмв. 400900. 000 Пз


Скачать 4.34 Mb.
НазваниеПояснительная записка к курсовой работе по дисциплине Моделирование систем инмв. 400900. 000 Пз
Дата24.02.2022
Размер4.34 Mb.
Формат файлаdocx
Имя файлаКР Моделирование.docx
ТипПояснительная записка
#372672

Федеральное агентство железнодорожного транспорта

Омский государственный университет путей сообщения

Кафедра "Автоматика и системы управления"

К ЗАЩИТЕ ДОПУСТИТЬ
___________ Н.А.Тихонова

«___»______________2016 г.


РАЗРАБОТКА ИМИТАЦИОННОЙ МОДЕЛИ ФИРМЫ

«HAPPY NEW YEAR»
Пояснительная записка к курсовой работе по дисциплине
«Моделирование систем»

ИНМВ.400900.000 ПЗ







Студентка гр. 23И

___________С.О. Тимофеева

«__»_______2016 г.
Руководитель –

____________ Н.А. Тихонова

«__»________2016 г.


Омск 2016

Задание
Фирма «Happy New Year», работающая по системе «сегодня на сегодня», имеет в своем штате n актеров, играющих роль Деда Мороза и m актрис, играющих роль Снегурочки время прихода заказов распределено по закону Эрланга третьего порядка со средним временем Т1 минут. Характеристики заказов приведены в таблице. Время обработки сообщения во всех мини-ЭВМ равно Т3 микросекунд. Есть две возможности уменьшения числа сообщений, получающих отказ:

Вид

поздравления

Вероятность

прихода заказа на поздравление

Время выполнения заказа (поздравления), мин.

Стоимость поздравления

С дедом Морозом

p1

t1 ± t4

S1

Со Снегурочкой

p2

t2 ± t5

S2

С дедом Морозом и Снегурочкой

p3

t3 ± t6

S3

При заказе поздравления клиент указывает желаемый срок выполнения заказа Т2 минут. Если поздравление выполняется позже заявленного срока, то клиенту предоставляют 20% скидку от начальной стоимости поздравления. Заработная плата актера составляет z рублей в месяц. В начале своей работы фирма делает одноразовые затраты (костюмы реквизит, лицензия, литературные тексты и прочее) на сумму S единиц стоимости. Фирма работает только один месяц в году (считать, что в другое время она не несет никаких затрат).

Найти оценку периода окупаемости Т (в годах) фирмы по формуле

, где Р – прибыль, полученная за один год работы.

Определить величины n и m, при которых время окупаемости фирмы и соответствующее среднее время ожидания клиентом выполнения заказа будет минимальным. Если возможно снижение цен на услуги, то до какого уровня?

Параметр

n

m

p1

p2

p3

T1

T2

t1± t2

t1± t2

t1± t2

Вариант 2

6

7

0,4

0,5

0,1

20

200±20

65±20

48±12

100±14




S1

S2

S3

S

z



















45

35

100

14000

350
















Реферат
УДК 004.65
Курсовая работа содержит 26 страниц, 4 источника, 20 рисунков, 3 таблицы.
GPSS, AnyLogic, транзакт, блок, мини-ЭВМ, концептуальная модель, очередь, авральный режим, убытки.
Объектом курсовой работы является система обработки информации.

Цель данной работы – спроектировать модель системы обработки информации. Реализовать ее в двух средах моделирования: GPSS и AnyLogic. Соотнести результаты моделирования. Сделать вывод о эффективности системы обработки информации.

Система реализована средствами AnyLogic PLE 7 и GPSS World.

Содержание


Содержание 4

Введение 5

1 Теория моделирования 6

2 Проектирование 8

2.1 Концептуальная модель 8

3 Реализация модели в GPSS 9

3.1 Описание GPSS 9

3.2 Основные элементы построения модели 9

3.3 Блок-схема в терминах GPSS 10

3.4 Таблица определений 11

3.5 Листинг программы 11

3.6 Результаты моделирования в GPSS 12

4 Реализация модели в AnyLogic 16

4.1 Описание AnyLogic 16

4.2 Основные элементы построения модели 16

4.3 Реализация модели 17

5 Сравнение результатов моделирования в GPSS и AnyLogic 24

Заключение 25

Библиографический список 26



Введение



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

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

СМО описывают различные по своей физической природе процессы функционирования экономических, производственных, технических и других систем, например потоки поставок продукции некоторому предприятию, потоки деталей и комплектующих изделий на сборочном конвейере цеха, заявки на обработку информации в ЭВМ от удаленных терминалов и т.д.

1 Теория моделирования



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

Всем моделям присуще наличие некоторой структуры (статической или динамической, материальной или идеальной), которая подобна структуре объекта – оригинала. В процессе работы модель выступает в роли относительно самостоятельного квазиобъекта, позволяющего получить при исследовании некоторые знания о самом объекте. Если результаты такого исследования (моделирования) подтверждаются и могут служить основой для прогнозирования в исследуемых объектах, то говорят, что модель адекватна объекту. При этом адекватность модели зависит от цели моделирования и принятых критериев. Процесс моделирования предполагает наличие объекта исследования, исследователя, имеющего конкретную задачу,модели, создаваемой для получения информации об объекте, необходимой для решения задачи. По отношению к модели исследователь является экспериментатором. Одним из наиболее важных аспектов моделирования систем является проблема цели. Любую модель строят в зависимости от цели, которую ставит перед ней исследователь, поэтому одна из основных проблем при моделировании – это проблема целевого назначения. Подобие процесса, протекающего в модели, реальному процессу является не самоцелью, а условием правильного функционирования модели. Если цели моделирования ясны, то возникает следующая проблема – проблема построения модели. Это построение оказывается возможным, если имеется информация или выдвинуты гипотезы относительно структуры, алгоритмов и параметров исследуемого объекта.

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

В зависимости от характера изучаемых процессов в системе все виды моделирования могут быть разделены на детерминированные и стохастические, статические и динамические, дискретные, непрерывные и дискретно – непрерывные. Детерминированное моделирование отображает детерминированные процессы, т.е. процессы, в которых предполагается отсутствие всяких случайных воздействий; стохастическое моделирование отображает вероятностные процессы и события. В этом случае анализируется ряд реализаций случайного процесса и оцениваются средние характеристики, т.е. набор однородных реализаций. Статическое моделирование служит для описания поведения объекта в какой либо момент времени, а динамическое моделирование отражает поведение объекта во времени. Дискретное моделирование служит для описания процессов, которые предполагаются дискретными, соответственно непрерывное моделирование позволяет отразить непрерывные процессы в системах, а дискретно непрерывное моделирование используется для случаев, когда хотят выделить наличие как дискретных, так и непрерывных процессов. При наглядном моделировании на базе представлений человека о реальных объектах создаются различные наглядные модели, отображающие явления и процессы, протекающие в объекте. В основу гипотетического моделирования исследователем закладывается некоторая гипотеза о закономерностях протекания процесса в реальном объекте, которая отражает уровень знаний исследователя об объекте и базируется на причинно-следственных связях между входом и выходом изучаемого объекта. Гипотетическое моделирование используется, когда знаний об объекте недостаточно для построения формальных моделей. Аналоговое моделирование основывается на применении аналогий различных уровней. Наивысшим уровнем является полная аналогия, имеющая место только для достаточно простых объектов. С усложнением объекта используют аналогии последующих уровней, когда аналоговая модель отображает несколько либо только одну сторону функционирования объекта. Символическое моделирование представляет собой искусственный процесс создания логического объекта, который замещает реальный и выражает основные свойства его отношений с помощью определенной системы знаков или символов. Математическое моделирование. Для исследования характеристик процесса функционирования любой системы математическими методами, включая и машинные, должна быть проведена формализация этого процесса, т.е. построена математическая модель.

2 Проектирование




2.1 Концептуальная модель


Графически отобразить данную модель можно с помощь ГСА. Здесь прямоугольниками являются объекты модели, ромбами – проверка условий и стрелками обозначены связи между объектами.


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

3 Реализация модели в GPSS




3.1 Описание GPSS


GPSS (англ. General Purpose Simulation System — система моделирования общего назначения)  — язык моделирования, используемый для имитационного моделирования различных систем, в основном систем массового обслуживания. Система GPSS была разработана сотрудником фирмы IBM Джефри Гордоном в 1961 году. Гордоном были созданы 5 первых версий языка: GPSS (1961), GPSS II (1963), GPSS III (1965), GPSS/360 (1967) и GPSS V (1971). Известный ранее только специалистам, в нашей стране этот программный пакет завоевал популярность после издания в СССР в 1980 году монографии Т Дж. Шрайбера. В ней была рассмотрена одна из ранних версий языка — GPSS/360, а также основные особенности более мощной версии — GPSS V, поддерживаемой компанией IBM, у нас она была более известна как пакет моделирования дискретных систем (ПМДС). Этот пакет работал в среде подсистемы диалоговой обработки системы виртуальных машин единой серии (ПДО СВМ ЕС) ЭВМ. После окончания поддержки GPSS V компанией IBM следующей версией стала система GPSS/H компании Wolverine Software разработанная в 1978 году под руководством Дж. Хенриксена. В 1984 году появилась первая версия GPSS для персональных компьютеров с операционной системой DOS — GPSS/PC. Она была разработана компанией Minuteman Software под руководством С. Кокса. Конец XX века ознаменовался разработкой компанией Minuteman Software программного продукта GPSS World, увидевшей свет в 1993 году. За сравнительно небольшой период времени было выпущено несколько его версий, причем в каждой последующей возможности системы моделирования наращивались. Помимо этих основных версий существует также Micro-GPSS, разработанная Ингольфом Сталлом в Швеции, — это упрощенная версия, предназначенная для изучения языка GPSS, и WebGPSS, также предназначенная для изучения работы системы и разработки простейших имитационных моделей в сети интернет.

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


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

– GENERATE – блок, генерирующий транзакты;

  • ADVANCE – блок, имитирующий задержу транзакта в системе;

  • TEST – условие, аналогичное условию if-else;

  • TRANSFER ­– блок перехода транзактов;

  • QUEUE/DEPART – блоки позволяющие регистрировать транзакты в очереди и удалять их оттуда;

  • SEIZE/RELEASE –блоки создания МКУ, для занятия МКУ и его освобождения соответственно;

  • SAVEVALUE/INITIAL – блоки для работы с переменными, их инициализацией и сохранением в памяти;

  • MARK – ставит отметку времени или записывает значение таймера. 

  • TERMINATE – блок уменьшенья счетчика завершений, необходим для вывода транзактов из модели.

3.3 Блок-схема в терминах GPSS


Для более ясного понимания того, как реализовать модель в данной среде разработке существует блок-схема в терминах GPSS. Для реализации заданной модели блок-схема представлена на рисунке



Рисунок 2 – Блок-схема в терминах GPSS


3.4 Таблица определений


В данной модели существуют объекты, которые необходимо определить. Определения представлены в таблице 2.

Таблица 2 – Таблица определений разрабатываемой модели

Элементы GPSS

Интерпретация

Транзакты

Заявки

Устройства:

DM

SNEG




Дед Мороз

Снегурочка

Очереди:

QDM

QSNEG

QMS




Очередь к Деду Морозу

Очередь к Снегурочке

Очередь к Дед Морозу и Снегурочке



3.5 Листинг программы


Код программы моделирующий заданный объект представлен ниже

DM STORAGE 6 ;количество ДМ

SNEG STORAGE 5 ;количество С

INITIAL X$SUM,0 ;переменные для подсчета заработка

INITIAL X$SUM1,0

INITIAL X$SUM2,0

INITIAL X$SUM3,0

WAGE VARIABLE 11#350 ;зарплата актерам

TOTAL FUNCTION RN1,D3 ;функция, для получения распред по процентам

.4,u_DM/.9,u_SNEG/1,u_DMSNEG
WISHES FUNCTION RN1,C2 ;функция для желаний клиентов

0,180/1,220
GENERATE (Exponential(1,0,20) + Exponential(1,0,20) + Exponential(1,0,20)) ;распред Эрланга
TRANSFER ,FN$TOTAL ;распределение по заказам как результат функции
u_DM QUEUE QDM ;метка для перехода заказа только ДМ +очередь

MARK 1 ;отметка времени

ENTER DM ;занимаем одного ДМ

DEPART QDM

ADVANCE 65,20 ;работает

LEAVE DM ;отработал

TEST L MP1,FN$WISHES,SKIDKA1 ;учет затрач.времени ,если<180, то полная оплата, иначе скидка

SAVEVALUE SUM1+,1 ;добавляем один 100% оплаченный заказ (см. верхнее условие)

TERMINATE 0
u_SNEG QUEUE QSNEG ;аналогично

MARK 2

ENTER SNEG

DEPART QSNEG

ADVANCE 48,12

LEAVE SNEG

TEST L MP2,FN$WISHES,SKIDKA2

SAVEVALUE SUM2+,1

TERMINATE 0
u_DMSNEG QUEUE QMS ;аналогично

MARK 3

ENTER DM

ENTER SNEG

DEPART QMS

ADVANCE 100,14

LEAVE DM

LEAVE SNEG

TEST L MP3,FN$WISHES,SKIDKA3

SAVEVALUE SUM3+,1

TERMINATE 0
SKIDKA1 SAVEVALUE SUM1+,0.8 ;оформление скидки (см. условие выше)

TERMINATE 0

SKIDKA2 SAVEVALUE SUM2+,0.8

TERMINATE 0

SKIDKA3 SAVEVALUE SUM3+,0.8

TERMINATE 0
GENERATE 43200 ;модельное время (месяц в минутах)

SAVESUM VARIABLE (X$SUM1#45) + (X$SUM2#35) + (X$SUM3#100) ;суммарный доход

SAVEVALUE SUM,((V$WAGE+14000)/V$SAVESUM) ;формула по заданию

TERMINATE 1

START 1

3.6 Результаты моделирования в GPSS


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

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 43200.000 40 0 2

NAME VALUE

DM 10000.000

QDM 10010.000

QMS 10011.000

QSNEG 10012.000

SAVESUM 10009.000

SKIDKA1 32.000

SKIDKA2 34.000

SKIDKA3 36.000

SNEG 10001.000

SUM 10002.000

SUM1 10003.000

SUM2 10004.000

SUM3 10005.000

TOTAL 10007.000

U_DM 3.000

U_DMSNEG 21.000

U_SNEG 12.000

WAGE 10006.000

WISHES 10008.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 685 0 0

2 TRANSFER 685 0 0

U_DM 3 QUEUE 302 0 0

4 MARK 302 0 0

5 ENTER 302 0 0

6 DEPART 302 0 0

7 ADVANCE 302 1 0

8 LEAVE 301 0 0

9 TEST 301 0 0

10 SAVEVALUE 301 0 0

11 TERMINATE 301 0 0

U_SNEG 12 QUEUE 310 0 0

13 MARK 310 0 0

14 ENTER 310 0 0

15 DEPART 310 0 0

16 ADVANCE 310 1 0

17 LEAVE 309 0 0

18 TEST 309 0 0

19 SAVEVALUE 309 0 0

20 TERMINATE 309 0 0

U_DMSNEG 21 QUEUE 73 0 0

22 MARK 73 0 0

23 ENTER 73 0 0

24 ENTER 73 0 0

25 DEPART 73 0 0

26 ADVANCE 73 0 0

27 LEAVE 73 0 0

28 LEAVE 73 0 0

29 TEST 73 0 0

30 SAVEVALUE 73 0 0

31 TERMINATE 73 0 0

SKIDKA1 32 SAVEVALUE 0 0 0

33 TERMINATE 0 0 0

SKIDKA2 34 SAVEVALUE 0 0 0

35 TERMINATE 0 0 0

SKIDKA3 36 SAVEVALUE 0 0 0

37 TERMINATE 0 0 0

38 GENERATE 1 0 0

39 SAVEVALUE 1 0 0

40 TERMINATE 1 0 0

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

QDM 1 0 302 302 0.000 0.000 0.000 0

QMS 1 0 73 73 0.000 0.000 0.000 0

QSNEG 1 0 310 310 0.000 0.000 0.000 0

STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

DM 6 5 0 5 375 1 0.621 0.104 0 0

SNEG 5 4 0 4 383 1 0.511 0.102 0 0

SAVEVALUE RETRY VALUE

SUM 0 0.564

SUM1 0 301.000

SUM2 0 309.000

SUM3 0 73.000

FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

685 0 43238.004 685 7 8 1 43176.591

686 0 43251.886 686 16 17 2 43195.213

687 0 43313.429 687 0 1

688 0 86400.000 688 0 38

Интерпретируя отчет, можно понять, что некоторые актеры являются лишними и система реализует себя не полностью. Для улучшения ситуации в работе фирмы существует 2 метода: уменьшение количества актеров и уменьшение стоимости.

Результат 1 метода: n=5, m=4
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

QDM 1 0 302 302 0.000 0.000 0.000 0

QMS 1 0 73 73 0.000 0.000 0.000 0

QSNEG 1 0 310 310 0.000 0.000 0.000 0

STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

DM 5 4 0 5 375 1 0.621 0.124 0 0

SNEG 4 3 0 4 383 1 0.511 0.128 0 0

SAVEVALUE RETRY VALUE

SUM 0 0.542

SUM1 0 301.000

SUM2 0 309.000

SUM3 0 73.000

Результат 2 метода: S1=43, S2=33, S3=97
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

QDM 1 0 302 302 0.000 0.000 0.000 0

QMS 1 0 73 73 0.000 0.000 0.000 0

QSNEG 1 0 310 310 0.000 0.000 0.000 0

STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

DM 6 5 0 5 375 1 0.621 0.104 0 0

SNEG 5 4 0 4 383 1 0.511 0.102 0 0

SAVEVALUE RETRY VALUE

SUM 0 0.589

SUM1 0 301.000

SUM2 0 309.000

SUM3 0 73.000
Результат 2 методов вместе:
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

QDM 1 0 303 303 0.000 0.000 0.000 0

QMS 1 0 72 71 0.000 0.034 2.423 0

QSNEG 1 0 310 310 0.000 0.000 0.000 0

STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY

DM 4 4 0 4 375 1 0.619 0.155 0 0

SNEG 3 3 0 3 382 1 0.508 0.169 0 0

SAVEVALUE RETRY VALUE

SUM 0 0.553

SUM1 0 303.000

SUM2 0 310.000

SUM3 0 72.000
Значение оценки периода окупаемости лучше при применении 2 методов вместе. Подставляя разные значения и учитывая все затраты, получается, что наиболее выгодным значением является 0,553.

4 Реализация модели в AnyLogic




4.1 Описание AnyLogic


Пакет AnyLogic - отечественный профессиональный инструмент нового поколения, который предназначен для разработки и исследования имитацион-ных моделей. Разработчик продукта - компания "Экс Джей Текнолоджис" (XJ Technologies), г. Санкт-Петербург.

AnyLogic был разработан на основе новых идей в области информационных технологий, теории параллельных взаимодействующих процессов и теории гибридных систем. Благодаря этим идеям чрезвычайно упрощается построение сложных имитационных моделей, имеется возможность использования одного инструмента при изучении различных стилей моделирования.

Программный инструмент AnyLogic основан на объектно-ориентированной концепции. Другой базовой концепцией является представление модели как набора взаимодействующих, параллельно функционирующих активностей. Активный объект в AnyLogic - это объект со своим собственным функционированием, взаимодействующий с окружением. Он может включать в себя любое количество экземпляров других активных объектов. Графическая среда моделирования поддерживает проектирование, разработку, документирование модели, выполнение компьютерных экспериментов, оптимизацию параметров относительно некоторого критерия.

При разработке модели можно использовать элементы визуальной графики: диаграммы состояний (стейтчарты), сигналы, события (таймеры), порты и т.д.; синхронное и асинхронное планирование событий; библиотеки активных объектов.

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

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


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

– Source. Создает заявки. Обычно используется в качестве начальной точки потока заявок. Заявки могут быть либо базового для заявок класса Entity, либо любого класса пользователя, унаследованного от этого базового класса. Вы можете сконфигурировать объект так, чтобы он создавал заявки других типов, указав конструктор нужного класса в параметре Новая заявка, а также задать действие, которое должно выполняться перед тем, как новая заявка покинет объект, и связать с заявкой определенную фигуру анимации;

– SelectOutput. Объект направляет входящие заявки в один из двух выходных портов в зависимости от выполнения заданного (детерминистического или заданного с помощью вероятностей) условия. Условие может зависеть как от заявки, так и от каких-то внешних факторов. Поступившая заявка покидает объект в тот же момент времени;

– Delay. Задерживает заявки на заданный период времени. Время задержки вычисляется динамически, может быть случайным, зависеть от текущей заявки или от каких-то других условий. Это время может, в частности, вычисляться как длина фигуры, заданной в качестве фигуры анимации этого объекта, поделенной на "скорость" заявки. Одновременно могут быть задержаны сразу несколько заявок (не более заданной вместимости объекта capacity);

– Sink. Уничтожает поступившие заявки. Обычно используется в качестве конечной точки потока заявок. Для того, чтобы заявки удалялись из модели и уничтожались, нужно соединить выходной порт последнего блока процессной диаграммы с портом объекта Sink или Exit.;

– Queue. Моделирует очередь заявок, ожидающих приема объектами, следующими за данным в потоковой диаграмме, или же хранилище заявок общего назначения.

– Hold. Блокирует/снимает блокировку с потока агентов на определенном участке блок-схемы.

4.3 Реализация модели


В первую очередь, необходимо чтобы в модель поступали заказы поздравлений. Для этого будет использоваться блок source представленный на рисунке 3.



Рисунок 3 – Блок source

Сообщения должны поступать через заданные интервалы времени, распределенные по закону Эрланга третьего порядка со средним временем 20 минут, поэтому внутри блока Source необходимо выставить то, что они прибывают согласно интервалу времени между прибытиями и указать этот интервал, используя функцию erlang (рисунок 4).



Рисунок 4 – Заполнение параметров блока source

Для имитации проведения поздравления, используется блок delay (рисунок 5). Так как это значение задано по условию задачи, то в параметрах указываем время задержки с помощью функции uniform (рисунок 6).



Рисунок 5 – Блок delay


Рисунок 6 – Заполнение параметров блока delay

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



Рисунок 7 – Блок selectOutput

В параметрах указываем вероятность прихода заказа на поздравление (рисунок 8).



Рисунок 8 – Заполнение параметров блока selectOutput

Далее заявки на поздравление проходят в очередь, после чего актеры отправляются на выполнение заказа. По истечении времени выполнения заказа заявка считается выполненной и выводится из системы. Для реализации использовалось 4 блока: queue, hold, delay и sink (рисунок 9). Hold блокирует участок схемы, при нехватке актеров.


Рисунок 9 – Схема имитации поздравлений с входными очередями

После всех этих действий получается готовая модель работы фирмы «Happy New Year», работающая по системе «сегодня на сегодня».


Рисунок 10 – Модель работы фирмы «Happy New Year»

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


Рисунок 11 – Функции и переменные

Для расчета прибыли используем функцию pribil (рисунок 11). На рисунке 12 показан код для подсчета прибыли.


Рисунок 12 – Код функции pribil

Функции pribil рассчитывается как отношение расходов фирмы к доходам.

Для расчета расходов используются три переменные: money, max_SNEG, max_DM. Размер расходов фирмы равен сумме единичных расходов и зарплат актеров.

Money – переменная типа int, в которую записываются заданные по условию задачи одноразовые расходы фирмы.

Зарплата актеров рассчитывается как произведение заработной платы (по условию z = 350 рублей) на количество актеров, которое задается в переменных max_SNEG, max_DM (рисунок 13).



Рисунок 13 – Переменные max_SNEG, max_DM

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

Для расчета количества заказов используем функции: myFunction_DM, myFunction_SNEG, myFunction_DMSNEG. Коды данных функций аналогичны, поэтому подробно рассмотрим код функции myFunction_DM (рисунок 14).



Рисунок 14 – Код функции myFunction_DM

Переменная flag1 показывает количество завершенных заказов. Переменная time1 – время выполнения заказа. Если оно меньше желаемого срока выполнения заказа, то в переменную Otr1 записывается выполненный заказ как 1, иначе 0.8, так как по условию задачи в этом случае фирма предоставляет скидку 20%. Все перечисленные переменные, требуемые для вычисления функции, изображены на рисунке 11.

Переменные SNEG и DM показывают количество актеров.

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



Рисунок 15 – Гистограммы

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



Рисунок 16 – Заполнение гистограммы P

Для трехстолбцовой гистограммы достаточно просто занести в ее параметры переменные Otr1, Otr2 и Otr3 (рисунок 17)



Рисунок 17 – Заполнение гистограммы

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



Рисунок 18 – Заполнение гистограммы

Итоговая модель представлена на рисунке 19.


Рисунок 19 – Модель системы



Рисунок 20 – Модель системы с визуализацией

5 Сравнение результатов моделирования в GPSS и AnyLogic



После моделирования системы в двух разных средах GPSS и AnyLogic, необходимо их сравнить. Результаты моделирования занесены в таблицу 3.

Таблица 3 – Результаты моделирования в GPSS и AnyLogic




GPSS

AnyLogic

Сгенерировано

685

716

Заказы у Деда Мороза

302

278

Заказы у Снегурочки

73

73

Заказы у Деда Мороза и Снегурочки

310

364

Оценка периода окупаемости

0,564

0,360

Оценка периода окупаемости при уменьшении n и m

0,542

0,340

Оценка периода окупаемости при уменьшении S1, S2, S3

0,589

0,370

Оценка периода окупаемости при применении 2 методов

0,553

0,350


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

Используя полученные значения из обеих программ, можно сделать вывод о моделируемой системе. Минимальные значения параметров n и m, при которых время окупаемости фирмы будем минимальным, соответственно равны 5 и 4.

Так же, возможно небольшое снижение цен на услуги, которое не увеличит оценку периода окупаемости, S1=43, S2=33, S3=97.

Заключение



В данной курсовой работе была спроектирована и реализована система обработки информации в двух средах моделирования: GPSS и AnyLogic.

Создана концептуальная модель системы и также модель в терминах GPSS.

Было произведено сравнение результатов моделирования в двух средах: GPSS и AnyLogic. Сделан вывод о том, что их результаты практически не отличаются.

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

Библиографический список





  1. Стандартная справка AnyLogic PLE.

  2. Каталевский, Д.Ю. «Основы имитационного моделирования и системного анализа в управлении» / Д.Ю. Каталевский – М: Дело, 2015. 496 с.

  3. AnyLogic [Электронный ресурс] / Режим доступа: http://www.AnyLogic.ru/

  4. СТП ОмГУПС-1.2-2005. Работы студенческие учебные и выпускные квалификационные: общие требования и правила оформления текстовых документов. – Омский Государственный Университет Путей Сообщения, Омск, 2005. 28с.


написать администратору сайта