Главная » Статьи » Студентам » Мат. модели в трансф. экономике

Лекция. Моделирование цепи поставок в нотации системной динамики (на примере модели "Beer Game")

Классическим примером динамической модели управления взаимодействием предприятий в цепи поставок является теоретическая модель о пивоваренном заводе (The Beer Game simulation) и ее модификации [Agapova T., Fletcher E. Teaching Supply Chain Management through Simulation Modelling. – Donetsk, Sunderland: REAP, TEMPUS/TACIS programme JEP number, 2002. – 9 p.; Sterman, J. Teaching takes off: Flight simulators for management education: “The Beer Game" // http://web.mit.edu/jsterman/www/SDG/beergame.html.], которые иллюстрируют продвижение ТМЦ от производителя к дистрибьютору, далее оптовому и розничному торговым предприятиям. Часть данных моделей относится к классу непрерывных моделей, а  часть – к классу дискретных.

В дискретных задачах ожидаемый спрос в период времени t описывается следующим разностным уравнением [Paul R.J., Hlupic V. and Giaglis G., 1998., Simulation modeling of business processes. In: Avison D. and Edgar-Neville D., ed. Proceedings of the 3rd UK Academy of Information Systems Conference, June 1998. Lincoln: McGraw-Hill. – рр. 311-320.]:

,

где     – поступающие заявки на покупку продукции в период времени t; – ожидаемый спрос в предыдущий период;   – параметр, регулирующий механизм прогнозирования спроса .

Характерной для данной модели и ее модификаций чертой является использование каждым элементом цепи поставок параметра, регулирующего интенсивность восполнения запасов на складе () в зависимости от нормативного уровня запаса (DINV), текущего объема запасов () и размера неудовлетворенного спроса  (). Достоинством данных моделей является то, что они учитывают ситуацию, когда товары могут быть заказаны, но еще не доставлены. Если этого не делать, на предприятиях возникает угроза появления значительных колебаний в запасах, поэтому вводится регулирующий параметр восполнения запасов за счет продукции в пути (). В конечном итоге, определение объема заказов в имитационных моделях функционирования цепи поставок (логистического канала или канала сбыта) задается, как правило, в виде [Agapova]:

.

где  – характеризует стратегию закупочной деятельности с учетом уровня запасов продукции на складе и продукции "в пути" (SL); DSL– нормативный объем восполнения запасов за счет продукции в пути.

Таким образом, выполнение заказов на каждом предприятии регулируется двумя параметрами:  и . Реализация данной модели (рис. 1) иллюстрирует характер поведения всей цепи поставок, в которой каждое предприятие автономно регулирует выделенные параметры  и, которые обуславливают гашение колебаний в цепи поставок, возникновение регулярных колебаний, деградацию системы в хаос.



Рис. 1. Результаты реализации классической модели "Beer Game"

 

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

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

В анализе эффективности и процессе совершенствования функционирования цепи поставок большое внимание уделяется временным характеристикам, поскольку большие лаги в закупочной и сбытовой деятельности приводят к повышению издержек (табл. 1) и способны дестабилизировать работу системы [Törn A. Simulation nets, a simulation modeling and validation tool // Simulation. – 1985. – Vol. 45, No. 2. – pp.71-75.].

 

Таблица 1

Временные показатели в анализе цепей поставок



Для анализа влияния временных параметров работы цепи поставок и величин технологических запасов на предприятиях может быть использована модифицированная модель "Beer Game", которая охватывает распределительный канал из четырех элементов и реализована в терминах системной динамики (рис. 2) [Myrtveit M. Beer Distribution Game. – Massachusetts Institute of Technology, Powersim Corp, 1996.]. Модификация модели осуществлена посредством включения в модель параметров, отражающих временные периоды принятия решений и их реализации. Поиск оптимального варианта значений регулирующих параметров производится на основе стоимостной сравнительной оценки проведенных экспериментов. Итоговым показателем, который подлежит сравнению, являются общие издержки функционирования цепи поставок.


Рис.2. Модифицированная модель Beer Game в терминах системной динамики [Myrtveit]

 

Уравнения диаграммы модели, построенной в ППП PowerSim:

 

Объем невыполненных заказов:

init     Backlog = CustomerOrders

flow   Backlog = -dt*ShipmentsOut   +dt*OrdersIn

doc    Backlog = невыполненные заказы (продукция не отгружена.


Запасы:

init     Inventory = InventoryCoverage*CustomerOrders

flow   Inventory = -dt*ShipmentsOut+dt*ShipmentsIn

doc    Inventory = запас продукции.


Продукция «в пути»:

init     OrdersInPipeline = CustomerOrders*DeliveryDelay

flow   OrdersInPipeline = -dt*ShipmentsIn   +dt*OrdersOut

doc    OrdersInPipeline = количество заказанной, но не доставленной от поставщиков продукции.


Общая сумма штрафов:

init     SumCostBacklog = 0 {Currency}

flow   SumCostBacklog = +dt*CostBacklog

doc    SumCostBacklog = общая сумма штрафов.


Суммарные затраты на хранение:

init     SumCostInventory = 0 {Currency}

flow   SumCostInventory = +dt*CostInventory

doc    SumCostInventory = суммарные затраты на хранение.


Штрафы:

aux    CostBacklog = Backlog * UnitCostBacklog

doc    CostBacklog = сумма штрафов, начисляемая за задержку доставки продукции на одну неделю.


Затраты на хранение:

aux    CostInventory = Inventory * UnitCostInventory

doc    CostInventory = затраты на хранение продукции в течение одной недели.


Объем поступивших заказов:

aux    OrdersIn = CustomerOrders WHEN p = FIRST(p) BUT OrdersOut(p-1) OTHERWISE

doc    OrdersIn = поступившие заказы. Первый участник цепи поставок получает заказ непосредственно от покупателя, остальные – от  предшествующих им участников  цепи поставок.


Объем акцептованных заказов:

aux    OrdersOut = SELECTDECISION(INDEX(p), OrdersDecided, OrdersSimulated, OrdersSimulated, OrdersSimulated)

doc    OrdersOut = объем акцептованных заказов.


Доставка:

aux    ShipmentsIn = DELAYPPL(ShipmentsOut(p+1), DeliveryDelay, ShipmentsOut(p+1)) WHEN p < LAST(p) BUT

DELAYPPL(OrdersOut(p), DeliveryDelay, ShipmentsOut(p)) OTHERWISE

doc    ShipmentsIn =объем продукции, доставленной предприятию от его поставщика.


Отгрузка:

aux    ShipmentsOut = MIN(Inventory, Backlog)

doc    ShipmentsOut = объем отгруженной продукции.


Заказы клиентов:

aux    CustomerOrders = CustomerOrdersInitial + STEP(CustomerOrdersStep, CustomerOrdersStepTime)+STEP(CustomerOrdersStep, 100)

doc    CustomerOrders = объем продукции, заказанный конечными потребителями.


Планируемый объем невыполненных заказов, Требуемый объем запасов:

aux    DesiredBacklog = ExpectedOrders

aux    DesiredInventory = ExpectedOrders*InventoryCoverage

doc    DesiredInventory = требуемый объем запасов.


Требуемый объем заказов для цепи поставок:

aux    DesiredOrdersInPipeline = ExpectedOrders*DeliveryDelay

doc    DesiredOrdersInPipeline = объем заказов, необходимый для выполнения заказов участников цепи поставок в случае задержек поставок.


Ожидаемый объем запасов:

aux    ExpectedOrders = DELAYINF(OrdersIn(p), ExpectedOrdersAdjustmentTime, 1, CustomerOrders)

doc    ExpectedOrders = ожидаемое число заказов, рассчитанное путем сглаживания темпа поступления заказов.


Объем заказов для восполнения запасов:

aux    OrdersForInventory = (DesiredInventory - Inventory + Backlog - DesiredBacklog) / InventoryAdjustmentTime

doc    OrdersForInventory = объем заказов для восполнения запасов.


Объем заказов для цепи поставок

aux    OrdersForPipeline = (DesiredOrdersInPipeline - OrdersInPipeline) / OrdersForPipelineAdjustmentTime

doc    OrdersForPipeline = заказы для удовлетворения требований цепи поставок.


Расчетный объем заказов:

aux    OrdersSimulated = MAX(0, ROUND(OrdersForInventory + OrdersForPipeline + ExpectedOrders))

doc    OrdersSimulated = расчетный объем заказов.


Общие затраты:

aux    SumCost = SumCostBacklog + SumCostInventory

doc    SumCost = сумма общих затрат предприятия.


Начальный спрос:

const CustomerOrdersInitial = 4 {Bottle/Week}

doc    CustomerOrdersInitial = начальный спрос.


Уровень изменения спроса:

const CustomerOrdersStep = 4 {Bottle/Week}

doc    CustomerOrdersStep = скачкообразное изменение спроса.


Период изменения спроса:

const CustomerOrdersStepTime = 2 {Week}

doc    CustomerOrdersStepTime = период, за который происходит скачкообразное изменение спроса.


Срок поставки:

const DeliveryDelay = 6{Week}

doc    DeliveryDelay = период между отгрузкой и доставкой.


Время корректировки ожидаемого объема заказов:

const ExpectedOrdersAdjustmentTime = 4 {Week}

doc    ExpectedOrdersAdjustmentTime = время, необходимое для корректировки ожидаемого объема заказов.


Период корректировки запасов:

const InventoryAdjustmentTime = 5 {Week}

doc    InventoryAdjustmentTime = время, необходимое для корректировки запасов.


Период производства за счет запасов:

const InventoryCoverage = 3 {Week}

doc    InventoryCoverage = время, в течение которого продолжение производства возможно за счет имеющихся запасов при ожидаемом уровне заказов.


Требуемая интенсивность заказов:

const OrdersDecided = INIT(CustomerOrders) {Bottle/Week}

doc    OrdersDecided = установленная интенсивность заказов.


Время корректировки объемов заказов для цепи поставок:

const OrdersForPipelineAdjustmentTime = 10 {Week}

doc    OrdersForPipelineAdjustmentTime = период времени корректировки объемов заказов для цепи поставок.


Удельные штрафы:

const UnitCostBacklog = 10 {Currency/Bottle}

doc    UnitCostBacklog = удельные штрафы за невыполненные заказы.


Удельные затраты на хранение:

const UnitCostInventory = 5 {Currency/Bottle}

doc    UnitCostInventory = затраты на хранение единицы продукции в неделю.
Категория: Мат. модели в трансф. экономике | Добавил: kvn2us (21.03.2009) | Автор: Кравченко В.Н.
Просмотров: 4742
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]