Научная статья на тему 'Разработка инструмента оптимального планирования сети распределения с применением методов математического программирования и имитационного моделирования'

Разработка инструмента оптимального планирования сети распределения с применением методов математического программирования и имитационного моделирования Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
446
76
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МАТЕМАТИЧЕСКОЕ ПРОГРАММИРОВАНИЕ / ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ / ПЛАНИРОВАНИЕ СЕТИ РАСПРЕДЕЛЕНИЯ / СМЕШАННОЕ ЛИНЕЙНО-ЦЕЛОЧИСЛЕННОЕ ПРОГРАММИРОВАНИЕ / ТАКТИЧЕСКОЕ ПЛАНИРОВАНИЕ / ОПТИМИЗАЦИЯ СТРАХОВОГО ЗАПАСА / MATHEMATICAL PROGRAMMING / SIMULATION MODELING / DISTRIBUTION NETWORK PLANNING / MIXED INTEGER LINEAR PROGRAMMING / GLPK / ANYLOGIC / TACTICAL PLANNING / SAFETY STOCK OPTIMIZATION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Зайчиков Виталий Александрович, Заходякин Глеб Викторович

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Зайчиков Виталий Александрович, Заходякин Глеб Викторович

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

DEVELOPMENT OF DISTRIBUTION NETWORK OPTIMAL PLANNING TOOL BASED ON INTEGRATION OF MATHEMATICAL PROGRAMMING AND SIMULATION

This paper describes a prototype distribution network planning tool based on an iterative approach using a combination of mixed-integer linear programming and simulation. The prototype is implemented using an open-source optimization package GLPK and Anylogic software.

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

УДК 004.94:658.8

В. А. Зайчиков*, Г. В. Заходякин**

*Федеральное государственное автономное образовательное учреждение высшего профессионального образования «Национальный исследовательский университет «Высшая школа экономики», Москва, Россия 125319, Москва, Кочновский пр., д..3

**Российский химико-технологический университет им. Д.И. Менделеева, Москва, Россия 125047, Москва А-47, Миусская пл., д. 9 e-mail: [email protected]

РАЗРАБОТКА ИНСТРУМЕНТА ОПТИМАЛЬНОГО ПЛАНИРОВАНИЯ СЕТИ РАСПРЕДЕЛЕНИЯ С ПРИМЕНЕНИЕМ МЕТОДОВ МАТЕМАТИЧЕСКОГО ПРОГРАММИРОВАНИЯ И ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ

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

Ключевые слова: математическое программирование; имитационное моделирование; планирование сети распределения; смешанное линейно-целочисленное программирование; GLPK; Anylogic, тактическое планирование, оптимизация страхового запаса.

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

производства и транспортировки.

В данной работе рассмотрена задача тактического планирования сети распределения. Результатом тактического планирования является объемно-календарный план для всех узлов логистической сети на среднесрочном горизонте (6-18 месяцев), сбалансированный по спросу, мощностям и затратам, а также план материальных потоков в логистической сети. Исходными данными для тактического планирования являются прогнозы спроса, остатки товаров в складской сети, плановые показатели в «замороженном» периоде, а также доступные мощности в разрезе ключевых ресурсов. Результаты тактического планирования используются различными подразделениями компании для оценки степени выполнения бюджета, управления спросом, управления мощностями, планирования производства и логистической деятельности на детальном уровне (планирование материальных потребностей, распределения, транспортировки).

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

В мировой практике разработки систем SCM применяются три подхода к решению задачи тактического планирования: математическое программирование, эвристические методы и бизнес-правила, иногда в сочетании друг с другом. Наиболее распространенным подходом является математическое программирование. Этот метод применяется в наиболее известных системах -Oracle Strategic Network Optimization, SAP APO Supply Network Planning, JDA Production & Sourcing Optimization, IBM LogicNet, AspenTech Distribution Planning and Optimization.

Как правило, математическая модель в системах тактического планирования -фиксированная и не может быть изменена. Тем не менее система предлагает обширный набор сущностей (продукты, временные интервалы, точки сбыта, склады, производственные линии, поставщики, транспортные тарифы и маршруты), с помощью которых можно смоделировать практически любую конфигурацию логистической сети. На основе введенных в исходные таблицы данных система формирует математическую модель в виде задачи линейного или смешанного линейно-целочисленного программирования (СЦЛП) большой размерности. Затем эта задача решается с использованием стандартных решателей (CPLEX, XPRESS-MP и др.) и эвристик,

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

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

позволяющий решать задачи оптимизации в условиях неопределенности, он не нашел пока применения в коммерческих системах планирования сети распределения из-за высокой вычислительной сложности. В лучшем случае применяется сценарный подход к планированию или анализ устойчивости решения с использованием метода Монте-Карло (такой подход, например, применяется в системе IBM LogicNet).

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

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

В данной работе предлагается альтернативный подход к тактическому планированию сети распределения, в котором помимо модели математического программирования используется имитационное моделирование. Применяется итеративный алгоритм планирования (рис. 1), в котором для создания первоначального плана решается задача СЦЛП. При этом используется заданное пользователем начальное приближение нормативов страхового запаса. Затем, на втором этапе, заданная пользователем конфигурация логистической сети автоматически преобразуется в имитационную модель, основанную на многоагентном подходе. Для формирования и исследования модели применяется пакет Лпу1о§1е и встроенные в него средства для агентного моделирования. Целью имитации является оценка уровня обслуживания при найденном на первом этапе норматива страхового запаса (в условиях случайного спроса). При необходимости, уровень страхового запаса автоматически корректируется, чтобы достичь заданного уровня сервиса. Скорректированные нормативы страхового запаса фиксируются в таблицах исходных данных оптимизационной модели, и начинается новая итерация алгоритма планирования.

Рис. 1. Итеративный алгоритм тактического планирования логистической сети

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

На первом этапе была создана модель математического программирования, написанная на языке MathProg - диалекте популярного языка программирования AMPL (A Modeling Language for Mathematical Programming - язык моделирования для математического

программирования). Ее основные параметры представлены в табл. 1. Для решения оптимизационной модели был выбран программный пакет GLPK (GNU Linear Programming Kit). Данный пакет предназначен для нахождения решений задач линейного и смешанного линейно-целочисленного

программирования и предоставляет обширные возможности по импорту и экспорту данных в другие источники, в том числе Microsoft Access. Из базы данных берется первоначальная информация, необходимая для выполнения модели, решатель GLPK находит оптимальное решение при данных параметрах и загружает его обратно в базу.

Таблица 1

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

Целевая функция Максимизация прибыли на горизонте планирования: выручка от продаж -(транспортные затраты + затраты на хранение + производственные затраты)

Ограничения Производственные мощности Складские мощности Транспортные мощности Размер страхового запаса

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

Следующим этапом было создание имитационной модели, которая проверяет соответствие требованиям компании уровня обслуживания при заданном нормативе запасов. В качестве входных параметров данной модели выступают результаты решения задачи в GLPK. Использование среды моделирования Any1ogic

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

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

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

Для интеграции среды Anylogic, использующей язык программирования Java, и оптимизационной модели была использована надстройка GLPK, переводящая модель, написанную на языке MathProg, в язык Java. Такая модель может быть запущена из внешних

источников, например, при помощи командной строки Microsoft Windows. Был написан пакетный файл в формате ".bat", который запускает решение оптимизационной модели. Код запуска данного файла встроен в имитационную модель и выполняется в случае неудовлетворительного коэффициента выполнения спроса хотя бы по одной из товарных категорий. Такой цикл будет продолжаться до тех пор, пока не будет найдено оптимальное решение по объемам производства, перевозок и запасов, которое и будет принято в качестве целевого.

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

планирования сети распределения, сочетающий в себе смешанное линейно-целочисленное программирование и имитационное

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

Зайчиков Виталий Александрович - студент 1-го курса магистратуры факультета логистики НИУ-ВШЭ, Россия, Москва

Заходякин Глеб Викторович - старший преподаватель кафедры Логистики и экономической информатики РХТУ им. Д.И. Менделеева, Россия, Москва

Литература

1. Уоллас Т., Сталь Р. Планирование продаж и операций: практическое руководство. - 3е изд. -СПб. : Питер, 2010. - 272 с.

2. Шапиро Дж. Моделирование цепи поставок / Пер. с англ. под ред. В.С. Лукинского. - СПб.: Питер, 2006. - 720с.

3. Шатт Д. Управление товарным потоком. Руководство по оптимизации логистических цепочек. -Минск : Гревцов паблишер, 2008. - 352 с.

4. Simchi-Levi D. et al Designing and managing the supply chain. Concepts, strategies and case-studies. -3rd ed. - McGraw-Hill, 2008. - 498 p.

5. Stadtler H., Kilger C. Supply chain management and advanced planning. Concepts, models, software and case studies. - 4th ed. - Springer, 2008. - 556 p.

Zaychikov Vitaly Aleksandrovich*, Zakhodyakin Gleb Viktorovich**

* National Research University Higher School of Economics, Moscow, Russia. ** D.I. Mendeleev University of Chemical Technology of Russia, Moscow, Russia. e-mail: [email protected]

DEVELOPMENT OF DISTRIBUTION NETWORK OPTIMAL PLANNING TOOL BASED ON INTEGRATION OF MATHEMATICAL PROGRAMMING AND SIMULATION

Abstract

This paper describes a prototype distribution network planning tool based on an iterative approach using a combination of mixed-integer linear programming and simulation. The prototype is implemented using an open-source optimization package GLPK and Anylogic software.

Key words: mathematical programming; simulation modeling; distribution network planning; mixed integer linear programming; GLPK; Anylogic, tactical planning, safety stock optimization.

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