Académique Documents
Professionnel Documents
Culture Documents
Réalisé par :
AZKOUR Sara
KHAFFAJI Maha
LHASNAOUI Hassane
Encadré par :
Prof. Mustapha El MOUDDEN
EL Jadida
Le présent rapport représente une analyse de notre projet réalisé dans le cadre de
notre projet de fin d’année 2 (PFA2), de l’Ecole Nationale des Sciences Appliquées d’El
Jadida (ENSAJ) synthétisant notre travail depuis la phase d’idée jusqu’à sa création.
Notre projet consiste en la résolution problème du transport qui est un cas particulier de
programmation linéaire qui peut être résolu de manière plus efficace que la méthode du
simplexe en raison de la nature de sa composition. Ils abordent généralement les
problèmes de transport et de distribution des marchandises. L’objectif de ce projet est de
proposer une solution a un problème de transport au cout le plus bas possible tout en
respectant toutes les contraintes solides de l’offre et de la demande et la plupart des
contraintes flexibles du type de services.
Abstract
This report represents an analysis of our project carried out as part of our year-end project 2
(PFA2), the National School of Applied Sciences of El Jadida (ENSAJ) synthesizing our work
from the phase of idea to its creation.
Our end-of-year project consists of transport problem solving which is a particular case of linear
programming that can be solved more efficiently than the simplex method due to the nature of its
composition. They usually address the problems of transportation and distribution of goods.
However, this does not prevent the use of the transport problem model, as amended, to solve other
similar problems in terms of composition and does not necessarily have to be related to the
transport and transport of goods. The objective of this project is to propose a solution to a
transportation problem at the lowest possible cost while respecting all the strong constraints of
supply and demand and most flexible restrictions of the type of services.
Remerciements
faire confier des missions qui nous ont offert l’opportunité de consolider
nos connaissances tant sur le plan technique que sur le plan managérial.
projet.
Nous adressons ainsi notre vif remerciement au membre du jury qui ont
Annexes .................................................................................... 39
Bibliographie ........................................................................... 45
Liste des figures
Figure 1: Diagramme Bête à Cornes ........................................................................................ 5
Figure 2: Diagramme Pieuvre .................................................................................................. 6
Figure 3 : Organigramme des tâches ........................................................................................ 7
Figure 4: Diagramme Gantt ...................................................................................................... 8
Figure 5 : Réseau de transport associé ................................................................................... 12
Figure 6 : Organigramme de la résolution de problème de transport. .................................... 13
Figure 7: La différence entre faisabilité et accessibilité ......................................................... 20
Figure 8 : Illustration des notions de dominance, optimalité de Pareto et front de Pareto ..... 21
Figure 9: Front de Pareto1 ...................................................................................................... 29
Figure 10: Front de Pareto 2 ................................................................................................... 31
Figure 11: Front de Pareto 3 ................................................................................................... 34
Figure 12: Front de Pareto 4 ................................................................................................... 36
La recherche opérationnelle est une vaste branche des mathématiques qui englobe
de nombreux domaines de minimisation et d’optimisation. Dans tous les cas, nous mettons
tout en ouvre pour atteindre le meilleur. Ce vaste concept couvre un large éventail
d’application, notamment les transports terrestres, les transports aériens, l’agriculture, les
soins infirmiers, la technologie, l’analyse de données, le transport maritime, les fournitures
militaires et les opérations de secours. Pour progresser dans l’amélioration, selon les
perspectives scientifiques, il faut distinguer les nouvelles contraintes.
Tous les problèmes sont connus par un ensemble de caractéristiques qui doivent être obtenues
par les solutions attendues, qui peuvent être un problème de décision ou un problème
d’amélioration.
Pour ce faire, dans le cadre du Projet de Fin d’Année (PFA2) en 2 -ème année Génie Industriel
à l’Ecole Nationale des Sciences Appliquées d’El Jadida (ENSAJ), nous allons nous
concentrer sur l'application de la recherche opérationnelle pour résoudre des problèmes de
transport terrestre, en utilisant des techniques de minimisation et d'optimisation pour atteindre
les meilleures solutions possibles. Nous allons également prendre en compte les nouvelles
contraintes qui peuvent se présenter, afin de répondre aux perspectives scientifiques et
améliorer continuellement notre approche. Notre objectif est de trouver des solutions efficaces
pour les problèmes de transport terrestre qui prennent en compte les différentes
caractéristiques et contraintes spécifiques à chaque situation, que ce soit un problème de
décision ou un problème d'amélioration.
1
Chapitre 1 : Cadrage du projet
1.1. Introduction
Ce chapitre a pour objectif de situer le projet dans son contexte général, et faire
un cadrage ce celui-ci, à savoir la détermination de la problématique qui a inspiré la
création de notre projet, la description de ce dernier et les objectifs à atteindre.
De nombreuses études ont été menées pour évaluer l'efficacité de cette méthode de
résolution de problèmes d'optimisation de transport.
Par exemple, une étude a été menée pour évaluer l'utilisation de la fonction multi-objectif
dans le cadre de la planification du transport de conteneurs (La logistique des terminaux
portuaire de conteneurs. Les résultats ont montré que cette méthode peut aider à trouver
des solutions plus efficaces et à améliorer la qualité de la planification du transport.
Dans une autre étude, les chercheurs ont utilisé la fonction multi-objectif pour résoudre
un problème de transport de marchandises dans une entreprise de distribution (Modèles
de résolution approchée et efficace pour les problèmes des réseaux de transport et de
télécommunication. Les résultats ont montré que cette méthode peut aider à trouver des
solutions plus équilibrées en termes de coûts, de temps et de qualité de service.
Enfin, une étude a été menée pour évaluer l'utilisation de la fonction multi-objectif pour
résoudre les problèmes de transport en milieu urbain (Calcul d’itinéraire multimodal et
multi objectif en milieu urbain. Les résultats ont montré que cette méthode peut aider à
trouver des solutions plus efficaces pour réduire la congestion routière et améliorer la
2
qualité de l'air.
En utilisant des méthodes d'optimisation, le projet vise à réduire les temps d'arrêt, les
coûts de transport, les temps de traitement et les erreurs tout en améliorant la qualité de
service et la satisfaction du client.
Pour assurer les objectifs attendus, il est essentiel que nous parvenions à une vue claire
des différents besoins escomptés de notre projet. Au cours de ce chapitre, nous allons
dégager les fonctionnalités attendues de la résolution des problèmes liés au transport
logistique.
Ce diagramme simple d'utilisation sert de guide pour mener une analyse fonctionnelle du
besoin. Il a pour objectif de représenter graphiquement l'expression du besoin du client (ou
utilisateur) à travers 3 questions simples autour du sujet étudié :
• Sur quoi agit-il ? : éléments sur lesquels agit le sujet, la matière d’œuvre
• Dans quel but ? ou "pour quoi faire ?" : besoin principal à satisfaire.
« Le produit rend service à l'utilisateur en agissant sur la matière d’œuvre pour satisfaire
le besoin ».
4
La figure suivante représente le diagramme de bête à cornes dédié à notre projet.
Entreprise Problème
logistique logistique
Outil de
planification
Ceci dit, d’après la figure ci-dessus, cet outil de planification rend service à l’entreprise
logistique dans la mesure où la logistique constitue un service à part entière dans l’activité
de l’entreprise, en agissant sur les problèmes logistiques du transport, il représente ainsi
le noyau de notre étude.
5
Entreprise
logistique
Flux Problèmes
logistiques logistiques
FP 2 FP 1
FC4 FC2
FC3
Capacité
Couts
Véhicule
6
telles que la fonction multi-objectif et la pondération, peut aider les entreprises à atteindre
leurs objectifs de manière plus efficace et efficiente.
En résumé, un tel outil permettrait de réduire les coûts, d'améliorer
les délais de livraison, d'optimiser l'utilisation des ressources et d'améliorer la satisfaction
des clients. Il est donc essentiel pour les entreprises de transport de disposer d'un tel outil
pour rester compétitives sur le marché en constante évolution.
T
Tâches Durée Prédécesseurs
1.6. Conclusion
Ce chapitre a permis de détailler notre projet dans son cadre général, à savoir la
présentation du projet et ses objectifs, et de couvrir les différents besoins fonctionnels auxquels
doit satisfaire notre projet à travers des diagrammes d’Analyse Fonctionnelle, pour passer par la
suite à la résolution du problème de transport.
8
Chapitre 2 : Modélisation des
problèmes de transport
2.1. Introduction
La modélisation du problème de transport est une technique courante dans la recherche
opérationnelle pour optimiser la distribution de ressources. Ce problème consiste à déterminer
comment transporter des biens à partir de sources vers des destinations de manière à minimiser les
coûts totaux ou à atteindre d'autres objectifs tels que maximiser les profits ou minimiser les temps
de transit. Le problème de transport classique est un exemple de modèle de programmation linéaire
qui peut être résolu efficacement avec des algorithmes classiques tels que la méthode du simplexe.
Cependant, il existe également des problèmes de transport multi-objectifs où plusieurs critères, tels
que les coûts et les temps de transit, sont pris en compte simultanément. Dans ce cas, les solutions
optimales sont souvent non-dominées et nécessitent des techniques d'optimisation multi-objectifs
pour être identifiées. Dans ce chapitre, nous explorerons en détail les aspects théoriques et pratiques
de la modélisation et de la résolution des problèmes de transport classiques et multi-objectifs, en
examinant les principaux algorithmes et outils utilisés dans la recherche opérationnelle.
𝑚𝑖𝑛 ∑𝑖=1𝑚 ∑𝑛 𝑐 × 𝑥
𝑗=1 𝑖𝑗 𝑖𝑗
𝑛
∑𝑗=1 𝑥𝑖𝑗 = 𝑎𝑖 𝑖 = 1, ⋯ , 𝑚,
(1) 𝑚
∑𝑖=1 𝑥𝑖𝑗 = 𝑏𝑗 𝑗 = 1, ⋯ , 𝑛,
𝗅𝑥𝑖𝑗 ≥ 0 𝑖 = 1, ⋯ , 𝑚, 𝑗 = 1, ⋯ , 𝑛.
(1) est réalisable si et seulement si la condition offre totale = demande totale est remplie.
𝑚 𝑛
∑ 𝑎𝑖 = ∑ 𝑏𝑗
𝑖=1 𝑗=1
𝑚𝑖𝑛 ∑𝑖=1𝑚 ∑𝑛 𝑐 × 𝑥
𝑗=1 𝑖𝑗 𝑖𝑗
𝑛
∑𝑗=1 𝑥𝑖𝑗 ≤ 𝑎𝑖 𝑖 = 1, ⋯ , 𝑚,
(2) 𝑚
∑𝑖=1 𝑥𝑖𝑗 ≥ 𝑏𝑗 𝑗 = 1, ⋯ , 𝑛,
𝗅𝑥𝑖𝑗 ≥ 0 𝑖 = 1, ⋯ , 𝑚, 𝑗 = 1, ⋯ , 𝑛.
(2) est réalisable si et seulement si la condition offre totale ≥ demande totale est remplie.
𝑚 𝑛
∑ 𝑎𝑖 ≥ ∑ 𝑏𝑗
𝑖=1 𝑗=1
10
caractérisée par le niveau de demande
𝑚 𝑛
𝑏𝑛+1 = ∑ 𝑎𝑖 − ∑ 𝑏𝑗
𝑖=1 𝑗=1
Destination 𝑫𝟏 𝑫𝟐 ⋯ 𝑫𝒋 ⋯ 𝑫𝒏 Disponibilité
Source
⋯ 𝑺𝒊 ⋯ 𝐶𝑖𝑗 𝒂𝒊
𝑥𝑖𝑗
Demandes 𝒃𝟏 𝒃𝟐 ⋯ 𝒃𝒋 ⋯ 𝒃𝒎 ∑ 𝒂𝒊
11
∑ 𝒃𝒋
𝑐11
𝑥1 𝑦1
𝑎1(0) 𝑐12
𝑐1𝑛 𝑏1 (0) 𝑦𝑛+1
𝑥0
𝑐21
𝑏2 (0)
E 𝑎2(0) 𝑥2 𝑐22 S
𝑦2
𝑐𝑚1 𝑐2𝑛
𝑎𝑚(0) 𝑏𝑛(0)
𝑐𝑚2
𝑥3 𝑐𝑚𝑛 𝑦3
Dans la figure 5, il y a 𝑥1 … 𝑥𝑚 sources et 𝑦1 … 𝑦𝑛 destinations. Les arcs orientés montrent des flux
de transport de source vers destination. Chaque destination est liée à chaque source par un arc, Le
nombre (𝑐11 … 𝑐𝑚𝑛) au-dessus de chaque arc représente le coût du transport sur cette route. Les
problèmes avec la structure ci-dessus se posent dans de nombreuses applications.
Par exemple, les sources pourraient représentent des entrepôts, des puits, etc. et les destinations
pourraient représentent des populations, des clients… [7]
𝑚 𝑛
𝑚 𝑛 ∑ 𝑎𝑖 = ∑ 𝑏𝑗
∑𝑖=1 𝑎𝑖 > ∑𝑗=1 𝑏𝑗 ∑𝑚
𝑖=1 𝑎𝑖 < ∑𝑗=1 𝑏𝑗
𝑛
𝑖=1 𝑗=1
Déterminer : ∑ 𝑏𝑗 − ∑ 𝑎𝑖
Le coût total de optimal 𝑖=1 𝑗=1
Quantités de transport
dans chaque chaine.
Réviser la solution
Fin
Figure 6 : Organigramme de la résolution de problème de transport.
13
Tout d'abord, le problème est formulé comme une matrice de transport, ensuite on vérifie si
un modèle de transport est équilibré ? Sinon, on ajoute un mannequin à l'offre ou à la demande pour
équilibrer le modèle de transport.
On trouve la solution de base initiale du problème de transport, on vérifie ensuite si la solution est
optimale ? Si la solution n'est pas optimale, on passe à 4.
Lorsque la solution optimale est obtenue, nous calculons le coût total du transport et nous avons
également transporté la quantité respective demandée à son destinataire.[7]
14
• Méthode Stepping Stone.
• Méthode de distribution modifiée.
Si la solution est optimale arrêtez, sinon déterminez une nouvelle solution améliorée.
✓ Étape 4 : Mise à jour de la solution Répétez l'étape 3 jusqu'à atteindre la solution
optimale.[7]
temps, etc.) pour l'objectif o = 1, ..., O, alors la formulation mathématique est donnée par :
𝒎 𝒏
𝗅 𝒙𝒊𝒋 ≥ 𝟎, ∀𝒊, 𝒋
15
2.3.2. Tableau de transport
Destination 𝑫𝟏 𝑫𝟐 ⋯ 𝑫𝒋 ⋯ 𝑫𝒏 Disponibilité
Source
𝑺𝟏 1
𝑐11 1
𝑐12 ⋯ 1
𝑐1𝑛 𝒂𝟏
2 ⋯ 2
𝑐1𝑛
𝑐11 2
𝑐12
⋮ ⋮ ⋮ ⋮
𝑘 ⋯ 𝑘
𝑐1𝑛
𝑐11 𝑘
𝑐12
𝑺𝟐 1
𝑐21 1
𝑐22 ⋯ 1
𝑐2𝑛 𝒂𝟐
2
𝑐21 2 2
𝑐22 ⋯ 𝑐2𝑛
⋮ ⋮ ⋮ ⋮
𝑘
𝑐21 𝑘 ⋯ 𝑘
𝑐2𝑛
𝑐22
⋮ ⋮ ⋯ ⋮ ⋮
⋮
𝑺𝒎 1
𝑐𝑚1 1
𝑐𝑚2 ⋯ 1
𝑐𝑚𝑛 𝒂𝒎
2
𝑐𝑚1 2 2
𝑐𝑚𝑛
𝑐𝑚2 ⋯
⋮ ⋮ ⋮ ⋮
𝑘
𝑐𝑚1 𝑘 ⋯ 𝑘
𝑐𝑚𝑛
𝑐𝑚2
Demandes 𝒃𝟏 𝒃𝟐 ⋯ 𝒃𝒎 ∑ 𝒂𝒊
∑ 𝒃𝒋
16
✓ Étape 2 : Identifier :
-Le coût de ligne maximal (α) comme 𝛼𝑟 = 𝑚𝑎𝑥(𝑐𝑟 )
𝑖 𝑖𝑗
pour i constante, 1≤ 𝑗 ≤ 𝑛 et 1 ≤ 𝑟 ≤ 𝑘
-Le coût de colonne maximal (𝛽) comme 𝛽𝑟 = 𝑚𝑎𝑥(𝑐𝑟 )
𝑖 𝑖𝑗
pour j constante, 1≤ 𝑖 ≤ 𝑛 et 1 ≤ 𝑟 ≤ 𝑘
Ou 𝛼 = {𝛼1, ⋯ , 𝛼𝑟; ⋯ ; 𝛼1 , ⋯ , 𝛼𝑟 } et 𝛽 = {𝛽1, ⋯ , 𝛽𝑘; ⋯ ; 𝛽1, ⋯ , 𝛽𝑘}.
1 1 𝑚 𝑚 1 1 𝑛 𝑛
Représentez ces ensembles α et β dans le tableau de transport multi-objectif tel qu'indiqué dans
le tableau ci-dessous :
Destination 𝑫𝟏 𝑫𝟐 ⋯ 𝑫𝒋 ⋯ 𝑫𝒏 Disponibilité 𝑎
Source
𝑺𝟏 1
𝑐11 1
𝑐12 ⋯ 1
𝑐1𝑛 𝒂𝟏 𝑎𝟏𝟏
2 2
𝑐1𝑛
𝑐11 2
𝑐12 ⋯
𝑎𝟐𝟏
⋮ ⋮ ⋮ ⋮
𝑘 𝑘
𝑐1𝑛 ⋮
𝑐11 𝑘
𝑐12 ⋯
𝑎𝒌𝟏
𝑺𝟐 1
𝑐21 1
𝑐22 ⋯ 1
𝑐2𝑛 𝒂𝟐 𝑎𝟏𝟐
2
𝑐21 2 2
𝑐22 ⋯ 𝑐2𝑛 𝑎𝟐𝟐
⋮ ⋮ ⋮ ⋮
𝑘
𝑐21 𝑘
𝑐22 ⋯ 𝑘
𝑐2𝑛 ⋮
𝑎𝒌𝟐
⋮ ⋮ ⋯ ⋮ ⋮ ⋮
𝑺𝒎 1 1 ⋯ 1 𝒂𝒎 𝑎𝟏𝒎
𝑐𝑚1 𝑐𝑚2 𝑐𝑚𝑛
2
𝑐𝑚1 2 2
𝑐𝑚𝑛
𝑐𝑚2 ⋯ 𝑎𝟐𝒎
⋮ ⋮ ⋮ ⋮
𝑘
𝑐𝑚1 𝑘 ⋯ 𝑘
𝑐𝑚𝑛 ⋮
𝑐𝑚2
𝑎𝒌𝒎
Demandes 𝒃𝟏 𝒃𝟐 ⋯ 𝒃𝒎 ∑ 𝒂𝒊
∑ 𝒃𝒋
17
𝖰𝒌𝟏 𝖰𝒌𝟐 𝖰𝒌𝒏
2.4. Conclusion
Le deuxième chapitre du présent rapport se concentre sur la modélisation et la résolution du
problème de transport logistique à l'aide de la méthode de somme pondérée sur MATLAB. Après
avoir défini les concepts clés et les paramètres impliqués dans la planification de la logistique, nous
aborderons les différentes techniques de modélisation et de résolution des problèmes multi-objectifs.
Nous explorerons ensuite en détail la méthode de somme pondérée et ses avantages, ainsi que les
étapes nécessaires pour la mettre en œuvre sur MATLAB.
18
Chapitre 3 : Optimisation multi-
objectif
3.1. Introduction
Dans de nombreux problèmes du monde réel, plusieurs objectifs doivent être gérés simultanément,
appelés Problèmes d’Optimisation Multi-Objectifs (POMO). Contrairement au problème mono-
objectif qui a une seule solution optimale, un POMO possède un ensemble de solutions optimales
appelé Front de Pareto.
L’optimisation simultanée de plusieurs fonctions « objectifs », généralement en conflit, est dite
optimisation multi-objectif (OMO) ou optimisation vectorielle. Cette discipline joue un rôle de
première importance dans la conception en ingénierie, et d’une manière générale, dans la gestion et
la prise de décision où des spécialistes du domaine d’application ciblé définissent des compromis
entre des objectifs de conception en conflit. En somme, le domaine de l’OMO décrit l’art et la manière
scientifique de prendre de telles décisions. Souvent, les applications du monde réel ont plusieurs
objectifs à optimiser, qui s’opposent. La plupart de ces problèmes d’OMO appartiennent à la classe
des problèmes NP-difficiles où il n’existe pas d’algorithme générique fournissant des solutions
optimales en un temps polynomial. La complexité de ces problèmes est estimée en fonction de la
taille du problème et du nombre d’objectifs à optimiser. Récemment, il y a eu un intérêt remarquable
pour l’OMO qui date déjà de plusieurs décennies. Le développement de méthodes de résolution de
ce type de problèmes ainsi que leurs applications dans divers domaines de la vie réelle sont en
continuelle croissance. Le reste de ce chapitre est organisé comme suit.
3.2. Optimisation
Le processus de trouver un ensemble de solutions optimales, parmi toutes les solutions possibles
pour un problème donné, est appelé optimisation. Les problèmes d’optimisation (PO) sont classés
selon différents critères. Un problème d’optimisation est dit linéaire si toutes les fonctions objectif et
contraintes sont linéaires sinon il est dit non-linéaire. Alors qu’un PO est classé selon le type de
variables en : continu si ses variables sont continuées ou bien discret si les variables sont du type
entier.
Les problèmes d’optimisation ayant un seul objectif sont dits mono-objectif. Alors que s’il y a
plusieurs objectifs à optimiser, le problème est dit multi-objectif. Et selon le nombre de variables, il
19
y a le PO à petite échelle et le PO à grande échelle. [8]
Comme nous pouvons le constater sur la figure 1.3, les deux points A et B dominent le point
C mais A et B sont incomparables au sens de dominance. Ces deux points sont des optimums
globaux de Pareto et appartiennent à l’ensemble des solutions du front de Pareto.\
21
3.4. Méthode des sommes pondérées
La méthode de somme pondérée (WS), une méthode scalarisante fréquemment utilisée dans les
algorithmes multi objectifs évolutionnaires (EMO) basés sur la décomposition, présente de bonnes
caractéristiques telles que la facilité de calcul et l'efficacité de recherche élevée, par rapport aux autres
méthodes de scalarisation. Cependant, il est souvent critiqué pour la perte d'effet sur les problèmes
non convexes. La forme générale de la méthode WSUM est une méthode d'agrégation linéaire des
critères pondérés. Elle s'écrit sous la forme :
f(x) = 𝑤1 × f1(x) + 𝑤2 × f2(x) + . . . + 𝑤𝑘 × 𝑓𝑘(x)
où 𝑤1 +...+𝑤𝑘=1
f(x) est la fonction objectif globale à optimiser, 𝑓𝑖 (x) est la fonction objectif i-ème, et 𝑤𝑖 est le poids
associé à la fonction objectif i-ème. Le but est de trouver les valeurs de x qui minimisent ou
maximisent la fonction f(x) tout en respectant les contraintes du problème.
\\
La meilleure solution non dominée peut être trouvée lorsque µ est un maximum où la somme
normalisée des valeurs de la fonction d'appartenance pour tous les objectifs est le plus élevé.
22
3.6. Conclusion
Le troisième chapitre a pu expliquer la méthode de résolution des problèmes de transport
en multi-objectifs, en utilisant la méthode des sommes pondérées (WSUM) pour arriver
ensuite à trouver la solution de meilleur compromis et simuler le front de Pareto sous
logiciel MATLAB.
23
Chapitre 4 : Résultats numériques
4.1. Introduction
L’un des problèmes incontestables du monde réel est celui des transports. En termes généraux, le
modèle de transport présente un plan avec les coûts les plus faibles pour transférer des marchandises
de certains endroits pour certaines destinations. Dans de nombreux problèmes pratiques, la
formulation du transport sous forme mono-objective ne peut pas être appropriée, car la plupart des
problèmes comprennent plusieurs objectifs : Réduire le coût total, réduire le temps total, etc.
Le modèle de transport était d’abord développé par Hitchcock (1941), et pour obtenir toutes les
solutions non dominées d'un problème de transport linéaire multi-objectif, un algorithme a été
introduit par Isermann (1979).
Le problème linéaire s’écrit sous forme de :
𝑚 𝑛
k=1, 2,…,,K
ﻟ
𝑛
I ∑ 𝑥𝑖𝑗 = 𝑏𝑗 , 𝑗 = 1,2, … . 𝑛
𝑗=1
❪ 𝑛
∑ 𝑥𝑖𝑗 = 𝑎𝑖 , 𝑖 = 1,2, … . 𝑚
I𝑗=1
𝗅 𝑥𝑖𝑗 ≥ 0
24
client simultanément.
Partie 2 :
Ce code prend en entrée une matrice x et une matrice de degrés d'appartenance flous f. Il
calcule ensuite une matrice del à partir de la matrice f selon une formule donnée. Ensuite, il
calcule un indice Index pour chaque ligne de la matrice del et trouve l'indice bestIndex qui
correspond à la ligne ayant la plus grande valeur de Index. Enfin, il renvoie la ligne
correspondante de la matrice x sous forme de xbest et la ligne correspondante de la matrice f
sous forme de fbest. (voir Annexe 2).
Partie 3 :
La fonction balancing prend en entrée une matrice de coût C, un vecteur d'offre S et un
vecteur de demande D, ainsi que les sommes des offres et des demandes (sumS et sumD). La
fonction vérifie si la somme des offres est égale à la somme des demandes. Si ce n'est pas le
cas, la fonction ajoute une colonne factice à C (pour équilibrer l'offre et la demande) ou une
ligne factice à S (pour équilibrer la demande et l'offre), en fonction de laquelle est la plus
grande.
Si la somme des offres est supérieure à la somme des demandes, la fonction ajoute une colonne
factice à la matrice C (la valeur de chaque élément de la colonne factice sera 0) et ajoute la
différence entre la somme des offres et la somme des demandes à la dernière entrée du vecteur
D. Sinon, la fonction ajoute une ligne factice à la matrice C (la valeur de chaque élément de
25
la ligne factice sera 0) et ajoute la différence entre la somme des demandes et la somme des
offres à la dernière entrée du vecteur S.
La fonction affiche les matrices de coût, les offres et les demandes équilibrées pour chaque
matrice de coût. La fonction renvoie les nouvelles matrices de coût, offres et demandes
équilibrées. (Voir Annexe 3).
Partie 4 :
Ce code est un exemple d'implémentation en MATLAB de la méthode de la somme
pondérée et de la recherche de compromis flou pour résoudre des problèmes de transport à
plusieurs objectifs. Le code se compose de quatre parties principales :
Définition des données du problème : Cette partie définit les données du problème de
transport, y compris les matrices de coûts, les matrices d'offre et de demande, et vérifie si le
problème est équilibré ou non.
Méthode de la somme pondérée : Cette partie utilise la méthode de la somme pondérée pour
résoudre le problème de transport à plusieurs objectifs en générant un ensemble de solutions
pour différents poids des objectifs et en trouvant la solution optimale qui donne le meilleur
compromis entre les différents objectifs.
Recherche de compromis flou : Cette partie utilise la méthode de la recherche de compromis
flou pour trouver la solution optimale en utilisant la sortie de la méthode de la somme
pondérée. Elle trouve la meilleure solution compromis en utilisant une technique de floue.
Affichage des résultats : Cette partie affiche les résultats de la solution optimale trouvée par
la méthode de la recherche de compromis flou, y compris la matrice de solution, la somme
d'approvisionnement et la somme de la demande. (voir Annexe 4).
Partie 5 :
ﻟ 𝑛
I∑ 𝑥𝑖𝑗 = 𝑏𝑗
I
𝑗=1
𝑛
❪
I∑ 𝑥𝑖𝑗 = 𝑎𝑖
I𝑗=1
𝗅 𝑥𝑖𝑗 ≥ 0
27
✓ Résolution sur Matlab
Partie 1 :
Ce code résout un problème de transport multi-objectif à l'aide de la méthode de somme pondérée.
La première partie du code définit les données du problème. La matrice C représente les coûts de
transport pour chaque envoi et pour chaque objectif, S représente l'offre totale pour chaque source
et D représente la demande totale pour chaque destination. Le code vérifie également si le problème
est équilibré en termes d'offre et de demande, et ajuste les données si nécessaire.
La deuxième partie du code résout le problème multi-objectif en générant des points aléatoires dans
l'espace des objectifs, puis en résolvant un problème de programmation linéaire pour chaque point.
Les résultats sont stockés dans les matrices x et f, qui contiennent les solutions et les valeurs
d'objectif correspondantes pour chaque point. Le code utilise ensuite une fonction de membres flous
pour trouver la meilleure solution de compromis.
La troisième partie du code trace la frontière de Pareto pour les objectifs et affiche la meilleure
solution de compromis.
Enfin, la quatrième partie du code affiche les résultats de la meilleure solution de compromis, y
compris les valeurs d'objectif et les quantités d'offre et de demande pour chaque source et
destination.(voir Annexe 6).
4.3.1. Exemple 1 :
✓ Données du problème
1 2 7 7 8
𝐶1 = 1 9 3 4 𝑆 = 19
8 9 4 6 17
11
4 4 3 3 3
𝐶2 = 5 8 9 10 D=
14
6 2 5 1
16
28
✓ Modélisation du problème
𝑀𝑖𝑛 𝑓1(𝑥𝑖𝑗) = 𝑥11 + 2𝑥12 + 7𝑥13 + 7𝑥14 + 𝑥21 + 9𝑥22 + 3𝑥23 + 4𝑥24 + 8𝑥31 + 9𝑥32 + 4𝑥33
+ 6𝑥34
𝑀𝑖𝑛 𝑓2(𝑥𝑖𝑗) = 4𝑥11 + 4𝑥12 + 3𝑥13 + 3𝑥14 + 5𝑥21 + 8𝑥22 + 9𝑥23 + 10𝑥24 + 6𝑥31 + 2𝑥32
+ 5𝑥33 + 𝑥34
S.t :
4 4 4
8
∑ 𝑥1𝑗 = 8 ∑ 𝑥2𝑗 = 19 ∑ 𝑥3𝑗 = 17
9 𝑗=1 𝑗=1 𝑗=1
3 3 3 3
• Résultat graphique :
29
• Solution du meilleur compromis :
On trouve :
f1(x∗ij) = 156
f2(x∗ij) = 200
Et la solution du meilleur compromis est :
5 3 0 0
𝑥𝑖𝑗 = 6 0 13 0
0 0 1 16
4.3.2. Exemple 2 :
✓ Données du problème
3 4 5 8
𝐶1 = 4 5 2 𝑆=5
5 1 2 2
5 2 1 7
𝐶2 = 3 4 3 𝐷=4
2 3 1 4
✓ Modélisation du problème
𝑀𝑖𝑛 𝑓1(𝑥𝑖𝑗) = 3𝑥11 + 4𝑥12 + 5𝑥13 + +4𝑥21 + 5𝑥22 + 2𝑥23 + 5𝑥31 + 1𝑥32
+ 2𝑥33
𝑀𝑖𝑛 𝑓2(𝑥𝑖𝑗)
= 5𝑥11 + 2𝑥12 + 1𝑥13 + 3𝑥21 + 4𝑥22 + 323 + 2𝑥31 + 3𝑥32
+ 1𝑥33
S.t :
3 3 3
3 3 3
30
• Résultat graphique :
f2(x∗ij) = 37
Et la solution du meilleur compromis est :
2 4 2
x∗ij = 5 0 0
0 0 2
31
𝑚 𝑛
𝑀𝑖𝑛 𝑓
1 (𝑥
𝑖𝑗 ) = ∑ ∑ 𝑐 𝑖𝑗 × 𝑥 𝑖𝑗
(1)
𝑖=1 𝑗=1
𝑚 𝑛
ﻟ
𝑛
I∑ 𝑥𝑖𝑗 = 𝑏𝑗
𝑗=1
❪𝑛
∑ 𝑥𝑖𝑗 = 𝑎
I𝑗=1
𝗅 𝑥𝑖𝑗 ≥ 0
Le problème est d'optimiser les coûts de transport en tenant compte de deux ou trois objectifs
différents. Il utilise la méthode de la somme pondérée pour résoudre le problème multi-objectif.
La méthode de la somme pondérée consiste à agréger les différents objectifs en une seule fonction
objectif en utilisant des coefficients de pondération pour chacun des objectifs.
Ensuite, la méthode de la programmation linéaire est utilisée pour minimiser cette fonction objectif
agrégée. Le code utilise également la méthode de la fuzzification pour déterminer la meilleure
solution de compromis entre les différents objectifs. La méthode de la fuzzification utilise des
fonctions d'appartenance floues pour déterminer les valeurs des différentes variables de décision qui
donnent une solution optimale pour chaque objectif.
32
Ensuite, la méthode de la maximisation du degré d'appartenance est utilisée pour déterminer la
meilleure solution de compromis.
Enfin, le code affiche la meilleure solution de compromis trouvée, qui indique la quantité à expédier
de chaque point d'expédition à chaque point de destination pour minimiser les coûts de transport tout
en satisfaisant les contraintes d'offre et de demande. (voir Annexe 7).
4.4.1. Exemple 1
✓ Données du problème
11.51 9.64 13.88
𝐶1 = 9.46 14.26 8.19
9.76 6.53 12.8
28 26 16 65
𝐶3 = 19 22 31 𝐷 = 85
29 22 23 85
✓ Modélisation du problème
S.t :
3 3 3
3 3 3
∑ graphique
Résultat 𝑥𝑖1 = 65: ∑ 𝑥𝑖2 = 85 ∑ 𝑥𝑖3 = 85
𝑖=1 𝑖=1 𝑖=1
33
Figure 11: Front de Pareto 3
On trouve :
f1(x∗ij) = 2149,4
f2(x∗ij) = 2636,2
f3(x∗ij) = 6590
Et la solution du meilleur compromis est :
20 70 0
x ∗ij = 0 0 75
65 15 10
4.4.2. Exemple 2
✓ Données du problème
34
9 12 9 6 9 5
7 3 7 7 5 4
𝐶1 = 𝑆=
6 5 9 11 3 2
6 8 11 2 2 9
2 9 8 1 4
1 9 9 5 2
𝐶2 =
8 1 8 4 5
2 8 6 9 8
4
2 4 6 3 6
4
4 8 4 9 2
𝐶3 = 𝐷=6
5 3 5 3 6
2
6 9 6 3 1
4
✓ Modélisation du problème
𝑀𝑖𝑛 𝑓1(𝑥𝑖𝑗) = 9𝑥11 + 12𝑥12 + 9𝑥13 + 6𝑥14 + 9𝑥15 + 7𝑥21 + 3𝑥22 + 7𝑥23 + 7𝑥24 + 5𝑥25 +
6𝑥31 + 5𝑥32 + 9𝑥33 + 11𝑥34 + 3𝑥35+6𝑥41 + 8𝑥42 + 11𝑥43 + 2𝑥44 + 2𝑥45
𝑀𝑖𝑛 𝑓2(𝑥𝑖𝑗) = 2𝑥11 + 9𝑥12 + 8𝑥13 + 𝑥14 + 4𝑥15 + 𝑥21 + 9𝑥22 + 9𝑥23 + 5𝑥24 + 2𝑥25 + 8𝑥31
+ 𝑥32 + 8𝑥33 + 4𝑥34 + 5𝑥35 + 2𝑥41 + 8𝑥42 + 6𝑥43 + 9𝑥44 + 8𝑥45
𝑀𝑖𝑛 𝑓3(𝑥𝑖𝑗) = 2𝑥11 + 4𝑥12 + 6𝑥13 + 3𝑥14 + 6𝑥15 + 4𝑥21 + 8𝑥22 + 4𝑥23 + 9𝑥24 + 2𝑥25
+ 5𝑥31 + 3𝑥32 + 5𝑥33 + 3𝑥34 + 6𝑥35 + 6𝑥41 + 9𝑥42 + 6𝑥43 + 3𝑥44 + 𝑥45
S.t :
5 5 5 5
• Résultat graphique
35
:
Figure 12: Front de Pareto 4
f2(x∗ij) = 92
f3(x∗ij) = 94
Et la solution du meilleur compromis est :
0 0 3 2 0
0
x∗ = 2 0 0 2
ij 0 2 0 0 0
4 0 3 0 2
4.5. Conclusion
Dans ce chapitre, on a étudié les modèles de transport bi-objectif et tri-objectif. La résolution de
ces modèles a été abordée sous environnement MATLAB, qui est un logiciel de calcul numérique et
de programmation développé par MathWorks. Il est largement utilisé dans de nombreux domaines
tels que les mathématiques, l'ingénierie, les sciences physiques, la finance, etc. Matlab est un outil
très puissant pour effectuer des calculs, analyser des données, visualiser des résultats et résoudre des
problèmes complexes.
36
Les fonctionnalités de Matlab sont étendues grâce à des modules complémentaires tels que Simulink,
pour la simulation de systèmes dynamiques, et Signal Processing Toolbox, pour le traitement de
signaux.
Matlab est également un langage de programmation. Il permet d'écrire des scripts et des fonctions
pour automatiser des tâches, créer des graphiques et visualisations, et résoudre des problèmes
numériques. La syntaxe de Matlab est proche des mathématiques, ce qui facilite l'écriture de code
pour les utilisateurs ayant des compétences en mathématiques.
Pour utiliser Matlab, il est nécessaire de disposer d'une licence valide. MathWorks propose également
une version gratuite appelée Matlab Online, qui permet d'accéder à certaines fonctionnalités de
Matlab à partir d'un navigateur web.
37
Conclusion générale
En définitive, dans ce travail, nous avons pu traiter les différents problèmes de l’optimisation
multi-objectifs non linéaire et sans contraintes. L’optimisation multi-objectif des problèmes de
transport est un domaine de recherche important qui vise à améliorer simultanément plusieurs
critères de performance dans la planification et l'organisation des systèmes de transport, car elles
peuvent traiter efficacement un grand nombre de variables et de contraintes, tout en explorant
l'espace des solutions pour identifier des compromis optimaux.
En effet, nous sommes particulièrement intéressés par la méthode des sommes pondérées,
simple à mettre en œuvre et permet de trouver rapidement des solutions optimales pour les
problèmes de transport multi-objectif.
Cela dit, l'optimisation multi-objectif est un outil précieux pour la gestion efficace des systèmes
de transport. Son utilisation permet de mieux prendre en compte les besoins des parties prenantes
et de trouver des solutions efficaces et équilibrées pour répondre aux défis complexes et variés liés
à la gestion des systèmes de transport modernes.
Perspectives
Certes, le projet a bien été réussi, cependant, nous ne pouvons pas nier la présence de
quelques lacunes qu’on peut tout bonnement considérer comme étant un potentiel de
développement.
L’optimisation multi objectif des problèmes de transport pourrait être développé de manière à
automatiser tous les autres processus qui lui sont liés à savoir la planification anticipée des
itinéraires optimaux de la distribution ainsi que la simulation d’un plan de chargement efficace
pour le transporteur pour maximiser l’utilisation de l’espace de transport des cargaisons très
important notamment dans les entreprises logistiques.
Notre projet est ainsi développable et multifonctionnel, il est toujours à disposition pour toute
touche de rénovation améliorative.
38
Annexes
39
Annexe 1 : auto_main
40
Annexe 2 : Fuzzymembership
Annexe 3 : Balancing
41
Annexe 4 : main_unbalanced
42
Annexe 5 : transportationproblem
43
Annexe 6 : main_2obj
Annexe 7 : main_3obj
44
\
Bibliographie
[1] «http://thesis.univ-biskra.dz/4579/1/Th%C3%A8se%20Benoumelaz.pdf».
[2] «https://archipel.uqam.ca/4782/1/M9745.pdf».
[3] «file:///C:/Users/ProBook/Downloads/TheseMoussa.pdf».
[4] «https://theses.hal.science/tel-00553335/file/these_graebener.pdf».
[5] «https://www.iro.umontreal.ca/~mignotte/IFT2425/Matlab.pdf»
[6] file:///C:/Users/ProBook/Downloads/these%20complet.pdf
[7]file:///C:/Users/ProBook/Downloads/Probl%C3%A8me%20de%20transport_%20mod%
C3%A9listion%20et%20r%C3%A9solution%20-%20Mohamed%20BEN-IKEN%20(2).pdf
[8] file:///C:/Users/ProBook/Downloads/ref%201%20pages%2023-25.pdf
45