- •Сучасна теорія управління методичні вказівки
- •Київ нухт 2011
- •Узагальнена схема імітаційного моделювання
- •Постановка задачі
- •Реалізація імітаційної моделі засобами аnylogic
- •2.1. Загальна характеристика та принципи функціонування мови AnyLogic
- •2.2. Інтерфейс програми
- •2.3. Режим виконання моделі
- •2.4 Основи мови Java для побудови моделей в середовищі AnyLogic
- •2.5.Огляд компонент бібліотеки Enterprise Library
- •2.6. Огляд компонент бібліотеки Діаграма дій
- •Машинна імітація в технічних і економіко-організаційних системах
- •3.1. Розв’язання задач масового обслуговування
- •Тому середня довжина черги:
- •3.2. Розв’язання задач керування запасами
- •Алгоритм визначення у*
- •Завдання до лабораторних робіт
- •Лабораторна робота 1
- •Лабораторна робота №2
- •Завдання
3.2. Розв’язання задач керування запасами
Цей напрямок вимагає обліку різних змінних, зокрема попиту на конкретні товари, а також норм випуску й часу поставки. Сполучення цих змінних в одній моделі дозволяє керівникові розглянути кілька варіантів зберігання запасів. Так, за допомогою методів моделювання можна оцінити й порівняти необхідний рівень запасів, необхідну точку замовлення, терміни й періодичність поставок, а також виробничі графіки.
Приклад 2.
Розглянемо модель управління запасами з миттєвим поповненням запасу при відсутності дефіциту.
С1,
якщо у
< q,
Нехай ціна одиниці товару =
C2, якщо y q,
де С1 > C2; q – розмір замовлення, при якому надається знижка.
Тоді сумарні витрати за цикл, крім витрат оформлення замовлень і зберігання запасу, мають включати витрати придбання:
TCU1(y) = C1 + k/y + hy/2, якщо y < q,
TCU2(y) = C2 + k/y + hy/2, якщо y q.
Витрати
1 2 3 ут q1 TCU1 TCU2







у
Рис.13.
Не зважаючи на вплив зниження цін, позначимо ут – розмір замовлення, при якому досягається мінімум величин TCU1 і TCU2. тоді
_____
ут = 2k/h.
З вигляду функцій TCU1 і TCU2 (рис.5) видно, що оптимальний розмір замовлення у* залежить від того, де по відношенню до наведених зон (1, 2 і 3) знаходиться точка розриву ціни q. Ці зони знаходяться в результаті визначення q1 ( > ym) з рівняння
TCU1(ут) = TCU2(q1).
_____
Оскільки значення ут відоме (ут = 2k/h), можна визначити q1 з попереднього рівняння.
Зона І: 0 q < ym;
Зона ІІ: ут q < q1;
Зона ІІІ: q q1.
На рис.7 показано графічне рішення рівняння в залежності від того, в якій зоні розташовано q.
Алгоритм визначення у*
1. Визначити ут = 2k/h. Якщо q < ym (зона 1), то у* = ут і алгоритм закінчується.
2. Визначити q1 з рівняння TCU1(ym) = TCU2(q1); встановити, у якій зоні знаходиться величина q.
а) якщо ут q q1 (зона 2), то у* = q;
б) якщо q q1 (зона 3), то у* = ут.
Розглянемо модель управління запасами при таких вихідних даних: k = 10 у.о., h = 1 у.о., = 10 од., С1 = 2 у.о., С2 = 1 у.о. і q = 15 од.
Витрати TCU1 TCU1
min TCU2 TCU2









q q1 ym
у у q q1 ym
q – у 1-й зоні, у* = ут q – у 2-й зоні, у* = q
Витрати TCU1
у q q1 ym TCU2




q – у 3-й зоні, у* = ут
Рис.14.
Побудуємо модель в середовищі AnyLogic
Використовуючи палітру Диаграмма действий побудуємо діаграму нашої задачі:
-
Помістимо в робочу область проекту блок
Диаграмма
действий (actionChart) і у властивостях
«Аргументы» задамо всі змінні і їх
типи, які будуть використовуватись в
діаграмі. Слід зазначити, оскільки наша
діаграма дій має повертати значення
сумарних витрати на одиницю часу, тому
у властивостях «Тип возвращаемого
значения» слід вибрати double (Рис.15). -
Для присвоєння значення заданих даних і обчислення ym, розмістимо на діаграму блок
Код
і у властивість «Код» впишемо наступним
код:
«k=10;h=1;b=10;c1=2;c2=1;
q=15;ym=sqrt(2*k*b/h)»
(Рис.16)

Рис.15. Оголошення змінних моделі

Рис.16. Внесення коду моделі.
-
Для забезпечення виконання фрагментів коду у відповідності до умови помістимо в нашу модель блок
Решение
(If.. Else)
і у властивостях «Условие» задаємо:
q<=ym
(Рис.17)

Рис.17 Задання умови виконання фрагменту коду
-
Використовуючи вище описані блоки побудуємо діаграму дій розв’язку задачі(Рис.18):
-
В блоці
Вернуть
значение (Return)
у властивості «Возвращаемое
значение»
слід
вказати
змінну TCU
- значення
сумарних витрати на одиницю часу.

Рис.18 Діаграма дій розв’язку задачі
