Problème Programmation Lineaire, Variable Conditionnelle

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
jeepdubuc
Messages: 2
Enregistré le: 20 Oct 2018, 03:23

Problème Programmation Lineaire, Variable Conditionnelle

par jeepdubuc » 20 Oct 2018, 03:43

Bonjour,
Tout d'abord merci à tout ceux qui prendront le temps de lire ce problème.
Alors voilà, je suis coincé avec ce probleme que je n'arrive pas à modéliser correctement.
Il s'agit d'un probleme de programmation lineaire.

Nous avons 4 contrats à realiser (acheter une quantité X de produits) et 3 fournisseurs peuvent contribuer à chacun des 4 contrats. Mais il y a certaines contraintes sur les quantités (Fournisseur 1 accepte les commandes de 150 unites minimum). Le fournisseur 2, s'il fournit des unités sur le contrat #2, ne peut fournir que l'un des contrats 3 ou 4 (pas les deux). Finalement, le fournisseur 3 n'accepte que les commandes de 300 ou 550 unites (sauf pour le contrat #3 où il n'accepte de fournir pas plus de 300 unites).
Je vous épargne les details sur la quantité demandée par contrat et les disponibilités des fournisseurs, puisque c'est assez aisé à modéliser.

Ma piste de solution est qu'il y a deux types de variables. Des variables binaires (Xij où Xij = 1 si le fournisseur i fournit des unites sur le contrat j et 0 sinon. i= 1,2,3 et j =1,2,3,4) et des variables normales, pouvant prendre n'importe quelle valeur de l'ensemble des réels positifs (Yij où Yij = la quantité d'unités fournies par le fournisseur i au contrat j).
Les coefficients C sont les couts par unite lorsque le fournisseur 1 fournit le contrat 1, puis 2 et etc.

J'a donc formuler ma fonction objectif ainsi : Minimiser z=C11X11Y11 + C12X12Y12 + CijXijYij + ... +C34X34Y34.

Je peux formuler mes contraintes sur les disponibilités et demandes assez facilement.
Comme le fournisseur 1 doit fournir au moins 150 unites par contrat, je pose comme contraintes
Y1j>150 (superieur ou égale)
Pour le fournisseur 2, s'il aliment le contrat #2 il ne peut alimenter qu'un contrat entre le 3e et le 4e, donc
X22+X23+X24<2 (inferieur ou egal)
C'est pour le troisiement fournisseur que ca se corse. Je n'arrive pas a formuler que la variable peut prendre l'une des deux valeurs suivantes, 300 ou 550

Si quelqu'un aurait la gentillesse de m'aiguiller, ce serait très apprécié car j'ai eu beau cogiter pendant 1 semaine, je n'y arrive pas.

Merci
-Jeep



Avatar de l’utilisateur
Ben314
Le Ben
Messages: 21479
Enregistré le: 11 Nov 2009, 23:53

Re: Problème Programmation Lineaire, Variable Conditionnelle

par Ben314 » 20 Oct 2018, 10:41

Salut,
Si le but c'est uniquement de modéliser ce truc avec le même style de formalisation que ce que tu as employé jusque là, c'est pas trop difficile : tu dit que ce que fournit le 3em fournisseur c'est 300+250*Z où Z c'est soit 0, soit 1.
Mais après, avec ton mélange de variables discrètes (= 0 ou 1) et de variables continues (prenant leur valeur sur tout un intervalle), est-ce que tu sait comment tu va procéder pour déterminer ton max ?
Qui n'entend qu'un son n'entend qu'une sonnerie. Signé : Sonfucius

jeepdubuc
Messages: 2
Enregistré le: 20 Oct 2018, 03:23

Re: Problème Programmation Lineaire, Variable Conditionnelle

par jeepdubuc » 21 Oct 2018, 16:56

Pour le Max:
(300X31+250Z1)+(300X32+250Z2)+(300X33)+(300X34+250Z4)<550

Merci pour ta reponse Ben, en effet en ajoutant une variable binaire on regle le problem... Merci!

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 25 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite