Problème d'optimisation des achats
Je m'excuse à l'avance si cette question n'est pas formatée selon les normes, car c'est la première fois que je pose une question liée aux mathématiques ici.
Je travaille actuellement sur un problème de travail que j'ai reconnu comme un problème d'optimisation.
Un peu de contexte. Le problème sur lequel je travaille consiste à acheter un produit spécifique, donc l'objectif primordial est de déterminer quand acheter et combien acheter à ce moment-là afin de minimiser une métrique spécifique (dans ce cas, les jours disponibles). Les données qui me sont fournies sont regroupées en semaines. Lors de l'achat d'articles, nous achetons$8$semaines à l'avance. Pour ce problème particulier, nous supposons que nos prévisions sont exactes. En plus de cela, nous devons acheter un wagon complet de ce produit, qui est d'environ$195$ mille livres (nous ne pouvons donc acheter que des multiples de $195$Mille livres). Dans cet esprit, j'ai créé le problème d'optimisation suivant.
Pour simplifier, disons que nous n'achetons que pour $3$ semaines plutôt que $8$. Voici les équations et les conditions de l'optimisation:
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 et la prévision à chaque semaine sont toutes des constantes.
J'essaie de minimiser le calcul suivant des jours disponibles pour les trois semaines complètes au cours desquelles j'achète (REMARQUE: ce n'est pas le calcul financier typique). Plus précisément, j'essaye de trouver les valeurs pour$X_i$ qui minimisent les jours disponibles pour cette période.
sum(Week_i_QTY)/ 3*Avg_Daily_Useage
La consommation quotidienne moyenne est également une constante.
Les seules déclarations conditionnelles que j'ai sont les suivantes:
Week_1_Qty>0
Week_2_Qty>0
Week_3_Qty>0
Je ne suis pas trop familier avec l'optimisation. Ai-je configuré correctement ce problème d'optimisation et quel type d'optimisation utiliserais-je pour le résoudre? Je ne sais pas non plus si les contraintes que j'ai créées sont correctement configurées (je veux seulement m'assurer que la quantité de la marchandise ne devienne négative à aucune semaine). Je pensais à la programmation linéaire, mais je ne suis pas sûr que ce soit la bonne façon d'aborder ce problème.
Tout conseil est grandement appréciée. Encore une fois, je m'excuse pour le mauvais formatage.
J'ai essayé de les parcourir sur des calculateurs d'optimisation linéaire en ligne avec des valeurs pour les équations que j'ai données ci-dessus et je continue à recevoir des messages d'erreur sur l'équation que je tente d'optimiser et je ne suis pas sûr de ce que je fais de mal.
Pensez-vous que la façon dont j'ai mis cela en place est la bonne façon de procéder? Sinon, quelles seraient certaines alternatives.
Réponses
Considérons une période de planification de m semaines. Laisser être$ x_1, x_2 , \dots , x_m $la quantité (mesurée en livres ) du produit spécifique à acheter pour chaque semaine afin de répondre à la demande. La demande pour chaque semaine est connue à l'avance et elle est prévue avec une erreur relative (écart-type / moyenne) inférieure à 3%:
$ d_1, d_2 , \dots , d_m $
Le délai d'obtention de la marchandise auprès du fournisseur prend 8 semaines et, par conséquent, il est nécessaire de passer la commande d'achat avant 8 semaines:
$ x(t - \tau) = x_t $ où $ \tau = 8 $ semaines
Par exemple, si aujourd'hui nous avons obtenu une solution optimale pour la troisième semaine x_3 = 100 livres, cela signifie que nous devons passer la commande cinq semaines à l'avance à partir d'aujourd'hui, $ x_3 = x(3 - 8) $
Parce qu'une voiture de train pleine est capable de transporter $k$= 195000 livres de marchandises, nous désignons comme
$ y_1, y_2 , \dots , y_m $
le nombre de wagons à louer pour chaque semaine spécifique. Clairement$ y_i $ est un nombre naturel.
Laisser $ INV_0 $ être le stock disponible au début de la période de planification.
La contrainte qui équilibre les achats, la demande et les stocks est:
$ x_i + INV_{i-1} – INV_i = d_i $ pour $i=1, \dots , m $
Donc, $ y_i \ge x_i / k $ où k = 195000 livres et donc nous demandons que
$ k y_i \ge d_i - INV_{i-1} + INV_i $
L'objectif est de réduire au minimum les jours de disponibilité des produits sans pénurie chaque semaine ET de louer le nombre minimum de wagons .
Le modèle mathématique comme PL peut s'écrire comme:
$ min \left \{ \sum_{i = 1}^m y_i + \sum_{i=1}^m INV_i \right \} $
sujet à:
$ \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. $