Научная статья на тему 'Оперативное планирование движения готовой продукции на складах металлургических предприятий'

Оперативное планирование движения готовой продукции на складах металлургических предприятий Текст научной статьи по специальности «Математика»

CC BY
176
32
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Файнштейн Светлана Ильдаровна, Тутарова Власта Диляуровна, Калитаев А. Н., Букреев Алексей Юрьевич, Колесников Евгений Фанисович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Оперативное планирование движения готовой продукции на складах металлургических предприятий»

ЭКОНОМИКА, УПРАВЛЕНИЕ И РЫНОК ПРОДУКЦИИ

УДК 658.7:669.06.048.88

Файнштейн С.И., Тутарова В.Д., Калигаев А.Н., Букреев А.Ю, Колесников Е. Ф.

ОПЕРАТИВНОЕ ПЛАНИРОВАНИЕ ДВИЖЕНИЯ ГОТОВОЙ ПРОДУКЦИИ НА СКЛАДАХ МЕТАЛЛУРГИЧЕСКИХ ПРЕДПРИЯТИЙ

1. Актуальность

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

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

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

Решение данной проблемы планируется рассмотреть на примере организации склада готовой продукции листопрокатного цеха № 4 (ЛПЦ-4) ОАО «Магнитогорский металлургический комбинат». Склад готовой продукции состоит из складов слябов, рулонов и пачек. В данной работе будет рассмотрен склад пачек. Предварительно были собраны исходные данные, отражающие работу этого участка цеха, и определены ограничения и допущения, предлагаемые для приме не -ния к разрабатываемому алгоритму размещения готовой продукции.

Склад готовой продукции, предназначенный

для размещения, хранения и отгрузки пачек с листами ЛПЦ-4 состоит из территории, схематично представленной ниже.

2. Эвристическая модель склада

Для решения задачи оперативного планирования складских операций обратимся к эвристической модели пространства состояний, нашедшей широкое применение в робототехнике. С точки зрения робототехники в модели «СКЛАД» исполнителем допустимых операций является подъемный кран грузоподъемностью 10 т, а це-лью оперативного планирования - составление для исполнителя плана последовательных действий. Для корректного построения модели нам нужно определить:

• начальное состояние задачи;

• допустимые операции (ходы), переводящие задачу из одного состояния в другое, причем каждому ходу сопоставляется некоторая стоимость;

• терминальные (целевые) состояния, по достижении которых задача считается решенной

и выбрать стратегию управления поиском.

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

Начальное состояние задачи

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

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

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

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

• пачка, еще не размещенная на складе;

• пачка, размещенная на складе в составе не-отгруже иного заказа;

• невостребованный остаток.

Пачка обладает следующими признаками:

1) номером агрегата резки;

2) типоразмером: маркой стали, длиной, шириной, толщиной, весом, высотой;

3) назначением (товар, нетовар, экспорт);

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

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

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

Ячейка может быть либо пустой, либо содержать двумерный массив штабелей Количество штабелей в одной ячейке зависит от типоразмера составляющих их пачек и варьируется от 1 до ЬМах по длине ячейки и от 1 до ЖМах по ширине.

Штабель - последовательность пачек, уложенных друг на друга. Высота штабеля ограничена числом МахН, которое зависит от типораз-мера пачек. Штабель, состоящий из 0 пачек, будем называть пустым.

Допустимые операции

Возможны три типа допустимых операций,

переводящих склад из одного состояния в другое: размещение, перекладывание и отгрузка. Эти

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

1. Существуют три разных типа операций раз -

мещения.

Текущая пачка/стопка:

• размещается в пустом штабеле;

• укладывается поверх непустого штабеля с учетом ограничения Н на высоту штабеля;

• размещается в изоляторе.

Будем считать допустимым размещение па-

чек из одного заказа в разных штабелях и разных ячейках.

2. Операция перекладывания заключается в следующем.

Перекладываемая пачка/стопка снимается с верха непустого штабеля и затем размещается согласно пункту 1.

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

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

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

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

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

совокупное состояние агрегатов резки, склада, тупиков до выполнения операции размещения/отгрузки, терминальным — состояние агрегатов резки, склада, тупиков после выполне-ния операции размещения/отгрузки.

Стратегия управления поиском

Как известно, все стратегии управления поиском в пространстве состояний делятся на две категории : пробный поиск и безвозвратный поиск. Эв-ристинеский поиск [2] является классическим примером пробного поиска, но в то же самое вре-мя эвристический поиск, сфокусированный при помощи сильной эвристики, работает в безвоз-вратном режиме. Поэтому результаты, полученные от применения сильно фокусированного поиска, в большой степени зависят от удачного или неудачного выбора эвристики. При удачном выборе эвристики безвозвратный поиск является быстрым эффективным алгоритмом, двигающимся к целевому состоянию самым коротким путем. При неудачном - может не достигнуть целевого состояния вообще. Применим безвозвратный эвристический поиск к имеющемуся пространству состояний и построим для него эффективную оце-ночную эвристическую функцию.

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

Т НАСТРОЕЧНЫЕ КОНСТАНТЫ

ШТРАФЫ Широкий на узкий [5~

Длинный на короткий I5

Толстый на тонкий |ю

Поздний на ранний |15

Разные марки стали BS

Менее 12 м в сдвоенные ячейки І25

Размещение в изоляторе 1200

Очень большой штраф CD О CD CD

I ПРЕМИИ 1

І 1 Irt Mrlrl

Полное совпадение типоразмера І5

Отгрузка с агрегата резки |ю

ок BJ

Окно для начисления штрафов и премий

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

да/операции одним числом. На каждом шаге из всего множества допустимых операций будем выбирать операцию минимальной стоимости и применять ее к текущему состоянию [2].

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

Во-первых, это минимизация времени, потраченного на выполнение операций разме-щения/отгрузки заказа.

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

3. Выбор эвристической оценочной функции

Сформулируем принцип, по которому каждой допустимой операции будет приписываться некая стоимость. Он основан на методе штрафных функций, изложенном в работе [3]. Сущность метода заключается в следующем.

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

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

Пусть

• widthl, lenl, depthl, steell, Datei - ширина, длина, толщина, марка стали и дата отгрузки размещаемой пачки;

• widthO, len0, depthO, steelO, DateO - ширина, длина, толщина, марка стали и дата отгрузки верхней пачки i-го штабеля, если он не пустой;

• cell[i].double - признак «сдвоенности», принимающий значение «истина», если ячейка предназначена для размещения 12-метрового листа;

• DopW, DopL, DopD - допустимые отклоне- Вестник МГТУ им. Г. И. Но сова. 200 7. № 4.

ния по ширине, длине, толщине;

• H0, hi, MaxH - высота штабеля, высота размещаемой пачки и ограничение на высоту штабеля.

Тогда стоимость Cost размещения пачки поверх штабеля равна:

• 0, если пачка укладывается в пустой штабель;

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

• если типоразмеры пачек не совпали, то стоимость размещения вычисляется по формуле

Cost = F1* sgn(widthi - width 0 - Dop W) +

+F2 * sgn(leni - len0 - DopL) +

+F3 * sgn(depthi - depth 0 - DopD) +

+F4 * sgn( Datei - Date0) +

+F5 *^("steeli о steel0") +

+F6 * x("(leni < 6000) AND(cell 0[i ]. double true)") + +F 7 *x('i 0") ^VeryBigF * sgn(H 0 + hi - MaxH), где функция знака sgn(widthi - width0 - DopW) равна i, если ширина размещаемой пачки больше ширины верхней пачки + допуск на ширину, иначе 0; функция знака sgn(leni - len0 - DopL) равна i, если длина размещаемой пачки больше длины верхней пачки штабеля + допуск на длину, иначе 0; функция знака

sgn(depthi - depth0 - DopD) равна i, если толщина размещаемой пачки больше толщины верхней пачки штабеля + допуск на толщину, иначе 0; функция знака sgn(Datei - Date0) равна i, если дата отгрузки размещаемой пачки позднее даты отгрузки верхней пачки штабеля, иначе 0; характеристическая функция %, служащая для арифметизации логического высказывания «марки стали не одинаковы», ^("steeli о steel0") равна i, если логическое высказывание принимает значение «истина», иначе 0; характеристическая функция х, служащая для арифметизации логического высказывания «размещаем пачку длины не более 6 метров в сдвоенную ячейку», ^("(leni < 6000)AND(cell0[i],double = true)" равна

i, если логическое высказывание принимает значение «истина», иначе 0; характеристическая функция х, служащая для арифметизации логического высказывания «размещаем пачку в изоляторе» х('i = 0") равна i, если логическое высказывание принимает значение «истина», иначе равна 0; функция знака sgn( H 0 + hi - MaxH)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

равна 1, если сумма высоты штабеля и высоты размещаемой пачки превысили ограничение на высоту штабеля, иначе 0; F1 — штраф за размещение широкой пачки поверх узкой; F2 — штраф за размещение длинной пачки поверх короткой; F3 — штраф за размещение толстой пачки поверх тонкой; F4 — штраф за размещение пачки с более поздней датой отгрузки поверх пачки с более ранней датой отгрузки; F5 — штраф за несовпадение марок стали; F6 — штраф за размещение пачки длиной не более 6 метров в ячейку, предназначенную для 12-метрового листа; F7 — штраф за размещение пачки в изоляторе; Very-BigF — очень большой штраф.

Аналогично происходит вычисление стоимости остальных допустимых операций.

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

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

Если штрафы за длину, ширину и толщину будут больше штрафа за несовпадение марок стали, то продукция разных марок будет пере -мешана, но штабеля будут формироваться в ввде ровных пирамидок, сужающихся кверху.

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

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

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

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

• Всей эвристической информации из предметной области задачи придан единообразный числовой вид .

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

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

• Гибкая система штрафов и премий позволяет настраивать программу согласно критериям, выбранным пользователем.

4. Алгоритм отгрузки заказа

Ш аг 1. Запоминаем, какое количество пачек мы должны отгрузить, и типоразмер отдель-ной пачки Если такой типоразмер есть на агрегате резки, то отгружаем с агрегата резки до тех пор, пока не весь заказ отгружен и на агрегате

резки есть данный типоразмер.

Если весь заказ отгружен, то останов. Иначе переход на шаг 2.

Ш аг 2. Ищем непустой штабель, у которого типоразмер верхней пачки совпадает с искомым типоразмером. Если такой штабель навден, то отгружаем до тех пор, пока не весь заказ отгружен и в штабеле есть данный типоразмер. Если весь заказ отгружен, то останов. Иначе переход на шаг 3.

Ш аг 3. Ищем непустой штабель, содержащий пачку с искомым типоразмером. Если такой штабель найден, то производим следующие действия:

1) помечаем штабель как запрещенный;

2) снимаем пачку с верхушки штабеля;

3) размещаем пачку процедурой ПЫОрИвр;

4) помечаем пачку как размещенную;

5) повторяем шаги 2-4 до тех пор, пока наверху не окажется пачка с искомым типоразмером ;

6) отгружаем из этого штабеля до тех пор, пока не весь заказ отгружен и в штабеле есть данный типоразмер. Если весь заказ отгружен, то останов. Иначе переход на шаг 3.

Если такой штабель не навден, то переход на шаг 4.

Ш аг 4. Ищем типоразмер в изоляторе и от -гружаем. Останов.

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

1. ГэриМДжонсон Д. Вычислигельныемашины итруднорешаемыезадачи. ММир, 1982.

2. Нильсон Н. Принципы искусственного интеллекта. М.: Радио и связь, І985.

3. Алгоритм оперативного планирования посада металла в печи листопрокатного стана / Каплан Д.С., Девятов Д.Х., Белявский А.Б., Файншгейн С.И., Торчинский В.Е. //Сталь. 2007. № 2. С. 130-133.

i Надоели баннеры? Вы всегда можете отключить рекламу.