
- •1. Введение
- •1.1. Математическое моделирование как методологии научных исследований
- •1.2. Классификация математических моделей
- •2. Исследование операций
- •2.1. Терминология
- •2.2. Процесс исследования операций
- •3. Моделирование на основе системного подхода
- •3.1. Терминология
- •3.2. Этапы системного анализа-синтеза
- •3.3. Классификация систем и инструментов аналитической деятельности
- •4. Математическое программирование
- •4.1. Линейное программирование
- •4.1.1.Терминология
- •4.1.2. Решение и анализ задач лп графическим методом
- •4.1.3. Укрупненный алгоритм решения графическим методом
- •4.1.4. Анализ чувствительности оптимального решения задачи лп
- •Самостоятельная работа
- •4.2. Целочисленное программирование
- •4.2.1. Терминология
- •4.2.2. Задача выбора плана застройки участков
- •4.3. Управление запасами
- •4.3.1. Основная модель управления запасами
- •4.3.2. Моделирование управления запасами в условиях предоставления скидки
- •Построение модели для нахождения eoq в условиях предоставления скидки.
- •Метод анализа иерархий
- •5.1. Терминология
- •5.2. Задача о выборе университета
- •5 .3. Задача поиска оптимального решения с помощью метода анализа иерархий
- •Принятие решений в условиях риска и неопределеннности
- •Терминология
- •6.2. Принятие решений в условиях риска
- •6.2.1. Сравнение рисков инвестиционных проектов
- •6.3. Принятие решений в условиях неопределенности
- •6.3.1. Критерии выбора альтернативных решений
- •7. Имитационное моделирование средствами Excel
- •7.1. Имитационное моделирование как метод исследования операций и оптимизации
- •7.2. Имитационное моделирование в ms Excel.
- •8. Создание модели предприятия и принятие управленческого решения на основе результатов моделирования.
- •8.1. Описание предприятия
- •8.2. Совершенствование модели с учетом дополнительной информации о системе и внешней среде.
- •9. Системная динамика как средство оптимизации функционирования экономических и экологических систем
- •9.1. Терминология
- •9.2.Основные принципы системной динамики
- •9.3. Модель «хищники-жертвы» как пример моделирования обратных связей
- •9.4. Имитационная модель «хищники-жертвы» в системе ms Excel
- •9.5. Имитационная модель «хищники-жертвы» в системе stella
- •Приложение 1
- •Литература
7.2. Имитационное моделирование в ms Excel.
Рассмотрим деловую игру, описанную в книге Э. Голдрата «Цель». Игра используется в качестве модели последовательного процесса производства. После описания игры выполним её моделирование средствами MS Excel. Таким образом, будет показан общий прием моделирования динамических систем в универсальной вычислительной среде, каковой являются электронные таблицы.
Моделирование (настольная деловая игра) начинается с запаса спичек слева от первого игрока. Спички моделируют заготовки детали, проходящей последовательные этапы обработки. Игроки бросают игральные кубики, и выпавший результат трактуется как производительность станка, принадлежащего данному игроку в данный момент. Игрок_1 бросает кубик, и выпавшее число «4» - его производственный результат. Игрок_1 забирает 4 спички (перерабатывает 4 заготовки). Эти спички – доступный входной материал для Игрока_2.
Рис. 7.1. Результат Игрока_1
Игрок_2 выбрасывает «2». Его «производительность» равна 2, но он может получить только столько заготовок, сколько, поступило от Игрока_1. То есть его производственная мощность равна минимуму из «выпавшего» числа и количества, выданного («выработанного») Игроком_1. Имеется 4 доступных спички, а производительность Игрока_2 равна только 2. Таким образом Игрок_2 «обрабатывает» и направляет Игроку_3 только 2 спички, оставляя 2 спички в остатке у Игрока_1. Эти две спички моделируют «незавершенную продукцию» (WIP – Work-in-process).
Рис. 7.2. Результат Игрока_2
Заготовки для Игрока_3 – это спички, находящиеся у Игрока_2. Игрок_3 также «обрабатывает» минимум из числа, выпавшего при его бросании, и числа доступных спичек. Его продукция представляет выход всей производственной системы. Пусть Игрок_3 «выбросил» число «5», то есть его производительность равна 5, но доступны только 2 спички. Превышение производительности, составляющее 3 единицы, не используется. Таким образом, в результате первой итерации, моделирующей одну смену работы, система выпустила («произвела») 2 спички. Другие две спички остались в системе как «незавершенная продукция» (WIP) Игрока_1. WIP доступна для обработки в следующей итерации.
Рис. 7.3. Результат Игрока_3
Игроки продолжают игру, бросая кубик по одному разу на следующей итерации. «Выпуск продукции» каждого Игрока ограничивается его «производительностью» и количеством доступного сырья. В таблице 7.1 представлен результат 10-ти итераций игры. Средние величины по десяти играм показаны в последней строке таблицы. Итерация игры, проиллюстрированная выше, показана в 1-й строке. Незавершенная продукция, произведенная в первой итерации игры, показана в столбце WIP_1 в строке 2.
По результатам десяти итераций видно, что средняя производительность всей системы равна 3 единицам. WIP, которая накапливается после первого и второго Игроков, изменяется в течение игры. С помощью модели можно оценить долгосрочные свойства системы, то есть ответить на вопросы:
1. Какова средняя производительность моделируемой системы за одну итерацию?
2. Как изменяется количество спичек между Игроками (WIP) в течение игры?
3. Объяснить влияние изменчивости производительности на выход системы и на накопление незавершенной продукции (WIP).
Таблица 7.1. Десять итераций игры, моделирующей производство.
№ с м е н ы |
Произ-водитеь-ность 1 ( С1) |
Продук-ция 1 ( P1) |
Незавер-шенное произ. 1 ( W1) |
Произ-водитеь-ность 2 ( С2) |
Продук-ция 2 ( P2) |
Незавер-шенное произ. 2 ( W2) |
Произ-водитеь-ность 3 ( С3) |
Продук-ция 3 ( P3) |
Готовая продукция ( =Р3) |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
4 |
4 |
0 |
2 |
2 |
0 |
5 |
2 |
2 |
2 |
3 |
3 |
2 |
4 |
4 |
0 |
1 |
1 |
1 |
3 |
1 |
1 |
1 |
3 |
2 |
3 |
1 |
1 |
1 |
4 |
6 |
6 |
0 |
5 |
5 |
4 |
6 |
6 |
6 |
5 |
4 |
4 |
1 |
2 |
2 |
3 |
6 |
5 |
5 |
6 |
1 |
1 |
3 |
5 |
4 |
0 |
6 |
4 |
4 |
7 |
4 |
4 |
0 |
1 |
1 |
0 |
3 |
1 |
1 |
8 |
3 |
3 |
3 |
4 |
4 |
0 |
5 |
4 |
4 |
9 |
2 |
2 |
2 |
4 |
4 |
0 |
2 |
2 |
2 |
10 |
3 |
3 |
0 |
2 |
2 |
2 |
6 |
4 |
4 |
Средн. |
3,1 |
3,1 |
1,2 |
3,2 |
3 |
1,2 |
4,1 |
3 |
3 |
Математическая модель процесса
Математическое моделирование процесса начинается с задания переменных. Переменными задаются количественные факторы, описывающие состояние производственной системы. Обобщим представление системы, чтобы охватить класс произвольных последовательных производственных системы. Вместо Игроков этапы производства будем представлять как станции. Состояние системы идентифицируем параметром t (дискретное время). В процессе производства итерация игры могла бы быть эквивалентна интервалу в один день (или одна производственная смена), и тогда t будет показывать количество дней (смен). Вместо спичек будем оперировать с единицами продукции и запасами сырья, «незавершенной продукции» и готовой продукции, измеряемыми в этих единицах1. Введем следующие обозначения для общих показателей системы производства:
n – количество станций в процессе производства;
i –номер станции, i=1…n;
t – временной параметр , t = 0,1,2,..;
Ci(t) – производительность i станции в момент t;
Pi(t) – производство i станции в момент t;
Wi(t) –незавершенная продукция, доступная для i станции в момент t;
Модель производственной системы задается системой рекуррентных формул (7.1 – 7.5):
Станция 1
(7.1)
(7.2)
Станции i = 2,3,..,n-1
(7.3)
(7.4)
Станции n
(7.5)
Из уравнивания (7.1) видно, что выпуск продукции станции 1 равен ее производительности. Уравнивание (7.2) определяет WIP, доступную в момент t, как функцию переменных, полученных в предыдущий момент времени. А именно, количество доступной незавершенной продукции станции 1 в момент t, то есть W1(t), равно этому количеству в предыдущий момент W1(t) плюс количество новой продукции станции 1 в предыдущий момент P1(t-1) минус количество продукции взятой для переработки станцией 2 в предыдущий момент P2(t-1).
В уравнении (7.3), задается объем производства для станций со 2-й по n-ю. Объем производства ограничивается производительностью станций или количеством доступной незавершенной продукции (WIP). Отметим, что значение WIP всегда неотрицательно. Уравнение (7.4) аналогично уравнению (7.2), но вычисляет WIP для всех станций кроме n-й.
Уравнение (7.5) вычисляет объем производства на последней станции. Уравнения для WIP последней станции не составляется, потому что после неё получается готовая продукция.
В рекуррентных уравнениях для вычисления значений переменных в момент t = 1, должны быть определены значения всех переменных для момента t = 0. Верхний предел для t не установлен, но при моделировании этот предел задается исследуемым интервалом времени T, называемым временным горизонтом.
Если производительности станций известны в пределах временного горизонта, и заданы начальные значения переменных в момент времени t=0, то составленная система уравнений позволяет вычислить состояния системы для любого конечного периода времени. Каждая переменная в момент времени t зависит только от переменных в момент времени t-1 и выбранных дополнительных переменных в момент времени t, мы можем вычислить все переменные для момента t =1, затем вычислить переменные в момент t = 2, и так далее до t = T. Для того, чтобы переменные решения легко получались в любой заданный момент t, переменные следует упорядочить так, чтобы значение каждой следующей переменной зависело только от ранее вычисленных переменных. Для рассматриваемой системы уравнений этот порядок таков:
Случайные переменные
В производственном примере, как в большинстве имитационных моделей, точные значения некоторых переменных неизвестны. Например, производительности станций неизвестны и являются случайными величинами, имеющими заданное распределение. В случае Игроков, «перерабатывающих» спички, производительности определялись бросанием кубика. Поэтому производительность каждого Игрока на каждой итерации определялась случайной величиной с дискретным равномерным распределением, в интервале целых значений от 1 до 6.
В
более общем случае предполагается, что
каждая производительность имеет
некоторое заданное распределение. Тогда
производительность i-й
станции в момент t
является реализацией случайной величины,
которая имеет данное распределение.
Распределение может быть своим для
каждорй станции, то есть
Управление моделированием
Теперь можно описать представленную выше игру в терминах введенных переменных. Моделирование начинается с задания начального состояния системы, которое определяется значениями переменных в момент t=0. В нашем примере:
Производительности первого периода выбираются как значения равномерно распределенных случайных величин (бросок кубика):
По уравнениям модели рассчитываются значения переменных в 1-й период:
Моделирование 2-й итерации, с новыми значениями производительностей как случайных величин для t = 2:
Аналогично моделируется 3-я итерация:
Процесс продолжается последовательно, пока не будет достигнут временной горизонт T =10.
Моделирование динамической системы в MS Excel
Построим модель рассматриваемой системы с помощью электронной таблицы (рис. 7.4).
|
А |
B |
C |
D |
E |
F |
G |
H |
I |
J |
1 |
№ смен |
Производительность 1 |
Выпуск 1 |
Остатокнезавершенн. произ. 1 |
Производительность 2 |
Выпуск 2 |
Остатокнезавершенн. произ. 2 |
Производительность 3 |
Выпуск 3 |
Готовая продук ция |
2 |
|
( С1) |
( P1) |
( W1) |
( С2) |
( P2) |
( W2) |
( С3) |
( P3) |
( =Р3) |
3 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
4 |
1 |
2 |
2 |
0 |
3 |
2 |
0 |
1 |
1 |
1 |
5 |
2 |
4 |
4 |
0 |
6 |
4 |
1 |
6 |
5 |
5 |
6 |
3 |
1 |
1 |
0 |
4 |
1 |
0 |
5 |
1 |
1 |
7 |
4 |
1 |
1 |
0 |
2 |
1 |
0 |
2 |
1 |
1 |
8 |
5 |
4 |
4 |
0 |
5 |
4 |
0 |
2 |
2 |
2 |
9 |
6 |
4 |
4 |
0 |
2 |
2 |
2 |
5 |
4 |
4 |
10 |
7 |
5 |
5 |
2 |
5 |
5 |
0 |
5 |
5 |
5 |
11 |
8 |
2 |
2 |
2 |
3 |
3 |
0 |
6 |
3 |
3 |
12 |
9 |
4 |
4 |
1 |
2 |
2 |
0 |
6 |
2 |
2 |
13 |
10 |
5 |
5 |
3 |
3 |
3 |
0 |
5 |
3 |
3 |
14 |
Средн. |
3,20 |
3,20 |
0,80 |
3,50 |
2,70 |
0,30 |
4,30 |
2,70 |
2,70 |
15 |
Ст Откл |
1,549 |
1,549 |
1,135 |
1,434 |
1,337 |
0,675 |
1,889 |
1,567 |
1,567 |
Рис. 7.4. Модель производственной системы в течение 10 смен
В строке 3 заданы значения параметров системы на начальный момент.
Вначале моделируется переход системы из состояния в момент t=0 в состояние в момент t=1. Производительности 1-й, 2-й и 3-й станций моделируются в ячейках B4,E4 и H4, соответственно. В каждой из этих ячеек записана формула, задающая равномерно распределенную целочисленную случайную величину в интервале от 1 до 6:
=ЦЕЛОЕ(СЛЧИС()*6)+1.
В ячейках 4-й строки моделируются соответствующие уравнения
Ячейка и формула |
Уравнение |
С4 =B4 |
(7.1) |
D4 =D3+C3-F3 |
(7.2) |
F4=МИН(E4;C4+D4) |
(7.3) |
G4 =G3+F3-I3 |
(7.4) |
I4 =МИН(H4;F4+G4) |
(7.5) |
J4 =I4 |
|
Каждая следующая итерация моделируется копированием строки, что в MS Excel позволяет автоматически создавать формулы в других строках. Пример 25 итераций игры представлен на рис. 7. 5. Таким образом, с помощью инструментов MS Excel можно строить имитационные модели динамических систем при достаточно больших временных горизонтах1.
|
А |
B |
C |
D |
E |
F |
G |
H |
I |
J |
1 |
№ смен |
Производительность 1 |
Выпуск 1 |
Остатокнезавершенн. произ. 1 |
Производитель ность 2 |
Выпуск 2 |
Остатокнезавершенн. произ. 2 |
Производитель ность 3 |
Выпуск 3 |
Готовая
|
2 |
|
( С1) |
( P1) |
( W1) |
( С2) |
( P2) |
( W2) |
( С3) |
( P3) |
(=Р3) |
3 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
4 |
1 |
5 |
5 |
0 |
3 |
3 |
0 |
5 |
3 |
3 |
5 |
2 |
4 |
4 |
2 |
3 |
3 |
0 |
3 |
3 |
3 |
6 |
3 |
5 |
5 |
3 |
5 |
5 |
0 |
5 |
5 |
5 |
7 |
4 |
4 |
4 |
3 |
6 |
6 |
0 |
5 |
5 |
5 |
8 |
5 |
2 |
2 |
1 |
2 |
2 |
1 |
6 |
3 |
3 |
9 |
6 |
3 |
3 |
1 |
1 |
1 |
0 |
5 |
1 |
1 |
10 |
7 |
5 |
5 |
3 |
5 |
5 |
0 |
5 |
5 |
5 |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
23 |
20 |
3 |
3 |
1 |
6 |
4 |
0 |
3 |
3 |
3 |
24 |
21 |
4 |
4 |
0 |
1 |
1 |
1 |
3 |
2 |
2 |
25 |
22 |
2 |
2 |
3 |
5 |
5 |
0 |
2 |
2 |
2 |
26 |
23 |
1 |
1 |
0 |
4 |
1 |
3 |
5 |
4 |
4 |
27 |
24 |
3 |
3 |
0 |
1 |
1 |
0 |
5 |
1 |
1 |
28 |
25 |
3 |
3 |
2 |
3 |
3 |
0 |
4 |
3 |
3 |
29 |
Средн. |
3,080 |
3,080 |
1,040 |
3,600 |
3,000 |
1,080 |
3,840 |
3,000 |
3,000 |
30 |
СтОтк |
1,382 |
1,382 |
1,207 |
1,826 |
1,555 |
1,525 |
1,599 |
1,555 |
1,555 |
Рис. 7.5.
Варианты заданий
Используя математическую модель, задаваемую формулами (7.1)-(7.5), построить компьютерную модель, произвести моделирование работы в течение 100 смен для различных производственных линий. Оценить средний выход готовой продукции за смену, и его среднеквадратическое отклонение. Определить средние показатели количества незавершенной продукции.
производственной линии состоящей из 4 станков, случайная величина задающая производительность каждого станка имеет равномерное распределение со средним значением равным 5 и дисперсией 4.
производственной линии состоящей из 5 станков, случайная величина задающая производительность каждого станка имеет треугольное со средним значением равным 6 и дисперсией 4.
производственной линии состоящей из 5 станков, случайная величина задающая производительность каждого станка имеет нормальное распределение со средним значением равным 7 и дисперсией 4.