В.В. Зиновьев, А.Н. Стародубов 





Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

В.В. Зиновьев, А.Н. Стародубов



В.В. Зиновьев, А.Н. Стародубов

Моделирование систем

При помощи Компьютерной

Имитации и анимации

 

Учебное пособие

 

 

 

Кемерово 2008

УДК 519.876.5

 

Рецензенты:

 

Зиновьев В.В., Стародубов А.Н. Моделирование систем при помощи компьютерной имитации и анимации: Учеб. пособие / Кузбас. гос. техн. ун-т. - Кемерово, 2008. - с.

ISBN

 

 

Приводятся основные понятия, необходимые для моделирования производственных процессов в дискретных технологических системах методами компьютерной имитации и анимации, с использованием пакетов лицензионного программного обеспечения GPSS/H и Proof Animation (ф. Wolverine Soft. Corp.). Приведены примеры компьютерной имитации и анимации, позволяющие лучше усвоить особенности языков. В приложениях даны листинги программ примеров и файлов отчета с результатами моделирования.

Учебное пособие предназначено для студентов специальности 220301 «Автоматизация технологических процессов (в машиностроении)».

Печатается по решению редакционно-издательского совета ГУ "Кузбасский государственный технический университет".

 

 

УДК 519.876.5

ÓГУ "Кузбасский

государственный

технический

университет", 2008

 

 

ISBN ãВ.В. Зиновьев, 2008


Оглавление

  ВВЕДЕНИЕ………………………………..………………...….. 1. Классификация моделей……………………...….... 2. Системы массового обслуживания…………... 2.1. Классификация систем массового обслуживания……….. 3. Техническое и программное обеспечение…. 4. моделирование на специализированном языке GPSS/H……………………………...…………………. 4.1. Общие сведения………………………………………….… 4.2. Моделирование начала техпроцесса………………….….. 4.3. Моделирование завершения техпроцесса………….…….. 4.4. Моделирование технологических операций……………... 4.5. Моделирование технологического оборудования…….… 4.6. Моделирование группы технологического оборудования 4.7. Сбор статистики о накопителях…….…………………….. 4.8. Моделирование случайных событий……….…………….. 4.8.1. Определение дискретной функции…….……………….. 4.8.2. Определение непрерывной функции………….………... 4.8.3. Определение функций по заданному закону распределения………………………………………………...…………... 4.9. Пример имитационного моделирования…….…………… 4.9.1. Метод построения модели………….…………………… 4.9.2. Подготовка модели к запуску…………………………... 4.9.3. Запуск модели и получение результатов………………. 4.10. Моделирование при установившемся режиме…….…… 4.11. Изменение последовательности псевдослучайных чисел…………………………………………………………….. 4.12. Проведение нескольких экспериментов за один прогон модели…………………………………………………………… 4.13. Моделирование непоследовательных операций…..…… 4.14. Стандартные числовые атрибуты…….……………….… 4.14.1. Атрибуты транзактов……………….………………….. 4.15. Проверка числовых выражений……….………………… 4.16. Присвоение числовых значений параметрам транзакта.. 4.17. Изменение приоритета транзакта…………………….…. 4.18. Пример компьютерной имитации………….………….…   5. Компьютерная анимация технологических процессов…………………………………………………… 5.1. Введение в язык компьютерной анимации Proof Animation…………………………….…………...…………...… 5.2. Построение статических и динамических объектов в Proof Animation………...……………………………………….. 5.3. Создание классов в Proof Animation……………..……….. 5.4. Движение в Proof Animation………….…………………… 5.4.1. Комплект инструментальных средств создания и редактирования сегментов…………………………………….. 5.5. Файл трассировки……………….…………………….…… 5.6. Пример анимационного моделирования………….……… 6. связь анимации с имитационной моделью.. 6.1. Генерирование файла трассировки (.atf) имитационной моделью…………………………………………………………. 6.2. Переменные в GPSS/H-моделях………….…………….…. 6.3. Чтение данных из внешнего файла……….………………. 6.4. Пример связи анимации с имитационной моделью.…….. 7. Этапы создания модели компьютерной имитации и анимации…..…..………………………… 8. Пример создания модели компьютерной имитации и анимации………..……………………….. Литература……….…………………………………….…… Приложения……...…………………………...…………….. Стр.                        

Предисловие

 

В настоящее время имитационное моделирование стало эффективным средством решения задач автоматизации исследований технологических процессов в машиностроении. Добиться значительного упрощения и ускорения процесса разработки имитационных моделей возможно за счет использования специализированных языков и систем компьютерной имитации и анимации (Arena, Extend, GPSS, SIMAN, SLAM, SIMULA, GASP, Proof Animation и др.), позволяющих отображать динамику работы оборудования на мнемосхеме технологического процесса в ходе имитационного моделирования.

Дисциплина «Компьютерная имитация и анимация» основана на лицензионном программном обеспечении - специализированных языках компьютерной имитации GPSS/H и анимации Proof Animation (ф. Wolverine Software Corp., USA). В настоящее время, комплекс этих языков является одним из наиболее эффективных и распространенных программных средства моделирования сложных дискретных систем на ЭВМ. Он успешно используется для моделирования систем, формализуемых в виде схем массового обслуживания, с помощью которых описываются многие объекты, рассматриваемые при подготовке студентов специальности 220301 «Автоматизация технологических процессов (в машиностроении)».

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

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

Разработанный учебный курс апробирован в течение пяти лет при обучении студентов 3-4-го курса специальностей «Автоматизация технологических процессов (в машиностроении)» и «Информационные системы и технологии» механико-машиностроительного факультета ГОУ ВПО КузГТУ.

 


ВВЕДЕНИЕ

 

Если технологическая система не поддается физическому эксперименту, прибегают к математическому моделированию, то есть отражению некоторых свойств системы совокупностью математических объектов (чисел, переменных, матриц, множеств, точек, отрезков прямых и т.д.) и отношений между ними.Математическое моделирование систем делят на аналитическое и имитационное. Аналитическое моделирование представляет собой функциональные соотношения (алгебраические, интегро-дифференциальные, конечно-разностные) или логические усло­вия. Во многих случаях невозможно получить аналитические зависимости, отображающие поведение и взаимосвязь элементов технологической системы. Особенно трудно учесть действие случайных факторов и динамику функционирования объекта. Поэтому используют имитационное моделирование. Имитационное моделирование похоже на физические эксперименты, но эти эксперименты проводятся не на физическом объекте, а на его компьютерной модели. Сущность имитационного моделирования состоит в том, что над моделью проводят эксперименты типа «Что, если…?». Изменяя исходные показатели в модели, анализируют результаты экспериментов. Имитационная модель реализуется на ЭВМ при помощи языков программирования. Очень часто, имитационные модели сложных технологических систем разрабатывают с использованием универсальных языков, таких как Паскаль, С++, Delphi. Функционирование системы описывают последовательностью уравнений. Затем кодируют их на языке программирования и вводят программу в компьютер. Потом производят расчеты, изменяя некоторые коэффициенты. Разработка таких программ требует нескольких человеко-месяцев труда специалистов по технологии, математике и программированию. Модель получается достаточно громоздкой, в результате затрудняется ее исправление и дополнение. Зачастую разработка модели отстает от развития производства, и моделирование теряет смысл.

Альтернативой является использование методов, основанных на специализированных языках и системах имитационного моделирования ARENA, GPSS, SIMAN, SLAM, SIMSCRIPT, SIMULA, GASP и др. Специализированные языки содержат, как правило, написанные на универсальном языке блоки - отдельные динамические модели. Поведение системы имитируется как смена ее состояний. Процесс отображается не системой уравнений, а взаимодействием отдельных динамических моделей во времени и пространстве. Поведение системы описывается от события к событию, означающих начало или окончание технологической операции.

Одним из наиболее распространенных специализированных языков имитационного моделирования является GPSS, предложенный фирмой IBM в 1962г. Он развивался во многих версиях. В настоящем учебном пособии рассмотрена предпоследняя версия языка - GPSS/Н.

Недостатком имитационного моделирования является то, что необходимо интерпретировать результаты моделирования. Сам процесс имитации скрыт от экспериментатора. Поэтому специализированные языки имитационного моделирования соединяются с программами компьютерной анимации (CIMAN - CINEMA, GPSS/H - Proof Animation), позволяющими отображать динамику процесса на экране компьютера в соответствии с работой имитационной модели и выводить результаты на монитор.

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

 

Классификация моделей

Модель - описание системы. Во многих изданиях посвященных моделированию приводится классификация методов моделирования. Одна из наиболее полных классификаций приведена в [1]. Мы рассмотрим упрощенную классификацию, но позволяющую понять какой области моделирования посвящена дисциплина «Компьютерная имитация и анимация». При этом остановимся на некоторых основных понятиях теории моделирования.

Все методы моделирования технологических систем можно разделить на две части: физические и математические (рис. 1).

 

 

Рис. 1. Классификация методов моделирования

технологических систем

 

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

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

Рис. 2. Принцип имитационного моделирования

Над моделью проводят множество экспериментов типа «Что, если…?». Изменяя исходные показатели в модели, выбирают и реализуют на практике лучший вариант организации технологического процесса.

Имитационное моделирование применяют, если [2]:

- сложная динамика процесса не может быть описана системой уравнений;

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

- реальный процесс еще не создан;

- надо проверить варианты разрабатываемого процесса;

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

Имитационное моделирование может быть непрерывным, дискретным и дискретно-непрерывным (смешанным или комбинированным). Дискретное моделирование характеризуется конечным числом значений переменных системы. Функционирование дискретной модели можно представить как последовательную смену ее состояний в дискретные моменты времени, между которыми характеристики модели не изменяются. Например, при моделировании обработки детали в модели возникают события начала обработки и ее окончания. Все, что происходит между этими событиями, не учитывается. Непрерывное моделированиехарактеризуется бесконечным множеством значений переменных. Например, при моделировании движения жидкости по трубопроводу с течением времени через его сечение проходит какое-то количество жидкости, следовательно, в модели за любой самый малый отрезок времени значения переменных изменяются. Что бы отобразить влияние переменных друг на друга используют дифференциальные уравнения. Дискретно-непрерывное моделированиехарактеризуется наличием как диск­ретных, так и непрерывных значений переменных системы.Дискретно-непрерывные системы характеризуются тем, что в промежутках между дискретными состояниями система ведет себя как непрерывная. Например, при моделировании работы бензоколонки дискретное моделирование можно применить для отображения прихода бензовозов, которые пополняют емкости с горючим. А для того чтобы исследовать динамику заполнения емкости с бензином можно использовать непрерывное моделирование. Большинство технологических процессов сводится к дискретным с конечным числом состояний: начало и окончание обработки, погрузка и разгрузка груза, движение транспорта между пунктами погрузки и разгрузки. Поэтому остановимся на дискретном моделировании.

При построении имитационной модели для ввода ее в ЭВМ, необходимо использовать языки программирования. Часто, имитационные модели сложных технологических систем разрабатывают с использованием универсальных языков программирования (Паскаль, С, Delphi и т.п.). Процесс описывают последовательностью уравнений, которые кодируют в терминах используемого языка и вводят программу в компьютер (рис. 3).

 

 

Рис. 3. Имитация техпроцессов

с помощью универсальных языков программирования

 

В имитационных экспериментах изменяют исходные данные при случайных коэффициентах в уравнениях и получают технологические показатели производства. Такой подход требует аналитического описания процессов с последующим переводом полученной системы уравнений в программу для ЭВМ. Поэтому разработка таких программ занимает нескольких человеко-месяцев труда специалистов по технологии, программированию и математике. Модель, содержит сотни блоков, трудно поддается доработке (как правило, исправить или дополнить моделирующую программу может только тот, кто ее разрабатывал). Часто время разработки модели отстает от развития производства и модель становиться ненужной. Альтернативой является использование методов основанных на специализированных языках и системах имитационного моделирования GPSS, SIMAN, SLAM, SIMSCRIPT, SIMULA, GASP (рис. 4).

 

 

Рис. 4. Имитация техпроцессов

с помощью специализированных языков

 

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

Выделим основные преимущества использования специализированных языков компьютерной имитации:

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

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

- возможность конструирования сложных имитационных моделей пользователям, не являющимися профессиональными программистами. Программы имитационных моделей на специализированных языках моделирования близки к описаниям моделируемых систем на естественном языке. Например, последовательность технологических операций – включить станок, обработать заготовку, выключить станок на специализированном языке будет выглядеть примерно так: занять прибор (команда SEIZE), задержать на время обслуживания (команда ADVANCE), освободить прибор (команда RELEASE);

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

Как альтернатива специализированным языкам развиваются проблемно-ориентированные имитаторы (сети Петри, МАР/1,SIMDIS, MAST). В проблемно-ориентированных имитаторах предусмотрены стандартные формы для ввода структуры и параметров объекта моделирования. После заполнения форм имитатор отображает процесс по шагам модельного времени. После этого анализируют поведение объекта во времени.

Недостатком имитационного моделирования является сложность технологической интерпретации результатов имитационных экспериментов. Например, в языке GPSS/H формируется стандартный файл отчета моделирования, информация в котором представлена в специфическом формате, и для оценки результатов ее необходимо интерпретировать. В имитаторе сетей Петри выводится матрица текущей разметки, которую необходимо расшифровывать. Так же если модель достаточно сложна, то разработчику трудно выявлять в ней ошибки. Поэтому к языкам имитации добавляют анимацию, которая позволяет отображать динамику техпроцесса на мониторе. Соединяя языки компьютерной имитации с анимационными программами создают программные комплексы – системы имитационного моделирования. Например, к GPSS и SLAM добавляют Proof Animation, CIMAN, соединенный с CINEMA образует комплекс, называемый ARENA. При помощи анимации технолог, не владеющий программированием, может вводить характеристики оборудования, менять масштаб участков изображения, выводить на экран статистические показатели, быстро перемещаться во времени с целью анализа и прогноза ситуаций.

 

Техническое и программное

Обеспечение

В качестве программного обеспечения используется лицензионный комплекс языков компьютерной имитации GPSS/H и анимации Proof Animation, созданный фирмой Wolverine Software Corporation (США) в 1996 г. Комплекс имеет студенческую (Student GPSS/H - Student Proof Animation) и профессиональную (GPSS/H Professional - Proof Professional) версии.

Студенческая версия GPSS/H имеет некоторые ограничения:

- GPSS/H-модель не может содержать более 125 блоков;

- общее количество строк в программе не может превышать 250;

- объем динамической области памяти (COMMON) не может превышать 32720 байта.

Если GPSS/H-программа написана так, что превышает любое из этих ограничений, то на экране после запуска программы появится сообщение об ошибках, указывающее, какие из трех ограничений были превышены. Например, если программа содержит более чем 125 блоков, на экране появится следующее сообщение:

 

ERROR: STUDENT-VERSION IS LIMITED TO 125 BLOCKS

LIMITS OF STUDENT-VERSION EXCEEDED -- RUN TERMINATED

 

(ОШИБКА: СТУДЕНЧЕСКАЯ-ВЕРСИЯ ОГРАНИЧЕНА 125 БЛОКАМИ)

(ОГРАНИЧЕНИЕ СТУДЕНЧЕСКОЙ-ВЕРСИИ ПРЕВЫШАЕТ -- ЗАВЕРШЕНИЕ)

 

Если вся область памяти (COMMON) будет занята, то на экране появится сообщение об ошибке 411:

 

ERROR NUMBER 411 - Out of COMMON: Add/change REALLOCATE Stmt? See release notes

(ОШИБКА 411 - "Превышение COMMON" - Добавить/изменить REALLOCATЕ?

 

Студенческая версия Proof Animation так же имеет некоторые ограничения:

- обработка специального файла, предназначенного для управления анимацией (.atf-файл) заканчивается после прочтения 1250 строк.

- файл, содержащий все нарисованные объекты, не может превышать 1250 байт.

- выполнение анимации прекращается через 120 секунд.

 

Для моделирования с использованием комплекса языков GPSS/H и Proof Animation требуется IBM - совместимый персональный компьютер класса 486 и выше, имеющий не менее 2МБ свободной памяти на жестком диске и 4МБ оперативной памяти, видеопамяти не менее 512кБ. Может использоваться компьютер класса 386, снабженный математическим сопроцессором. Для работы с Proof Animation требуется Microsoft совместимая мышь. Комплекс может работать в операционной среде DOS, Windows 3.1 и выше, Windows NT, Windows 95 и выше.

 

Моделирование

Общие сведения

 

Специализированный язык имитационного моделирования GPSS/Н (General Purpose Simulation System) - предназначен для отображения дискретных сложных систем различной физической природы. Язык основан на теории массового обслуживания - концепции движения объектов через приборы с некоторым временем обслуживания. Закон движения объектов и время обслуживания могут изменяться по различным законам распределения случайных величин.

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

Рис. 9. Блок-схема GPSS/H-модели

Информация представленная в блок-схеме может относиться к трем различным категориям:

1. Местоположение. Каждый блок занимает определенное место в блок-схеме. Это место может быть определено нумерацией, которую интерпретатор осуществляет автоматически. Часто нужно знать, какое место занимает тот или иной блок в модели. Это может оказаться необходимым для реализации ссылки из одного или более блоков на указанный блок. Для этих целей в GPSS/H используются символические имена, которые должны состоять не более чем из семи алфавитно-цифровых символов, причем первый символ должен быть алфавитным (русские буквы не допускаются).

2. Операции (ADVANCE, RELEASE и т.д.) - команды, описывающие основное функциональное назначение блоков.

3. Операнды (A,B,C,D,E...) - информация специфичная для действия блока.

Исходная программа на языке GPSS/Н, как и программа на любом языке программирования, представляет собой последовательность командных строк, которые вводятся в ЭВМ в следующем формате (рис. 10):

 

Рис. 10. Формат GPSS/H-программы

 

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

Командные строки записываются, начиная с первой позиции, в свободном формате, то есть отдельные поля разделяются произвольным количеством пробелов. Программу пишут в любом текстовом редакторе создающем не форматируемый текст в формате ASCII (NC, VC, Far, Блокнот, WordPad и т.п.). Она должна иметь имя из латинских букв и расширение .gps (Например, primer1.gps). Все буквы кроме комментариев должны быть заглавными.

GPSS/H-модель состоит из различных объектов. Для упрощения разделим эти объекты на три типа: транзакты, блоки и операторы.

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

Операторы предназначены для управления процессом моделирования (прогоном модели), задания функций и последовательностей псевдослучайных чисел генераторов GPSS/H. Операторы напрямую не взаимодействуют с транзактами.

В процессе моделирования интерпретатор GPSS/H автоматически регистрирует и корректирует некоторую информацию, касающуюся различных элементов используемых в моделях. Кроме информации, которая выдается по окончании моделирования, существует и такая информация, которая доступна в процессе моделирования. Эту информацию можно использовать с помощью атрибутов модели. Атрибутами являются: состояние прибора (занят, не занят), счетчик циклов занятий прибора, коэффициент использования прибора, среднее время задержки на одно занятие, величина параметра транзакта, время пребывания транзакта в модели, генераторы случайных чисел. В процессе моделирования системы транзакты взаимодействуют с блоками, в результате чего происходят изменения их атрибутов, а также преобразования арифметических или логических значений. Такие преобразования называются событиями.

. . .

TERMINATE

 

* 2-й сегмент модели

GENERATE 480

TERMINATE 1

START 1

 

В момент модельного времени 480, транзакт выйдет из блока GENERATE второго сегмента и сразу же попадет в блок TERMINATE. Поскольку операнд этого блока содержит 1, то из счетчика завершения отнимется 1. Это уменьшит значение счетчика до 0 и интерпретатор остановит прогон модели.

2. Предположим, что требуется закончить прогон модели, после того как будет обслужено 100 транзактов. Для этого необходимо:

а) установить значение операнд А оператора START равным 100;

б) установить операнд А блока TERMINATE равным 1.

Часть GPSS/H-программы будет иметь следующий вид:

GENERATE 3.2,1.2,,2

. . .

TERMINATE 1

START 100

Когда транзакт будет входить в блок TERMINATE, счетчик завершения будет уменьшаться на 1. Прогон будет продолжаться, пока значение счетчика не достигнет 0 (то есть пока не удалится 100 транзактов).

 

Закону распределения

 

Если закон распределения случайной переменной заранее известен, нет необходимости задавать функцию вручную, определяя значения случайной переменной и соответствующие значения суммарной частоты. Для моделирования случайных событий с известным законом распределения GPSS/H имеет встроенные функции, которые генерируют произвольные случайные переменные из 26 популярных распределений. В табл. 5 приведены определения двух, наиболее применяемых законов распределения поддерживаемых студенческой версией GPSS/H.

Таблица 5

Встроенные функции

Распределение Формат функции
Нормальное   Экспоненциальное RVNORM(RN1, мат. ожидание, дисперсия) RVEXPO(RN1, параметр l)

 

Например, необходимо смоделировать поступление заготовок в робототехнический комплекс. Интервалы между поступлением заготовок распределены согласно экспоненциального закона с параметром l=7. Для имитации поступления заготовок используем блок GENERATE. Тогда, в соответствие с этим условием и табл. 5 запишем:

 

GENERATE RVEXPO(1,7)

Пример имитационного моделирования

 

Процедуру имитационного моделирования покажем на примере изготовления деталей разными типами станков.

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

Интервалы поступления заготовок на группу станков типа А распределены согласно экспоненциальному закону с параметром l=28 минут. Продолжительность обработки заготовки станком типа А составляет 63±9 минут (распределение равномерное), а станком типа В - 55±5 минут (распределение равномерное). Время транспортировки заготовки до группы станков типа А составляет 32±10 минут, а полуфабрикатов до станка типа В – 12±5 минут (распределение нормальное). Предполагается, что между двумя станциями существует неограниченная очередь.

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

Метод построения модели

Построим блок-схему модели технологического процесса (рис. 22).

 

Рис. 22. Блок-схема имитационной модели

технологического процесса изготовления деталей

 

Пусть транзакт представляет собой заготовку, которая по мере продвижения по модели преобразуется в готовую деталь. Поступление заготовок в соответствии с заданным распределением имитируем блоком GENERATE. Группу станков типа А моделируем многоканальным устройством STA1, то есть двумя блоками ENTER и LEAVE, между которыми ставим блок ADVANCE для имитации обработки заготовки. Так как станок второй группы всего один имитируем его прибором обслуживания STA2, то есть двумя блоками SEIZE и RELEASE. Для сбора статистики об очередях перед станками типов А и В вводим два регистратора очереди посредством блоков QUEUE и DEPART. Транспортировку заготовки до станков типа А и станка типа В моделируем блоками ADVANCE. Блок TERMINATE вводим для имитации поступления готовой детали в накопитель.

 

Подготовка модели к запуску

 

Для ввода в ЭВМ в соответствии с блок-схемой пишем GPSS/H-программу, используя любой текстовый редактор создающий не форматируемый текст (формат ASCII). Прежде чем запускать модель (осуществлять прогон) к GPSS/H-программе необходимо добавить два оператора SIMULATE и END.

Оператор SIMULATE - указывает интерпретатору, что должен быть осуществлен прогон модели (начальная команда в GPSS/H-программе). Если этот оператор отсутствует, то интерпретатор проверяет правильность записи модели на языке GPSS/Н, но прогона модели не выполняет.

Оператор END- завершает работу интерпретатора.

Следовательно, для начала моделирования используем оператор SIMULATE. Для задания емкости многоканального устройства, имитирующего станки группы А, вводим оператор STORAGE. Оператор START вписываем для задания значения счетчика завершения, которое соответствует количеству требуемых деталей. Оператор END вводим для окончания моделирования. После перевода блок-схемы модели и добавления необходимых операторов GPSS/H-программа, подготовленная к запуску, будет выглядеть следующим образом:

SIMULATE Начало моделирования

STORAGE S(STA1),2 Задание станков в группе А

GENERATE RVEXPO(1,28) Поступление заготовок

ADVANCE RVNORM(3,32,10) Транспортировка заготовки

QUEUE LINE1 Занятие очереди перед станками

группы А

ENTER STA1 Занятие станка из группы А

DEPART LINE1 Освобождение очереди перед

станками группы А

ADVANCE 63,9 Обработка на станке группы А

LEAVE STA1 Освобождение станка группы А

ADVANCE RVNORM(5,12,5) Транспортировка детали

QUEUE LINE2 Занятие очереди перед станком

типа В

SEIZE STA2 Занятие станка типа В

DEPART LINE2 Освобождение очереди перед

станком типа В

ADVANCE 55,5 Обработка на станке типа В

RELEASE STA2 Освобождение станка типа В

TERMINATE 1 Поступление деталей в накопи-

тель

START 50 Программа выпуска

END Окончание моделирования

 

После написания программы сохраним файл с расширением .gps (например, primer1.gps).

LINE1 7 2.454 90 11 12.2 78.192

LINE2 36 16.693 86 1 1.2 556.591

 

Раздел времени содержит информацию:

RELATIVE CLOCK - относительное время моделирования;

ABSOLUTE CLOCK - абсолютное время моделирования.

 

Раздел блоков содержит информацию:

BLOCK - имя и номер блока;

CURRENT - число транзактов, находящихся в блоке в момент окончания моделирования;

TOTAL - общее число транзактов, вошедших в блок за период моделирования.

 

Для прибора обслуживания (Facility) выводится информация:

Facility - имя или номер прибора;

TOTAL TIME - доля времени, в течение которого был занят прибор;

ENTRIES - общее количество транзактов, которые занимали прибор;

AVERAGE TIME/XACT - среднее время обслуживания транзакта прибором;

SEIZING XACT - номер транзакта, который в настоящее время обслуживается прибором;

PREEMPTING XACT - номер транзакта с приоритетным прерыванием.

 

Для многоканального устройства выводится:

Storage – имя или номер многоканального устройства;

TOTAL TIME – коэффициент использования многоканального устройства;

ENTRIES - общее количество транзактов, которые занимали многоканальное устройство;

AVERAGE TIME/XACT - среднее время обслуживания транзакта каналами многоканального устройства;

SEIZING XACT - номер транзакта, который в настоящее время обслуживается многоканальным устройством;

PREEMPTING XACT - номер транзакта с приоритетным прерыванием.

 

Столбцы отчета об очереди (QUEUE) в СФО включают:

QUEUE - имя или номер очереди;

MAXIMUM CONTENTS - самый большой размер очереди, которая б





Последнее изменение этой страницы: 2016-06-26; просмотров: 238; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 35.153.166.111 (0.017 с.)