Title: Problme de transport
1Problème de transport
Formulation du problème de transport. Propriétés
de la matrice des contraintes. Adaptation de la
méthode du simplexe. Méthode dite du coin
Nord-Ouest, méthode du coût minimal. Problèmes
de dégénérescence. Généralisation du problème de
transport.
2Introduction
Le 1e problème de flot à coût minimum à être
formulé et résolu.
Ce problème peut être formulé à laide dun
graphe simple où il ny a pas de sommets
intermédiaires, seulement un ensemble de sommets
source S, et un ensemble de sommets puits P.
Le mot transport provient de la considération des
sommets dans S comme des usines et de ceux dans P
comme des clients.
Il sagit de transporter les unités de
disponibilité à partir des sources jusquaux
clients à coût de transport total minimum.
Hypothèse du modèle proposé
Le coût de transport pour acheminer des biens
dune source i à une destination j est
proportionnel au dunités de biens acheminées.
3Énoncé général du problème de transport
m origines, n destinations
Problème de programmation linéaire doté dune
structure particulière.
où ai ? la quantité de biens à acheminer de la
source i aux n destinations, bj ? la quantité
de biens nécessaire pour satisfaire à
la demande à la destination j, cij ? coût
unitaire de transport entre une source i et
une destination j, xij ? la qté transportée de
lorigine i à la destination j.
4Au problème de transport est associé un graphe
biparti G
Chaque origine est représentée par un sommet
Oi, chaque destination par un sommet Dj, chaque
route de lorigine i à la destination j par un
arc orienté de Oi vers Dj.
Note
Il ny a pas dautres arcs.
5Exemple
Une entreprise fabrique un seul produit et
possède 3 usines et 4 clients. Les trois usines
produiront 3000, 5000 et 4000 unités
respectivement. L'entreprise a pris l'engagement
de vendre 4000 unités au client 1, 3000
unités au client 2 et au moins 1000 unités au
client 3. Les clients 3 et 4 voudraient tous les
deux acheter autant que possible des unités qui
restent.
6Le profit net associé avec le transport d'une
unité de l'usine i pour la vente au client j est
donné par le tableau ci-dessous
La direction de l'entreprise veut savoir -
combien d'unités vendre aux clients 3 et 4 et -
combien d'unités transporter de chacune des
usines à chacun des clients afin de maximiser
le profit total.
7On vise à maximiser le profit et non pas de
minimiser un coût comme c'est le cas au problème
de transport. On n'a qu'à multiplier chaque
profit par -1 et puis à minimiser.
Il faut 3 sommets, numérotés 1, 2 et 3 ayant des
disponibilités de 3000, 5000 et 4000 unités
resp., pour représenter les 3 usines.
Il faut aussi 3 sommets, numérotés 1, 2, 3 ayant
des demandes de 4000, 3000 et 1000 unités resp.
pour représenter les 3 premiers clients. Ces
demandes assurent au moins 1000 unités pour le
client 3.
Maintenant, puisqu'il reste 4000 unités de
disponibilité à distribuer parmi les clients 3 et
4, alors nous créons 2 autres sommets 3' et
4 avec des demandes de 4000 unités chacun, car
les clients 3 et 4 peuvent recevoir jusqu'à 4000
des unités disponibles. Les sommets 3 et 3'
représentent le même client physique.
8Nous avons 3000 5000 4000 12000 unités de
disponibilité et 4000 3000 1000 4000 4000
16000 unités de demande. Donc, il faut créer
un sommet (usine) fictif 4 avec
disponibilité 4000. Ce sommet ne pourra
alimenter les clients 1, 2 et 3 mais fournira
des unités fictives aux clients 3' et 4. Ces
unités fictives représentent ce que les clients
3' et 4 ne recevront pas des 12000 unités
disponibles.
9Usines
Clients
Un coût nul car on veut utiliser ces arcs bien
quils napportent pas de profit.
Un coût M très grand car aucun flot ne
doit emprunter ces arcs.
10Exemple
Yves Nobert et al., 95, pp. 337-341.
L'entreprise Sporcau, spécialiste de la saucisse
de porc, dispose de 4 laboratoires où elle
élabore son produit, et de 5 centres de
distribution d'où elle ravitaille sa
clientèle. Le marché de la saucisse de porc est
devenu fort concurrentiel et, récemment,
l'entreprise a vu se resserrer ses marges. Elle a
donc entrepris une étude pour abaisser ses coûts.
Les coûts de transport, en particulier, sont
rapidement apparus comme plus élevés que ceux des
concurrents. Jusqu'ici, l'horaire quotidien
d'acheminement des produits entre laboratoires et
centres de distribution était dressé par un
répartiteur averti armé de son bon sens et de son
flair. Chez Sporcau, on pense qu'il s'agit là du
maillon faible de la chaîne de contrôle des coûts
de transport et on veut que le répartiteur
adopte une méthode qui mènera à un horaire
quotidien optimal.
11Les 4 laboratoires fonctionnent 7 jours sur 7.
Les viandes qu'on y conditionne sont livrées aux
centres de distribution où s'approvisionnent tous
les clients de Sporcau, du supermarché à la
boucherie de quartier. Une carcasse de porc
livrée le jour 1 dans un laboratoire réapparaît
sous forme de saucisses le jour 3 sur les étals
du rayon de la charcuterie des clients. Chaque
centre de distribution enregistre les commandes
de sa clientèle et les communique à la direction
de l'entreprise, qui assure un approvisionnement
adéquat. Le transport, au tarif kilométrique
âprement négocié et incompressible de 2 la
tonne, est confié aux camions réfrigérés de la
société Dicam.
12Distances (km) entre les laboratoires et les
centres de distribution.
Chaque laboratoire s'approvisionne en carcasses
de porc désossées auprès de coopératives
d'éleveurs de son voisinage, qui lui
en fournissent chaque jour une quantité
convenue. Les pertes de poids subies lors de la
transformation de la chair à saucisse en
saucisses sont compensées par le poids des
additifs alimentaires et celui des emballages.
13On recherche un plan d'acheminement à coût
minimal des laboratoires aux centres de
distribution. Les saucisses de Sporcau sont
expédiées directement des m origines (ici m 4)
aux n destinations (ici n 5) selon des coûts de
transport directement proportionnels aux
qtés transportées et sans que leur soient
imposées, sur les routes empruntées, des
conditions quant à leur poids maximal ou minimal.
14Réseau de transport chez Sporcau
15Données pertinentes présentées sous forme dun
tableau appelé tableau de transport
Coût unitaire de transport
Disponibilité i
Demande j à satisfaire par le centre Cj.
16Propriétés caractéristiques du problème de
transport
Hypothèse non restrictive
Disponibilité totale gt demande totale
Ajouter une destination fictive de plus avec
comme demande
Disponibilité totale lt demande totale
Ajouter une origine fictive de plus avec comme
disponibilité
17Théorème
Moyennant la condition précédente, le
problème de transport possède toujours une
solution optimale (finie).
Preuve
Si la condition précédente est satisfaite,
lensemble des solutions réalisables du problème
de transport nest jamais vide
xij ai bj
est un exemple.
Dautre part, on a nécessairement pour toute
solution réalisable
xij ? min ai, bj.
Autrement dit, lensemble des solutions
réalisables doit être compact. Il existe donc un
minimum.
18Théorème
La matrice A des coefficients des contraintes est
de rang (m n - 1).
Théorème
La matrice A est totalement unimodulaire,
cest-à-dire que toute sous-matrice carrée de A
possède un déterminant égal à 0, 1 ou 1.
Théorème de Dantzig, Heller, Tompkins et Gale
La matrice dincidence aux arêtes dun graphe est
totalement unimodulaire ? les sommets du graphe
peuvent être répartis en 2 ensembles disjoints
tels que 2 sommets adjacents ne soient pas
dans le même ensemble.
Corollaire
Si les ai et bj sont entiers, les valeurs des
variables sont entières dans toute solution de
base réalisable et il existe donc au moins
une solution optimale entière.
192 autres propriétés importantes du problème de
transport
Théorème
Toutes les bases du problème de transport sont
triangulaires.
Note
Une matrice carrée B est dite triangulaire sil
existe au moins une ligne (ou colonne) dans B
avec exactement un élément non nul et tel que la
sous-matrice obtenue en supprimant la ligne et la
colonne contenant lélément non nul possède la
même propriété et ainsi de suite.
20Théorème
Il y a une correspondance biunivoque entre les
bases du problème de transport et les arbres
partiels de G un tel arbre constitue
un ensemble de routes de base du graphe de
transport G.
Preuve
Une démonstration de ce théorème est présentée
dans M. Simonnard, Programmation linéaire
technique du calcul économique. Dunod, 1972,
pp.186-187.
Nous verrons maintenant comment tirer profit des
propriétés du problème de transport pour résoudre
plus simplement ce problème à laide du simplexe.
21Généralement, pour résoudre ce problème, celui-ci
est représenté de façon compacte en un tableau
rectangulaire, dit tableau de transport T
22Obtention dune solution de base réalisable
initiale
Nous pouvons appliquer la méthode des 2 phases et
introduire m n variables artificielles. Lorsque
celles-ci sont exclues de la base, nous avons en
main une solution de base réalisable initiale.
Voici une méthode plus simple
xij ai bj
est une solution réalisable.
Mais ceci nest pas une solution de base car la
matrice A est de rang m n 1 donc, une soln
de base doit comporter au plus m n 1 valeurs
strictement positives.
23Voici comment lobtenir
24(No Transcript)
25Exemple
26Cette solution comprend (3 5 1 ) 7 nombres
positifs.
27En éliminant la 1ière contrainte, la base
correspondante qui est formée des vecteurs P11,
P12, P22, P23, P24, P34, P35 a la structure
28Note
Cette méthode ne tient pas compte du coût la
soln peut savérer être loin de la soln optimale.
29D'autres règles de démarrage tiennent
explicitement compte des coûts et peuvent ainsi
économiser du temps de calcul à la méthode du
simplexe - moyennant le temps supplémentaire
nécessaire pour les appliquer. Jusqu'ici, aucune
règle ne s'est prouvée empiriquement
et uniformément meilleure que les autres.
30(No Transcript)
31Algorithme du problème de transport (simplexe
adapté)
Rechercher une solution de base réalisable
initiale.
1.
Appliquer un test doptimalité.
2.
Si la solution courante nest pas
optimale, rechercher une solution de base
réalisable améliorée.
3.
32Test doptimalité
Le problème de transport sénonce comme suit
33(No Transcript)
34(No Transcript)
35La dernière équation de ce système exprime que si
xij ? 0, on doit avoir cij ui vj. Or xij
ne peut être différent de zéro que si c'est une
variable de base soit I l'ensemble des couples
d'indices (i, j) des variables de base. Il en
résulte qu'étant donné une soln de base
réalisable et un ensemble des valeurs des ui et
vj vérifiant le système de (m n - 1)
équations à (m n) inconnues suivant cij
ui vj (i, j) ? I la solution de base
considérée est optimale si et seulement si cij
- (ui vj) 0 ?i 1, ..., m ?j 1,
..., n.
36Remarques
L'indétermination du système résulte du fait que
l'on a introduit (m n) variables duales
associées à (m n) équations non indépendantes
l'une d'entre elles est une conséquence des (m
n - l) autres, de sorte que l'on choisira
arbitrairement l'une des variables duales, disons
vn 0.
Une fois que l'on a fixé, par exemple vn 0, la
résolution du système est immédiate puisqu'il
est triangulaire.
Après avoir calculé la valeur des variables
duales, il devient facile de calculer la valeur
des composantes du vecteur de coût relatif cij
- (ui vj), ?i 1, ..., m ?j 1, ..., n,
pour les variables hors-base. Si l'une de ces
composantes est plus petite que zéro,
alors nous ne sommes pas à l'optimum.
37Exemple
Considérons de nouveau lexemple précédent avec
la solution de base obtenue par la méthode du
coin Nord-Ouest
La soln nest pas optimale car, par ex., c31 u3
v1 5-3-7 -5 lt 0.
38Passage à une autre solution de base réalisable
Pour passer dune soln de base réalisable à une
autre et améliorer la valeur de la fonction
objective, il faut appliquer la méthode
du simplexe - déterminer les variables
dentrée et de sortie, - déterminer la nouvelle
solution de base réalisable.
Dans lexemple précédent, puisque c31 u3 v1 lt
0, lalgorithme du simplexe nous dit quil y a
avantage à introduire x31 dans la base.
Posons x31 ?, une valeur positive. Pour que les
totaux marginaux restent satisfaits, il faut
modifier la solution en conséquence.
39Il faut déterminer un chemin, qui passe par des
cases marquées (xij gt 0), qui se ferme sur la
case choisie (ici x31) et qui est obtenu en se
déplaçant successivement, parallèlement aux
lignes et parallèlement aux colonnes du tableau.
40Un tel chemin est unique, car il traduit tout
simplement le fait que P31 sexprime comme une
combinaison linéaire des vecteurs de la base
P31 P11 P12 P22 P24 P34.
La valeur maximum possible de q se détermine,
comme dans l'algorithme du simplexe, en exprimant
que toutes les variables restent positives ou
nulles, il est clair ici que la valeur maximum
de q est 1, et que pour cette valeur x22? 0
(donc P22 sort de la base).
41La nouvelle soln de base et les valeurs duales
associées seront donc
Cette solution nest pas optimale puisque ne sont
pas satisfaites ni u3 v2 ? c32 ni u3 v3 ?
c33. On poursuit jusquau tableau final
42(No Transcript)
43Énoncé de lalgorithme du problème de transport
44(No Transcript)
45Dégénérescence
Cest le cas lorsquil y a moins de m n 1
valeurs xij strictement positives.
Cela peut se présenter soit, lors de la recherche
dune solution de base réalisable initiale, soit,
au cours dune itération.
Comment remédier aux problèmes de dégénérescence
dans lalgorithme de transport ?
- Conserver une trace des variables de base nulles
afin de pouvoir - appliquer sans difficulté lalgorithme de
transport.
(ii) Perturber les constantes ai et bj pour
éviter un cycle.
46(No Transcript)
47Dégénérescence lors du calcul de la soln de base
réalisable initiale
Cela survient à chaque occasion où une ligne et
une colonne sont saturées simultanément par une
attribution, on réduit ainsi de 1 le nombre
d'attributions nécessaires à l'obtention d'une
soln initiale. Le idéal d'attributions, qui
est égal à (m n -1) ne pourra donc être
atteint.
Pour contourner ces difficultés, on procède ainsi
NOBE 95, pp. 367-375
Chaque fois qu'on sera amené à effectuer une
attribution qui sature à la fois une ligne et une
colonne, on choisira, dans cette ligne ou dans
cette colonne, une autre case que celle qui
reçoit l'attribution, pour y inscrire
explicitement 0. La variable associée à cette
case sera considérée comme une variable de base
prenant la valeur 0.
48Voici une façon heuristique de choisir la case où
inscrire ce 0
Dans les 2 rangées saturées par l'attribution, on
choisit la case de coût unitaire minimal pour y
inscrire 0. Dans le cas où ce coût minimal se
retrouve dans plus d'une case de ces rangées, on
tranche au hasard.
Voici une façon heuristique de choisir la
variable de sortie dans le cas où plusieurs
variables de base ont la valeur 0
Parmi les variables candidates au rôle de
variable sortante, on choisit celle dont le coût
unitaire est maximal. En cas d'égalité, on
tranche au hasard.
49Optimum multiple
Il est aisé de reconnaître la non unicité de
loptimum en examinant les composantes du vecteur
de coût relatif cij ui vj.
Si lon a en main une solution de base réalisable
optimale, une condition nécessaire pour quil en
existe une autre est
il existe une variable xij qui nappartient pas à
la base et pour laquelle léquation duale est
satisfaite en tant quégalité.
Cette condition est suffisante si, en
introduisant le vecteur Pij dans la base, la
variable xij prend une valeur positive.
50Généralisations du problème de transport
Au lieu dun coût unitaire fixe, nous sommes en
présence dun coût non linéaire cij(xij) ou, de
façon plus générale, cij(x).
Lobjectif du problème de transport sénonce
alors comme suit
? cij(xij) i 1, 2, , m j 1, 2, , n
? cij(x) i 1, 2, , m j 1, 2, , n
ou encore
Les quantités demandées aux destinations et
celles disponibles aux sources ne sont pas fixes.
Des fonctions de coût non linéaires peuvent être
introduites dans le modèle - afin de prendre en
compte les différences qui interviennent entre
les quantités demandées et celles acheminées.
- lesquelles dépendent des quantités produites
aux sources.
51Il se peut que les quantités disponibles aux
sources doivent être acheminées à des centres de
distribution avant darriver aux destinations.
Il se peut aussi que les quantités acheminées
dune source i à une destination j doivent
respecter certaines limites Lij ? xij ? Dij.
On se ramène alors au problème de flot à coût
minimum.
FIN