18
Инструменты моделирования цепей поставок Применение моделирования и оптимизации в управлении цепями поставок Компоненты задачи оптимизации Концептуальное моделирование Инструменты моделирования v 1.5, 16.02.2015 1

Моделирование цепей поставок: принципы и инструменты

Embed Size (px)

Citation preview

Инструменты моделирования цепей поставок

• Применение моделирования и оптимизации в управлении цепями поставок

• Компоненты задачи оптимизации • Концептуальное моделирование • Инструменты моделирования

v 1.5, 16.02.2015 1

Presenter
Presentation Notes
Занятие 1 - 30.01.14 (чт) Часть 1: Задачи, рассматриваемые в рамках курса. Практические примеры и востребованность. Применяемые подходы к решению (описание и затраты на использование ПО). Плюсы и минусы (моделирования в специализированных пакетах). Часть 2: Сильные стороны алгебраического программирования. Демонстрация решения сложной задачи средствами AMPL/GLPK. Обзор основных компонентов постановки и решения задачи средствами алгебраического моделирования. Домашнее задание: - на базе предложенного лектором или собственного примера подготовить описание основных компонентов постановки задачи. - найти и установить GLPK, посчитать тестовый пример (готовый) Подгтовить к занятию: - Рассказ о проекте (проектах), в котором использовалось моделирование (возможно, с использованием специализированных инструментов моделирования – CAST, LogicNet, Supply Chain Strategist) – Павел (презентация с примерами проектов по Network Design) - Рассказ о принципах работы пакетов для моделирования ЦП (на примере LogicNet). Преимущества и ограничения готовых пакетов. - Какие требования и ограничения заказчиков сложно реализовать с использованием готовых пакетов – Павел (будет упомянуто в презентации) + Глеб - Рассказ о разработке модели проектирования ЦП с использованием AMPL: цели моделирования, архитектура решения, концептуальная модель, основные компоненты модели – множества, параметры, переменные решения, ограничения, целевая функция. Управление данными. Визуализация. Пример задачи с МЕТРО - Рассказ о GLPK и GUSEK. Онлайн-инструменты: http://www3.nd.edu/~jeff/mathprog/mathprog.html - Литература по курсу: AMPL, Шапиро, мануал от GLPK, цикл статей про GLPK на DeveloperWorks. - Подготовить список журналов, где публикуют статьи, использующими математическое программирование. - Подготовить задание по книге Шапиро или статьям – выделить компоненты задачи математического программирования (множества, параметры, переменные, ограничения, целевая функция). �

Цепь поставок • Структура, объединяющая множество

предприятий на пути от необработанного сырья до товарной продукции для конечного потребителя

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

Supply Chain Management Terms and Glossary (ed. Fall’08) – CSCMP.org • глобальная сеть, которая используется для

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

APICS Illustrated Dictionary (11th Edition) 2

Presenter
Presentation Notes
С точки зрения фокусной компании ЦП состоит из: клиентов, РЦ, производственных мощностей, поставщиков. Сеть распределения может включать несколько уровней (центральные и региональные склады, многоуровневое производство). могут рассматриваться варианты прямых поставок с завода, минуя РЦ. Также могут быть альтернативы в поставках материалов (несколько поставщиков для 1 материала). Наиболее типичные процессы ЦП: -планирование спроса (План спроса разрабатывается на 12 мес – 5 лет) -распределение (планирование распределения, управление запасами - пополнение РЦ, VMI) Отличие планирование распределения и УЗ (пополнения): планирование распределения направлено на определение путей товаров в точки спроса через РЦ и заводы, оно предполагает средне- и долгосрочное планирование и требует дальнейшего планирования, а пополнение – это оперативная задача, которая направлена на выполнение спроса в ЦП с заданным уровнем обслуживания. Пополнение планируется на горизонтах в несколко недель -производство (планирование производства, детальное планирование, исполнение производства) -закупки матералов и субконтрактинг В зависимости от делализации, среднесрочное планирование мощностей выполняется с периодами в месяц или неделя. Цель – получить загрузку ключевых ресурсов с детализацией до периода времени. В отличие от этого, оперативное планирование предполагает точное определение времени выполнения каждой операции и использование ресурсов. -Выполнение заказов (продажи и планирование транспортировки)

Процессы планирования цепи поставок

Операционная стратегия

Краткосрочное планирование

спроса

Краткосрочное планирование распределения

Планирование пополнения

складов, заказ транспорта

Долгосрочное планирование спроса

(в т.ч. управление ассортиментом)

Стратегическое планирование цепи

поставок

Заключение договоров с поставщиками

материалов

Краткосрочное планирование производства

Планирование материальных потребностей

Детальное планирование /

графики

Заказ материалов (требование)

Оператив-ный

Такти-ческий

Стратеги-ческий

Среднесрочное планирование спроса (в т.ч. управление

ассортиментом)

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

Среднесрочное планирование материальных потребностей

Планирование сети

распределения

Планирование продаж и операций

Реагирование

Адаптация

Баланс

3

Presenter
Presentation Notes
Стратегический уровень: структурные решения, высокая степень неопределенности, альтернативные сценарии. Цель – адаптация. Тактический уровень: как лучше всего использовать имеющиеся ресурсы? Ограниченная свобода выбора. Цель – маневрирование в ответ на изменения окружающей среды, можно изменить курс Оперативный уровень: будущее, как правило, неизбежно. детальные решения. цель – обеспечение эффективности операций, реакция на внешние воздействия.

Моделирование цепи поставок

Покупатель Производство, сортировка

Производство, сортировка Поставщик

Затраты ($)

• Закупка товаров, сырья, материалов • Транспортные тарифы • Складские тарифы/затраты • Инвестиции в здания и оборудование • Инвестиции в запасы • Затраты на производство • Налоги, пошлины

Ограничения (C)

• Уровень обслуживания (% и время выполнения заказа) • Складские площади, объем обработки • Целевой уровень запасов • Производственные мощности • Объемы перевозок • Возможности поставщиков и 3PL • Сценарные параметры (число складов…) • Спецификации и технология производства

$ $ $

C/$

C/$

C/$ C/$ C/$

C/$

C/$

C/$ C/$

C/$ C/$ C/$ C/$ C/$

Перевозчик

4

Presenter
Presentation Notes
Typical applications Distribution Network Design Determine the optimal number, location, and size of distribution facilities to meet customer service requirements at minimum cost. Manufacturing Network Design Determine the best number, location, and capacity of plants, lines, and processes to maximize asset utilization, minimize total cost, and align capacity with business growth projections. Manufacturing Sourcing Strategy In a multiplant environment, determine which product should be made at which plant, trading off manufacturing costs and economies of scale with transportation costs. Shipping Territory Realignment Determine the best service territory for each DC (Distribution Center) to improve service levels and reduce costs. Network Transition Planning Make the transition to a new supply chain configuration focusing on various asset, capacity, inventory and transportation lane requirements. Seasonal Supply Chain Design In a highly seasonal business, determine the appropriate trade-off between capacity and inventory prebuild and the use of overflow facilities Contingency Planning Understand how unexpected events in the supply chain will affect the costs, service levels, and potential revenues. Develop plans to mitigate the risks. �  Major inputs Customer locations and demand by product and time period. Locations, costs, and capacities for plants, suppliers, and production lines for existing and potential sites. Locations, costs, and capacities of existing and potential warehouses. Transportation costs for each lane. Service level requirements. Output Overall minimum cost that considers production, transportation, inventory, and warehousing costs along with any service constraints. Optimal number, location, and size of plants. Optimal number, location, and size of warehouses. Optimal production quantity on each production line for each product. Optimal assignment of customers to warehouses. Optimal flow of products through the network. Total revenue, cost, and profit Who benefits Companies seeking to improve the bottom-line cost-effectiveness of their distribution network. Companies in which transportation and distribution costs represent a significant proportion of overall costs. Companies that have recently merged and need to consolidate several distribution networks. Third Party Logistics firms that need the capability to respond quickly to RFPs (Requests for Proposals). Companies whose logistics network has evolved over the last few years and who realize the need to reconfigure it more efficiently. Companies seeking to evaluate and improve their Supply Chain regularly and systematically. Companies seeking to improve service level by focusing on proximity to key Customers. Companies seeking to optimize the assignment of products to warehouses.

Оптимизационное решение

o Смешанное целочисленное линейное программирование (Mixed-Integer Linear Programming)

o Программирование в ограничениях (Constraint Programming)

o Локальный поиск (Local Search) o Эвристики (Heuristics & Meta-

Heuristics)

Экономические • Чистая прибыль, затраты, NPV

Сервис • Объем удовлетворенного спроса • Объем спроса в пределах заданного

времени выполнения поставки • Суммарное опоздание, временное

смещение

Используемые методы Критерии оптимизации

Цели моделирования: – разработка и анализ сценариев (поддержка принятия решений) – разработка планов и графиков для непосредственного исполнения

5

Задача линейного программирования

• Математическое программирование* - задача максимизации/минимизации целевой функции многих переменных при наличии ограничений на значения переменных

• В задаче линейного программирования целевая функция и все ограничения линейны:

• Мир нелинеен? – У нас есть СЦЛП!

* Термин происходит от англ. Programming – разработка программ, планов действий

при условии что:

( )1 2 1 1 2 2, min/ maxF x x c x c x= + →

+ ≤ ≥ + = ≥ ≥

11 1 12 2 1

21 1 2

31 1 32 2 3

1 20, 0

a x a x ba x ba x a x bx x

6

Presenter
Presentation Notes
Краткая историческая справка Первые работы, посвященные решению задач оптимального планирования, были выполнены в 30-е годы XX века в Ленинградском государственном университете Л.В. Канторовичем. В 1938 году Леонид Канторович консультировал фанерный трест по проблеме эффективного использования лущильных станков. Он модифицировал метод разрешающих множителей Лагранжа для ее решения и понял, что к такого рода задачам сводится колоссальное количество проблем экономики. В 1939 году опубликовал работу «Математические методы организации и планирования производства», в которой описал задачи экономики, поддающиеся открытому им математическому методу и тем самым заложил основы линейного программирования. На данном этапе были выявлены экономические проблемы, которые можно свести к частным задачам линейного программирования, и найдены алгоритмы решения некоторых из этих задач. В 1975 году он совместно с Т. Купмансом получил Нобелевскую премию по экономике «за вклад в теорию оптимального распределения ресурсов». Сам термин «линейное программирование» появился в 1951 г. в работах американских ученых Дж. Данцига и Т. Купманса. Джордж Данциг, пользуясь идеями Леонида Канторовича (постановка задач) и Джона фон Неймана (взаимосвязанные с линейным программированием методы теории игр), предложил общую постановку задачи линейного программирования и разработал в 1947 году эффективный метод решения этой задачи, который получил название симплекс-метода. С начала 1950-х годов развитие линейного программирования было связано с развитием вычислительной техники. Основной алгоритм решения задач линейного программирования — симплекс-метод имеет эффективную программную реализацию и позволяет решать задачи очень большой размерности (десятки тысяч переменных решения). По некоторым оценкам, наибольшая часть процессорного времени всех существовавших тогда ЭВМ расходовалась именно на решение задач оптимального планирования.

Пример: «Задача о распределении ресурсов (планировании производства)»

Ресурс/продукт P1 P2 … PN Запас ресурса

A1 a11 a12 … a1N b1

A2 a21 a22 … a2N b2

… … … … … …

AM aM1 aM2 … aMN bM

Цена продукта C1 C2 … CN

Количество продукта x1 x2 … xN

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

1max

N

j jj

F C x=

= →∑1

, 1N

ij j ij

a x b i M=

⋅ ≤ =∑

0, 1jx j N≥ = 7

Presenter
Presentation Notes
Предприятие производит ассортимент из N продуктов: P1, P2, …, PN ценой C1, C2,… CN соответственно. Для производства каждого продукта требуется определенное количество ресурсов, причем эта потребность сведена в таблицу, в которой строкам соответствуют различные ресурсы (M наименований), а столбцам — продукты.

Оптимизация на практике

Формализация модели в общем

виде

Концептуальное моделирование

Сбор и подготовка

данных

Создание и решение задачи

Анализ решения

Сценарный анализ

8

Язык моделирования

1max

N

j jj

F C x=

= →∑1

, 1N

ij j ij

a x b i M=

⋅ ≤ =∑

0, 1jx j N≥ =

// … здесь - определение параметров var x {j in 1..N} >= 0; maximize F: sum {j in 1..N} C[j] * x[j]; subject to Resource {i in 1..M}: sum {j in 1..N} a[i, j] * x[j] <= b[i]; // … здесь – определение данных 9

Presenter
Presentation Notes
AMPL is notable for the similarity of its arithmetic expressions to customary algebraic notation, and for the generality and power of its set and subscripting expressions. AMPL also extends algebraic notation to express common mathematical programming structures such as network flow constraints and piecewise linearities. AMPL offers an interactive command environment for setting up and solving mathematical programming problems. A flexible interface enables several solvers to be available at once so a user can switch among solvers and select options that may improve solver performance. Once optimal solutions have been found, they are automatically translated back to the modeler’s form so that people can view and analyze them. All of the general set and arithmetic expressions of the AMPL modeling language can also be used for displaying data and results; a variety of options are available to format data for browsing, printing reports, or preparing input to other programs.

Архитектура системы на базе GUSEK

Модель на языке MathProg .mod

Сценарий .dat / DB

Решение (txt / DB)

Отчёты .out

Новый сценарий

Интерпретация, анализ «что если…», устойчивость

GUSEK = GLPK Under SCITE Extended Kit

СУБД, Excel, система анализа/визуализации

Open Source!

Математическая постановка задачи

Алгоритм решения

GLPSOL

Компилятор языка

моделирования

Редактор SCITE

10

Архитектура системы на базе AMPL

Модель на языке AMPL .mod

Сценарий .dat / DB

Решение (txt / DB)

Отчёты .out

Новый сценарий

Интерпретация, анализ «что если…», устойчивость

СУБД, Excel, система анализа/визуализации

Математическая постановка задачи

Компилятор языка моделирования +

язык для манипуляций с

моделью

AMPL

Алгоритм решения

Алгоритм решения Алгоритм

решения

11

Что дальше?

GLPK

AMPL

AIMMS

CPLEX Studio

IBM Decision Optimization

CPLEX, Gurobi, Xpress MP, Conopt, Knitro, CP Optimizer

CPLEX, CP Optimizer

Моделирование

Прототипы приложений

GUI

12

Presenter
Presentation Notes
Языки моделирования с возможностью подключения решателей GAMS, AMPL, AIMMS GLPK Lingo CPLEX/OPL Studio FICO Xpress Optimization Suite Платформы для разработки систем поддержки принятия решения на основе оптимизации IBM ODM Enterprise FICO Insight AIMMS Pro

Журналы

источник: SCOPUS, 30.01.14 публикации по запросу “MIP or MILP” В электронной библиотеке ВШЭ материалы можно искать в базах SCOPUS, ISI Web of Knowledge и JSTOR

13

Presenter
Presentation Notes
TITLE-ABS-KEY(mip OR milp) AND (LIMIT-TO(SUBJAREA, "ENGI") OR LIMIT-TO(SUBJAREA, "COMP") OR LIMIT-TO(SUBJAREA, "MATH") OR LIMIT-TO(SUBJAREA, "ENGI") OR LIMIT-TO(SUBJAREA, "COMP") OR LIMIT-TO(SUBJAREA, "MATH") OR LIMIT-TO(SUBJAREA,"DECI") OR LIMIT-TO(SUBJAREA, "BUSI"))

Практическое использование моделирования

Ссылка: Franz Edelman Award 14

Источник: Jeffrey M. Alden Billions Achieved with Business Analytics //Edelman Awards Gala, 2013

Экономический эффект от внедрения решений, основанных на моделировании

15

Структура курса

• Цель курса – изучение практики применения моделирования и оптимизации в управлении цепью поставок, освоение инструментов решения задач оптимизации большой размерности

• Содержание курса – Примеры формализации задач стратегического, тактического и оперативного

планирования цепи поставок с использованием СЦЛП – Формализация моделей ЛП и СЦЛП с помощью языков AMPL/MathProg – Применение пакетов AMPL/GLPK и сопутствующих технологий для решения

задач оптимизации и визуализации/анализа решения

• Структура оценки:

– Домашние задания – 10% – Активность – 20% – Защита проекта – 50% – Индивидуальная задача на зачете – 20%

16

Основные ресурсы

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

• Бочкарев А. Планирование и моделирование цепи поставок. – Альфа-пресс, 2008 – 192 с

• Fourer R. et al. AMPL – A Modeling language for mathematical programming. – 2nd ed. /Duxbury Press, 2002. – 517 p. http://www.ampl.com/BOOK/

• Серон Р. Набор средств линейного программирования GNU [цикл статей] / IBM DeveloperWorks, 2007 (ссылка) 17

Моделирование цепей поставок

Заходякин Г.В. [email protected]

Сверчков П.А. [email protected]