Имитационное моделирование в системе GPSS

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    110,97 Кб
  • Опубликовано:
    2015-06-09
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Имитационное моделирование в системе GPSS

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

Омский государственный университет путей сообщения (ОмГУПС)

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







Имитационное моделирование в системе GPSS

Пояснительная записка к курсовому проекту

по дисциплине

«Информационные технологии на железнодорожном транспорте»



Студент

Д.Ю. Римский

Руководитель

доцент каф. «АиСУ»

В.А.Спиридонов



Омск 2014

Реферат

Курсовой проект содержит 18 страниц, 2 рисунка, 2 таблицы,

источника.

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

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

При разработке расчетно-пояснительной записки использовались следующие программные пакеты: MS World 2007,GPSS World Student Version 5.2.2.

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

Введение

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

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

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

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

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

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

Агрегаты первого типа поступают на операцию ОП1 проверки параметров агрегатов с длительностью Т1 минут. Агрегаты второго типа поступают на операцию ОП2 проверки параметров с длительностью Т2 минут. Монтирование агрегатов на изделия может начаться только при наличии двух агрегатов первого типа и одного агрегата второго типа и после монтирования предыдущего изделия. Монтирование двух агрегатов первого типа занимает Т3 и Т4 минут, соответственно, монтирование агрегата второго типа занимает Т5 минут. Операции монтирования производятся параллельно. Длительность каждой из операций зависит от числа задействованных на ней рабочих.

Прибыль от реализации каждого смонтированного изделия составляет S1 единиц стоимости. На участке может быть задействовано не более N работников. Заработная плата одного работника составляет S2 единиц стоимости в час.

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

Параметры

Количество работников

Значения параметров

Т1

1

30 +/- 11


2

22+/- 8


3

18 +/-5

Т2

1

20 +/- 10


2

18 +/- 8


3

15 +/- 5

Т3

1

20 +/- 8


2

13 +/- 6


3

8 +/- 3

Т4

1

25 +/-9


2

17 +/- 6


3

12 +/- 4

Т5

1

27 +/- 10


2

18 +/- 7


3

10 +/- 3

N

11

S1

500

S2

50



Теоретические сведения

Базовые понятия и определения.

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

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

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

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

Требование (транзакт) - это объект, поступающий в систему и нуждающийся в определенном обслуживании в данной системе. Требование является активным элементом в моделируемой системе. Под требованием можно понимать сообщение, машину, изделие, информацию, пользователя и т.д. Требование в системе GPSSW - это объект с набором определенных признаков, который определяется уникальным номером. Объекты нумеруются последовательно, начиная с номера 1.

Канал обслуживания- устройство, в котором выполняется обслуживание требования. Основным параметром канала обслуживания является время обслуживания, которое, как правило, является случайной величиной.

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

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

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

коэффициенты использования каналов обслуживания;

максимальная и средняя длина очередей в системе;

время нахождения требований в очередях и каналах обслуживания.

Имитационное моделирование- это численный метод определения параметров функционирования самых различных систем по многочисленным реализациям с учетом вероятностного характера протекания процесса.

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

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

Модель в системе GPSSW - это последовательность операторов моделирования. Оператор моделирования может быть или оператором GPSS, или процедурой языка PLUS (Programming Language Under Simulation - Язык программирования для моделирования).

При имитационном моделировании выделяют три представления времени: реальное, модельное (системное) и машинное время.

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

Модельное (системное) время- это время, в котором происходит функционирование моделируемой системы при проведении имитационного моделирования на ЭВМ. В системном времени выполняются следующие действия:

осуществляется переход моделируемой системы из одного состояния в другое;

выполняется синхронизация работы всех компонент имитационной модели;

обеспечивается управление ходом имитационных экспериментов;

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

Машинное время- это время, отражающее затраты времени ЭВМ на проведение имитационного моделирования.

Система моделирования GPSSW основана на переходе требований (транзактов) от блока к блоку (от оператора к оператору) в определенные моменты времени, что называется событием.

Событие - это нечто, меняющее статус связанных с ним состояний системы.

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

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

Основные операторы блоков языка GPSS

Операторы блоков (исполнения).(генерировать, произвести, родить). Этот оператор осуществляет генерирование входного потока заявок, управляет законом распределения временных интервалов между событиями и количеством заявок за все время моделирования.

Формат:< GENERATE [A,B,C,D,E]>, где

А - среднее значение интервала времени;

В - разброс или модификатор среднего значения (по умолчанию - ноль);

С - время появления первого транзакта;- общее число генерируемых транзактов;

Е - уровень приоритета каждого транзакта (по умолчанию - ноль).

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

Формат: <TERMINATE [A]>, где:

А - величина, на которую будет уменьшен счетчик завершений. По умолчанию А=0. Операнд А может принимать любые значения в интервале от 0 до плюс бесконечности. Физический смысл числового значения операнда А заключается в задании веса терминирования.

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

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

Итак, два оператора исполнения GENERATE и TERMINATE являются особыми: в первый не могут входить транзакты, а из второго не могут выходить транзакты! Все остальные рассматриваемые операторы или блоки имеют и вход и выход. (завладеть), RELEASE (освободить). Оператор SEIZE, является парным с оператором RELEASE, использование их по одиночке не допустимо. Имена, записываемые в операнде А пары должны быть идентичны. Оператор служит приглашением ко входу в одно из устройств модели. Транзакт, подойдя к блоку SEIZE, пытается занять устройство, названное в операторе. Если устройство занято, транзакт ожидает освобождения устройства перед этим оператором. Перед оператором SEIZE может находиться любое количество транзактов. При попадании первого транзакта на обслуживание в устройство, происходит переключение, осуществляемое программой, запрещающее вход в устройство до окончания обслуживания.

Формат:< SEIZE А>, где

А - имя (или номер) устройства.

Функция оператора RELEASE - моделировать освобождение устройства. Пройдя обслуживание в операторе ADVANCE, и исполнив, оператор RELEASE, транзакт переключает поименованное в операторе устройство из положения «занято» в положение «свободно» и разрешает вход в ADVANCE, первому из транзактов, ожидающих перед оператором SEIZE .

Формат: <RELEASE А>, где

А - имя (или номер) устройства.(продвижение вперед, успех). Этот оператор моделирует задержку транзакта в устройстве (в терминах теории СМО - обработку заявки).

Формат:< ADVANCE A,[B]>, где

А - среднее время задержки,

В - разброс относительно среднего значения (модификатор).

На месте операнда А, как и в операторе GENERATE, может быть задана любая встроенная функция, тогда операнд В отсутствует.

Три описанных выше оператора составляют модель простейшей СМО на языке GPSS. Программа, в которой имеется такая последовательность операторов, будет отслеживать все статистические характеристики устройства.( войти), LEAVE (отпустить). Эта пара операторов выполняет те же функции, что и SEIZE и RELEASE, но не для устройств, а для STORAGE - «хранилищ», то есть для ресурсов, к которым может обращаться более одного транзакта. Такие объекты могут быть полезны при моделировании, например, распараллеленного процесса: обработки потока деталей на нескольких одинаковых станках, выхода публики из театра через несколько дверей и т.д. Эти «хранилища», или устройства параллельной обработки, должны быть предварительно описаны в программе при помощи оператора описания STORAGE (см. ниже). По логике своей работы связки операторов SEIZE - ADVANCE - RELEASE; ENTER- ADVANCE- LEAVE; абсолютно одинаковы, но употребляются для разных объектов.( образовать очередь), DEPART (выйти из очереди). Помимо устройств, в которых происходит обработка заявок (задержка транзактов), необходимо собирать сведения о таких объектах, как очереди, образующиеся на входах устройств. В языке GPSS/H по умолчанию очередь образуется и функционирует нормально, но никаких сведений о ней не аккумулируется. Для организации сбора таких данных используется пара связанных операторов: QUEUE, который отмечает постановку заявки-транзакта в «хвост» очереди (в терминах модели это называется «конец очереди»), и DEPART, собирающий статистику об уходе транзактов из очереди при освобождении устройства. Эти два оператора ставятся по желанию пользователя, не влияют на основные статистические результаты листинга и могут быть поставлены для получения интересующей пользователя информации с любого объекта модели, где может происходить образование и накопление очереди. Они не препятствуют входу транзактов и имеют нулевое время входа. Последовательность постановки операторов:

Формат:< QUEUE А,[B]>, где

А - имя очереди (имена такого рода используются не только для удобства идентификации в процессе работы с моделью, но и для указания необходимых сведений при работе в оболочке);

В - число добавляемых в очередь элементов.

Строго говоря, оператор QUEUE увеличивает текущее содержимое очереди, определенной в поле А, на величину, указанную в поле В.

При прохождении оператора DEPART транзакт покидает указанную очередь, причем счетчик длины очереди уменьшается.

Формат: <DEPART A,[B]>, где

А - имя очереди,

В - число удаляемых из очереди элементов.(передать). Этот оператор предназначен для движением транзактов по модели; он применяется в тех случаях, когда необходимо нарушить обычный порядок движения - по прямой, с последовательным прохождением блоков.

Формат: <TRANSFER [A],B,[C]>, где

А - вероятность перехода на метку блока, записанного в поле С;

В и С - метки блоков, между которыми предстоит выбирать.

Существуют 4 следующие основные варианты применения ОБ:

. Безусловный переход:

< TRANSFER , B >

А - по умолчанию 0, заменяется обязательной запятой

В - не имеет значения по умолчанию, характеризует имя (адрес) блока, к которому направляется транзакт.

. Условный переход с одним альтернативным адресом (режим "BOTH"):

< TRANSFER BOTH, B, C >

А - не имеет значения по умолчанию, операнд заменяется словом BOTH, указывающим тип режима;

В - по умолчанию обозначает, что Х акт следует в первый последовательный блок, при именовании операнда В характеризует имя (адрес) блока, к которому направляется транзакт(основной адрес);

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

. Условный переход со многими альтернативами (режим "ALL"):

<TRANSFER ALL, B, C, D >

А - не имеет значения по умолчанию, операнд заменяется словом ALL, указывающим тип режима;

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

С - не имеет значения по умолчанию, определяет последний адрес;- не имеет значения по умолчанию, представляет собой константу М, используемую для вычисления возмож­ных адресов движения транзактов: адрес в поле В, затем - В+М, В+2М, ..., адрес в поле С.

. Статистический переход (переход с заданной вероятно­стью):

<TRANSFER А, В, С >

А - не имеет значения по умолчанию, характеризует вероятность перехода транзакта по адресу С или часть времени используемую ОБ С;

В - по умолчанию является следующим последовательным ОБ, при именовании представляет собой альтернативный адрес.(проверить). Этот ОБ определяет направление движения транзакта в зависимости от выполнения условия, заданного алгебраическим соотношением. Оператор имеет расширенное поле операции, включающее общепринятые обозначения логических операций: L(меньше), LE(меньше или равно), E (равно ), NE (не равно ), G ( больше ), GE ( больше или равно).

Формат записи имеет вид :

< TEST XX A, B, C >- дополнительный код логической операции (L, LE, E, NE, G, GE.);

А - не имеет значения по умолчанию, представляет собой выражение, левая часть которого сравнивается с требуемой операцией, если сравнение истинно, то Х акт продвигается в следующий последовательный ОБ.

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

С - не имеет значения по умолчанию и представляет собой имя или номер ОБ к которому направляется Х акт, если результат сравнения ложный ( альтернативный адрес).

Рассмотрим примеры использования ОБ:

. ТESТ LE Q1,10

2. ТЕST NE S1,PF2

. TEST GE PF1,PF2,CPU

В первом примере транзакт задерживается, если длина очереди 1 больше 10;

Во втором примере транзакт задерживается, если текущее содержимое памяти 1 равно значению 2-го параметра транзакта форматом "слово";

В третьем примере транзакт переходит к следующему блоку, если PF1 PF2, либо, в противном случае, направляется к блоку СPU.(задать). Формат ОБ ASSIGN имеет вид:

 < ASSIGN A,B,C,D >

A - не имеет значения по умолчанию , определяет имя или номер параметра, которому назначается значение. Если последний символ в операнде А + или -, то параметр уменьшается или увеличивается на значение, определяемое операндом В.

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

С - не имеет значения по умолчанию, определяет имя или номер оцениваемой функции, значение операнда В умножается на значение функции, предварительно определивзнак функции.- не имеет значения по умолчанию, определяет формат параметра PF(fullword), PH(halfword), PB(byte), PL(floating point) (по умолчанию PH ). Если функция отсутствует ( операнд С), то формат параметра сдвигается влево на место операнда С. .В процессе моделирования иногда приходится менять как дисциплину обслуживания, так и приоритет транзакта. Для этой цели используется ОБ PRIORITY, формат ОБ имеет вид :

< PRIORITY A >,- не имеет значения по умолчанию, определяет новое значение приоритета для Х акт. Транзакты удаляются при этом из СТС и возвращается обратно с новым приоритетом, становясь последним в список данного приоритета. (создать таблицу).

Этот ОБ используется для сбора дополнительной информации, которая не выводится в стандартном отчёте. Формат ОБ имеет вид:

< TABULATE A,[B] >- не имеет значения по умолчанию, определяет имя или номер таблицы, в которую вносятся желаемые наблюдения, описание таблицы даётся в модуле описания с помощью ОУ TABLE .

В - по умолчанию равен 1, является не обязательным и служит в качестве весового коэффициента при создании взвешенных таблиц.(проверить логику), GATE (запирать). Эта комбинация ОБ LOGIC (проверить логику) - GATE (запирать) и ОУ INITIAL может находиться в одном из двух состояний « включено выключено» и служит для сигнализации о состоянии модели уемой системы по отношению к сложившимся условиям. По терминологии GPSS/H логический переключатель может быть в установочном состоянии (set) - код состояния LS, либо свободен (clear)- код состояния LC. задаёт начальное состояние или изменение состояния логического переключателя, а также сохраняемых величин ( Savevalue ) и матричных величин ( Matrix Savevalue ), его формат имеет вид:

< INITIAL А(n)/ A(n)/…>,

А - не имеет значения по умолчанию и обозначает один из кодов состояния LS, LС, содержимое скобок указывает на имя инициализируемого устройства, слэш “/” символизирует возможный набор устройств.изменяет состояние логического переключателя. Кроме кода действия, ОБ имеет дополнительные коды: S- установлен, C- свободен или переустановлен -R (reset ) и инвертирован - I, т.е. изменил состояние на противоположное, ОБ имеет формат:

< LOGIC X A > ,- дополнительный код S ,C( R ), Iне имеет значения по умолчанию и обозначает имя или номер логического переключателя, устанавливаемого в одно из состояний, задаваемых дополнительным кодом. Используемый в этой цепочке ОБ GATE, препятствует входу следующего транзакта, если определяемые условия ложны, что делается с помощью дополнительных кодов ОБ, отличающихся от условий применения ОБ GATE. В начале рассмотрим его использование в общем виде, формат ОБ GATE в этом случае имеет вид:

< GATE XXX A[,B ] >,- дополнительный код.

Для логического переключателя это LS и LC.

Для устройств: I- прервано, NI не прервано, U - захвачено или прервано, NU -ни захвачено и ни прервано, FV- доступно, FNV - не доступно, FS готово к захвату, FNS - не готово к захвату.

Для памятей:- пуста, SNE - не пуста, SF- полна,SNF- не полна, SV-доступна, SNV - не доступна.

Для транзактов, имеющих одинаковые характеристики (групп, ансамблей):является членом группы, NM - не является членом группы.

А не имеет значения по умолчанию ни для одного объекта, представляет собой имя или номер логических переключателей, устройств, памятей или ОБ, проверяющих наличие транзактов, отвечающих заданным условиям. К числу таких ОБ относятся ASSEMBLE ,GATHER , MATCH .

В - при умолчании 0, в режиме перехода относится ко всем формам ОБ и указывает на имя или номер дополнительного , не последовательного блока к которому направится Х акт при ложности дополнительного кода , т.е указывает альтернативный адрес. - моделирование одновременного начала нескольких процессов (расщепить), имеющем следующий формат: имя SPLITA,B,C. В поле A задается число создаваемых копий исходного транзакта (родителя), входящего в блок SPLIT. После выхода из блока SPLIT транзакт-родитель направляется в следующий блок, а все транзакты-потомки поступают в блок, указанный в поле B. Если поле B пусто, то все копии поступают в следующий блок.

Блок PREEMPT. Имеет следующий формат: имя PREEMPT A,B,C,D,E. В поле A указывается имя или номер устройства, подлежащего захвату. В поле B кодируется условие захвата. Если это поле пусто, то захват возникает, если обслуживаемый транзакт сам не является захватчиком. Если же в поле B записан операнд PR, то захват возникает, если приоритет транзакта-захватчика выше, чем приоритет обслуживаемого транзакта. Поля C, D и E определяют поведение транзактов, обслуживание которых было прервано. Поле C указывает имя блока, в который будет направлен прерванный транзакт. В поле D может быть указан номер или имя параметра прерванного транзакта, в который записывается время, оставшееся этому транзакту до завершения обслуживания на устройстве. При отсутствии операнда в поле E прерванный транзакт сохраняет право на автоматическое восстановление на устройстве по окончании захвата. Если же в поле E указан операнд RE, то транзакт теряет такое право.

Блок RETURN. Имеет единственный операнд A, содержащий имя или номер устройства, подлежащего освобождению от захвата. Блоки PREEMPT и RETURN могут быть использованы для моделирования СМО с абсолютными приоритетами. В простейших случаях, при одном уровне захвата, в блоке PREEMPT используется единственный операнд A. При этом прерванный транзакт переводится симулятором из списка будущих событий в так называемый список прерываний устройства, а по окончании захвата устройства возвращается в список будущих событий с предварительно вычисленным временем занятия устройства для продолжения обслуживания.

Существует еще множество операторов блоков, такие как: операторы управления, операторы описания, переменные и другие.

Формализация модели и написание программы

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

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

Рисунок 1 - Структурная схема процесса моделирования

Для реализации программы в GPSS World необходимо составить схему моделирующего алгоритма. Данная схема представлена на рисунке 2.

Рисунок 2 - Схема моделирующего алгоритма

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

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

Элементы GPSS

Характеристика

Одна условная единица времени

1 мин

Транзакты: первый сегмент второй сегмент

 агрегаты таймер

Многоканальное устройство: Mont0 Mont1 Mont2

 Монтаж агрегатов 1-го типа Монтаж агрегатов 1-го типа Монтаж агрегатов 2-го типа


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

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

Данная программа составлена для варианта с общим количеством работников равным пяти.

GENERATE,,,1SPLIT1,MET2,MET1SPLIT1,MET3,11,MET4,MET5SEIZEMONT0,8,KOROBSEIZEMONT1,9,KOROB,SBORADVANCE20,10,10

2.4 Результаты выполнения программы

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

Sunday, May 18, 2014 17:25:17 TIME END TIME BLOCKS FACILITIES STORAGES

.000 2400.000 32 3 0VALUE 8.00024.00016.00011.00028.00021.00020.0002.0005.00023.00010.00015.00010000.00010001.00010002.00029.000LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

GENERATE 1 0 02 SPLIT 241 0 0

ADVANCE 241 1 0

TRANSFER 240 0 05 SPLIT 240 0 0

ADVANCE 240 2 0

GATHER 238 0 08 MATCH 238 0 0

TRANSFER 238 64 010 SEIZE 87 0 011 MATCH 87 0 0

ADVANCE 87 1 0

RELEASE 86 0 0

TRANSFER 86 0 015 SEIZE 87 0 016 MATCH 87 0 0

ADVANCE 87 1 0

RELEASE 86 0 0

TRANSFER 86 0 020 ASSEMBLE 172 0 021 MATCH 86 1 0

TRANSFER 85 0 023 ADVANCE 240 1 024 MATCH 239 153 0

SEIZE 86 0 0

ADVANCE 86 1 0

RELEASE 85 0 028 MATCH 85 0 029 ASSEMBLE 170 0 0

TERMINATE 85 0 0

GENERATE 1 0 0

TERMINATE 1 0 0ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY87 0.980 27.030 1 347 0 0 64 087 0.980 27.030 1 349 0 0 64 086 0.980 27.344 1 174 0 0 0 152XN PRI M1 ASSEM CURRENT NEXT PARAMETER VALUE

0 0.000 1 0 5XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

174 0 2400.561 1 26 27

0 2410.000 1 3 4

0 2411.774 1 12 13

0 2413.351 1 23 24

0 2415.481 1 6 7

0 2420.428 1 17 18

0 2426.024 1 6 7

0 4800.000 484 0 31

Из этого отчета становится понятно что за 40-часовую рабочую неделю пятью работниками было изготовлено 85 агрегатов.

Определение максимальной экономической эффективности аэропорта

Таблица 2 - Расчёт прибыли и расходов аэропорта в зависимости от количества полос

Номер модели

Общее количество работников

Количество работников задействованных на каждом из участков

Количество изготовленных агрегатов

Прибыль полученная с изготовленных агрегатов

Зарплата работников

Экономическая эффективность

1

5

1

85

42500

10000

32500



1







1







1







1





2

6

1

85

42500

12000

30500



1







2







1







1





3

6

2

88

44000

12000

32000



1







1







1







1





4

6

1

90

45000

12000

33000



1







1







1







2





5

6

1

87

43500

12000

31500



1







1







1







1





6

7

2

88

44000

14000

30000



2







1







1







1





7

7

1

112

56000

14000

42000



1







1







2







2





8

7

2

91

45500

14000

31500



1







1







1







2





9

8

2

114

57000

16000

41000



1







2







2





10

8

1

117

58500

16000

42500



1







2







2







2





11

8

2

91

45500

16000

29500



2







1







1







2





12

9

2

88

44000

18000

26000



2







2







2







1





13

9

2

96

48000

18000

30000



2







2







1







2





14

9

2

112

56000

18000

38000



2







1







2







2





15

9

1

133

66500

18000

48500



2







2







2







2





16

9

2

132

66000

18000

48000



1







2







2







2





17

10

2

132

66000

20000

46000



2







2







2







2





18

10

3

134

67000

20000

47000



1







1







2







3





19

10

3

111

55500

20000

35500



3







1







2







2





20

11

3

134

67000

22000

45000



2







2







2







2





21

11

2

135

67500

22000

45500



2







2







2







3





22

11

2

132

66000

22000

44000



3







2







2







2






Рисунок 1- Экономическая эффективность

Из таблицы 2, а также на рисунке 1, видно, что максимальная экономическая эффективность достигается в моделе номер 15.

Заключение

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

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

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

имитационное моделирование массовый обслуживание

Томашевский В.Н. Имитационное моделирование в среде GPSS/ В.Н.Томашевский, Е.Г.Жданова. М.:Бестселлер,2003,416с.

Варжапетян А.Г. Исследование систем управления методами имитационного моделирования/ Санкт-Петербург, 2004г

Похожие работы на - Имитационное моделирование в системе GPSS

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!