Научная статья на тему 'Об адекватности систем имитационного моделирования GPSS World и AnyLogic'

Об адекватности систем имитационного моделирования GPSS World и AnyLogic Текст научной статьи по специальности «Математика»

CC BY
690
113
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Прикладная информатика
ВАК
RSCI
Область наук
Ключевые слова
ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ / МОДЕЛИРОВАНИЕ / MODELING / GPSS / ANYLOGIC / АДЕКВАТНОСТЬ / ADEQUACY / SIMULAION

Аннотация научной статьи по математике, автор научной работы — Боев Василий Дмитриевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

On the adequacy of GPSS and AnyLogic simulation systems

The adequacy issues of the GPSS World and AnyLogic simulation systems are considered on the basis of the application process simulation results. Since AnyLogic unlike GPSS and, in particular, its GPSS World version does not yet has a long practice history model construction techniques in AnyLogic environment are discussed in more detail.

Текст научной работы на тему «Об адекватности систем имитационного моделирования GPSS World и AnyLogic»

№ 4 (34) 2011

В. Д. Боев, докт. воен. наук, профессор Санкт-Петербургской Военной академии связи и Санкт-Петербургского политехнического университета

Об адекватности систем имитационного моделирования GPSS World и AnyLogic

Продолжение. Начало в № 6 (30) 2010 г.

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

Часть 2

4. Постановка задачи на разработку модели функционирования терминала

Общий вид грузового терминала показан на рис. 6.

Территория терминала обозначена A, примыкающая городская территория — В.

1. Автомобиль (транспортное средство), груженный или порожний, попадает в порт

по дороге общего пользования C. В случае отсутствия мест на парковке D терминала дорога становится накопительным буфером (очередь с дисциплиной FIFO).

2. Если имеется свободное место, автомобиль въезжает на парковку, водитель выходит из автомобиля и направляется с документами в офис E. Процедура парковки занимает около двух минут.

3. В офисе водитель дожидается своей очереди на обслуживание у одного из око-

Wsf/

Рис. 6. Общий вид терминала

30

№ 4(34) 2011

шек, где оформляет документы на въезд. Получив документы, он возвращается к своему автомобилю. Оформление документов занимает вместе с переходом в офис и обратно около 10 мин. Одновременно на терминал отправляется заявка на обслуживание данного автомобиля.

4. Если ворота F имеют свободную полосу, автомобиль подъезжает на полосу досмотра. Здесь у него проверяют разрешение на въезд и проводят досмотр контейнера (контроль целостности пломб, наличия повреждений, присутствия в автомобиле посторонних лиц и пр.). Досмотр занимает две минуты.

5. Автомобиль следует на оперативную парковку Н, расположенную рядом с зоной погрузки-разгрузки I. Среднее время движения составляет две минуты. Этот участок дороги внутри терминала может использоваться как накопительный буфер, если нет свободных мест на парковке у зоны погрузки.

6. Автомобиль становится на парковку Н и ждет своей очереди на погрузку (момента выполнения заявки на его обслуживание, отправленной на шаге 3). Среднее время выполнения заявки составляет 10 минут.

Когда службы и оборудование терминала будут готовы к проведению погрузки (заявка на обслуживание автомобиля выполнена) и освободится одна из ячеек для обработки автомобиля в зоне Н, автомобиль подъезжает к свободной ячейке для погрузки. Переезд к ячейке занимает две минуты. Если до приезда автомобиля заявка уже была выполнена и свободная ячейка имеется, автомобиль может прямо подъехать к ячейке, минуя парковку Н6. Среднее время обслуживания автомобиля составляет пять минут.

7. Обслуженный автомобиль по терминальному проезду подъезжает к выездным воротам терминала J. Среднее время движения составляет две минуты.

8. После осмотра автомобиль покидает терминал. Среднее время осмотра две минуты.

Необходимо разработать имитационную J модель и провести моделирование работы cj терминала в течение восьми часов. "*»

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

• количество обработанных автомобилей;

• среднее время обработки одного автомобиля;

• коэффициент обработки автомобилей терминалом;

• показатели использования элементов терминала.

5. Модель функционирования терминала в GPSS World

Автомобили в модели представляются транзактами, элементы терминала (парковка D, офис Е, полосы у ворот F и J, места у зон I и Z) — многоканальными устройствами (МКУ). Присвоим МКУ имена, включив в них обозначения, использованные в постановке задачи и добавив знак подчеркивания, например D_.

Введем масштабирование: одна единица модельного времени будет соответствовать одной минуте реального процесса. Таким образом, для моделирования восьми часов работы терминала потребуется 8 х 60 = 480 единиц модельного времени.

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

Способ описания терминала в модели определяется разработчиком. Выделим следующие сегменты модели:

• ввод исходных данных;

• событийная часть модели;

• задание времени моделирования и вычисление результатов моделирования.

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

Ниже приводится текст программной модели (листинг 1).

-ч ПРИКЛАДНАЯ ИНФОРМАТИКА

№ 4 (34) 2011 ' -

Листинг 1

SS

J3 §

со

I I

SS

О

! ¡5

5

12 о

IS

0 §

е

1

5

е

ü U

U

о

Е

5 *

<и !§

; Модель функционирования терминала

; Многоканальные устройства

D Storage 10 Имитирующее парковку D

E Storage 5 Имитирующее офис Е

F Storage 5 Имитирующее полосы ворот Г

I Storage 7 Имитирующее места у зоны I

ZP Storage 2 Имитирующее места в зоне Z

J Storage 7 Имитирующее ворота J

; Исходные данные

timeA EQU 9 Среднее время приезда транспорта

timeD EQU 2 Среднее время парковки на D

timeE EQU 10 Среднее время оформления документов в офисе Е

timeF EQU 2 Среднее время досмотра на воротах Г

timeFH EQU 2 ;Среднее время движения от F к Н

timeZ EQU 10 ; Среднее время выполнения заказа на обслуживание автомобиля

timel EQU 5 Среднее время обслуживания автомобиля в зоне I

timeIJ EQU 2 Среднее время движения от I к J

timeJ EQU 2 Среднее время досмотра на воротах J

timeMod EQU 480 ;Время моделирования

; Статистические таблицы

C QTABLE C ,1,1,50

E QTABLE E ,1,1,30

ZP QTABLE ZP 1,1,40

TMeanP TABLE M1,40,1,80

; Событийная часть модели

GENERATE

(Exponential(371,0,timeA));Имитация прибытия автотранспорта

KolPrib QUEUE C Занять очередь на парковку D

ENTER D Занять одно место на парковке D

DEPART C Покинуть очередь на парковку

ADVANCE (Exponential(83,0,timeD));Имитация парковки на D

QUEUE E Встать в очередь в офис Е

ENTER E Занять окошко в офисе Е

DEPART E Покинуть очередь в офис Е

ADVANCE (Exponential(113,0,timeE))

;Имитация оформления документов в офисе Е

LEAVE E Покинуть офис Е

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

SPLIT 1,,1 ;Расщепление для отправки заявки

TEST E P1,1,Met1 ;Автотранспорт к воротам F, заявка в Z

QUEUE ZP ;Занять очередь в зону Z

ENTER ZP ;Занять место обслуживания заявки в зоне Z

DEPART ZP ;Покинуть очередь в зону Z

ADVANCE (Exponential(213,0,timeZ));Имитация выполнения заявки в зоне Z

LEAVE ZP ;Освободить место обслуживания заявки в зоне Z

TRANSFER ,Met2

Metí QUEUE F Встать в очередь к воротам Г

ENTER F Занять полосу у ворот Г

DEPART F Покинуть очередь к воротам Г

LEAVE D Освободить место на парковке

ADVANCE (Exponential(183,0,timeF));Имитация досмотра у ворот F

LEAVE F Освободить полосу у ворот F

ADVANCE (Exponential(163,0,timeFH));Имитация движения от F к H

Met2 ASSEMBLE *1 Фиксация — выполнение заявки

ENTER I Занять ячейку I

ADVANCE (Exponential(315,0,timeI));Имитация обслуживания в зоне I

LEAVE I Освободить ячейку I

ADVANCE (Exponential(511,0,timeIJ));Имитация движения от I к J

ENTER J Занять место на воротах J

ADVANCE (Exponential(7 03,0,timeJ));Имитация осмотра на воротах J

№ 4(34) 2011

Окончание листинга 1

LEAVE J ;Освободить место на воротахJ

KolObr SAVEVALUE timeSum+,M1

TABULATE TMeanP

TERMINATE

; Задание времени моделирования и расчет результатов

GENERATE TimeMod

TEST L X$Prog,TG1,Met3

SAVEVALUE Prog,TG1

Met3 TEST E TG1,1,Met4

SAVEVALUE TimeObr,(X$TimeSum/N$KolObr)

; Среднее время обработки транспорта

SAVEVALUE KoefIsp,(N$KolObr/N$KolPrib)

; Коэффициент использования терминала

SAVEVALUE KolObrCar,(N$KolObr/X$Prog)

; Количество обработанных транспортов

Met4 TERMINATE 1

START 10000

6. Модель функционирования терминала в AnyLogic

6.1. Исходные данные и результаты моделирования

Размещение элементов для ввода исходных данных и вывода результатов моделирования показано на рис. 7.

В таблице 7 приведены спецификации элементов модели.

Коэффициенты использования элементов терминала (в нашей модели их будут имитировать элементы delay) автоматически определяются и в AnyLogic. Тем не менее, для удобства их чтения в ходе и по окончании моделирования мы ввели переменные

Таблица 7

Параметр Бегунок

Имя Тип Значение по умолчанию Связать с Минимальное значение Максимальное значение

D_ int 10 D_ 50

E_ int 5 E_ 50

F_ int 5 F_ 50

I_ int 7 I_ 50

ZP_ int 2 ZP_ 50

J_ int 7 J_ 50

timeD double 2 timeD 50

timeE double 10 timeE 50

timeF double 2 timeF 50

timel double 5 timeI 50

timeZ double 10 timeZ 50

timeJ double 2 timeJ 50

timeA double 9 timeA 50

timeFH double 2 timeFH 50

timeIJ double 2 timeIJ 50

Для сравнения: в GPSS World коэффициенты использования элементов терминала, размеры очередей к этим элементам определяются системой автоматически и выводятся в стандартном отчете.

№ 4 (34) 2011

1 Vumhu*1 jira»r* и р^учи^тгмцргп| ipimu -4

0 йТИЁ 0 ow

и ,_ ч_ — _

V- 1.3 OfK] Л Г| ГI

_ __ _ щ_ _

- J J

•J- ij птч-J nnvi:

_ __ Щ m_ _

J J J J J

О О Q ¿«tut; О к «л»J & Ksrfte J

■pt-j О " pcuj. О ft -CLt»J „j -J-iCL'UkJ

О KrKh^.T Q Т гтГтг Qi Кг ч1т- О HI Q TItvIit

с1 ^

is тз

I

OS

S И

s

СО О

! §

§ о

IS

0 §

is

1 §

§ u

u о

£

5

<u §

Рис. 7. Размещение элементов для ввода исходных данных и вывода результатов моделирования

KoefIsp_E, KoefIsp_F, KoefIsp_Z, KoefIsp_I, KoefIsp_J.

Для определения максимальных длин очередей к данным элементам терминала нами также введены переменные очередь_Е, оче-редь_F, очередь_Z, очередь^ очередь_J.

Переменные KoЮbrCar, TimeObr, KoefIsp имеют тот же смысл, что и в GPSS-модели.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Переменная kolJ введена для подсчета количества обработанных автомобилей.

Переменная TimeSum введена для подсчета суммарного времени обработки всех автомобилей. По значениям переменных рассчитывается среднее время обработки TimeObr одного автомобиля.

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

6.2. Событийная часть модели

Элементы событийной части модели показаны на рис. 8.

Для построения использованы следующие 20 элементов библиотеки Enterprise Library (в скобках указано число использованных элементов каждого типа): source (1); queue (8); delay (8); split (1); match (1); sink (1).

Свойства элементов задаются согласно табл. 8 и 9.

поток _трэнспортэ очередй_иа_0_ гирковка_0_ оч«редь_е_офис_Е_ офорт_докум_е_сфи(в.Д.

Р Т

(Тнэ-аНщ^а--

отправкл_ля"ки_н_1_ очер ель_в_з[?ну_2_ в=1 пши_ лявки_в_эон«_2_ фик сация_Е ып= лн_зэ bbkh_e_Z_

04epiflb_ic_K?p(iiBH_F_ поло(ы_у_ворот_Р_ досмотр_y_eppar_F_ лвтк¥Ине_ст_Р_к_Н

-внЩ^-внЩ^-ан^Ь-я-ннЩ^-b-Q)S-

—s-Q-B-^-Щра-а-0-1^

iBrtK_OT_l_K_J_ очес iflt>_"i_bo озтJ_ оеиотр_на_ворет_;_

—анЩ^а-©-0чэ-

Рис. 8. Размещение и связь элементов событийной части модели

34

№ 4(34) 2011

Таблица 8

Свойства элементов событийной части модели

Свойства Значение

Имя поток транспорта

Отображать имя Установите флажок

Класс заявки Car

Заявки прибывают согласно Времени между прибытиями

Время между прибытиями exponential(1/timeA)

Количество заявок,

прибывающих за один раз

Новая заявка new Car()

Действие при выходе entity.id = поток транспорта.^ип^);

entity.vxod = time();

Имя очередь на D

Отображать имя Установить флажок

Класс заявки Car

Максимальная вместимость Установить флажок

Включить сбор статистики Установить флажок

Имя парковка D

Отображать имя Установить флажок

Класс заявки Car

Задержка задается Явно

Время задержки exponential (1/timeD)

Вместимость D

Включить сбор статистики Установить флажок

Имя очередь в офис E

Отображать имя Установить флажок

Класс заявки Car

Вместимость

Действие при подходе к выходу if (очередь E < очередь в офис E . size ())

очередь E = очередь в офис E . size ();

Включить сбор статистики Установить флажок

Имя оформл докум в офисе Е

Отображать имя Установить флажок

Класс заявки Car

Задержка задается Явно

Время задержки exponential (1/timeE)

Вместимость E

Включить сбор статистики Установить флажок

Имя отправка заявки в Z

Отображать имя Установить флажок

Класс заявки Car

Количество копий

Новая заявка(копия) new Car

Действие при выходе копии entity. id = original. id;

entity. vxod = original. vxod;

-ч ПРИКЛАДНАЯ ИНФОРМАТИКА

№ 4 (34) 2011 ' -

Продолжение табл. 8

£

=s тз

I

У

и

SS

СО О

! §

о

IS

0 §

SS

1

5

is

8 и

U

о

S

5 <u

Свойства Значение

Имя Отображать имя Класс заявки Вместимость Действие при подходе к выходу Включить сбор статистики очередь в зону Z Установить флажок Car 100 if (очередь Z < очередь в зону Z . size ()) очередь Z = очередь в зону Z . size (); Установить флажок

Имя Отображать имя Класс заявки Задержка задается Время задержки Вместимость Включить сбор статистики выполн заявки в зоне Z Установить флажок Car Явно exponential (1/timeZ) ZP Установить флажок

Имя Отображать имя Класс заявки Условие соответствия Вместимость 1 Вместимость 2 Действие при выходе 1 Действие при выходе 2 фиксация выполн заявки в Z Установить флажок Car entity1.id == entity2.id 100 100 entity. id = 0; if (очередь I < фиксация выполн заявки в Z . size2 ()) очередь I = фиксация выполн заявки в Z . size2 ();

Имя Отображать имя Класс заявки Максимальная вместимость Включить сбор статистики очередь к воротам F Установить флажок Car Установить флажок Установить флажок

Имя Отображать имя Класс заявки Вместимость Действие при подходе к выходу Включить сбор статистики полосы у ворот F Установить флажок Car if (очередь F < полосы у ворот F . size ()) очередь F = полосы у ворот F . size (); Установить флажок

Имя Отображать имя Класс заявки Задержка задается Время задержки Вместимость досмотр у ворот F Установить флажок Car Явно exponential (1/timeF)

Имя Отображать имя Класс заявки Вместимость Включить сбор статистики queue1 Сбросить флажок Car 100 Установить флажок

Имя Отображать имя Класс заявки Задержка задается Время задержки Вместимость Включить сбор статистики движение отFкН Установить флажок Car Явно exponential (1/timeFH) 10 Установить флажок

№ 4(34) 2011

Окончание табл. 8

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Свойства Значение

Имя обслуж в зоне I

Отображать имя Установить флажок

Класс заявки Car

Задержка задается Явно

Время задержки exponential (1/timeI)

Вместимость

Включить сбор статистики Установить флажок

Имя Queue

Отображать имя Сбросить флажок

Класс заявки Car

Вместимость 100

Включить сбор статистики Установить флажок

Имя движение отIкJ

Отображать имя Установить флажок

Класс заявки Car

Задержка задается Явно

Время задержки exponential (1/timeIJ)

Вместимость 10

Включить сбор статистики Установить флажок

Имя очередь на ворота J

Отображать имя Установить флажок

Класс заявки Car

Вместимость

Действие при подходе if (очередь J < очередь на ворота J . size ())

к выходу очередь J = очередь на ворота J . size ();

Включить сбор статистики Установить флажок

Имя осмотр на ворота J

Отображать имя Установить флажок

Класс заявки Car

Задержка задается Явно

Время задержки exponential (1/timeJ)

Вместимость

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

combine. Однако в нашем случае combine использовать нельзя, так как он не проверяет выполнение у заявок условий, необходимых для их уничтожения. Поэтому могут быть объединены различные заявки. Элемент match проверяет условия объединения, установленные в нашем случае разработчиком модели в дополнительном поле id нестандартного класса заявки Car (entityl .id == entity2.id), а именно условия объединения двух заявок в одну. То есть синхронизация движения заявки как документа и заявки как автомобиля в случае применения элемента combine не обеспечивается.

В таблице 9 указаны свойства элемента sink.

№ 4 (34) 2011

Таблица 9

Имя

Отображать имя Класс заявки Действие при входе

выход J

Установить флажок

Car

if (entity. id! = 0) {

kolJ ++;

KolObrCar = kolJ/10000;

KoefIsp = kolJ/поток транспорта. count (); TimeSum += (time () — entity. vxod); TimeObr = TimeSum / kolJ;

KoefIsp E = оформл докум в офисе E .statsUtilization.mean KoefIsp F = досмотр у ворот F .statsUtilization.mean (); KoefIsp Z = выполн заявки в зоне Z .statsUtilization.mean KoefIsp I = обслуж в зоне I .statsUtilization.mean (); KoefIsp J = досмотр на ворот J .statsUtilization.mean ();}

£ ss

J3 ^

OS

s

I

s 00 О

! §

о

ig

0 §

SS

1 §

is

Is

u

u о

iE

SS

<u §

Остановимся на коде свойства Действие при входе. Заявки с выхода 1 элемента match можно было бы не направлять на данный элемент sink, а добавить еще sink и уничтожать их там. Но для проведения экспериментов применялась ознакомительная версия, которая не позволяет иметь в модели на диаграмме одного класса больше 20 элементов. Не хватило ровно одного элемента, поэтому пришлось поступить именно так, как описано (размещать элементы на разных

диаграммах ради этого считаем нецелесообразным). Для реализации описанного приема на выходе 1 элемента match entity.id = 0, т. е. поле id обнуляется, и все заявки с таким полем игнорируются. Но для подсчета заявок, вошедших в элемент sink, они учитываются. Поэтому пришлось для счета количества обработанных автомобилей ввести переменную kolJ, хотя имеется стандартная функция count (), которая возвращает количество заявок, вошедших в данный элемент.

Таблица 10

Показатели Системы моделирования

GPSS World AnyLogic

KolObrCar 53,31 53,41

TimeObr 35,485 36,109

KoefIsp 1,000 1,000

KoefIsp_E 0,222 0,222

KoefIsp_F 0,044 0,044

KoefIsp_Z 0,556 0,556

KoefIsp_I 0,079 0,080

KoefIsp_J 0,032 0,032

очереди 5 5

очереди 1 1

очереди 21 20

очередь_! 22 22

очередь^ 1 1

Машинное время 25 мин 34 с 25 c

38

№ 4(34) 2011

1Нф ТЯНИИНЯТштаШ

от.щип

limrF-?j

njjisjin

DTJ13J10 0JJ13J10 DifUilD 1lmtl -г. илл JJI и

1WJY1D 1WJY1D am 3Y10

L'/.i I: 11 ■ 1lmcF=i; n.TJ IЗЛ Г1 П!|1ЧН1 П.'.ИЧ.ИИ

лгллл) nTjisjm

11:ПП:.11. 'Лии .1.1. HmtFH-f" ii ■■;= =i-

I1;ns;35 ii mosise 1HDBI3B A!

11 :UB:3H Hun Л. Ilmrl И-Г

НЯ1 иииы A!:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

UU:J>I HmJiliM UU:-11 A Sim. 11 UU:-11 -Hun 35. NmeFH=2:M 11 11 11 11 11

VIEIJ-J IM ISIiSjrmttt. tmiJ-rn: HIIICF - It; ticZ-1D; *

In PtHgiiH-

in III Faprrllinnl Inn tlldtd. dot* it dflllllll.ilIIIIII(JO. in Prngita*

In m on Expfriiiinii hH qndnd Clni it E20...............

те^Я.НТТКГЩНЬ flmcS-il): 1lmr£ - Ht ^rZ-10: Oim|-V

■ In en L>mlm±ril hi! Ended. Clndt M 4UUUU.UUUUDD. In ^ППКИ.

■n In ьп I .............. ended. (Ы Is Li""""."""000.

'ileld - JI. ГI UmeA^ZD: MmeL ~ 14c - iicj^"-1 □: timsl- b:

i* P»l grrt±_

¡11 пи FnpcilniEiil Ini Elided. Cluii In НПЛЛЛ.ЛЛЛЛЛЛ.

1" Г)Щ111.

UN FupciliiiEiil III! EndEd. Clnrk Ie 5РПЛЛЛ.ЛЛЛЛЛЛ. Ч1Е|||-1|.ЙЛНЙЙ8Е^ЕЬПТТТ. ИШЕЛ-Щ; IIMIEF-1Л; Hrwl-i.

CO <U

5

Рис. 9. Отчет с результатами первого эксперимента

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

Результаты экспериментов, проведенных на построенных моделях, приведены в табл. 10.

На каждой модели было выполнено по одному эксперименту. В GPSS-модели базовые числа генераторов случайных чисел устанавливались произвольно, а в AnyLogic-модели было задано число 1876. С моделью GPSS World было выполнено 10000 прогонов, а для модели AnyLogic время моделирования увеличили в 10 000 раз, т. е. соответствующим 4 800 000 минутам реального процесса.

Как видно из табл. 10, результаты моделирования идентичны. Различным оказалось время прогона модели, которое в GPSS World составляет 25 мин 34 с, что примерно в 65 раз больше времени прогона модели в AnyLogic. Различие в количестве обработанных в течение восьми часов автомобилей KolObrCar и среднего времени обработки одного автомобиля TimeObr незначительно. Значения коэффициентов использования элементов терминала и максимальных длин очередей к ним получились одинаковыми.

6.4. Эксперименты

Дальнейшие эксперименты с моделями в GPSS World и AnyLogic были направлены на решение с помощью моделей задач оптимизации. В GPSS World проводился дисперсионный анализ, а в AnyLogic — оптимизация стохастических моделей. В результате полу-

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

Сводка с результатами экспериментов с имитационными моделями функционирования терминала приводится в табл. 11. На рисунке 9 представлен фрагмент отчета

Заключение

На моделях, воспроизводящих процессы различного характера, но формализуемые как процессы систем массового обслуживания, продемонстрирована достаточная адекватность систем имитационного моделирования GPSS World и AnyLogic 6 относительно результатов моделирования. Поскольку система GPSS World (в версии, которая использовалась в экспериментах, равно как и ее предшествующие версии) в отличие от AnyLogic имеет давнюю историю и широко распространена, большее внимание было уделено методике моделирования в AnyLogic.

В задачу автора не входило получить однозначный вывод по поводу того, какая система и в каких случаях предпочтительнее. Читатель вправе принять такое решение самостоятельно, для чего могут оказаться полезными приведенные в статье результаты.

Список литературы

1. Боев В. Д. Об адекватности систем имитационного моделирования GPSS World и AnyLogic. Часть 1 // Прикладная информатика. 2010. № 6.

2. Боев В. Д., Сыпченко Р. П. Компьютерное моделирование. Элементы теории и практики: учеб. пособие. СПб.: ВАС, 2009.

№ 4 (34) 2011

Таблица 11

Показатели, параметры Системы моделирования

GPSS World AnyLogic

Первый эксперимент

TimeObr 31,844 31,799

timeA 20 20

timeE 10 10

timeF 2 2

timel 5 5

timeZ 10 10

timeFH 2 2

TimeObr 31,605 31,799

timeA 20 20

timeE 10 10

timeF 4 2

timeI 5 5

timeZ 10 10

timeFH 4 2

Второй эксперимент

KolObrCar 48,049 48,08

timeA 10 10

timeE 10 10

timeF 2 2

timeI 5 5

timeZ 10 10

timeFH 2 2

KolObrCar 48,30 48,08

timeA 10 10

timeE 15 10

timeF 4 2

timeI 5 5

timeZ 15 10

timeFH 4 2

с1 ^

is

тз §

У £

Ü

SS 00 О

! §

о

ig

0

Ü SS

1 §

is §

u

u о

iE SS Sc <u

3. Боев В. Д., Сыпченко Р. П. Компьютерное моде- 7. лирование: курс лекций. ИНТУИТ, 2010.

4. Боев В. Д., Кирик Д. И, Сыпченко Р. П. Компьютерное моделирование: пособие по курсовому и дипломному проектированию. СПб.: ВАС, 2011.

5. Боев В. Д. Моделирование систем. Инструментальные средства GPSS World: учеб. пособие.

о

СПб.: БХВ-Петербург, 2004.

6. Боев В. Д., Кирик Д. И, Ушкань А. О. Методика поддержки руководства курсовым проектированием по дисциплине «Моделирование» // Третья Всероссийская научно-практическая конференция по имитационному моделированию и его применению в науке и промышленности «Имитационное моделирование. Теория и практика». 9. СПб.: Санкт-Петербург, ЦНИИ ТС, 2007, Т. II.

С. 238 - 241.

Боев В. Д., Ушкань А. О. Методика оценки качества обслуживания сети передачи данных // Четвертая Всероссийская научно-практическая конференция по имитационному моделированию и его применению в науке и промышленности «Имитационное моделирование. Теория и практика». Т. II. СПб.: Санкт-Петербург. ЦТСС, 2009. С. 294 -297. Боев В. Д., Ушкань А. О. Вторичные модели оценки качества обслуживания сети передачи данных // Четвертая Всероссийская научно-практическая конференция по имитационному моделированию и его применению в науке и промышленности «Имитационное моделирование. Теория и практика». Т. II. СПб.: Санкт-Петербург, ЦТСС, 2009. С. 298 - 302.

Карпов Ю. Г. Имитационное моделирование систем. Введение в моделирование с AnyLogic 5. СПб.: БХВ-Петербург, 2005. — 400 с.

40

i Надоели баннеры? Вы всегда можете отключить рекламу.