Vous êtes sur la page 1sur 52

UNIVERSITE CHOUAIB DOUKKALI

ECOLE NATIONALE DES SCIENCES


APPLIQUEES D’EL JADIDA

Projet de Fin d’Année


Génie Industriel
Département Science et Technologie Industrielles (STIN)

Conception d’un système pour l’optimisation du


transport logistique

Réalisé par :

AZKOUR Sara
KHAFFAJI Maha
LHASNAOUI Hassane

Encadré par :
Prof. Mustapha El MOUDDEN
EL Jadida

Année universitaire : 2022-2023


Résumé

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

En préambule, avant d’aborder le vif de ce sujet, nous tenons à

remercier tout particulièrement et à témoigner toute notre

reconnaissance au Prof. Mustapha El MOUDDEN, notre cher encadrant

qui a eu l’amabilité de nous aider et accompagner pour la bonne

conduite de ce projet ingénieur, son dévouement et son soutien dans la

concrétisation de celui-ci, ainsi que ses efforts marquants pour nous

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.

Nous tenons à remercier également le corps professoral de la filière Génie

Industriel et du département STIN qui a été toujours présent pour

assurer la bonne formation et nous a donné la possibilité de présenter ce

projet.

Nous adressons ainsi notre vif remerciement au membre du jury qui ont

contribué à la réussite de notre soutenance.


Table des matières

Introduction générale ............................................................... 1

Chapitre 1 : Cadrage du projet ............................................... 2


1.1. Introduction ..................................................... 2
1.2. Etude de l’existant ............................................ 2
1.3. Etude du projet.................................................. 3
1.3.1. Objectifs du projet ............................................ 3
1.3.2. Solution proposée ............................................. 3
1.4. Analyse fonctionnelle des besoins.................... 4
1.4.1. Introduction ...................................................... 4
1.4.2. Diagramme de Bête à Cornes ........................... 4
1.4.3. Diagramme de Pieuvre ..................................... 5
1.5. Planification opérationnelle .............................. 7
1.5.1. Organigramme des tâches................................. 7
1.5.2. Diagramme de Gantt......................................... 7
1.6. Conclusion ........................................................ 8

Chapitre 2 : Modélisation des problèmes de transport ........ 9


2.1. Introduction ...................................................... 9
2.2. Le problème de Transport Classique ................ 9
2.2.1. Formulation mathématique............................... 9
2.2.2. Tableau de transport ....................................... 11
2.2.3. Réseau de transport......................................... 12
2.2.4. Résolution du problème .................................. 12
2.2.4.1. Organigramme de résolution pour le
problème de transport .......................... 12
2.2.4.2. Algorithme général de résolution de
problème de transport .......................... 14
2.3. Le problème de Transport multi-objectif ....... 15
2.3.1. Formulation mathématique............................. 15
2.3.2. Tableau de transport ....................................... 16
2.3.3. Résolution du problème .................................. 16
2.3.3.1. Algorithme général ....................... 16
2.4. Conclusion ...................................................... 18

Chapitre 3 : Optimisation multi-objectif ............................. 19


3.1. Introduction .................................................... 19
3.2. Optimisation ................................................... 19
3.3. Problème d’optimisation multi-objectif ......... 20
3.3.1. Définition du problème................................... 20
3.3.2. Dominance ...................................................... 21
3.3.3. Optimalité de Pareto et Front de Pareto ......... 21
3.4. Méthode des sommes pondérées .................... 22
3.5. Solution du meilleur compromis .................... 22
3.6. Conclusion ...................................................... 23

Chapitre 4 : Résultats numériques ....................................... 24


4.1. Introduction .................................................... 24
4.2. Résolution sur Matlab..................................... 25
4.3. Le problème de Transport Bi-objectif ............ 27
4.3.1. Exemple 1 ....................................................... 28
4.3.2. Exemple 2 ....................................................... 30
4.4. Le problème de Transport Tri-Objectif .......... 31
4.4.1. Exemple 1 ....................................................... 33
4.4.2. Exemple 2 ....................................................... 34
4.5. Conclusion ...................................................... 36

Conclusion générale ............................................................... 38

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

Liste des Tableaux


Tableau 1 : Liste des tâches ...................................................................................................... 8
Tableau 2 : Tableau du problème classique de transport ....................................................... 12
Tableau 3 : Tableau du problème de transport multi-objectif ................................................ 16
Tableau 4 : Tableau représentatifs de l'étape 2....................................................................... 18
Introduction générale

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.

1.2. Etude de l’existant


La résolution de problèmes d'optimisation de transport par une fonction multi-
objectif est une approche qui vise à résoudre les problèmes de transport en prenant en
compte plusieurs objectifs simultanément. Cette méthode est utilisée pour trouver des
solutions efficaces qui prennent en compte les contraintes liées aux ressources et aux
coûts.

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 conclusion, la résolution de problèmes d'optimisation de transport par une fonction


multi-objectif est une approche efficace pour trouver des solutions équilibrées et efficaces
pour les problèmes de transport. Les études menées jusqu'à présent ont montré que cette
méthode peut aider à améliorer la qualité de la planification du transport et à réduire les
coûts, le temps et les émissions de polluant.

1.3. Etude du projet


1.3.1. Objectifs du projet
Notre projet consiste à optimiser les problèmes rencontrés dans le transport
logistique, y compris le coût, les délais, le chargement et le déchargement, avec un
système de planification informatisée en maximisant l'efficacité et la rentabilité de
l'ensemble du processus logistique. Cela implique une analyse approfondie des
différentes étapes du processus, de la réception des commandes à la livraison des
marchandises, ainsi que des différentes parties prenantes impliquées, telles que les
transporteurs, les clients, les fournisseurs et les prestataires de services logistiques.

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.

Le système de planification informatisée permettra de suivre en temps réel les


mouvements de marchandises et de véhicules, d'anticiper les problèmes et de fournir des
informations précises sur les temps d'attente, les délais de livraison et les coûts, permettant
ainsi une prise de décision plus éclairée et une meilleure coordination entre toutes les
parties prenantes impliquées.

En fin de compte, l'objectif est d'améliorer l'efficacité et la compétitivité de l'entreprise


tout en réduisant les coûts et en améliorant la satisfaction du client.

1.3.2. Solution proposée


Dans le cadre de notre projet, nous proposons une solution qui repose sur une résolution
mathématique sur Matlab. Nous avons choisi d'utiliser une approche de pondération, qui
consiste à assigner des poids à chaque critère d'optimisation problématiques logistique,
afin de déterminer une solution globale qui prend en compte les différentes contraintes
3
du problème.
Nous avons également développé un code pour une fonction multi-objectif, qui nous
permettra de générer des solutions optimales selon différents scénarios. En combinant ces
outils, nous espérons proposer une solution efficace et personnalisée pour répondre aux
besoins spécifiques de chaque client dans le domaine de la logistique.

1.4. Analyse fonctionnelle des besoins


1.4.1. Introduction
La réussite de tout projet dépend de la qualité de son départ. De ce fait, l’étape de
spécification des besoins constitue la base de départ de notre travail, elle doit décrire sans
ambiguïté le processus ciblé.

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.

1.4.2. Diagramme de Bête à Cornes


Cette phase est primordiale pour comprendre les besoins de base, à l'origine du
lancement du projet. Si ces derniers sont mal définis, les exigences incomprises, le projet
n'apportera pas de réponse pertinente. Les solutions se révéleraient inutiles, car inadaptées
ou hors sujet.

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é :

• A qui rend-il service ? : client ou utilisateur visé

• 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.

Ce qui revient à formuler une phrase du type :

« 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.

A qui rendre service ? Sur quoi agit-il ?

Entreprise Problème
logistique logistique
Outil de

planification

Dans quel but ?

✓ Optimiser les flux logistiques.


✓ Minimiser les couts.
✓ Minimiser les délais.
✓ Maximiser la rentabilité.
Figure 1: Diagramme Bête à Cornes

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.

1.4.3. Diagramme de Pieuvre


Pour identifier les fonctions du produit, il faut être capable de décrire son environnement
(appelé « Milieu Extérieur »). Toutes les entités qui sont identifiées comme extérieures au
produit sont appelées Eléments du Milieu Extérieur : E.M.E.
Le Diagramme Pieuvre met en évidence les relations entre les différents EME et le
produit/service au travers de fonctions :
▪ Fonction principale (FP) : relie 2 EME grâce au produit/service.

▪ Fonction contrainte (FC) : traduit une adaptation du produit à un EME.[6]

Ci-dessous la figure représentative du Diagramme Pieuvre de notre projet :

5
Entreprise
logistique
Flux Problèmes
logistiques logistiques
FP 2 FP 1

FC5 Outil de FC1


Espace planification Délais

FC4 FC2
FC3

Capacité
Couts
Véhicule

FP1 : Résoudre les problèmes logistiques


FP2 : Contrôler et piloter les flux logistiques
FC1 : Réduction des délais
FC2 : Réduction des couts
FC3 : Affecter chaque colis à un seul véhicule
Figure 2: Diagramme Pieuvre

En conclusion de cette analyse fonctionnelle des besoins pour un outil de planification


dans le domaine du transport, il est clair que les défis liés à la gestion de la logistique sont
nombreux et complexes.
La planification de l'itinéraire, le chargement et le déchargement des marchandises, la
gestion des délais et des coûts sont autant de facteurs à prendre en compte pour optimiser
les opérations de transport.

Un outil de planification informatisé, basé sur des techniques d'optimisation mathématique

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.

1.5. Planification opérationnelle

La planification opérationnelle consiste à déterminer de manière plus ou moins


exactement les objectifs de l’entreprise à court, à moyen et à long terme, et de concevoir
les stratégies les plus adaptées qui contribueront à les atteindre. On parle de :

• Organigramme des tâches


• Diagramme de Gantt

1.5.1. Organigramme des tâches


L’organigramme des tâches est l’équivalent visuel d’un plan de projet : il permet
de visualiser les livrables de projet, organisés en plusieurs niveaux reposant sur des
dépendances de la manière indiquée dans la figure ci-dessous :

Outil de planification du transport logistique

Choix du Cahier des Modélisation Simulation et Réalisation Rédaction


sujet charges conceptuelle programmatio et tests du rapport

Analyse Description Programmation Tests et Rédaction


Brainstorming fonctionnelle de la sur MATLAB résultats des
du besoin chapitres du
Approche rapport
Processus
Cadrage Conception et
Rédaction
du projet réalisation
Figure 3 : Organigramme des tâches

1.5.2. Diagramme de Gantt


7
Le diagramme de Gantt, est l'un des outils les plus efficaces pour représenter
visuellement l'état d'avancement des différentes activités (tâches) qui constituent un projet.
Chaque tâche est matérialisée par une barre horizontale, dont la position et la longueur
représentent la date de début, la durée et la date de fin comme présenté dans la figure suivante :
Le tableau ci-dessous represente la liste des taches nécessaire pour réaliser le projet ainsi que
leur durée et leur ordonnancement.

T
Tâches Durée Prédécesseurs

A Choix de sujet (1) 1 -


B Cahier de charges fonctionnelle et technique (2) 1 1
C La modélisation conceptuelle (3) 2 2
D Simulation et programmation (4) 4 3
E Réalisation et tests (5) 3 4
Rapport Rédaction de rapport (6) 11 -

Tableau 1 : Liste des tâches

Figure 4: Diagramme Gantt

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.

2.2. Le problème de Transport Classique


L'objectif du problème de transport est de déterminer la stratégie optimale pour la distribution
d'une marchandise à partir d'un ensemble de sources d'approvisionnement telles que des usines, vers
divers centres de réception, tels que des entrepôts, afin de minimiser les coûts totaux de distribution.
Chaque source peut fournir un nombre fixe d'unités du produit, souvent appelé capacité ou
disponibilité, et chaque destination a une demande fixe, souvent appelée exigence.[6]

2.2.1. Formulation mathématique


Après avoir formulé les conditions de faisabilité du problème de transport, on peut considérer
deux modèles principaux dans le sens classique (équilibré et non équilibré). Tout d'abord, utilisons la
notation suivante.
Soit la matrice X = {xij} qui est une matrice carrée d'ordre n, où n est le nombre de sources et de
destinations. Chaque élément xij de la matrice représente la quantité de ressources transportées de la
source i vers la destination j. Le problème de transport consiste à trouver une allocation X qui satisfait
9
les contraintes données dans la formule ci-dessous.
• m : nombre de sources du problème de transport ;
• n : nombre de destinations ;
• 𝑎𝑖 : la quantité de produit disponible à la i-ème origine (la capacité d'offre de la source i);
• 𝑏𝑗 : la demande de produit à la j-ème destination ;
• 𝑐𝑖,𝑗 : le coût unitaire pour le problème de transport de la i-ème origine à la j-ème destination.
• 𝑥𝑖𝑗 : les quantités transportées. 𝑥𝑖𝑗

Problème de transport avec des contraintes d'égalité (problème équilibré) :

𝑚𝑖𝑛 ∑𝑖=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

Ceci est appelé un problème de transport équilibré.

Problème de transport avec des contraintes d'inégalité (problème non équilibré) :

𝑚𝑖𝑛 ∑𝑖=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

Ceci est appelé un problème de transport non équilibré.


Le problème (2) peut être transformé en problème (1) en ajoutant une destination fictive j = n + 1

10
caractérisée par le niveau de demande
𝑚 𝑛

𝑏𝑛+1 = ∑ 𝑎𝑖 − ∑ 𝑏𝑗
𝑖=1 𝑗=1

et les coûts correspondants 𝐶𝑖𝑛+1 = 0, 𝑖 ∈ 𝐼

2.2.2. Tableau de transport


Le problème de transport peut être décrit en utilisant un modèle mathématique de
programmation linéaire, et habituellement, il apparaît dans un tableau de transport. Le modèle d'un
problème de transport peut être représenté sous forme de tableau concis avec tous les paramètres
pertinents.
Le tableau de transport (Un problème de transport typique est représenté sous forme de
matrice standard), où la disponibilité d'approvisionnement (𝑎𝑖 ) à chaque source est affichée dans la
colonne droite du tableau, et les demandes de destination (𝑏𝑗) sont affichées dans la ligne inférieure.
Chaque cellule représente une voie, Le coût de transport unitaire (𝑐𝑖,𝑗) est indiqué dans le coin
supérieur droit de la cellule, la quantité de matériel transporté est affichée au centre de la cellule.
Le tableau de transport exprime implicitement les contraintes de l'offre et de la demande et le
coût de transport entre chaque source et destination. [7]

Destination 𝑫𝟏 𝑫𝟐 ⋯ 𝑫𝒋 ⋯ 𝑫𝒏 Disponibilité

Source

𝑺𝟏 𝐶11 𝐶12 𝐶1𝑛 𝒂𝟏


𝑥11 𝑥12 𝑥1𝑛

𝑺𝟐 𝐶21 𝐶22 𝐶2𝑛 𝒂𝟐


𝑥21 𝑥22 𝑥2𝑛

⋯ 𝑺𝒊 ⋯ 𝐶𝑖𝑗 𝒂𝒊
𝑥𝑖𝑗

𝑺𝒎 𝐶𝑚1 𝐶𝑚2 𝐶𝑚𝑛 𝒂𝒎


𝑥𝑚1 𝑥𝑚2 𝑥𝑚𝑛

Demandes 𝒃𝟏 𝒃𝟐 ⋯ 𝒃𝒋 ⋯ 𝒃𝒎 ∑ 𝒂𝒊

11
∑ 𝒃𝒋

Tableau 2 Tableau du problème classique de transport

2.2.3. Réseau de transport

𝑐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

Figure 5 : Réseau de transport associé

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]

2.2.4. Résolution du problème


Le problème de transport est ainsi un programme linéaire et peut donc être résolu par des
méthodes du simplexe. Cependant elles existent des méthodes qui ont même principe de résolution
de simplexe mais plus adaptées.
Comme toute application de la méthode du simplexe à la résolution de ce type de problème, nécessite
une solution de base initiale. [7]
2.2.4.1. Organigramme de résolution pour le problème de transport :
On résume la résolution de problème de transport sous forme d’organigramme suivant :
12
Début

Formuler la matrice des coûts de


transport (Tableau de transport)

𝑚 𝑛

𝑚 𝑛 ∑ 𝑎𝑖 = ∑ 𝑏𝑗
∑𝑖=1 𝑎𝑖 > ∑𝑗=1 𝑏𝑗 ∑𝑚
𝑖=1 𝑎𝑖 < ∑𝑗=1 𝑏𝑗
𝑛
𝑖=1 𝑗=1

Ajoutez une destination Ajoutez une source


fictive (ou une colonne) oui fictive (ou une ligne)
pour laquelle tous les pour laquelle tous les
coûts de transport sont coûts de transport sont
nuls et ont une demande nuls et ont une
Trouver la solution de base
:∑𝑚𝑖=1 𝑎𝑖 − ∑𝑗=1 𝑏𝑗
𝑛
disponibilité :
𝑚 𝑛

Déterminer : ∑ 𝑏𝑗 − ∑ 𝑎𝑖
 Le coût total de optimal 𝑖=1 𝑗=1

transport. Test d'optimalité

 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]

2.2.4.2. Algorithme général de résolution de problème de transport :


Les modèles de transport ne commencent pas à l'origine où toutes les valeurs de décision sont
nulles, Ils doivent plutôt recevoir une solution de base réalisable initiale. L'algorithme de résolution
à un problème de transport peut se résumer en étapes suivantes :

✓ Étape 1 : Formuler et configurer le problème sous la forme matricielle : La formulation du


problème de transport est similaire à la formulation du problème PL. Ici, la fonction objective est
le coût total du transport et les contraintes sont l'offre et la demande disponibles à chaque source
et destination, respectivement.
✓ Étape 2 : Obtenir une première solution de base réalisable : Cette solution de base initiale peut
être obtenue en utilisant l'une des méthodes suivantes :
• Méthode de Coin Nord-Ouest.
• Méthode du Coût Minimum.
• Méthode d'Approximation de Vogel.
La solution obtenue par l'une des méthodes ci-dessus doit satisfaire les conditions suivantes :
1. La solution doit être réalisable, c'est-à-dire qu'elle doit satisfaire toutes les contraintes de
l'offre et de la demande.
2. Le nombre d'attribution positive (les cases allouées) doit être égal à m + n - 1, où m est le
nombre de lignes et n est le nombre de colonnes. La solution qui satisfait les conditions
mentionnées ci-dessus est appelée une solution de base non dégénérée.
✓ Étape 3 : Tester la solution de base initiale pour l'optimalité par l'utilisation de l'une des méthodes
suivantes pour tester l'optimalité de la solution de base initiale obtenue :

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]

2.3. Le problème de Transport multi-objectif


2.3.1. Formulation mathématique
Dans la plupart des applications réelles, il est nécessaire de prendre en compte plus d'un
objectif pour rendre le problème plus réaliste. Les objectifs peuvent être le coût de transport, la
fiabilité du transport, le temps de transport et la détérioration des produits. Si plusieurs objectifs
doivent être optimisés et que 𝑐𝑖𝑗
𝑘 représente la pénalité de transport unitaire (coût de transport, profit,

temps, etc.) pour l'objectif o = 1, ..., O, alors la formulation mathématique est donnée par :

𝒎 𝒏

‫𝒏𝒊𝒎ﻟ‬ =∑ ∑ 𝒄𝒌𝒊𝒋 𝒙𝒊𝒋 , 𝒌 = 𝟏, ⋯ , 𝑲


𝒌
I
𝒊=𝟏 𝒋=𝟏
I 𝒏
I
∑ (≤, =)𝒂𝒊, ∀𝒊 = 𝟏, ⋯ , 𝒎
(𝟑) 𝒙𝒊𝒋

I 𝒋=𝟏
𝒏

I ∑ 𝒙𝒊𝒋 (≥, =)𝒃𝒋, ∀𝒋 = 𝟏, ⋯ , 𝒏


I 𝒋=𝟏

𝗅 𝒙𝒊𝒋 ≥ 𝟎, ∀𝒊, 𝒋

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 𝒃𝟏 𝒃𝟐 ⋯ 𝒃𝒎 ∑ 𝒂𝒊

∑ 𝒃𝒋

Tableau 3 : Tableau du problème de transport multi-objectif

2.3.3. Résolution du problème


2.3.3.1. Algorithme général :
Pour résoudre les problèmes multi-objectifs, il est nécessaire de trouver une solution
efficace qui doit être très proche de la solution idéale. Nous avons proposé une technique
simple et pour trouver une solution efficace unique, qui conduit à une solution de
compromis. Les étapes suivantes sont suivies pour procéder à l'algorithme proposé :
✓ Etape 1 : Formuler le problème sous forme de Tableau 1.

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
𝖰𝒌𝟏 𝖰𝒌𝟐 𝖰𝒌𝒏

Tableau 4 : Tableau représentatifs de l'étape 2

✓ Etape 3 : Choisir Q = max 1 ≤ i ≤ m, 1 ≤ j ≤ n (α r i , βr j ), ∀r.


✓ Etape 4 : Sélectionnez la cellule (C) ayant Q comme l'une de ses valeurs objectives. S'il
existe plus d'une cellule (C), sélectionnez celle qui a le coût maximal pour les autres objectifs.
✓ 𝑚 𝐶𝑟 pour j fixe) dans la ligne ou
Etape 5 : Choisissez la cellule contenant min (∑𝑖=1 𝑖𝑗

la colonne correspondante de la cellule choisie à l'étape 4. En cas d'égalité, sélectionnez celle


à laquelle l'allocation maximale est possible.
✓ Etape 6 : Faire une allocation maximale possible à la cellule sélectionnée à l'étape 5
et barrer la ligne ou la colonne dont l'offre/la demande est satisfaite.
✓ Etape 7 : Répétez la procédure de l'étape 3 à l'étape 6 pour les sources et les
destinations restantes jusqu'à ce que l'approvisionnement complet ou les exigences de la
demande ne sont pas satisfaites.

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]

3.3. Problème d’optimisation multi-objectif


3.3.1. Définition du problème :
D’un point de vue formel, le problème d’optimisation multi-objectif (POMO), sous sa forme la
plus générique, est posé comme suit :
𝑚𝑖𝑛𝑖𝑚𝑖𝑠𝑒𝑟𝑋 𝐹(𝑥) = [𝐹1(𝑥), 𝐹2(𝑥), ⋯ , 𝐹𝑘(𝑥)]𝑇
S.T : 𝑔𝑗(𝑥) ≤ 0, 𝑗 = 1,2,3, ⋯ 𝑚
ℎ𝑙(𝑥) = 0, 𝑙 = 1,2,3, ⋯ 𝑒
𝑎𝑖 ≤ 𝑥𝑖 ≤ 𝑏𝑖
Où 𝑘 est le nombre de fonctions « objectif », 𝑚 est le nombre de contraintes d’inégalité et 𝑒 est le
nombre de contraintes d’égalité. 𝑥 ∈ 𝐸 𝑛 est le vecteur de variables de décision, où 𝑛 est le nombre
de variables 𝑥𝑖. Ces variables sont limitées, parfois, dans une plage de valeurs [𝑎𝑖 𝑏𝑖 ]. 𝐹(𝑥) ∈ 𝐸𝑘est
le vecteur de fonctions « objectif » tel que 𝐹𝑖 (𝑥) ∶ 𝐸𝑛→ 𝐸1 ; 𝐹𝑖 (𝑥) est appelée aussi objectif, critère,
fonction de coût ou fonction de valeur. Les 𝑘 fonctions objectifs peuvent être linéaires ou non-
linéaires, continues ou discrètes, et le vecteur de variables de décision peut également être continu ou
discret .L’espace de solutions faisables ou possibles 𝑋, appelé aussi espace de décision ou ensemble
de contraintes, est défini comme suit :
{𝑥|𝑔𝑗(𝑥) ≤ 0, 𝑗 = 1,2,3, … , 𝑚 𝑒𝑡 ℎ𝑙(𝑥) = 0, 𝑙 = 1,2,3, … , 𝑒 𝑒𝑡 𝑎𝑖 ≤ 𝑥𝑖≤ 𝑏𝑖 }.
L’espace des critères faisables ou l’ensemble accessible 𝑍 est défini comme {𝐹(𝑥)|𝑥 ∈ 𝑋}. Bien que
les termes d’espace de critères faisables et ensemble accessible sont tous deux utilisés dans la
littérature pour décrire Z, il y a une distinction subtile entre les concepts de faisabilité et
d’accessibilité. La faisabilité implique qu’aucune contrainte n’est violée et 𝐹(𝑥) appartient à
l’ensemble où toutes les contraintes sont vérifiées alors que l’accessibilité implique qu’un point dans
l’espace des critères correspond à un point de l’espace de décision.

Figure 7: La différence entre faisabilité et accessibilité


20
3.3.2. Dominance
Contrairement à l’optimisation mono-objectif, l’optimisation multi-objectif est incapable de
trouver une solution globale. Elle se base sur le principe de dominance pour rechercher un ensemble
de solutions dites points non-dominés. On dit que le vecteur 𝑥 domine un vecteur 𝑦 si et seulement si
𝑥 est au moins aussi bon que 𝑦 sur tous les objectifs et 𝑥 est strictement meilleur que 𝑦 sur au moins
un objectif .D’un point de vue formel, ceci s’exprime comme suit :
(𝑥) ≤ 𝐹𝑖 (𝑦) ∀ 𝑖 ∈ {1,2, … , 𝑘} 𝑒𝑡 ∃ 𝑗 {1,2, … , 𝑘} 𝑡𝑒𝑙 𝑞𝑢𝑒 𝐹𝑗 (𝑥) < 𝐹𝑗 (𝑦) Notons que pour toute
paire (𝑥, 𝑦) de l’espace de solutions réalisables, une et une seule des affirmations suivantes est vraie:
𝑥 domine 𝑦, 𝑥 est dominé par 𝑦 ou 𝑥 et 𝑦 sont équivalentes (c-àd incomparables) au sens de
dominance.

3.3.3. Optimalité de Pareto et Front de Pareto


Un point 𝑥 ∗ ∈ 𝑋 est dit un optimum de Pareto (ou un point efficace global, non-dominé ou point
non-inférieur) pour un POMO si et seulement s’il n’existe pas un 𝑥 ∈ 𝑋 qui le domine. Toutes les
solutions du front de Pareto sont des solutions sur le contour de l’espace des critères faisables Z. En
d’autres termes, le front de Pareto ou la frontière Pareto est construite avec les solutions 𝑥 ∗ qui
dominent toutes les autres mais ne se dominent pas entre elles.

Figure 8 : Illustration des notions de dominance, optimalité de Pareto et front de Pareto

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.

3.5. Solution du meilleur compromis


La recherche des solutions de meilleur compromis (best compromise solution)
L'algorithme décrit dans la section précédente l'ensemble non dominé de solutions connues sous le
nom de solutions optimales de Pareto. Le décideur (opérateur du système électrique) peut avoir des
objectifs imprécis ou flous pour chaque fonction objectif. Pour aider l'opérateur à sélectionner un
point de fonctionnement à partir de l'ensemble obtenu de solutions Pareto optimales, la théorie de la
logique floue est appliquée à chaque fonction objectif pour obtenir une fonction d'appartenance floue
i µ f comme suit (Dhillon et al. 1993).

\\
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é.

où M est le nombre de solutions non dominées.

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 :

𝑚 𝑛

𝑀𝑖𝑛 𝑓(𝑥𝑖𝑗 ) = ∑ ∑ 𝑐(𝑘)


𝑖𝑗 × 𝑥 𝑖𝑗
𝑖=1 𝑗=1

k=1, 2,…,,K

‫ﻟ‬
𝑛

I ∑ 𝑥𝑖𝑗 = 𝑏𝑗 , 𝑗 = 1,2, … . 𝑛
𝑗=1
❪ 𝑛

∑ 𝑥𝑖𝑗 = 𝑎𝑖 , 𝑖 = 1,2, … . 𝑚
I𝑗=1
𝗅 𝑥𝑖𝑗 ≥ 0

Le traditionnellement connu problème de transport (TP) concerne la distribution de


marchandises (produits) provenant de plusieurs sources (points d'approvisionnement) vers plusieurs
destinations (points de demande) à un coût de transport total minimal. En revanche, le problème de
transport linéaire a deux objectifs traite de la distribution de marchandises en tenant compte les deux
objectifs de la minimisation des coûts, sous contraintes de la capacité de production et la demande du

24
client simultanément.

4.2. Résolution sur Matlab


Partie 1
Ce code permet de demander à l'utilisateur de saisir les données du problème, à savoir la matrice des
coûts, la matrice d'offre et la matrice de demande. Ensuite, vérifier si le problème est équilibré en
termes de demande et d'offre et le cas échéant, le corrige en ajoutant une offre/demande fictive, définir
le problème de transport à résoudre en utilisant les données saisies, générer plusieurs solutions en
utilisant la méthode de la somme pondérée et stocke les résultats dans une matrice, appliquer une
technique de membership flou pour sélectionner la meilleure solution de compromis, et enfin tracer
la frontière de Pareto et la meilleure solution de compromis. Enfin, imprime les résultats, à savoir la
meilleure solution et les valeurs objectives correspondantes.(voir Annexe 1).

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 :

Le code définit un problème de transport en tant que problème de programmation linéaire.


Les arguments d'entrée sont :
C : une matrice 3D de coûts de transport, où C(i,j,k) représente la matrice de coûts pour le i -ème
scénario de transport. Chaque matrice de coûts à m lignes et n colonnes, représentant le nombre de
sources et de destinations, respectivement, où i représente la source et j la destination.
26
S : un vecteur de valeurs d'offre pour chaque source.
D : un vecteur de valeurs de demande pour chaque destination.
La sortie est :
Problème : une structure contenant la formulation du problème de PL avec les champs m, n, k, f, A,
b et lb, qui représentent le nombre de sources, le nombre de destinations, le nombre de scénarios de
transport, les coefficients de la fonction objective, la matrice de contraintes, le vecteur de terme droit
et les bornes inférieures sur les variables de décision, respectivement.
S : un vecteur de valeurs d'offre pour chaque source.
D : un vecteur de valeurs de demande pour chaque destination. (voir Annexe 5).

4.3. Le problème de Transport Bi-objectif

Le modèle mathématique s’écrit généralement sous forme :


𝑚 𝑛

𝑀𝑖𝑛 𝑓1 (𝑥𝑖𝑗 ) = ∑ ∑ 𝑐(1)


𝑖𝑗 × 𝑥 𝑖𝑗
𝑖=1 𝑗=1
𝑚 𝑛

𝑀𝑖𝑛 𝑓2 (𝑥𝑖𝑗 ) = ∑ ∑ 𝑐(2)


𝑖𝑗 × 𝑥𝑖𝑗
𝑖=1 𝑗=1

‫ﻟ‬ 𝑛
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

∑ 𝑥𝑖1 = 11 ∑ 𝑥𝑖2 = 3 ∑ 𝑥𝑖3 = 14 ∑ 𝑥𝑖4 = 16


𝑖=1 𝑖=1 𝑖=1 𝑖=1

• Résultat graphique :

Figure 9: Front de Pareto1

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

∑ 𝑥1𝑗 = 8 ∑ 𝑥2𝑗 = 5 ∑ 𝑥3𝑗 = 2


𝑗=1 𝑗=1 𝑗=1

3 3 3

∑ 𝑥𝑖1 = 7 ∑ 𝑥𝑖2 = 4 ∑ 𝑥𝑖3 = 4


𝑖=1 𝑖=1 𝑖=1

30
• Résultat graphique :

Figure 10: Front de Pareto 2

• Solution du meilleur compromis :


On trouve :
f1(x∗ij) = 56

f2(x∗ij) = 37
Et la solution du meilleur compromis est :
2 4 2
x∗ij = 5 0 0
0 0 2

4.4. Le problème de Transport Tri-Objectif


Le modèle mathématique s’écrit généralement sous forme :

31
𝑚 𝑛

𝑀𝑖𝑛 𝑓
1 (𝑥
𝑖𝑗 ) = ∑ ∑ 𝑐 𝑖𝑗 × 𝑥 𝑖𝑗
(1)

𝑖=1 𝑗=1
𝑚 𝑛

𝑀𝑖𝑛 𝑓2 (𝑥,𝑗 ) = ∑ ∑ 𝑐(2)


𝑖𝑗 × 𝑥 𝑖𝑗
𝑖=1 𝑗=1
𝑚 𝑛

𝑀𝑖𝑛 𝑓3 (𝑥𝑖𝑗 ) = ∑ ∑ 𝑐(3)


𝑖𝑗 × 𝑥 𝑖𝑗
𝑖=1 𝑗=1

‫ﻟ‬
𝑛

I∑ 𝑥𝑖𝑗 = 𝑏𝑗
𝑗=1
❪𝑛
∑ 𝑥𝑖𝑗 = 𝑎
I𝑗=1
𝗅 𝑥𝑖𝑗 ≥ 0

• Résolution sur Matlab


Le code résout un problème de transport multi-objectif à partir d'une matrice de coûts de transport,
d'un vecteur de l'offre de chaque point d'expédition et d'un vecteur de la demande de chaque point de
destination.

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

7.86 12.08 14.1 70


𝐶2 = 21.39 8.68 9.73 𝑆 = 75
8.81 24.99 11.34 90

28 26 16 65
𝐶3 = 19 22 31 𝐷 = 85
29 22 23 85
✓ Modélisation du problème

𝑀𝑖𝑛 𝑓1(𝑥𝑖𝑗) = 11.51𝑥11 + 9.64𝑥12 + 13.88 + 9.46𝑥21 + 14.26𝑥22 + 8.19𝑥23 + 9.76𝑥31


+ 6.53𝑥32 + 12.8𝑥33
𝑀𝑖𝑛 𝑓2(𝑥𝑖𝑗) = 7.86𝑥11 + 12.08𝑥12 + 14.1𝑥13 + 21.39𝑥21 + 8.68𝑥22 + 9.7323 + 8.81𝑥31
+ 24.99𝑥32 + 11.34𝑥33
𝑀𝑖𝑛 𝑓3(𝑥𝑖𝑗) = 28𝑥11 + 26𝑥12 + 16𝑥13 + 19𝑥21 + 22𝑥22 + 3123 + 29𝑥31 + 22𝑥32 + 23𝑥33

S.t :
3 3 3

∑ 𝑥𝑖𝑗 = 70 ∑ 𝑥2𝑗 = 75 ∑ 𝑥3𝑗 = 90


𝑗=1 𝑗=1 𝑗=1

3 3 3

∑ graphique
Résultat 𝑥𝑖1 = 65: ∑ 𝑥𝑖2 = 85 ∑ 𝑥𝑖3 = 85
𝑖=1 𝑖=1 𝑖=1

33
Figure 11: Front de Pareto 3

• Solution du meilleur compromis :

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

∑ 𝑥1𝑗 = 5 ∑ 𝑥2𝑗 = 4 ∑ 𝑥3𝑗 = 2 ∑ 𝑥4𝑗 = 9


𝑗=1 𝑗=1 𝑗=1 𝑗=1
4 4 4 4 4

∑ 𝑥𝑖1 = 4 ∑ 𝑥𝑖2 = 4 ∑ 𝑥𝑖3 = 6 ∑ 𝑥𝑖4 = 2 ∑ 𝑥𝑖5 = 4


𝑖=1 𝑖=1 𝑖=1 𝑖=1 𝑖=1

• Résultat graphique

35
:
Figure 12: Front de Pareto 4

• Solution du meilleur compromis :


On trouve :
f1(x∗ij) = 126

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

Vous aimerez peut-être aussi