Главная Контакты В избранное
  • КУРСОВОЙ ПРОЕКТ по дисциплине «Моделирование процессов и систем» на тему: «Моделирование работы обрабатывающего цеха»

    АвторАвтор: student  Опубликовано: 14-12-2020, 21:46  Комментариев: (0)

     

     

    Скачать: kursovaya5.rar [737,6 Kb] (cкачиваний: 58)  

     

     

    КУРСОВОЙ ПРОЕКТ

    по дисциплине «Моделирование процессов и систем»

    на тему: «Моделирование работы обрабатывающего цеха»

     


     

     

     

    Содержание

    Введение. 3

    1. Система моделирования AnyLogic. 4

    1.1. Общие сведения о системе моделирования AnyLogic. 4

    1.2. Этапы имитационного моделирования в AnyLogic. 6

    1.3. Основные концепции, реализуемые AnyLogic. 9

    1.4. Объекты Enterprise Library. 14

    2. Решение задачи с помощью имитационного моделирования. 20

    2.1. Постановка задачи. 20

    2.2. Структура модели. 21

    2.3. Создание Java классов. 22

    2.4. Параметры блоков модели. 23

    2.5. Анимация заявок. 29

    2.6. Выполнение эксперимента сравнения прогонов. 30

    Заключение. 33

    Список использованной литературы.. 34

     


    Введение

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

    Теория замещения одних объектов (оригиналов) другими объектами (моделями) и исследования свойств объектов на их моделях называется теорией моделирования.

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

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

     


    1. Система моделирования AnyLogic

    1.1. Общие сведения о системе моделирования AnyLogic

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

    Отечественный профессиональный инструмент имитационного моделирования AnyLogic нового поколения, который разработан на основе современных концепций в области информационных технологий и результатов исследований в теории гибридных систем и объектно-ориентированного моделирования. Построенная на их основе инструментальная система AnyLogic не ограничивает пользователя одной единственной парадигмой моделирования, что является характерным для существующих на рынке инструментов моделирования. В AnyLogic разработчик может гибко использовать различные уровни абстрагирования и различные стили и кон­цепции и смешивать их при создании одной и той же модели. [1].

    Программный продукт AnyLogic основан на объектно-ориентированной концепции. Объектно-ориентированный подход к представлению сложных систем является лучшим на сегодняш­ний день методом управления сложностью информации, эта кон­цепция позволяет простым и естественным образом организовать и представить структуру сложной системы. Таким образом, идеи и методы, направленные на управление сложностью, выработанные в последние десятилетия в области создания программных систем, позволяют разработчикам моделей в среде AnyLogic организовать мышление, структурировать разработку и, в конечном счете, упро­стить и ускорить создание моделей. [2].

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

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

    В результате AnyLogic не ограничивает пользователя одной - единственной парадигмой моделирования, что является характер­ным фактически для всех инструментов моделирования, сущест­вующих сегодня на рынке. В AnyLogic разработчик может гибко использовать различные уровни абстрагирования, различные сти­ли и концепции, строить модели в рамках той или иной парадигмы и смешивать их при создании одной и той же модели, использо­вать ранее разработанные модули, собранные в библиотеки, до­полнять и строить свои собственные библиотеки модулей. При разработке модели на AnyLogic можно использовать концепции и средства из нескольких «классических» областей моделирования, например, в агентной модели использовать методы системной ди­намики для представления изменений состояния среды или в не­прерывной модели динамической системы учесть дискретные со­бытия. Например, анализ IT-инфраструктуры компании (анализ производительности серверов, узких мест локальной сети и т. п.). Он легко производится с помощью методов дискретного событий­ного моделирования, имеет немного пользы, если в модели не от­ражено влияние возможных изменений параметров этой инфра­структуры на бизнес-процессы и, в конечном счете, на прибыль компании, а такая связь в модели не может быть реализована толь­ко средствами дискретно-событийного моделирования. В AnyLogic легко строятся подобные модели с требуемым уров­нем адекватности, позволяющие ответить на многие вопросы, ин­тересующие исследователя. Богатые возможности анимации и ви­зуального представления результатов в процессе работы модели позволяют понять суть процессов, происходящих в моделируемой системе, упростить отладку модели.

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

     

     

    1.2. Этапы имитационного моделирования в AnyLogic

    Имитационное моделирование состоит из двух больших этапов: создания модели и анализа полученных с помощью модели результатов с целью принятия решения.

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

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

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

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

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

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

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

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

    Таблица 1.1. Этапы компьютерного моделирования

    Название этапа

    Результат

    1

    Анализ системы

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

    2

    Формулировка цели

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

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

    3

    Разработка концептуальной структуры модели

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

    4

    Реализация модели в среде моделирования

    Реализованные подсистемы, их параметры и переменные, их поведение, реализованная логика и связи подсистем

    5

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

    Анимационное представление модели, интерфейс пользователя

    6

    Проверка корректности реализации модели

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

    7

    Калибровка модели

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

    8

    Планирование и проведение компьютерного эксперимента

    Результаты моделирования — графики, таблицы и т.п., дающие ответы на поставленные вопросы

     

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

    1.3. Основные концепции, реализуемые AnyLogic

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

    Активные объекты, классы и экземпляры активных объектов.Класс в программировании является мощным средством, позволяющим структурировать сложную систему. Класс определяет шаблон, в соответствии с которым строятся отдельные экземпляры класса. Эти экземпляры могут быть определены как объекты других активных объектов.

    В AnyLogic основным структурным блоком при создании моделей являются классы активных объектов. Использование активных объектов является естественным средством структуризации модели сложных систем: мир состоит из множества параллельно функционирующих и взаимодействующих между собой сущностей. Различные типы этих сущностей и представляют разные активные объекты.

    Чтобы создать модель AnyLogic, нужно создать классы активных объектов (или использовать объекты библиотек AnyLogic). Определение активного объекта задает шаблон, и отдельные объекты, построенные в соответствии с этим шаблоном (экземпляры активного объекта), могут использоваться затем как элементы других активных объектов. В любой класс могут быть включены несколько экземпляров других классов, которые могут различаться своими параметрами. Всегда один класс в модели является корневым. Для него в модели AnyLogic порождается один экземпляр с предопределенным именем root, он и запускается исполнительной системой AnyLogic на выполнение. Имя класса корневого активного объекта можно менять в окне его свойств.

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

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

    Именно такую иерархию абстракций позволяет создать AnyLogic при разработке моделей. Всю модель можно рассматривать как единый объект root. При детальном рассмотрении видно, что этот объект может содержать, к примеру, два экземпляра класса MyClass с именами myClass и myClass 1. Сам класс MyClass может иметь свое сложное строение, которое будет скрыто в классе Root. Такая иерархия структуры может быть произвольной глубины.

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

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

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

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

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

    Модельное и реальное время. Понятие модельного времени является базовым в системах имитационного моделирования. Модельное время — это условное логическое время, в единицах которого определено поведение всех объектов модели.

    В моделях AnyLogic модельное время может изменяться либо непрерывно, если поведение объектов описывается дифференциальными уравнениями, либо дискретно, переключаясь от момента наступления одного события к моменту наступления следующего события, если в модели присутствуют только дискретные события. Моменты наступления всех планируемых событий в дискретной модели исполнительная система хранит в так называемом календаре событий, выбирая оттуда наиболее раннее событие для выполнения связанных с ним действий. Значение текущего времени в моделях AnyLogic может быть получено обращением к функции getTime ().

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

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

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

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

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

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

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

    Интерактивный анализ модели. Многие системы моделирования позволяют менять параметры модели только до запуска модели на выполнение. Система AnyLogic предоставляет пользователю возможность изменять параметры модели в ходе ее функционирования. Поэтому окно анимации можно назвать «стендом» для проведения компьютерного эксперимента с моделью. Основным примером средств, изменяющих параметры модели, являются слайдеры (бегунки). [8].

    1.4. Объекты Enterprise Library

    Библиотека AnyLogic Enterprise Library поддерживает дискретно-событийный подход моделирования. С помощью объектов Enterprise Library можно моделировать системы реального мира, динамика которых представляется как последовательность операций (прибытие, задержка, захват или недостаток ресурса, разделение) над некими сущностями (entities, по-русски — транзакты, заявки).

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

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

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

    Для использования этого подхода, называемого сетевым моделированием, необходимо определить топологию сети (например, используя векторную графику AnyLogic поверх плана или чертежа здания или сооружения), множество ресурсов (статических, движущихся или перемещаемых), и собственно процесс. Процесс в данном случае — это комбинация объектов типа «переместиться туда-то» или «присоединить к себе ресурс» (таких, как NetworkMoveTo, NetworkSeize, NetworkSendTo) и обычных объектов Enterprise Library (Queue, Delay, Service). Заявки и ресурсы автоматически анимируются движущимися объектами по сегментам сети или находящимися в её узлах. Эта анимация может также комбинироваться с обычной анимацией.

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

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

    Расширение процессных моделей. Как и все в AnyLogic, процессная модель может быть расширена до любого требуемого уровня детальности с необходимой нестандартной функциональностью.

    Во-первых, базовые классы Entity и ResourceUnit могут быть расширены вашими собственными классами с любыми дополнительными полями и методами. Указав эти классы в параметрах классов объектов, вы позволите более простой доступ к вашим полям (без явного приведения типов, как это было в AnyLogic 5). Например, в модели аэропорта вам может понадобиться создать специальные классы, моделирующие пассажиров, багаж, офицеров безопасности и т. д.

    Во-вторых, у каждого объекта Enterprise Library есть специальные «точки расширения» — места, где вы можете задать какие-то действия или выражения. Такими точками расширения являются динамические параметры (помеченные в описаниях объектов как [динамические]), вычисляемые во время выполнения модели при прохождении заявок через процессную диаграмму. Например, в объекте Delay, моделирующем распечатку посадочных талонов в объекте Регистрация, вы можете присвоить пассажиру выход, написав entity.gate=main.gateof(entity.flightno) в параметре Действие при выходе. Здесь gate (гейт) и flightno (номер полета) — поля класса Passenger, моделирующего пассажиров, а gateof — функция, заданная в корневом объекте модели Main.

    Обратите внимание, что у вас есть доступ к любой части модели из любой другой части модели, и более того, поскольку вы пишете Java код, вы можете взаимодействовать с любым внешним программным обеспечением и/или использовать любой из огромного количества Java пакетов.

    Создание анимации для процессных моделей. Библиотека Enterprise Library тесно интегрирована с анимационными средствами AnyLogic и позволяет создавать анимации процессов любой степени сложности, в том числе иерархические и с несколькими различными графическими представлениями процесса. Например, вы можете определить глобальный взгляд на процесс производства с несколькими агрегированными индикаторами, а также детальные анимации конкретных операций — и переключаться между ними.

    Для большинства объектов Enterprise Library анимация задается следующим образом: вы рисуете фигуру, скажем, ломаную, указываете ее в параметре Фигура анимации, скажем, объекта Delay и определяете этому объекту, что вы хотите отображать заявки, задерживающиеся в этом объекте, движущимися по этой фигуре анимации (см. Анимация объектов Enterprise Library). Затем вы рисуете другую фигуру (или группу фигур), и делаете ее Фигурой анимации заявки, например, в объекте Source. Тогда пока заявки будут находиться в объекте Delay, анимации этих заявок будут отображаться в соответствующих точках этой ломаной.

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

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

    Есть множество способов комбинирования подходов моделирования, мы приведем лишь некоторые примеры:

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

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

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

    Если вам нужен объект со специфической функциональностью, отличной от функциональности, предоставляемой объектами Enterprise Library (и недостижимой путем комбинирования этих объектов), вы можете создать ваш собственный класс активного объекта и использовать объекты Exit и Enter в качестве интерфейсных элементов. Тогда вы сможете вставлять экземпляры данного класса активного объекта в вашу процессную диаграмму. В таком активном объекте можно использовать диаграммы состояний, события, переменные и т. д.

    Классы активных объектов библиотеки AnyLogic Enterprise Library являются блоками, с помощью которых строятся блок-схемы, моделирующие процессы, которые будут происходить с заявками.

    Библиотечные классы Entity и ResourceUnit являются базовыми классами для заявок и ресурсов соответственно. Объекты условно делятся по своей функциональности на несколько категорий. [9].


     

    2. Решение задачи с помощью имитационного моделирования

    2.1. Постановка задачи

     

    Описание процесса

    В обрабатывающий цех через а ± b минут поступают детали двух типов: с вероятностью р1 - первого типа, с вероятностью р2 - второго типа. Детали первого типа обрабатываются станком А (время обработки с ± d минуты, в каждый момент времени может обрабатываться только одна деталь). С вероятностью р3 деталь не отвечает требованиям качества и возвращается на повторную обработку на станок А, в противном случае она поступает на станок С.Детали второго типа обрабатываются станком В (время обработки е±f минут, в каждый момент времени может обрабатываться только одна деталь). С вероятностью р3 деталь не отвечает требованиям качества и возвращается на повторную обработку на станок В, в противном случае она поступает на станок С. Станок С может обрабатывать до g деталей одновременно, время обслуживания одной детали составляет k± m минут.

    Задание

    Промоделировать работу цеха на протяжении N часов.

    Определить время нахождения детали на обработке в цехе для каждого из вариантов. Реализовать в виде эксперимента сравнения прогонов в AnyLogic.

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

     

     

     

     

     

     

     

    Таблица 2.1 - Данные для решения задачи

    Параметр

    Варианты

    1

    2

    3

    a±b

    5 ± 1

    6 ± 2

    7 ± 2

    p1

    0,4

    0,5

    0,7

    p2

    0,6

    0,5

    0,3

    c±d

    15 ± 5

    16 ± 6

    14 ± 10

    p3

    0,1

    0,05

    0,075

    e±f

    8 ± 4

    12 ± 6

    16 ± 8

    g

    5

    4

    3

    k±m

    6 ± 2

    8 ± 3

    9 ± 3

    N

    10

    11

    8

     

    2.2. Структура модели

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

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

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

    На рисунке 2.2.1 представлена структура модели работы обрабатывающего цеха.

     

     

     

    Рисунок 2.2.1 - Структура модели обрабатывающего цеха

     

     

    2.3. Создание Javaклассов

    AnyLogic позволяет пользователю создавать в пределах модели свои собственныеJavaклассы с любой необходимой функциональностью. В рамках данной курсовой работы для решения поставленной задачи был создан новый Java класс – Time.

    Рисунок 2.3.1 – Код созданного класса

     

    2.4. Параметры блоков модели

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

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

    Свойства объекта (как и любого другого элемента AnyLogic) можно изменить в панели Свойства.

    В свойстве объекта sourceзаявки прибывают согласно времени между прибытиями. Время между прибытиями задаем uniform(a-b,a+b)*minute(), далее ставим галочку на разрешить вращение и конфигурируем объект так, чтобы он создавал заявки нового типа, указав конструктор класса Time в параметреНовая заявка и задав действие, которое должно выполняться перед тем, как новая заявка покинет объект (рисунок 2.4.1)

    Рисунок 2.4.1 – Свойства объекта source

     

    В свойствах объектов selectOutput,selectOutput1,selectOutput2 указываем вероятность, а так же в свойствах объекта selectOutput задаем действия при выходе (true) и выходе (false) (рисунок 2.4.2).

    Рисунок 2.4.2 – Свойства объекта selectOutput

     

    Рисунок 2.4.2 – Свойства объектов selectOutput1,selectOutput2

     

    В свойствах объектов queue, queue1, queue2, queue3, queue4 указываем максимальную вместимость, фигуру анимации, тип анимации, данные показаны на рисунках 2.4.3 – 2.4.6.

    Так же в свойствах объекта queue1 указываем приоритет заявки, а в свойствах объекта queue3 указываем действие при выходе.

     

     

    Рисунок 2.4.3 – Свойства объекта queue1

     

    Рисунок 2.4.4 – Свойства объекта queue

     

    Рисунок 2.4.5 – Свойства объекта queue2

     

    Рисунок 2.4.6 – Свойства объекта queue3

    В свойствах объекта conveyor указываем длину и скорость пути, расстояние между заявками и фигуру анимации. Свойства объектов conveyor1, conveyor2, conveyor3, conveyor4, conveyor5 заполняются аналогичным образом (рисунок 2.4.7).

     

    Рисунок 2.4.7 – Свойства объекта conveyor

     

    В свойствах объектов service, service1, service2 указываем количество ресурсов, вместимость очереди, время задержки, фигуру анимации, тип анимации. Эти данные изображены на рисунках 2.4.8 – 2.4.10.

    Рисунок 2.4.8 – Свойства объекта service

     

    Рисунок 2.4.9 – Свойства объекта service1

     

    Рисунок 2.4.10 – Свойства объекта service2

     

    В свойствах объекта batchуказываем размер партии, действие при входе, фигуру и тип анимации (рисунок 2.4.11).

     

     

    Рисунок 2.4.11– Свойства объекта batch

     

    Свойства объектов resourcePool, resourcePool1,resourcePool2 и Sink

    оставляем по умолчанию.

     

    2.5. Анимация заявок

    Анимация вAnyLogicдает возможность наглядно представить динамику всей системы в процессе моделирования. Средства анимации позволяют пользователю легко создать виртуальный мир (совокупность графических образов, схем и т.п.), управляемый динамическими параметрами модели по законам, определенным пользователем с помощью уравнений и логики моделируемых объектов. Начиная с версии 6.5AnyLogic позволяет пользователям создавать трехмерные (3D) анимации моделей.Трехмерная анимация является самым наглядным и реалистичным способомвизуализации моделируемого процесса.Для наглядного представления в рамках данной курсовой работы была создана простая 3D анимация, имитирующая движение деталей в цехе (рис. 2.5.1-2.5.2).

    Рисунок 2.5.1 – Cоздание анимации работы цеха

     

    Рисунок 2.5.2 – 3D Анимация, имитирующая работу цеха

     

    2.6. Выполнениеэксперимента сравнения прогонов

    Данный тип эксперимента позволяет интерактивно задавать различные значения параметров и запускать модель с этими значениями, позволяя тем самым сравнивать результаты моделирования, полученные при тех или иных значениях параметров. Результаты эксперимента показаны на рис 2.6.1 – 2.6.3.

    Рисунок 2.6.1– Результат эксперимента для первого варианта

     

    Рисунок 2.6.2– Результат эксперимента для второго варианта

    Рисунок 2.6.3– Результат эксперимента для третьего варианта

     

     

     

     

     

     

     

     

     

     

     

     

    3. Интерпретация результатов

    В рамках данной курсовой работы была поставлена задача определения времени нахождения детали на обработке в цехе для каждого из заданных вариантов параметров.
    Среднее время нахождения деталей на обработке в цехе для первого варианта составила 68.121 минуты. (рис. 3.1.)
    Среднее время нахождения деталей на обработке в цехе для второго варианта составила 76.165 минуты. (рис. 3.2.)
    Среднее время нахождения деталей на обработке в цехе для третьего варианта составила 79.864 минуты. (рис. 3.3.)

    Рисунок 3.1– Время нахождения детали на обработке в цехе для первого варианта

     

    Рисунок 3.2– Время нахождения детали на обработке в цехе для первого варианта

     

    Рисунок 3.3– Время нахождения детали на обработке в цехе для первого варианта





     

    Заключение

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


     

    Список использованной литературы

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

    2. Боев В.Д. Моделирование систем. Инструментальные средства AnyLogic: Учеб. пособие. — СПб.: БХВ-Петербург, 2010.– 54 c.

    3. Боев В.Д., Сыпченко Р.П. Компьютерное моделирование: Руководство по курсовому проектированию: Учеб пособие — СПб.: ВУС, 2012.– 33 c.

    4. Советов Б.Я., Яковлев С.А. Моделирование систем: Курсовое проектирование. — М.: Высшая школа, 2009.– 103 c.

    5. Боев В. Д., Сыпченко Р. П. Компьютерное моделирование: Учебный курс. — ИНТУИТ.РУ, 2010.– 98 c.

    6. Гнеденко Б.В., Коваленко Н.Н. Введение в теорию массового обслуживания. – М.: Наука, 2010. – 174 c.

    7. Карпов Ю. Имитационное моделирование систем. Введение в моделирование с AnyLogic 6. – Спб.: БХВ С.-Петербург, 2011. – 12 c.

    8. Осипов Л.А. Проектирование систем массового обслуживания. – М.: «Адвансед Солюшнз», 2011. – 77 c.

    9. Маликов, Р.Ф. Практикум по имитационному моделированию сложных систем в среде AnyLogic 6: Учеб.пособие/ Р.Ф.Маликов - Уфа Изд-во БГПУ, 2013. – 296 с.

    скачать dle 10.6фильмы бесплатно