Материалы тренинга по AnyLogic
.pdfРитейлер. Фаза1. Шаг12
Выделите эксперимент mu at on
Выберите Retailer
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
221 |
|
|
эксперимента Simulation.
Главный (корневой) активный объект
•Модель AnyLogic обычно представляет собой дерево активныхобъектов, вложенныхдруг в друга. Объект, являющийся корнем этого дерева, называется корневым объектом модели. Корневой объект представляет самыйверхний уровень абстракции модели.
•Выбирая корневой объект модели, Вы говорите AnyLogic, с какого объекта начатьпостроение модели. Изменяя корневой объект эксперимента, Вы можете очень легко изменить структуру запускаемой модели.
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
222 |
|
|
Ритейлер. Фаза1. Шаг13
Запустите модель
|
|
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
223 |
.
Выувидите каккоробкис товаромпоявляютсяв зоне разгрузки, затем помещаются на хранение в ячейки складаи попрошествии определенного времени забираются со склада для продажи.
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
224 |
Ритейлер. Фаза1. Вопросы
1.Как AnyLogic отделяет обычные фигуры
презентации от фигур сети? Как сеть узнает о
том, какаяименногруппафигурзадает
топологию этой сети?
. пишите ситуацию, в которо может ыть крайне полезна блокировка фигур.
3.Как Вы можетезадать скорость движения
сетевогоресурса?
4.Какие объекты Вы использовали для того, что ы до авить извлечь заявку из зоны хранения?
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
225 |
Ритейлер. Фаза2
• |
Давайте немного усовершенствуем нашу модель. |
• |
Предположим, чтонаш товардоставляетсяна склад |
|
г у вик ми, к жды и к т ыхп в ит п ти и |
|
10 стиральныхмашин. |
•Поприбытиигрузовикразгружается. Время разгрузки распределено потреугольномузаконус параметрами
1, 2, 3 минуты.
•Полученные машины также, какэтобылои раньше, помещаются в свободныеячейки складас помощью погрузчиков.
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
226 |
Ритейлер. Фаза2. Шаг1
Уменьшите картинку
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
227 |
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
228 |
Ритейлер. Фаза2. Шаг2
Batch |
NetworkEnter |
Постоянная партия: |
Сеть: network |
игура анимациипартии: orry |
Узел входа: s apeUn oa Entry |
Разрешить вращение: |
Скорость: 2*meter/second() |
|
|
|
|
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
229 |
Добавьте в диаграммупроцесса новые объекты: |
|
|
Этот объект Batch будет моделировать созданиепартии |
||
товара, отправляемой на склад ритейлера. |
|
|
• |
Сбросьте флажок Постоянная партия, чтобы разрешить |
|
|
последующую разборку партии на отдельные заявки |
|
|
(моделирующие коробки со стиральнымимашинами |
|
|
внутри). |
|
• Задайтенашу картинку lorry в качестве фигуры, которой |
||
|
будутотображатьсязаявки партии(внашемслучаеони |
|
|
будут моделироватьгрузовики). |
|
• Разрешите вращение фигур анимациидвижущихся |
||
|
грузовиковсогласно направлениюих движения. |
|
Этот объект NetworkEnter добавляет грузовики в нашу сеть. |
||
• |
Укажите узел,сети, в который попадут грузовики: . |
|
|
shapeUnloadEntry. |
|
• |
ада те скорость движения грузовиков равно |
двум |
|
метрам в секунду: 2*meter/second(). |
|
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
230 |
Ритейлер. Фаза2. Шаг3
NetworkMoveTo |
|
|
|
зел: s ape ruc n oa |
ng |
|
|
Действиепри выходе: |
|
NetworkExit |
Unbatch |
entity.setOffsets( 0, 0, PI/2) |
|
|
|
|
|
|
|
|
|
|
|
Delay |
|
ремя задержки: |
|
triangular (1, 2, 3)*minute() |
|
Максимальнаявместимость: |
|
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
231 |
Объект NetworkMoveTo перемещает заявку в указанное место
сети. С помощьюэтогообъекта мы перемещаем грузовикиот въезда на склад к зоне разгрузки.
• Укажитеместо назначения заявки в поле Узел: shapeTruckUnloading.
• Введите entity.setOffsets(0, 0, PI/2) в поле Действие при выходе.
Такимспособоммы поворачиваем фигуркугрузовика, чтобы она не перемещалась «задом наперед».
Объект Delay моделирует задержку,.требуемуюна разгрузку
• Задайте Время задержки: triangular(1, 2, 3)*minute()
• Сделайте вместимость объекта максимально возможнойдля
,
грузовиков.
Этот объект NetworkExit будетудалять из сети те грузовики, которыеуспешно доставят свой товар ритейлеру.
Объект Unbatch выполняет разборкузаявки партии на отдельные
заявки, представляющиесобойкоробкисостиральными
машинами.
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
232 |
Ритейлер. Фаза2. Шаг4
Запустите модель
|
|
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
233 |
Ритейлер. Фаза2. Вопросы
1.Допустимо ли завершать поток заявок с
помощью объекта NetworkExit?
2.КакВыможетенарисоватьсоединительтакой
формы: ?
3.Заявка проходит по соединителю за:
(a)нулевое время
(b)1 единицумодельноговремени
(c)время зависит отформы соединителя
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
234 |
|
|
Ритейлер. Фаза3
•Теперь мы хотим реализовать политику
пополнения товарных запасов ритейлера.
Давайтеостановимсянаширокоприменяемой
политике (s, S), заключающейся в следующем:
•Заданы две границы уровнятоварныхзапасов:
нижняя (s) и верхняя (S).
•Втомслучае, если ритейлер испытывает дефицит товара, тоесть количествотовара, хранящегося на складе ритейлера, а такженаправляющегося к нему на грузовиках, падает донижнего уровняs или ниже, отсылаетсязаказ на столькоединиц товара, сколько верхнего уровняS.
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
235 |
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
236 |
Ритейлер. Фаза3. Шаг1
Добавьте
простую переменную и двапараметра
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
237 |
|
|
Переменная inventory будет хранить текущее значение уровня товарных запасов |
|
ритейлера. |
|
• |
дела те эту переменную целочисленно типа n , поскольку она удет |
|
считать единицы товара. |
Параметр S будет задавать верхнюю границу уровня товарных запасов. |
|
• |
, |
|
умолчанию равнымчислу ячеек хранения на складе (60) и введите |
|
applyInventoryPolicy(); в его Действии при изменении. Этот кодбудет |
|
пересчитывать текущее значение уровня запасов ритейлера путем вызова |
|
функции, которую мы зададим позднее. |
Параметр s будет задавать нижнюю границу уровня товарных запасов. |
|
• |
Создайте этот параметр путем клонирования ранее созданного параметра |
|
S. Переименуйте его в s и задайте его Значение по умолчанию равным 20. |
КакВы можете увидеть, здесь для заданиянапервый взглядодинаковыхсущностей
используютсяразличныеэлементы переменная и параметр. Вчемпричинатакого
решения?
Параметры или переменные: что использовать?
•Параметры обычно используются длязаданиястатическиххарактеристикобъекта. Значениепараметра обычноостается неизменнымво время "прогона" модели и изменяется пользователем только в определенные моменты времени (обычно между"прогонами" модели) при желанииизменить характеристикимодели.
•Переменные обычно используются для хранениярезультатов моделирования, а такжедля заданияменяющихся по ходумоделированияданныхи характеристик.
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
238 |
|
|
Ритейлер. Фаза3. Шаг2
Диаграмма действий с
одноименной палитры
Назовите диаграмму действийapplyInventoryPolicy
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
239 |
|
|
Задайте алгоритм, которыйбудетпроверять, является ли текущий уровень товарных запасов ритейлера достаточным, и заказывать необходимоеколичество единиц товара в случае такой необходимости. Давайте зададим этот алгоритм графически с помощьюдиаграммы действий.
Диаграммы действий
•Диаграмма действий представляет собой структурированнуюблок схему, позволяющую графическизадатьалгоритм в стиле структурного программирования. Диаграммадействийсобирается из блоков, расположенных напалитре Диаграмма действий.
•Диаграммыдействийоблегчаютзаданиеалгоритмов, делая необязательным знаниесинтаксисаJava операторов.
ихболее понятными для другихпользователей модели. |
, |
|
|
||
ачните рисование диаграммы де стви |
с до авленияэлемента |
|
Диаграммадействий. Тем самым Вы создадитепростейшую |
||
диаграммудействий, состоящую из начальной точки(задаваемой |
||
со ственно локом иаграмма е стви |
и лока ернуть |
|
значение. Теперь Вы можете добавлять в созданную структуру |
||
другиеблокидиаграммы действий согласно логикезадаваемого |
||
. |
|
240 |
© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru |
|