Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Материалы тренинга по AnyLogic

.pdf
Скачиваний:
218
Добавлен:
28.03.2015
Размер:
12.93 Mб
Скачать

Цепочкапоставок. Фаза2. Шаг 3

Удалите объект sink

Поместите сюдаПорт

Соедините порт

trucksOut с

иназовите его trucksOut

выходнымпортом

 

 

объекта loadOnTruck

 

 

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

321

Изменитедиаграмму процесса, заданную в классе Factory.

Удалите объект sink, поскольку теперь заявки (моделирующие грузовикистоваром), достигающие концадиаграммы процесса, не

должныуничтожаться, адолжныпересылатьсявдиаграмму

процесса, заданнуюв активном объекте Retailer.

Чтобыразрешить заявкам покидатьобъект factory object, добавьте

trucksOut.

.

 

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

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

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

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

322

 

 

Цепочкапоставок. Фаза2. Шаг 4

Удалите объекты source и loadOnTruck

Добавьтепорт

trucksIn исоединитеего

собъектом truckEnter

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

323

 

 

 

Retailer.

,

 

 

 

 

 

 

,

 

которыемоделировали появление грузовиков. Мы

 

большененуждаемсявэтихблоках, поскольку

 

 

теперь грузовикибудутприбыватьсюда с завода.

Добавьтепортдляприемапоступающихизвне

объектазаявок(грузовиков). Соедините его с

входнымпортомобъекта truckEnter, чтобызаявки

грузовикипопадалив диаграмму процесса.

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

324

Цепочкапоставок. Фаза2. Шаг 5

Выделите блокКод диаграммыдействий

Удалите строку source.inject(quantity);

изполя од

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

325

 

 

,

applyInventoryPolicy.

Удалите строкукодаsource.inject(quantity); из кода, выполняемогоблокомКод диаграммы действий.

Мыделаем этопотому, чтона этомэтапе товарыуже не будутпоявлятьсяна складе «ниоткуда», простопо отсылкезапроса– теперь они будутдоставлятьсяна склад с заводас помощью грузовиков(помере производстватоваровна заводе).

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

326

Цепочкапоставок. Фаза2. Шаг 6

Заявки прибываютсогласно:

Времени между прибытиями

Время междуприбытиями: uniform(20,30) * minute()

Заявки прибываютсогласно:

Времени между прибытиями

Время между прибытиями: uniform(20,30) * minute()

 

 

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

327

,

обаобъектаsource поставляли.детали стиральной

Измените режим создания заявоку объекта source o es. устьон создаетпозаявке в среднем каждые20 30 минут.

Сделайте тоже самое с объектомsourceDoors.

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

328

Цепочкапоставок. Фаза2. Шаг 7

Скопируйте элемент lorry из классаRetailer в классFactory

Укажите lorry вкачестве

Фигуры анимациипартии

объекта loadOnTruck

Установите флажок

Разрешитьвращение

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

329

 

 

,

заводагрузовики отображалисьна анимации тойже ритейлера,. ,

Скопиру текартинкугрузовика orr из класса

Retailer в класс Factory.

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

Разрешитевращениекартинкигрузовикасогласно

направлению его движения.

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

330

Цепочкапоставок. Фаза2. Шаг 8

Нарисуйте ломаную,

Назовите ломануюshapeDelivery, измените ее цвет и толщину

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

331

 

 

заводана склад оптового магазина.

начале мы нарисуем условную дорогу, ведущую от завода к ритейлеру. Затем мы добавим объект, который будет

моделироватьзадержку, связаннуюсдоставкойтовара.

Откройте диаграмму классаMain инарисуйте с помощью

, .

Начните рисоватьломануюот зоны погрузки завода.

Направлениеломанойимеетзначение, поскольку

позднее мы зададимее в качестве фигуры анимации объекта Enterprise Library.

Назовите ломаную shapeDelivery, смените Цвет линии на бежевыйи сделайте линию толще, задав Толщину линии равной26.

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

332

Цепочкапоставок. Фаза2. Шаг 9

Добавьтеобъект Delay и соедините его, какпоказано здесь

Измените свойстваобъекта

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

333

 

 

Установитевзаимодействиемежду заводом иоптовым магазином.

Добавьте объект Delay исоединитеего порты спортами вложенных объектов factory иretailer, как показано наслайде

. ,

доставкой товара с завода в магазин.

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

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

заказаннымтоваром.

Этизаявки будут проходитьчерезобъект Delay, а затемпоступатьв

объектretailer иперенаправлятьсявдиаграммупроцесса,

заданнуюв классе Retailer.

Измените свойстваобъекта:

Мы полагаемВремя задержки (соответствующеевремени доставки товара) равным одному дню.

УстановитефлажокМаксимальная вместимость для того, чтобы разрешить одновременноедвижениенеограниченного числа грузовиков по дороге.

ЗадайтеломануюshapeDelivery в качестве Фигуры анимации.

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

334

Цепочкапоставок. Фаза2. Шаг 10

Запустите модель

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

335

 

 

.

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

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

336

Цепочкапоставок. Фаза2. Вопросы

1.

Как будет работать источник заявок, если в

 

качестве времени между прибытиями задать

 

u

, ,

2.

Какимобразомможновставить

 

существующую заявку в диаграмму процесса?

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

337

Цепочкапоставок. Фаза3

• Давайте немного усовершенствуем нашу модель.

• Сейчас товаравтоматическидоставляетсяритейлерупо

.

прибытиягрузовиковс товаромпосутизависит от

интенсивностипроизводства– очереднаяпартия

товараотсылаетсяритейлерусразу после того, как очередные 10 единиц товараизготавливаются и погружаютсяна грузовик.

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

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

338

Цепочкапоставок. Фаза3. Шаг 1

Назовите классOrder

СоздайтеJava класс

 

 

 

Унаследуйтеэтот

классотклассаEntity

Добавьтепараметр quantity типа int

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

339

 

 

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

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

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

 

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

 

азовите класс r er.

Выберите com.xj.anylogic.libraries.enterprise.Entity в качестве базового класса.

 

Класс заявкиEntity

 

КлассEntity является базовымклассомдля всехзаявок, которые принимают

 

 

,

 

 

библиотекиAnyLogic Enterprise Library.

 

Через блокиEnterprise Library могут проходить только экземпляры классаEntity

 

 

илиего подклассов . оскольку мы хотим пересылать по диаграммепроцесса

заявкитипа Order, то мы выбираемклассEntity вкачестве суперклассадля классаOrder.

Задайтев только созданномклассе поле quantity типаint. Это поле будет использоватьсядля храненияколичества едиництовара,

.

© 2002-2011 ООО «Экс Джей Текнолоджис», www.xjtek.ru

340