Материалы тренинга по AnyLogic. Решение на уровне модели мир без риска мир без риска реальный мир Мир моделей Реальный мир Решение Проблема
Скачать 12.33 Mb.
|
188 Задание топологии сети Задание топологии сети • Начните с плана CAD или выход Начните с плана CAD или точечного (bitmap) рисунка • План будет использоваться выход План будет использоваться как подложка анимации • Нарисуйте все важные процедурные комнаты • Нарисуйте все важные области, узлы сети и пути движения поверх плана с две овер ла ас помощью фигур анимации AnyLogic комнаты первичного осмотра вход осмотра комната комната ожидания медсестер регистратура 2002-2011 ООО Экс Джей Текнолоджис», Задание узлов сети и их соединение Задание узлов сети и их соединение • Задавайте узлы сети с помощью прямоугольников д у щ р у • Соединяйте их ломаными или линиями Ломаная, соединяющая два прямоугольника Ломаная, соединяющая несколько прямоугольников Д б ф • Добавьте все фигуры в группу • У объекта Network укажите эту группу как Группу фигур сети 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 190 Задание процесса Задание процесса • Сетевые объекты Менеджер сети Ресурсы Управление потоком Управление потоком • Вы можете использовать и любые другие объекты Enterprise Library (Delay Queue Seize Release ) Enterprise Library (Delay, Queue, Seize, Release, … ) © 2002-2011 ООО Экс Джей Текнолоджис», Типы сетевых ресурсов Типы сетевых ресурсов • Статические (не могут перемещаться сами их нельзя Статические (не могут перемещаться сами их нельзя перемещать в сети комната, непереносимое оборудование, коридор... • Перемещаемые (не могут перемещаться сами, но могут быть перенесены персоналом кресло‐каталка, переносной р р ) р р рентгеновский аппарат... • Двигающиеся (могут самостоятельно перемещаться посети, Дв ающ ес ( о уса ос о ель о ере еща ьс осе переносить перемещаемые ресурсы доктора, медсестры, автопогрузчики… Приведите примеры ресурсов (каждого типа) Приведите примеры ресурсов (каждого типа, потребовавшихся для проведения данного тренинга 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 192 Способы задания местоположений ресурсов д р ур • Укажите прямоугольник – узел сети Укажите прямоугольник узел сети • Нарисуйте ломаную с точками, лежащими внутри узлов сети 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 193 © 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 194 Модель ритейлера Эта презентация является частью стандартной программы обучения 2002-2011 ООО Экс Джей Текнолоджис», Модель ритейлера Модель ритейлера Мы построим модель оптового магазина (давайте в дальнейшем р д (д д называть его ритейлером). Для простоты давайте предположим, что этот магазин торгует одним видом товара. Ритейлер работает следующим образом Изначально ритейлер заказывает определенное количество товара. Эти товары производятся каким‐то сторонним производителем и доставляются ритейлеру. По получении они помещаются на склад ритейлера помещаются на склад ритейлера. Периодически товары продаются. Когда приходит очередной запрос на покупку товар извлекается со склада и продается запрос на покупку, товар извлекается со склада и продается. Когда уровень товарных запасов ритейлера достигает заданной нижней границы, ритейлер заказывает новую партию товара, так, нижней границы, ритейлер заказывает новую партию товара, так, чтобы по ее получении уровень товарных запасов пополнился до заданной для этого ритейлера верхней границы 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 196 Ритейлер. Фаза 1 Ритейлер. Фаза Начнем с простой постановки задачи. Начнем с простой постановки задачи. Давайте сделаем следующие предположения: Т й й 1 Товары поставляются ритейлеру со средней интенсивностью 1 единица в минуту. Доставленные товары помещаются в зону разгрузки. После доставки каждый товар помещается на хранение в свободную ячейку склада ритейлера с помощью свободного погрузчика. Товар хранится в ячейке от 20 до 45 минут, после чего он извлекается оттуда и доставляется с помощью погрузчика в зону выдачи, откуда и забирается потребителем забирается потребителем. © 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 197 © 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 198 Ритейлер. Фаза 1. Шаг 1 Ритейлер. Фаза 1. Шаг Выберите Файл|Создать|Класс активного объекта Выберите Файл|Создать|Класс активного объекта Введите здесь Завершите создание 2002-2011 ООО Экс Джей Текнолоджис», Создайте новый класс активного объекта. Назовите его Создайте новый класс активного объекта. Назовите его Retailer. Активные объекты • Активные объекты являются основными строительными блоками модели AnyLogic. Активные объекты могут моделировать любые объекты реального мира машины, людей, станки, цеха, города, компании, здания и т.д. р , д , , ц , р д , , д д • Каждый активный объект обычно моделирует логически обособленную часть модели. Это позволяет проводить декомпозицию модели на необходимое количество уровней детальности. • До этого момента мы задавали логику всей модели только наб Т количество уровней детальности. диаграмме класса активного объекта Main. Теперь мы хотим создать другой компонент нашей глобальной модели цепочки поставок – модель ритейлера. Поскольку этот компонент можно представить себе как логически обособленную часть, нов тоже время является частью той же модели, которую мы начали разрабатывать частью той же модели, которую мы начали разрабатывать ранее, мы создаем в рамках текущей модели еще один класс активного объекта, чтобы задать логику ритейлера на отдельной диаграмме отдельно от логики работы завода 2002-2011 ООО Экс Джей Текнолоджис», отдельной диаграмме, отдельно от логики работы завода Ритейлер. Фаза 1. Шаг 2 Ритейлер. Фаза 1. Шаг Щелкните по элементу Введите здесь Factory © 2002-2011 ООО Экс Джей Текнолоджис», Переименуйте активный объект Main в Переименуйте активный объект Main в Мы хотим назвать этот класс активного объекта поскольку он задает логику работы завода Как узнать какой активный объект редактируется, поскольку он задает логику работы завода. Как узнать, какой активный объект редактируется? • Теперь в Вашей модели уже два класса активных объектов. Начиная с этого момента, Выбудете время от времени открывать диаграмму того или другого класса, ив итоге у Вас может возникнуть естественный вопрос диаграмму какого класса активного объекта я редактирую в данный момент Чтобы ответить на этот вопрос, AnyLogic выделяет закладку открытой в данный момент в графическом редакторе диаграммы, а также выделяет редактируемый класс в дереве моделей, отображаемом в панели Проекты © 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 202 Ритейлер. Фаза 1. Шаг 3 Ритейлер. Фаза 1. Шаг Добавьте изображение изображение Выберите файл изображения изображения Установите флажок Заблокируйте фигуру Исходный размер 2002-2011 ООО Экс Джей Текнолоджис», Добавьте план склада ритейлера. Добавление плана и рисование сети поверх этого плана является первым шагом создания сетевой модели в AnyLogic. Щелкните по кнопке Добавить и выберите файл Щелкните по кнопке Добавить и выберите файл retailer_layout.png из каталога, расположенного на Вашем CD с материалами тренинга. Установите флажок Блокировать, чтобы заблокировать фигуру. Блокировка фигур презентации Блокировка фигур презентации • Вы можете заблокировать фигуру так, что она не будет выделяться на диаграмме по щелчку мыши на ней (пока Вы не снимете блокировку. Обычно это требуется, когда на презентации есть фоновый рисунок (например, план моделируемого Вами предприятия, используемый как подложка для анимации модели. В этом случае при редактировании какой‐либо фигуры, лежащей поверх этой подложки, Вы можете случайно отредактировать например, передвинуть) саму подложку вследствие того, что иногда не получается точно попасть мышью на ту фигуру, которую Вы хотите выделить. у уф уру, ру д • Заблокировав Ваш фоновый рисунок, Вы значительно упростите редактирование анимации, поскольку запретите нежелательное выделение фонового рисунка неточными щелчками мыши 2002-2011 ООО Экс Джей Текнолоджис», фонового рисунка неточными щелчками мыши Ритейлер. Фаза 1. Шаг 4 Ритейлер. Фаза 1. Шаг Нарисуйте фигуры shapePickup shapeAisleFront shapeUnloadedProducts shapeForkLiftHome shapeUnloadEntry Добавьте все эти фигуры в группу networkGroup © 2002-2011 ООО Экс Джей Текнолоджис», Разметьте план Задайте с помощью фигур AnyLogic все Разметьте план. Задайте с помощью фигур AnyLogic все важные зоны и маршруты движения поверх плана. Логическая структура сети будет сгенерирована в Логическая структура сети будет сгенерирована в соответствии с нарисованной Вами анимацией. й Нарисуйте зоны с помощью прямоугольников. Назовите их именно так, как показано на слайде. Н й Нарисуйте также дополнительные узлы и соедините прямоугольники ломаными линиями. Эти ломаные линии будут играть роль путей движения линии будут играть роль путей движения Добавьте все эти фигуры в группу. Назовите ее 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 206 Ритейлер. Фаза 1. Шаг 5 Ритейлер. Фаза 1. Шаг Нарисуйте еще один прямоугольник Добавьте картинку погрузчика 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 207 Нарисуйте прямоугольник задающий фигуру Нарисуйте прямоугольник, задающий фигуру прохода. Назовите его shapeAisle. Эту фигуру ненужно добавлять в группу содержащую фигуры сети нужно добавлять в группу, содержащую фигуры сети Добавьте картинку погрузчика из палитры Картинки 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 208 Ритейлер. Фаза 1. Шаг 6 Ритейлер. Фаза 1. Шаг Раскройте ветви Выделите переменную и фигуру Раскройте ветви Простые переменные и Презентация элемента элемента Скопируйте выделенные элементы и вставьте их в и вставьте их в Retailer © 2002-2011 ООО Экс Джей Текнолоджис», Скопируйте некоторые элементы из класса Factory в Скопируйте некоторые элементы из класса Factory в класс Retailer. Мы делаем это для того, чтобы избавить себя от повторного задания уже имеющихся избавить себя от повторного задания уже имеющихся в другом классе элементов. Раскрыть ветвь дерева можно щелкнув на значке или ) слева от имени ветви Выделите несколько элементов, последовательно щелкая по ним с нажатой клавишей Ctrl. © 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 210 Ритейлер. Фаза 1. Шаг 7 Ритейлер. Фаза 1. Шаг Имя network Г ф NetworkResourcePool Имя: Группа фигур сети Имя Количество ресурсов Скорость Фигура анимации свободного Фигура анимации свободного ресурса Разрешить вращение: Базовый узел Соедините эти объекты Базовый узел shapeForkLiftHome © 2002-2011 ООО Экс Джей Текнолоджис», Добавьте указанные объекты библиотеки Enterprise Library на диаграмму класса Retailer и измените их свойства др у Объект Network задает топологию и параметры сети, а также осуществляет управление сетевыми ресурсами. • Укажите Группу фигур сети networkGroup Здесь networkGroup Укажите Группу фигур сети networkGroup. Здесь networkGroup имя нашей группы, содержащей прямоугольники и ломаные, задающие структуру сети Об t kR P l б С Объект NetworkResourcePool задает набор сетевых ресурсов. С помощью этого объекта мы зададим набор движущихся ресурсов, моделирующих погрузчики. Назовите объект Назовите объект Задайте Количество ресурсов этого типа Задайте Скорость, с которой будут двигаться эти ресурсы 1*meter/second() 1 Укажите фигуру, которой будут отображаться эти ресурсы Установите флажок Разрешить вращение, чтобы фигуры погрузчиков могли поворачиваться согласно направлению их погрузчиков могли поворачиваться согласно направлению их движения • Задайте базовое местоположение этих ресурсов в сети. В поле Базовый узел, введите имя прямоугольника, задающего Базовый узел, введите имя прямоугольника, задающего соответствующий узел сети Соедините объекты, чтобы указать ресурсам, что они будут работать в сети заданной этим объектом 2002-2011 ООО Экс Джей Текнолоджис», в сети, заданной этим объектом Ритейлер. Фаза 1. Шаг 8 Ритейлер. Фаза 1. Шаг Имя Сеть Количество мест в ряду Фигура прохода Глубина ячейки Узел у начала прохода Узел у конца прохода Рисовать хранящиеся заявки В центре ячейки 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 213 Добавьте объект, который будет моделировать область хранения склада. Измените свойства объекта: • Пусть у нашего склада будет 30 ячеек в ряду Пусть у нашего склада будет 30 ячеек в ряду. • Чтобы задать склад, Вам нужно просто нарисовать три прямоугольника Узел у начала прохода (shapeAisleFront), Фигура прохода (shapeAisle) и Узел у конца прохода (shapePickup). Оба узла у прохода должны принадлежать сети (то есть б б Г ф ) ф быть добавленными в Группу фигур сети, в то время как фигура прохода, наоборот, не должна. Для простоты мы будем моделировать только одну область хранения. Если вам нужно смоделировать несколько зон, воспользуйтесь объектом нужно смоделировать несколько зон, воспользуйтесь объектом NetworkStorageZone Моделирование складов и зон хранения Для моделирования хранилищ с множеством ячеек, имеющих периодическую структуру склады и т.д.), Enterprise Library предоставляет следующие объекты: NetworkStorage моделирует два стоящих друг напротив друга стеллажа и проход между NetworkStorage моделирует два стоящих друг напротив друга стеллажа и проход между ними. В каждой ячейке может находиться только одна заявка. моделирует зону хранения, состоящую из набора стеллажей и проходов между ними (моделируемыми с помощью объектов NetworkStorage ). помещает заявку в ячейку заданного стеллажа или зоны хранения. Заявка при этом перемещается из ее текущего местоположения в сети к ячейке (при Заявка при этом перемещается из ее текущего местоположения в сети к ячейке (при необходимости ‐ с помощью движущихся сетевых ресурсов. извлекает заявку из ячейки заданной зоны хранения и перемещает б 2002-2011 ООО Экс Джей Текнолоджис», ее в заданное место сети (при необходимости ‐ с помощью сетевых ресурсов Ритейлер. Фаза 1. Шаг 9 Ритейлер. Фаза 1. Шаг Добавьте объекты диаграммы процесса и назовите их как показано на слайде 2002-2011 ООО Экс Джей Текнолоджис», Создайте простую диаграмму процесса из объектов Создайте простую диаграмму процесса из объектов Enterprise Library. Назовите эти объекты так, как показано на слайде выше. • Группа объектов Enterprise Library, имена которых начинаются с Network, ру p y, р , используется при моделировании транспортных сетей, строящихся на базе имеющегося плана (помещения, местности и т.п.). Обычно они используются при моделировании процессов, проистекающих в каком‐то определенном физическом пространстве и включающих в себя движение заявок и ресурсов. • Вы можете легко отличить такие объекты по значкам синих оттенков. • Такие сетевые объекты могут легко сочетаться водной диаграмме процесса с • Такие сетевые объекты могут легко сочетаться водной диаграмме процесса с обычными объектами Enterprise Library, такими как, Queue , и т.д. © 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 216 Ритейлер. Фаза 1. Шаг 10 Ритейлер. Фаза 1. Шаг Фигура анимации заявки pictureBox NetworkStorage или NetworkStorageZone: Перемещать с помощью ресурсов pictureBox р щ щ р ур Список ресурсов {pool1, … }: Сеть Узел входа Узел входа Скорость forkLiftTrucks.speed © 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 217 Объект Source моделирует прибытие товаров. У i B ф • Укажите нашу картинку pictureBox в качестве фигуры анимации заявок, создаваемых этим объектом Source Объект NetworkEnter добавляет входящую заявку в сеть и помещает ее в указанный узел сети указанный узел сети. Параметр Сеть определяет сеть, в которую попадут заявки. Введите здесь имя нашего объекта Network : В поле Узел входа Вы задаете узел сети, в котором появится заявка. В поле Узел входа Вы задаете узел сети, в котором появится заявка. Введите здесь имя прямоугольника, задающего соответствующий узел Задайте Скорость, с которой заявки будут перемещаться посети. Вводя здесь forkLiftTrucks speed мы задаем скорость равной скорости здесь forkLiftTrucks.speed мы задаем скорость равной скорости погрузчиков. Объект NetworkStoragePut моделирует помещение поступающих товаров в ячейки склада ячейки склада. • Задайте зону хранения, в которую должны быть помещены товары. Введите имя нашего объекта NetworkStorage в поле или Установите флажок Перемещать с помощью ресурсов, поскольку мы хотим, чтобы товары доставлялись к ячейкам с помощью ресурсов ‐ погрузчиков. • Укажите какие именно ресурсы понадобятся для перемещения Для этого • Укажите, какие именно ресурсы понадобятся для перемещения. Для этого напишите список имен объектов, задающих требуемые ресурсы в поле Список ресурсов {pool1, …}. Обратите внимание, что список должен быть помещен в фигурные скобки 2002-2011 ООО Экс Джей Текнолоджис», www.xjtek.ru 218 Ритейлер. Фаза 1. Шаг 11 Ритейлер. Фаза 1. Шаг Время задержки uniform (20, 45)* minute() Максимальная вместимость: |