РАЗРАБОТКА СИСТЕМ ПЛАНИРОВАНИЯ ПРОИЗВОДСТВА С

advertisement
5011
УДК 004.9
РАЗРАБОТКА СИСТЕМ ПЛАНИРОВАНИЯ
ПРОИЗВОДСТВА С ИСПОЛЬЗОВАНИЕМ
«МАТРИЧНОГО КОНСТРУКТОРА»
А.И. Шабаев
Петрозаводский государственный университет (ПетрГУ)
Россия, 185910, Петрозаводск, Ленина пр., 33
E-mail: ashabaev@petrsu.ru
И.В. Архипов
Петрозаводский государственный университет (ПетрГУ)
Россия, 185910, Петрозаводск, Ленина пр., 33
E-mail: iarhipov@petrsu.ru
А.Р. Урбан
Петрозаводский государственный университет (ПетрГУ)
Россия, 185910, Петрозаводск, Ленина пр., 33
E-mail: aurban@petrsu.ru
Ключевые слова: управление производством, матричные вычисления, задачи оптимизации
Аннотация: В докладе представлен опыт ПетрГУ по разработке и внедрению программных систем планирования производства, основанных на решении прикладных задач оптимизации, связанных с раскроем и комплектовкой материалов, преимущественно
для предприятий лесопромышленного комплекса (ЛПК). Приведены примеры успешно
решенных прикладных задач планирования производства, представлен общий подход к
их решению. Дано описание специальной структуры данных («матричный конструктор»), разработанной для повышения эффективности хранения и использования данных
с учетом структуры матрицы ограничений. Приведено краткое описание пользовательского интерфейса программных систем. Заметный экономический эффект от использования программных систем подтвержден апробацией в реальных производственных условиях.
1. Введение
Петрозаводский государственный университет (ПетрГУ) имеет многолетний опыт
выполнения крупных проектов с государственным и частным финансированием по разработке и применению математических моделей, методов и комплексов программ для
решения задач планирования производства, прежде всего, для предприятий лесопромышленного комплекса (ЛПК), целлюлозно-бумажной промышленности (ЦБП) и машиностроения. В промышленную эксплуатацию внедрено более 150 прикладных программных систем. Несмотря на их внешнее различие, многие из них могут быть сформулированы и решены как частные случаи обобщенной задачи раскроя и комплектовки
материалов [1].
Схожесть производственных процессов дает возможность разработки и внедрения
типовых программных решений на большом количестве предприятий ЦБП и ЛПК:
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
5012

Более 200 предприятий РФ и ближнего зарубежья в отраслях целлюлозно-бумажной
промышленности (ЦБП) и лесопромышленного комплекса (ЛПК): более 100 предприятий, производящих гофрокартон и гофротару; 35 крупных, средних и малых
целлюлозно-бумажных комбинатов РФ, 75 фанерных цехов и производств;
 не менее 100 предприятий ЦБП и ЛПК Европы;
 не менее 200 предприятий других отраслей промышленности.
Тем не менее, внедрение, сопровождение и обновление большого количества программных систем на территориально-распределенных и географически удалённых
предприятиях приводит к существенным сложностям, среди которых:
 адаптация готового программного продукта к нуждам конкретного заказчика;
 внесение изменений в ПО;
 языковая локализация интерфейса пользователя;
 своевременная передача новых версий программного обеспечения заказчикам;
 удаленная настройка программного обеспечения;
 гибкое разделение прав доступа к различным функциям;
 мониторинг работы программной системы, идентификация и исправление возникающих ошибок на рабочих местах заказчиков и др.
Поэтому для обеспечения возможности широкой коммерциализации разрабатываемых крупных специализированных информационных систем для управления сложными производственными процессами необходима стандартизация и унификация процессов их разработки и адаптации под нужды конкретного заказчика, чтобы сократить
затраты времени и труда [2].
В докладе представлен опыт ПетрГУ по разработке и внедрению таких систем на
примере внедренных на ряде предприятий программных систем для планирования лесопильным и фанерным производствами, а также распределения заявок между БДМ.
2. Некоторые примеры прикладных задач планирования
производства
2.1. Планирование производства продукции
из гофрированного картона
Цель разработки заключается в планировании производства сбалансированного количества комплектов заготовок для изготовления картонной тары при минимальном
расходе материала с учетом производительности и времени переналадки оборудования,
приоритетов и сроков выполнения заказов.
Для решения задачи моделируется сложный многоэтапный процесс, который
включает поиск технически возможных, рациональных по затратам материала вариантов раскроя полотна гофрокартона на прямоугольные заготовки различных размеров;
определение сочетаний и объемов раскроев, обеспечивающих сбалансированное количество заготовок каждого комплекта конструкции ящика; расчет моментов запуска и
чередования раскроев; выбор устройств последующей обработки заготовок деталей с
учетом производительности и времени переналадки оборудования, приоритетов и сроков выполнения заказов [3].
2.2. Планирование лесопильного производства
Цель разработки заключается в расчете объемного плана выпуска продукции, как
оперативного, так и для длительного периода, обеспечивающего сбалансированный коXII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
5013
личественный и размерно-качественный состав распиливаемых бревен и получаемых
пиломатериалов для наиболее эффективного выполнения спецификационного задания
из имеющегося сырья с учетом производственных и маркетинговых факторов; расчет
скоординированных планов распиловки для нескольких линий лесопиления; определение выгодности новых заказов в сочетании с действующим планом производства и в
сочетании с другими потенциальными заказами [4].
В связи с тем, что на производство поступают бревна различных сортов и диаметров, а получаемая продукция также делится по сортам и размерам, в задачу расчетов
поставов входит определение размеров и числа досок, которые можно получить из
бревна с заданным качеством, длины и диаметра. Поиск решения усложняется еще тем,
что должно быть учтено большое количество ограничений связанных с особенностями
и параметрами оборудования, сырья и заказов [5].
2.3. Распределение заказов для нескольких бумагоделательных машин
Бумага и картон, производимые бумагоделательными машинами (БДМ), наматываются на валы длины от 6 до 12 метров (тамбуры), по мере заполнения образующие
так называемые «съемы». Съем далее подлежит раскрою на рулоны определенной длины, называемой форматом продукции. Управляемые факторы в данной задаче – время,
производительность БДМ и плотность вырабатываемой бумаги с учетом ожидаемого
качества продукции [1].
Целью разработки является построение планов раскроя, которые обеспечат выпуск
заданного ассортимента и объемов продукции с минимальными отходами с учетом
плановой продолжительности работы БДМ, планируемого объема отгрузки продукции,
остатков продукции на складах по завершению периода планирования и пр. [6]
2.4. Планирование производства фанеры
Цель разработки заключается в построении планов комплектовки многослойной
фанеры, обеспечивающих требуемые ассортимент и объем продукции из имеющихся
запасов шпона различного качества [7].
Целями внедрения системы являются:
 приоритетное производство наиболее выгодной продукции;
 более эффективное использование допуска толщины фанеры и древесных плит;
 более эффективное распределение листов шпона в зависимости от их качества;
 более равномерная загрузка оборудования производства.
Дополнительно внедрение системы позволяет повысить оперативность и эффективность управления производством, упростить формирование отчетной и статистической информации, а также получить осуществлять более детальный анализ эффективности производства по сырью и номенклатуре продукции [8].
3. Общий подход к решению задач
планирования производства
Многие задачи планирования производства, в т.ч. представленные выше, не являются линейными (часто даже NP-полными), однако их решение должно быть найдено
на стандартных компьютерах за время, не превышающее нескольких минут (что определяется производственными требованиями). Поэтому для их решения, как правило,
должны быть предложены приближенные алгоритмы.
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
5014
В связи с тем, что целевая функция как правило является линейной, авторами успешно апробирован следующий подход к решению – из множества ограничений исходной задачи (обозначим ее задачей Р) исключаются нелинейные ограничения, т.е. полученная задача является задачей линейного программирования (обозначим ее Р*), для
которой имеются эффективные методы решения [9-11].
В частности, с учетом того, что множество допустимых значений задачи Р* может
быть пустым, возможно введение вспомогательных неизвестных (отклонений от ограничений снизу и сверху), которые позволяют в случае отсутствия допустимого значения предоставить специалисту предприятия исходную информацию для принятия необходимых мер. Кроме того, двойственные оценки [9], полученные при решении задачи линейного программирования Р*, целесообразно использовать для анализа экономической эффективности, структуры портфеля заказов и выявления «узких мест» в
производственном процессе.
Полученное решение вспомогательной задачи Р* необходимо «доработать», чтобы
оно удовлетворяло всем ограничениям задачи Р. Для этого применяются специфические методы, свои для каждой задачи. В частности, может быть целесообразным использование алгоритмов, включающих многократное решение задачи линейного программирования, что еще более повышает требования к их эффективности.
В следующем разделе представлен успешно применяемый авторами подход к решению прикладных задач линейной оптимизации.
4. «Матричный конструктор»
На основе опыта в решении прикладных задач оптимального планирования для
производственных предприятий было замечено [2], что матрица ограничений в прикладных задачах линейной оптимизации, как правило, имеет достаточно большую размерность и ярко выраженную специфическую блочную структуру.
Покажем это на примере планирования фанерного производства. Введем векторные обозначения:
 W – множество видов древесины (до 5);
 V – множество видов шпона (до 10);
 T – множество прессов предприятия (до 5);
 P – множество видов фанеры (до 100);
 Q – множество технологий лущения (до 15);
 C – множество способов комплектации фанеры всех видов (до 500);
 S – число вариантов комплектации фанеры с последующей обработкой (т.е. число
пар (k,t), где kC, tTk).
Структура матрицы ограничений задачи представлена на рис. 1.
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
5015
Рис. 1. Структура матрицы ограничений задачи планирования фанерного производства.











Здесь:
MM – разреженная матрица, задается списком ненулевых элементов;
MS – матрица, состоящая из одинаковых элементов;
1 – матрица, все элементы которой – единицы;
Е – единичная матрица (диагональная матрица, с единицами на главной диагонали);
M – матрица произвольной структуры.
Аналогично для лесопильного производства обозначим:
L – множество пиломатериалов (около 100)
W – множество видов древесины, определяемое породой и диаметром (до 50)
M – множество линий лесопиления (от 1 до 4)
В – множество пиломатериалов, для которых указана максимальная доля их выхода
из боковой части бревна (до 10)
С – индексное множество вариантов распиловки бревен (поставов),
G – множество столбцов, каждый из которых соответствует поставу (сотни тысяч)
Тогда структура матрица ограничений задачи схематически представлена на
рис. 2. структура матрицы ограничений задачи планирования лесопильного производства.
2.
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
5016
Рис. 2. Структура матрицы ограничений задачи планирования лесопильного производства.
Число столбцов подматрицы G очень велико (сотни тысяч), что не позволяет эффективно сформировать матрицу ограничений задачи в явном виде в силу огромного
количества элементов и сложности ее структуры. Поэтому для решения задачи используется метод генерации столбцов, при котором на каждой итерации столбец для добавления в базисный план рассчитывается путём решения вспомогательной задачи оптимизации.
Аналогично, для распределения заказов между БДМ обозначим:
 N – множество заказов продукции (около 100),
 M – множество бумагоделательных машин (до 10),
 T – множество периодов времени (около 100),
 К – индексное множество возможных вариантов раскроев съемов тамбуров БДМ
 G – множество столбцов, каждый из которых соответствует раскрою съема тамбура
БДМ (до нескольких миллионов столбцов)
Тогда структура матрица ограничений задачи схематически представлена на
рис. 2. структура матрицы ограничений задачи планирования лесопильного производства.
3.
Число столбцов подматрицы G как правило так велико, что не позволяет эффективно сформировать матрицу ограничений задачи в явном виде. Поэтому, как и в предыдущем случае, для решения используется метод генерации столбцов.
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
5017
Рис. 3. Структура матрицы ограничений задачи оптимизации распределения заказов между БДМ.
Для повышения эффективности генерации, хранения и использования данных с
учетом структуры подматриц в зависимости от задачи была разработана специальная
структура данных («матричный конструктор»), которая позволяет эффективно:
 формировать матрицу ограничений с учетом ее блочной структуры;
 получать данные из матрицы;
 модифицировать матрицу ограничений в случае изменения условий задачи;
 группировать столбцы матрицы в множества и модифицировать их.
На текущий момент реализованы следующие основные типы блоков (подматриц):
 MatrixSame – матрица, все элементы которой одинаковы (т.е. равны некоторому р).
Скалярное произведение i-го столбца такой матрицы на вектор v= (v1,…,vm) равно
m
m
k 1
k 1
 a k ,i v k  p  v k .

MatrixDiagonalSame – диагональная матрица с одинаковыми значениями на главной
диагонали (т.е. равными некоторому р). Скалярное произведение i-го столбца такой
m
матрицы на вектор v = (v1,…,vm) равно
a
k 1


v  pvi .
k ,i k
MatrixSimple – матрица, заданная полным перечислением всех ее элементов.
MatrixDiagonalSimple – диагональная матрица с элементами на главной диагонали
р1,…,рm). Скалярное произведение i-го столбца такой матрицы на вектор
m
v = (v1,…,vm) равно
a
k 1
v  pi vi .
k ,i k

MatrixModular – разреженная матрица (т.е. с малым количеством ненулевых элементов), для которой по каждому столбцу задается список ненулевых элементов.
Классы, описывающие подматрицы каждого типа, реализуют интерфейс (набор методов) IMatrixGroupItem, включающий следующие методы:
 GetScalar – функцию получения скалярного произведения столбца матрицы на вектор;
 GetValues – функцию получения всех значений конкретного столбца матрицы;
 GetValue – функцию получения значения элемента матрицы;
 Width – функцию, возвращающую ширину матрицы (количество столбцов);
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
5018

Height – функцию, возвращающую высоту матрицы (количество строк).
При необходимости реализации подматриц другой структуры в рамках решения
конкретной задачи, например, унимодулярных, трехдиагональных и др., достаточно
реализовать для них указанные функции интерфейса IMatrixGroupItem.
Для построения матриц сложной структуры (состоящих из нескольких подматриц)
используется класс MatrixGroup. В нем реализована функция AddMatrix, в которую передается добавляемая подматрица и ее смещение относительно верхнего левого угла
матрицы. Незаполненые участки матрицы при этом считаются равными нулю. При вычислении скалярного произведения и получении значений матрицы вызываются соответствующие функции для соответствующих подматриц с учетом смещения.
Использование "матричного конструктора" позволяет задать матрицу ограничений
не по-элементно, а в виде блоков простой структуры, что существенно снижает затраты
памяти и времени при решении широкого круга оптимизационных задач планирования
и управления предприятием. Кроме того, оно позволяет существенно ускорить и упростить вносение изменений в математическую модель в (многоэтапном) процессе согласования с Заказчиком технологических особенностей предприятия.
5. Описание пользовательского интерфейса программных
систем
Пользовательский интерфейс каждой системы позволяет осуществлять ввод исходных данных, расчет оптимального плана выработки продукции в течение заданного
промежутка времени, а также формировать различные отчеты в виде таблиц и диаграмм. Возможно разграничение доступа к пунктам меню между несколькими рабочими местами. Например, с одного рабочего места можно разрешить только вводить исходные данные, а с другого – только выполнять расчет плана [4,8,12].
При реализации пользовательского интерфейса программной системы использовалась универсальная библиотека UPS Framework, созданная специалистами IT-парка
ПетрГУ на основании опыта разработки и внедрения программных систем в различных
отраслях промышленности [2]. Библиотека включает большое количество тесно интегрированных друг с другом программных компонент, позволяющих унифицировать
процессы и ускорить разработку модулей системы, упростить программное описание
моделей данных, уменьшить количество ошибок. Все компоненты UPS Framework интегрированы в среду разработки MS Visual Studio .NET (одну из самых популярных в
мире), что позволяет использовать их единообразно со стандартными методами и компонентами MS Visual Studio.
Исходные данные для планирования вводятся и хранятся в справочниках, реализованных в виде таблиц. В каждом справочнике имеется панель инструментов, позволяющая добавлять, редактировать, удалять, сортировать, копировать и искать элементы. Возможна настройка видимости полей. При необходимости легко могут быть добавлены новые справочники.
После расчета выводятся данные по всем найденным схемам раскроя (распиловки,
комлпектовки и т.д. – в зависимости от предметной области). По готовой продукции
каждого вида указаны ограничения и расчетный объем. Рассчитанные планы работы
предприятия (например, на месяц) можно сохранять для последующего использования.
Реализованные отчеты содержат сведения о балансе исходных материалов, производительности и загрузке оборудования, выпуске готовой продукции, рекомендуемых
схемах раскроя (распиловки, комлпектовки и т.д. – в зависимости от предметной обласXII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
5019
ти), экономических показателях работы предприятия. При необходимости могут быть
реализованы и другие.
Изначально программные системы создавались в «локальной» реализации [2], затем были созданы их «облачные» реализации с теми же функциональными возможностями [8, 12-14]. Оптимизационные алгоритмы при этом используются одни и те же.
Рис. 4. Пример интерфейса пользователя системы планирования лесопильного производства.
Рис. 5. Пример интерфейса пользователя системы планирования распределения заказов
между БДМ.
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
5020
Рис. 6. Пример интерфейса пользователя системы планирования фанерного производства.
6. Заключение
Демо-версии представленных в докладе и других программных систем в «облачной» реализации доступны на сайте [14].
Использование представленных в докладе и иных программных систем планирования производства, основанных на решении прикладных задач оптимизации, позволяет
во многих случаях обеспечить улучшение ряда экономических показателей: повышение
эффективности использования оборудования на 3…4%; снижение процента потерь сырья на 1.5…2.5%; увеличение полезного выхода продукции на 1…2%; сокращение сроков выполнения производственных заказов. Повышение оперативности расчетов позволяет технологам производить более глубокий анализ производственной программы
затраты времени на расчеты планов [2, 4, 13].
Архитектура программных систем и используемые в них компоненты позволяют с
минимальными затратами дополнять системы функциональными возможностями, а
также решать иные оптимизационные задачи, стоящие перед предприятиями и ЛПК в
целом. Это позволяет регулярно создавать новые программные системы для повышения эффективности планирования иных видов производств, а также дорабатывать ранее
созданные системы в целях более полного отражения особенностей технологических и
бизнес-процессов заказчиков.
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
5021
Работа выполняется при финансовой поддержке Программы стратегического развития ПетрГУ в рамках реализации комплекса мероприятий по развитию научноисследовательской деятельности, госконтрактов №02.527.11.9021 и № 14.514.11.4004
Министерства образования и науки Российской Федерации, а также госконтрактов
№13704 и №17622 Фонда содействия развитию малых форм предприятий в научнотехнической сфере.
Список литературы
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Воронин А.В., Кузнецов В.А. Математические модели и методы планирования и управления предприятием ЦБП. Петрозаводск: Издательство ПетрГУ, 2000. 256 c.
Воронин А.В., Шабаев А.И., Печников А.А. Конвейерная технология разработки программного
обеспечения для управления производственными ресурсами и процессами // Перспективы науки.
2010. Т. 4. С. 95-99.
Сошкин Р.В. О применении математических методов для повышения эффективности производства
упаковки из гофрокартона // Известия Санкт-Петербургской лесотехнической академии. 2007. Вып.
181. С. 165-173.
Воронин А.В., Кузнецов В.А., Шабаев А.И., Архипов И.В., Кашевник А.М. Разработка и реализация
системы планирования лесопильным производством // Труды СПИИРАН. СПб.: СПИИРАН, 2012. С.
400-415.
Тюкина Ю. П., Макарова Н. С. Технология лесопильно-деревообрабатывающего производства. Учеб.
для СПТУ. М.: Высшая школа, 1988. 271 с.
Кузнецов В.А., Воронов Р.В. Оптимальное планирование распределения заказов производства бумаги между БДМ // Труды ПетрГУ. Сер. «Прикладная математика». Вып. 10. Петрозаводск: Изд-во
ПетрГУ, 2000. С. 87-99.
Веселов А.А., Галюк Л.Г., Доронин Ю.Г. и др. Справочник по производству фанеры, под ред.
Н.В. Качалина. М.: Лесная промышленность, 1984. 432 с.
Shabaev A., Arhipov I., Spirichev M., Urban A., Torozerov M. Development of Planning System for Plywood Production Using “Matrix Designer” // Proceedings of the 14th Conference of Open Innovations Association FRUCT. Helsinki, Finland, 2013. СПб.: СПбГУАП, 2014. C. 140-147.
Данциг Дж. Линейное программирование его обобщения и применения. М.: Прогресс, 1966. 600 с.
Таха Х.А. Введение в исследование операций. М.: Вильямс, 2007. 544 с.
Моудер Д. Исследование операций. Методологические основы и математические методы. М.: Мир,
1989. 712 с.
Давыдов Д.С., Кашевник А.М., Косицын Д.П., Шабаев А.И., Шабалина И.М. Разработка платформы
планирования производства с использованием технологии «облачных вычислений» // Труды СПИИРАН. СПб.: СПИИРАН, 2012. С. 416-430.
Шабаев А. И., Косицын Д.П., Архипов И.В., Шабалина И.М., Апанасик Ю.А. «Облачные» сервисы
оптимального планирования для предприятий ЦБП и ЛПК // Автоматизация в промышленности.
2013. № 4. С. 19-24.
http://www.opti-soft.ru
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
Download