Otimização da Cadeia de Suprimentos com Python
A otimização da cadeia de suprimentos faz o melhor uso da análise de dados para encontrar uma combinação ideal de fábricas e centros de distribuição para atender a oferta e a demanda.
Devido ao aumento atual nos custos de envio, as empresas começam a desafiar sua pegada atual para se adaptar ao “Novo Normal” pós-covid .
Neste artigo, apresentaremos uma metodologia simples utilizando Programação Linear para Otimização da Cadeia de Suprimentos considerando
- Custos fixos de produção de suas instalações ($/mês)
- Custos variáveis de produção por unidade produzida ($/Unidade)
- Custos de envio ($)
- Demanda do cliente (Unidades)
Novos artigos direto na sua caixa de entrada gratuitamente: Newsletter
Se preferir assistir, pode dar uma olhada na versão em vídeo deste artigo
I. Como projetar uma Rede de Cadeia de Suprimentos com Python?
Declaração do problema
Como chefe de gerenciamento da cadeia de suprimentos de uma empresa de manufatura internacional, você deseja redefinir a rede da cadeia de suprimentos para os próximos 5 anos, considerando o recente aumento nos custos de remessa e as previsões de demanda futura.
Sua Rede de Cadeia de Suprimentos
- 5 mercados no Brasil, EUA, Índia, Japão, Alemanha
- 2 tipos de instalações de fabricação : sites de baixa capacidade e de alta capacidade
- Custos de envio ($/contêiner)
- Demanda do cliente (Unidades/ano)
- Despesas de capital para o equipamento (máquinas, armazenamento, ..)
- Utilidades (Eletricidade, Água, ..)
- Gestão de fábrica, pessoal administrativo
- Aluguel de espaço
Custos Variáveis de Produção
- Operadores de linhas de produção
- Matérias-primas
Custos Variáveis de Envio
- Custo por contêiner ($/contêiner)
- Suposição: 1 contêiner pode conter 1000 unidades
Capacidade de Fabricação por Local
Por exemplo, uma fábrica de alta capacidade no Brasil pode produzir 1.500.000 (Unidades/mês).
Demanda dos clientes por mercado
Você pode encontrar o código completo neste repositório do Github: Link
My portfolio with other projects: Samir Saci
II. Resultados
Vamos tentar três cenários
- Cenário 1: parâmetros iniciais
- Cenário 2: aumentamos a capacidade de produção da Índia (x2)
- Cenário 3: custos crescentes de frete devido à escassez de contêineres
- A planta do Brasil está produzindo para o mercado local e para os EUA
Facilities: 1 high capacity plant
('Brazil','Brazil') = 145,000 (Units/Month)
('Brazil','USA') = 1,250,000 (Units/Month)
Facilities: 1 high capacity plant and 1 low capacity plant
('India','Germany') = 90,000 (Units/Month)
('India','India') = 160,000 (Units/Month)
('India','Japan') = 200,000 (Units/Month)
('India','USA') = 1,550,000 (Units/Month)
Facilities: 1 high capacity plant
('Japan','Japan') = 1,500,000 (Units/Month)
Total Costs = 62,038,000 ($/Month)
Vamos tentar dobrar o tamanho da planta de alta capacidade da Índia com a suposição de que ela dobrará os custos fixos.
- A planta do Brasil ainda está produzindo para o mercado local e os EUA
Facilities: 1 high capacity plant
('Brazil','Brazil') = 145,000 (Units/Month)
('Brazil','USA') = 1,250,000 (Units/Month)
Facilities: 2 high capacity and 1 low capacity plants
('India','Germany') = 90,000 (Units/Month)
('India','India') = 160,000 (Units/Month)
('India','Japan') = 1,700,000 (Units/Month)
('India','USA') = 1,550,000 (Units/Month)
-19.4(%) vs. Scenario 1
Total Costs = 51,352,000 ($/Month)
E se tivermos custos de contêineres multiplicados por 5?
- O Brasil está produzindo apenas para o mercado local
Facilities: 1 low capacity plant
('Brazil','Brazil') = 145,000 (Units/Month)
Facilities: 1 high capacity plant
('USA','Japan') = 200,000 (Units/Month)
('USA','USA') = 1,300,000 (Units/Month)
Facilities: 1 high capacity plant
('India','Germany') = 90,000 (Units/Month)
('India','India') = 160,000 (Units/Month)
('India','USA') = 1,500,000 (Units/Month)
Facilities: 1 high capacity plant
('Japan','Japan') = 1,500,000 (Units/Month)
Total Costs = 92,981,000 ($/Month)
Siga-me no meio para obter mais informações relacionadas à ciência de dados para cadeia de suprimentos.
Estaremos usando a biblioteca PuLP de python. PuLP é uma estrutura de modelagem para problemas lineares (LP) e de programação inteira (IP) escritos em Python e mantidos pela Fundação COIN-OR (Infraestrutura Computacional para Pesquisa Operacional).
1. Declare suas variáveis, parâmetros e modelo
- LpMinimize : seu objetivo é minimizar seus custos
- lowBound =0: você não pode ter valores negativos de unidades produzidas
3. Resolva seu modelo e analise os resultados
III. Conclusão e Próximos Passos
Sinta-se à vontade para me seguir no meio para mais artigos relacionados a análise de dados e gerenciamento da cadeia de suprimentos
Conclusão
Este modelo permite simular diversos cenários influenciando parâmetros operacionais e comerciais.
- E se a demanda explodir na Índia?
- E se tivermos que fechar nossa fábrica no Brasil?
- E se triplicarmos a capacidade de produção no Japão?
Abastecimento Sustentável
Uma abordagem semelhante pode ser usada para selecionar seus fornecedores considerando uma função objetivo que minimizará a pegada de CO2 .
Suprimento sustentável é o processo de integração de fatores de desempenho social, ético e ambiental ao selecionar fornecedores.
Isso envolve avaliar e avaliar fornecedores com base em um conjunto de critérios de sustentabilidade, como direitos trabalhistas, saúde e segurança, impacto ambiental, direitos humanos e muito mais.
Use a análise de dados para selecionar automaticamente o melhor fornecedor com uma mistura de restrições econômicas e ambientais
Neste artigo, descobriremos como usar a análise de dados para projetar uma Rede de Cadeia de Suprimentos ideal para minimizar custos e impactos ambientais.
Melhore seu modelo
Este modelo simples pode ajudá-lo a obter o potencial de otimização linear para otimização de rede da cadeia de suprimentos. Podemos melhorar rapidamente esse modelo adicionando restrições
- Custos de armazenamento
- Limitações de emissões de carbono (CO2 = f(distância, peso))
- prazo de entrega
- Taxas de liberação do cliente
- Mudança de moeda
Sobre mim
Vamos nos conectar no Linkedin e no Twitter , sou um engenheiro de cadeia de suprimentos que está usando análise de dados para melhorar as operações de logística e reduzir custos.
Se você está interessado em Data Analytics e Supply Chain, dê uma olhada no meu site
Referências
[1] Infraestrutura Computacional para Pesquisa Operacional, Otimização com PuLP (Documentação), Link





































![O que é uma lista vinculada, afinal? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)