Problema de Otimização de Compras

Aug 29 2020

Peço desculpas antecipadamente se esta pergunta não estiver formatada de acordo com os padrões, pois esta é a primeira vez que faço uma pergunta relacionada à matemática aqui.

Atualmente, estou trabalhando em um problema de trabalho que reconheci ser um problema de otimização.

Um pouco de fundo. O problema no qual estou trabalhando envolve a compra de uma mercadoria específica, portanto, o objetivo geral é determinar quando comprar e quanto comprar naquele momento para minimizar uma métrica específica (neste caso, dias disponíveis). Os dados que recebo são agrupados em semanas. Ao comprar itens, estamos comprando$8$semanas de antecedência. Para este problema específico, estamos assumindo que nossas previsões são precisas. Além disso, temos que comprar um vagão completo dessa commodity, que é de aproximadamente$195$ mil libras (portanto, só podemos comprar múltiplos de $195$mil libras). Com isso em mente, criei o seguinte problema de otimização.

Para simplificar, digamos que estejamos comprando apenas para $3$ semanas ao invés de $8$. A seguir estão as equações e as condições para a otimização:

Week_1_Qty= Initial_Qty - Forecast_week_1 + 195x_1
Week_2_Qty = Week_1_Qty - Forecast_week_2 + 195x_2
Week_3_Qty = Week_2_Qty - Forecast_week_3 + 195x_3

Initial_Qty e a previsão em cada semana são constantes.

Estou tentando minimizar o seguinte cálculo de dias disponíveis para as três semanas completas em que estou comprando (NOTA: este não é o cálculo financeiro típico). Mais especificamente, estou tentando encontrar os valores para$X_i$ que minimizam os dias disponíveis para este período.

sum(Week_i_QTY)/ 3*Avg_Daily_Useage 

O uso médio diário também é uma constante.

As únicas declarações condicionais que tenho são as seguintes:

Week_1_Qty>0
Week_2_Qty>0
Week_3_Qty>0

Não estou muito familiarizado com a otimização. Eu configurei este problema de otimização corretamente e que tipo de otimização eu usaria para resolver isso. Também não tenho certeza se as restrições que criei estão configuradas corretamente (só quero ter certeza de que a quantidade da mercadoria não ficará negativa em nenhuma semana). Estava pensando em programação linear, mas não tenho certeza se essa é a maneira correta de abordar esse problema.

Qualquer conselho é muito apreciado. Mais uma vez, peço desculpas pela má formatação.

Tentei examiná-los em calculadoras de otimização linear on-line com alguns valores para as equações que apresentei acima e continuo recebendo mensagens de erro na equação que estou tentando otimizar e não tenho certeza do que estou fazendo de errado.

Você acredita que a maneira como eu configurei isso é a maneira correta de fazer isso? Se não, quais seriam algumas alternativas.

Respostas

Tognaz Sep 12 2020 at 04:05

Vamos considerar um período de planejamento de m semanas. Deixe ser$ x_1, x_2 , \dots , x_m $a quantidade (medida em libras ) da mercadoria específica a ser comprada em cada semana para atender à demanda. A demanda de cada semana é conhecida com antecedência e prevista com um erro relativo (desvio padrão / média) inferior a 3%:

$ d_1, d_2 , \dots , d_m $

O tempo de espera para obter a mercadoria do fornecedor requer 8 semanas e, como resultado, é necessário colocar o pedido de compra com antecedência de 8 semanas:

$ x(t - \tau) = x_t $ Onde $ \tau = 8 $ semanas

Por exemplo, se hoje obtivemos a solução ideal para a terceira semana x_3 = 100 libras, isso significa que devemos fazer o pedido cinco semanas antes de hoje, $ x_3 = x(3 - 8) $

Por causa de um vagão de trem cheio é capaz de transportar $k$= 195.000 libras das commodities, designamos como

$ y_1, y_2 , \dots , y_m $

o número de vagões a serem contratados para cada semana específica. Claramente$ y_i $ é um número natural.

Deixei $ INV_0 $ ser o estoque disponível no início do período de planejamento.

A restrição que equilibra compras, demanda e estoque é:

$ x_i + INV_{i-1} – INV_i = d_i $ para $i=1, \dots , m $

Então, $ y_i \ge x_i / k $ onde k = 195.000 libras e, portanto, solicitamos que

$ k y_i \ge d_i - INV_{i-1} + INV_i $

O objetivo é manter os dias disponíveis de mercadoria o mínimo possível, sem escassez em todas as semanas E alugar o mínimo de vagões .

O modelo matemático como PL pode ser escrito como:

$ min \left \{ \sum_{i = 1}^m y_i + \sum_{i=1}^m INV_i \right \} $

sujeito a:

$ \left\{ \begin{array}{l} k y_1 \ge d_1 - INV_0 + INV_1 \\ k y_2 \ge d_2 - INV_1 + INV_2 \\ \vdots \\ k y_m \ge d_m - INV_{m-1} + INV_m \\ \\ INV_i \ge 0 \forall \ i \\ y_i \in N \forall \ i \end{array} \right. $