Об оптимизации расписаний дискретных производств позаказного типа с применением имитационного моделирования

УДК519.8

П. В. Симаков

ОБ ОПТИМИЗАЦИИ РАСПИСАНИЙ ДИСКРЕТНЫХ ПРОИЗВОДСТВ ПОЗАКАЗНОГО ТИПА С ПРИМЕНЕНИЕМ ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ

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

Ключевые слова: теория расписаний, производственное планирование, имитационное моделирование.

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

Как следствие этого факта и факта, что входящий поток заказов является нестационарным как по составу, так и по количеству тех или иных изделий, в цехах позаказного производства стало появляться так называемое «плавающее узкое место», выражающееся в том, что в разные моменты времени перед разными станками стали накапливаться очереди из деталей, требующих обработки. В то же время другие станки, указанные в технологических маршрутах этих деталей, могут простаивать в ожидании деталей. По сведениям Международной ассоциации инженеров-технологов, «коэффициент загрузки технологического оборудования, даже при наличии переполненного портфеля заказов, не превышаетт 50 %» [1]. Такие плавающие узкие места нельзя расширить покупкой дополнительного оборудования, потому что придется удваивать или утраивать количество станков, так как узкие места могут возникать в любом месте. Увеличение же заделов, незавершенного производства приводит к замораживанию оборотных средств.

Единственным решением в такой ситуации остается применение компьютерных систем, использующих специальные оптимизационные методы по составлению и коррекции производственных расписаний, что может повысить коэффициент загрузки до 80 % и существенно увеличить скорость исполнения производственных заказов.

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

Так, С. М. Джонсон в 1954 г. показал, что составление расписания уже для трех станков относится к классу NP-сложных задач, поэтому в общем случае задача составления расписания за приемлемое время может быть решена только эвристически.

Однако несмотря на серьезную разработку проблем, предлагаемые на рынке программные системы строят лишь допустимое, но не оптимальное расписание, ограничивая поиск одной или двумя итерациями. Именно поэтому разработка математической модели для составления расписаний для позаказных производств и эффективных эвристических алгоритмов, решающих задачу составления расписаний, является актуальной.

Расчетом сроков исполнения заказов занимается первый уровень планирования рассматриваемого подхода планирования на позаказных производствах. Этим первым уровнем является АР S-система (от английского Advanced Planning and Scheduling) [2]. Результатом работы уровня APS являются минимальные начальные сроки начала и максимальные конечные сроки выполнения каждой из производственных операций.

Применение генетических алгоритмов для решения задачи оптимизации производственных расписаний рассмотрены в работах [3; 4; 5].

Исходные данные для задачи. Введем обозначения, касающиеся задачи составления производственного расписания, используя в качестве основы общую постановку задачи составления цехового расписания, рассмотренную в [6; 7; 8].

1. На горизонте планирования Т имеются работы

(партии деталей, пищевых продуктов) j= 1, ....пн m машин множество М = {Ml,...,Mm) . Далее

будем говорить о партиях деталей, имея в виду машиностроение или мебельную промышленность.

2. Маршрут каждой из деталей из j-й партии состоит

из и. операций Olt.....()п / = 1..я(, Множество

О = \01р ..., Оп, . Мощность множества О равна

п

N = 'Yutlj- Двс операции из маршрута одной детали не

i=1

могут производиться одновременно.

3. Каяедой машине Мк из множества операций О соответствует подмножество О* с О операций, которые могут производиться на данной машине. Операция О имеет длительность tjjk И стоимость cjjk, если (/ 6 (У':.

Если Од г О , то ttJk = 0 и с1//: = 0. Отношения предшествования существуют меяеду любыми операциями.

4. Для последовательных операций OtJ и OiJ+1 может

г- w v.max

быть задан временной интервал tlj j+i - максимальное время между двумя последовательными операциями одной и той же работы. Началом данного интервала может быть начало и конец первой операции, концом - начало или конец второй операции.

5. Для операции OtJ может быть задано максимальное относительное превышение длительности t'",K с учетом прерываний данной операции. Оно выражается в процентах. При этом, t'",K = 0 % означает, что операция Оv не может быть прервана ни при каких условиях (конец смены с окончанием операции в следующей смене, перерыв на обед и т. д.).

6. Для последовательных операций OtJ и OiJ+1 может быть задан временной интервал - минимальное время между двумя этими операциями. Пример применения: отливки и поковки сначала должны остынуть, прежде чем пойти на механическую обработку.

7. Задано разбиение 0 = Ш1,...,0) множества О

g „

на группы операций, n Oh = 0 . Для каждой группы one-

h= 1

раций Oh (h = l,g) задано множество Мр (<5а) = {л/j, —,Мщ } сМ машин (группа оборудования) - множество возможных исполнителей операций Оу еОЛсО, (например, все токарные станки, все фрезерные станки, все маляры и т. д.), причем некоторые машины или рабочие могут входить в несколько групп,

то есть пересечение множеств Г;

\Мр

не всегда рав-

но пустому множеству, где Р - число групп оборудова-ния.

Для общности множество ¥А°ь) может быть равно пустому множеству: Мр (он| = 0 . Последнее означает, что для выполнения операций группы Оь не требуется никаких ресурсов (например, сушка покрашенной поверхности).

8. Подмножества Мр ) могут содержать машины одного из двух типов:

а) либо машины, способные обрабатывать только одну деталь одновременно (например, токарные станки);

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

Для машин второго типа существует максимальная

тлтах ч_/ ч_/

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

Группировка деталей для обработки на таких машинах происходит на основе технологических характеристик -атрибутов операций. Например, для одновременной термообработки группы деталей, все они в соответствии со своими технологическими процессами должны находиться в печи одинаковое время при одинаковой температуре.

9. Для множества операций \Окр ..., может

быть задано условие одновременной обработки на од-

ной машине Мк. Пример применения: технологические сборы, обусловленные одновременной обработкой технологически сопрягаемых поверхностей (например, совместная шлифовка нескольких деталей по шаблону, когда не могут обеспечивать заданную точность для соединения).

10. Каядая машина к = 1 ,т ,на

горизонте планирования т имеет свой график работы

Ч

Г* = .>1 ] • где Ьк -число непересекающихсявре-

менных отрезков ,/Д ], / = \,Ьк , 4,1 - ^ • Концы этих отрезков - моменты начала и окончания рабочей смены, моменты начала и окончания обеденного перерыва.

11. Для каяедой машины Мк е {М1;..., А/т} для каждой пары операций Оа, Оь е Ок. где существует число раЬк, равное времени переналадки машины Мк с операции Оа на операцию Оь, индексы а и /> являются комбинациями индексов / и /.

12. Для каждой партии деталей / = 1. .... « известны

минимальные начальные сроки начала т" и максималь-

л

ные конечные сроки выполнения т ;, следовательно, можно вычислить максимальные конечные сроки выполнения Ту каждой операции О у .

13. Для каждого варианта 5 расписания для каждой машины Мк существует подмножество О* операций из множества О, выполняемых на данной машине в данном варианте расписания.

Оптимизационные критерии при составлении производственных расписаний. Используются следующие критерии ^-Еу.

1. Максимум коэффициента загрузки оборудования для варианта 5 расписания:

У! У! + РаЬк)

ЛО„еС£ >,о„еО'

Ъ=-

Т,,

где Тк - суммарная длительность отрезков из графика

ч

работы I ' к = -1(: ] для машины Мк на горизонте

1=1

планирования Т . Соответственно пригодность индивидов в популяции по этому критерию можно оценивать как /х = ^ .

2. Минимум числа используемых станков.

Пусть из т станков на горизонте планирования будет использоваться только тшг число станков. Следовательно, критерий минимума числа используемых станков:

= тшг -> пип •

Соответственно пригодность индивидов в популяции по этому критерию можно оценивать как /2 = т - тшг.

3. Равномерная загрузка оборудования.

Пусть Г|/, =

М 1=1_____________________

Т„

РаЬк )

- коэффициент загруз-

ки машины Мк на в варианте расписания s горизонте планирования Т. Тогда

h= 1 q= 1

IX

ладок, где pabk =

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

Соответственно пригодность индивидов в популяции по этому критерию можно оценивать как /3=1-1! = 1^3.

4. Минимум числа переналадок.

т

Пусть /•’, = р*аЬк - количество перена-

к= 1 еО^ еО^

\1,еишР<м>0 [о, если раЬк = о'

Тогда критерий минимума числа переналадок выглядит так:

т ___ __

= X X X Рм -> пип-

к=1 еО; еО;

Соответственно пригодность индивидов в популяции по этому критерию можно оценивать как / = ( д. -1<\.

п

где ( д. - число сочетаний из N = ^ и. по 2.

м

5. Минимум всех непроизводительных затрат времени.

К их числу относятся:

- простои оборудования, связанные с переналадками;

- простои оборудования, связанные с ожиданием ДСЕ, находящихся на обработке на предыдущих операциях;

- простои оборудования, связанные с ожиданием ДСЕ, находящихся в процессе транспортирования;

- простои оборудования, связанные с ожиданием обслуживания ДСЕ транспортными устройствами;

- простои оборудования, связанные с ожиданием обслуживания ДСЕ складскими устройствами;

- простои оборудования в конце смены - когда станок освободился и больше на него ничего не грузится, так как остаток фонда времени не позволяет загрузить ни одну из ДСЕ.

„ ( \

X X

ijk

j,o,^or; i,о„ео;

Соответственно пригодность индивидов в популяции по этому критерию можно оценивать как

„ ( \

ijk

I- Уч\ У '1\ У X ^ XXX

*=1 *=1 ЛО,,еО?/,0,,е0? *=1 ЛО„еО?/,0„е0?

\ ’ У 4 ’ У 4 ’ у ъ ’ у ъ

Управляемые факторы. При использовании имитационной модели в задаче составления производственного расписания встречается два типа правил диспетчирования:

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

- выбор станка из группы взаимозаменяемого оборудования происходит в случае, когда для выполнения одной операции доступно более одного свободного ресурса из одной группы.

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

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

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

Для определения размеров партий деталей перед оптимизационной процедурой запускается специальная вычислительная процедура. Партии разбиваются на под-партии, исходя из количества взаимозаменяемых станков в группе на лимитирующей операции конкретного техпроцесса. За каяедой передаточной подпартией система осуществляет индивидуальный диспетчерский контроль.

Таким образом, для одного или нескольких критериев, используемых при составлении расписания одновременно, требуется определить:

- правила диспетчирования для каяедой из очередей, возникающих перед группами оборудования;

- правила выбора машины для операции из группы взаимозаменяемого оборудования.

При этом должны быть соблюдены технологические ограничения по последовательности операций, ограничения для динамических сборов ДСЕ, не долясны быть превышены максимальные конечные сроки выполнения работ для каждой из партий ДСЕ.

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

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

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

1. Shortest processing time (SPT) - очередь операций Оv сортируется по возрастанию в соответствии с величиной длительности операции tiJk.

2. Longest processing time (LPT) - очередь операций Оv сортируется по убыванию в соответствии с величиной длительности операции tijk.

3. Earliest due date (EDD)- очередь операций (>,, сортируется по возрастанию в соответствии с максимальными конечными сроками xjJ операций .

4. Minimum slack (MINSLACK) - очередь операций

Оv сортируется по возрастанию в соответствии с резервами времени операций, вычисляемыми как V,, = - i.,u: - tt]k, где tTeK - момент времени сортировки

очереди.

5. First-in-first-out (FIFO) - операции в очереди стоят в соответствии с порядком поступления.

6. Коэффициент напряженности. В любом случае партия деталей может выйти из цеха без запоздания, если момент окончания его выполнения т™ не позднее ди-

рективного срока выпуска, т. е. должно выполняться условие т™ < Tj. Тогда напряженность для любого j -го заказа на партию деталей можно представить в виде его

п,

Е пгр 1ш<

коэффициента напряженности к = thm____________, где t

J if. — t

J тек

- момент времени сортировки очереди, /тек - номер текущей операции в маршруте -й партии деталей,

- максимальная длительность операции Otu на машине, принадлежащей множеству машин Mh(0^)7 способных выполнять соответствующие операции из

группы 0И, к = 1, |Mh )|. Чем больше коэффициент

напряженности, тем меньше времени остается, чтобы выполнить все операции этой партии деталей в срок. Очередь операций Оv сортируется по убыванию в соответствии с величиной Kj.

Правила выбора оборудования. После выбора операции из очереди и размера партии необходимо выбрать из группы взаимозаменяемого оборудования станок, на котором будет производиться операция в данном расписании. Выбор осуществляется в соответствии с одним из следующих правил:

1. ^Earliest End Time (ЕЕТ) - из множества машин ' Л, (^/-) • способных выполнить операцию OtJ eOh, выбирается машина Мк, которая первая закончит обработку.

2. ^Earliest Start Time (EST) - из множества машин Mh(ph), способных выполнить операцию OtJ eOh, выбирается машина Мк, которая первая начнет обработку.

3. Latest End Time (LET) - из множества машин ' Л, (^/-) • способных выполнить операцию OtJ eOh, выбирается машина Мк, которая последней закончит обработку.

4. Same as Previous Operation (SPO) - выбирается машина Mk, которая была выбрана для предыдущей операции.

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

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

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

Библиографический список

1. Фролов, Е. Б. Оперативно-календарное планирование и диспетчирование в MES-системах [Электронный ресурс] /Е. Б. Фролов, Р. Р. Загидуллин. Режим доступа: http://erpnews.ru/doc2936.html. Загл. с экрана.

2. Питеркин, С. В. Когда MRP не работает... / С. В. Питеркин // Директор информ. службы. 2004. №1. С. 62-69.

3. Jones, A. Survey of job shop scheduling techniques [Электронный ресурс] /А. Jones. Режим доступа: http:// citeseer.ist.psu.edu/331527.html. Загл. с экрана.

4. Acomparisonof genetic sequencing Operators [Электронный ресурс] /Т. Starkweather, S. McDaniel, С. Whitley et al. Режим доступа: http://citeseer.ist.psu.edu/ starkweather91comparison.html. Загл. с экрана.

5. Bartschi, W. M. A genetic algorithm for resource-constrained scheduling [Электронный ресурс] / W. M. Bartschi. Режим доступа: http://lancet.mit.edu/ ~mbwall/phd/thesis/thesis.pdf. Загл. с экрана.

6. Brucker, P. Complex scheduling problems [Электронный ресурс] / P. Brucker. Режим доступа: ftp:// ftp.mathematik.uni-osnabrueck.de/pub/osm/preprints/ complex.ps.gz/. Загл. с экрана.

№ п/п Количество групп оборудования Среднее количество машин групп оборудования Итого машин Количество деталеопе- рацийна горизонте планирования Коли- чество возмож- ных вариан- тов Коли- чество прове- ренных индии- видов Время

Общее Из них машин для одновременной обработки деталей

проверки пригодности одного индивида, с Нахождения искомого набора параметров модели, мин

1 10 5 50 5 500 2М) 1 000 2 33,3

2 10 5 50 5 1 000 250 1 000 2 33,3

3 10 5 50 5 2 000 2х 1 000 2 33,3

4 10 5 50 5 4 000 2х 1 000 2 33,3

5 15 10 150 10 500 275 2 000 3 100

6 15 10 150 10 1 000 2 й 2 000 3 100

7 15 10 150 10 2 000 2 й 2 000 3 100

8 15 10 150 10 4 000 2 й 2 000 3 100

9 20 10 200 10 500 о о 3 000 4 200

10 20 10 200 10 1 000 о о 3 000 4 200

11 20 10 200 10 2 000 о о 3 000 4 200

12 20 10 200 10 4 000 о о 3 000 4 200

7. Complexity results for scheduling problems [Электронный ресурс]. Режим доступа: http://

www.mathematik.uni-osnabrueck.de/research/OR/class/. Загл. с экрана.

8. A simulation-based finite capacity scheduling system [Электронный ресурс] / D. Cormier, A. J. Weintraub, A. Zozom. Режим доступа: http://www.informs-cs.org/ wsc97papers/0838.PDF. Загл. с экрана.

P. V Simakov

ABOUT JOB SHOP SCHEDULING OPTIMIZATION WITH SIMULATION IN MAKE-TO-ORDER DISCRETE ENVIRONMENT

A job shop scheduling optimization problem with simulation in make-to-order discrete environment is covered. Several optimization criteria are used for that purpose. Simulation model is used for evaluation of the optimization criteria and constraints. Genetic algorithm is used for optimal simulation model parameters selection. The results of genetic algorithm usage for solving job shop scheduling optimization problem in make-to-order discrete environment are shown.

Keywords: scheduling theory, finite capacity scheduling, simulation.

УДК681.3.06

М. Г. Доррер

ВЗВЕШЕННАЯ ВЕРОЯТНОСТНАЯ ОЦЕНКА БИЗНЕС-ПРОЦЕССА НА ОСНОВЕ ФОРМАЛИЗМОВ ЦЕПЕЙ МАРКОВА

Предлагается подход к оценке стоимостных и временных показателей бизнес-процесса на основании его формальной модели в виде конечной цепи Маркова и собранных статистических данных о его функционировании. Предлагаются два подхода к построению взвешенных оценок бизнес процесса: на основе накопленных по времени вероятностей пребывания процесса в заданных состояниях и на основе оценки среднего числа пребываний процесса в данных состояниях. Полученные оценки могут применяться для сравнения различных вариантов выполнения бизнес-процесса, при выполнении процедуры бенчмакинга и при оценке последствий улучшения бизнес-процессов.

Ключевые слова: бизнес-процесс, цепь Маркова, взвешенные оценки.

Введение. При управлении и модернизации бизнес-процессов актуальной является задача получения обобщенных характеристик, оценивающих эффективность их функционирования [1; 2]. Единого, сложившегося подхода крешению этой задачи не выработано. В данной работе предлагается подход, основанный на совместном использовании методологии АПК ЕРС и формализмов цепей Маркова. Метод дополняет и отчасти заменяет процедуры имитационного моделирования бизнес-процессов, предоставляя четкий и однозначный ответ о стоимости и времени выполнения бизнес-процесса на основе его статистических характеристик, а также позволяет оценить изменения временных и стоимостных характеристик процесса в результате совершенствования бизнес-процесса.

Данная работа начинается изложением основных положений формализма конечных цепей Маркова применительно к описанию бизнес-процессов. Затем на примере условного бизнес-процесса излагается методика оценки временных и стоимостных характеристик процесса путем взвешивания вероятностей пребывания в заданных состояниях процесса. И наконец эта же задача решается на основе оценки среднего числа пребываний про-

цесса в заданных состояниях. Показано, что эти два метода дают близкие результаты.

Формальная модель бизнес-процессов. Представляет собой динамическую систему, находящуюся в каждый из моментов / в одном из п состояний множества & = {5'1,...,5'и}, 1к еТ, гдеТ - множество моментов времени, в которые рассматривается система [3; 4; 5]. Переменная / представляет собой шаг выполнения процесса и не обязательно связана с календарным временем.

Состояния изменяются со временем случайным образом. Это изменение определяется матрицей переходных вероятностей

Р{Ч) = \р,{1к)\.

Каждый элемент матрицы/ = 1,п показывает вероятность того, что если система в момент tk находилась в состоянии \ , то в момент 1/: она окажется

в состоянии sj: Ру (/*) = Рг {£ (1к+1) = 5} | £ ((к) = }.

Каядая строчка матрицы Р соответствует состоянию, в котором процесс находится на данном шаге, а каждый столбец - состоянию, в которое переходит процесс на следующем шаге. Переходы во все возможные состоя-