Vous êtes sur la page 1sur 10

Introduction à la recherche opérationnelle et problème d’optimisation

1. Introduction
L’essentiel du premier chapitre est consacré à une présentation générale de la recherche
opérationnelle ainsi qu’une classification des différents types de problèmes d’optimisation.

2. La recherche opérationnelle
2.1. Les origines de la recherche opérationnelle
La recherche opérationnelle est aujourd’hui présente dans la plupart des domaines
civils, ses racines sont habituellement attribuées aux services militaires. La seconde guerre
mondiale, de part son envergure, créa une besoin urgent d’allouer d’une manière efficace des
ressources limitées aux différentes opérations militaires et aux activités au sein de chaque
opération. En particulier, l’organisation militaire britannique, puis américaine, mis à
contribution un grand nombre de scientifiques pour gérer ces allocations, et s’occuper d’autres
problèmes stratégiques et tactiques. [9]
Ces succès encouragèrent la poursuite de l’utilisation de la recherche opérationnelle
dans d’autres domaines. La croissance importante de l’industrie d’après-guerre entraîna des
problèmes, causés par la complexité croissante et la spécialisation dans les organisations,
problèmes en fait proches de ceux présents lors du conflit. Au début des années 1950, la
recherche opérationnelle avait pénétré une multitude d’organisations commerciales,
industrielles, et gouvernementales. Et ce n’était que le début.
Au moins deux autres facteurs ont joué un rôle clé dans la croissance rapide de la recherche
opérationnelle. Tout d’abord, des progrès substantiels ont été obtenus très tôt afin d’améliorer
les techniques de la recherche opérationnelle. Ces techniques, dans leur mise en pratique,
furent soutenues par l’essor des outils informatiques. [9]
2.2. La nature de la recherche opérationnelle
La première étape de la recherche consiste en l’observation profonde du problème, sa
formulation, ainsi que la collecte de ses données. Il convient par la suite de formuler un
modèle scientifique qui traduit l’essence du problème réel. Tout modèle est une
transformation de la réalité, mais cette représentation doit être suffisamment précise pour
capturer les caractéristiques essentielles de la situation, et de pouvoir tirer des conclusions
valides pour le problème réel. Il conviendra dès lors de tester ce modèle, et de le modifier au
besoin.

3
Une caractéristique additionnelle est que la recherche opérationnelle essaye souvent de
trouver une meilleure solution (dite solution optimale) pour le problème posé. Cette solution
peut ne pas être unique. Cette recherche d’optimalité est un sujet important et son
interprétation reste plus ou moins délicate.
En général, il est difficile de pouvoir maîtriser tous les aspects du problèmes à étudier,
c’est pourquoi la recherche opérationnelle est beaucoup plus un travail d’équipe, avec des
experts en mathématiques, statistiques et probabilités, ingénierie, économie, administration,
informatique, physiques, sciences comportementales, ainsi que les techniques spécifiques de
la recherche opérationnelle.
2.3. Définition de la recherche opérationnelle
• Méthodes scientifiques pour résoudre des problèmes d'optimisation liés aux
organisations du monde réel.
• Une discipline basée sur les mathématiques et l'informatique
- prolongement de l'algorithmique
- manipulation des structures plus élaborées : graphes, polyèdres...
- domaine d'application de la théorie de la complexité algorithmique
• Une boite à outils regroupant des méthodes, pour aborder sainement et
sereinement les problèmes d'optimisation.
La recherche opérationnelle propose des modèles conceptuels pour analyser des
situations complexes et permet aux décideurs de faire les choix les plus efficaces grâce à:
• une meilleure compréhension des problèmes,
• une vision complète des données,
• la considération de toutes les solutions possibles,
• des prédictions prudentes de résultats incluant une évaluation des risques,
• des outils et des méthodes modernes d'aide à la décision.
2.4. Objectif de la recherche opérationnelle
• faire de la recherche scientifique opérationnelle utilisable sur le terrain des
opérations à l’aide des outils de l’informatique.
• Mettre au point des méthodes, les implémenter au sein d’outils (logiciels) pour
trouver des résultats ensuite les confrontés à la réalité.[7]
2.5. Résolution d’un problème de recherche opérationnelle
La recherche opérationnelle vise à résoudre certains problèmes par des méthodes
scientifiques à l’aide des ordinateurs.

4
2.6. Domaines d’applications de la recherche opérationnelle
➢ Planifier, ordonnancer
• Ordonnancement de chantier
• Ordonnancement d'atelier : Ordonnancer les passages sur les machines
• Emploi du temps
➢ Stocker, gérer
• Gestion de la production, des stocks et de la maintenance
➢ Transporter
• Transport, logistique
• Optimisation des tournées de véhicules, distribution
• Relations fournisseurs / clients
• Organisation des centres logistique
➢ Emballer, ranger
➢ Router, relier
• Réseau de mobilophonie
• Web
➢ Soigner, gérer les hôpitaux
➢ Imagerie médicale
• Lutte contre le cancer
• ADN
• Gestion des ressources hospitalières
➢ Le domaine spatial
• Constellation de satellites
➢ La Finance
➢ L'environnement et le développement durable
• Gestion des ressources
• Les enjeux de développement durable
• Développement économique
➢ L'énergie
• Design et planification des centrales
• Localisation des sites
• Organisation de la production
• Politique des prix…..

5
6
3. Problèmes d'optimisation
L'optimisation est une activité essentielle dans toutes les disciplines importantes. C’est
un processus de recherche dont le but d’optimiser (minimiser ou maximisez) une fonction
mathématique de plusieurs variables. Le sujet de l'optimisation est tout à fait général dans le
sens qu'il peut être vu de différentes manières selon l'approche (géométrique ou algébrique).
3.1. Définition d’un problème d’optimisation
• un espace de recherche (de décision) : ensemble de solutions constitué des
différentes valeurs prises par les variables de décision. Ces variables peuvent
être de nature diverses, réelles, entières ou les deux et expriment des données
qualitatives ou quantitatives.
• une ou plusieurs fonction(s) dite objectif(s), à optimiser, cette fonction
représente le but à atteindre par le décideur.
• un ensemble de contraintes à respecter, cet ensemble définit des conditions
sur l’espace d’état que les variables doivent satisfaire. Ces contraintes sont
souvent des contraintes d’inégalité ou d’égalité et permettent en général de
limiter l’espace de recherche (domaine de faisabilité).
La résolution optimale du problème consiste à trouver le point ou l’ensemble de points
de l’espace de recherche qui satisfait au mieux la fonction objectif. Le résultat est appelé
valeur optimale ou optimum.
3.2. Caractéristiques d’un problème d’optimisation
• Le domaine des variables de décision : soit Continu et on parle alors de
problème continu, soit discret et on parle donc de problème combinatoire.
• l’environnement : problème dynamique ou statique.
• la nature de la fonction objectif à optimiser : soit linéaire, soit non linéaire
et on parle donc de problème non linéaire.
• le nombre de fonctions objectifs à optimiser : soit une fonction scalaire et
on parle alors de problème mono-objectif, soit une fonction vectorielle et on
parle donc de problème multiobjectif.
• la présence ou non des contraintes : on parle de problème sans contraintes
ou avec contraintes.
• sa taille : problème de petite ou de grande taille.

7
3.3. Optimisation statique
L'optimisation statique est celle dont les variables de conception (impliquées dans la
fonction objectif ) ne changent pas en fonction du temps. Les techniques employées pour
résoudre ce type de problèmes sont :
• le calcul différentiel
• la programmation linéaire ou non linéaire
• le multiplicateur de Lagrange
3.4. Optimisation dynamique
L'optimisation dynamique est celle dont les variables de conception (impliquées dans la
fonction objectif) changent en fonction du temps et que le temps est impliqué dans la
formulation du problème. Les techniques employées pour résoudre ce type de problèmes sont:
• le calcul des variations
• la programmation dynamique
• l’optimisation convexe
3.5. Problème d’optimisation linéaire
Les problèmes de programmation linéaire sont généralement liés à des problèmes
d’allocations de ressources limitées, afin de maximiser un profit ou de minimiser un coût. Le
terme meilleur fait référence à la possibilité d’avoir un ensemble de décisions possibles qui
réalisent la même satisfaction ou le même profit. Ces décisions sont en général le résultat d’un
problème mathématique.
Les problèmes de programmation linéaire (PL) sont des problèmes d’optimisation où la
fonction objectif et les contraintes sont toutes linéaires (ces contraintes sont le plus souvent
exprimées par des inégalités). Ils interviennent dans la résolution de problèmes combinatoires.
3.5.1. Conditions de formulation d’un PL
La programmation linéaire comme étant un modèle admet des hypothèses (des
conditions) que le décideur doit valider avant de pouvoir les utiliser pour modéliser son
problème. Ces hypothèses sont :
• Les variables de décision du problème sont positives.
• Le critère de sélection de la meilleure décision est décrit par une fonction
linéaire de ces variables. La fonction qui représente le critère de sélection est
dite fonction objectif (ou fonction économique).

8
Les restrictions relatives aux variables de décision (exemple : limitations des
ressources) peuvent être exprimées par un ensemble d’équations linéaires. Ces équations
forment l’ensemble des contraintes.
Les paramètres du problème en dehors des variables de décisions ont une valeur connue
avec certitude.
3.5.2. Forme canonique

𝑚𝑎𝑥 ∑𝑛𝑗=1 𝑐𝑗 𝑥𝑗 (1)


∑𝑛𝑗=1 𝑎𝑖𝑗 𝑥𝑗 ≤ 𝑏𝑖 (𝑖 = 1,2, … , 𝑚) (2)
{
𝑥𝑗 ≥ 0 (𝑗 = 1,2, … , 𝑛) (3)

3.5.3. Forme canonique en notation matricielle


𝑚𝑎𝑥𝑐 𝑇 𝑥 (4)
𝐴𝑥 ≤ 𝑏 (5)
{
𝑥≥0 (6)
3.6. Problème d’optimisation non linéaire
3.6.1. Introduction
L'optimisation non linéaire est une branche des mathématiques qui s'occupe
essentiellement des problèmes d'optimisation dont les données, i.e., les fonctions et ensembles
définissant ces problèmes, sont non linéaires, mais sont aussi différentiables autant de fois que
nécessaire pour l'établissement des outils théoriques, comme les conditions d'optimalité, ou
pour la bonne marche des algorithmes de résolution qui y sont introduits et analysés.
L'optimisation non linéaire étudie le cas général dans lequel la fonction objectif ou les
contraintes (ou les deux) contiennent des parties non linéaires, éventuellement non-convexes.
La condition implicite xi ≥ 0 n’existe pas, c.à.d. que xi peut être positive comme
négative.[3]
De nombreuses applications industrielles de l’optimisation impliquent une modélisation
plus proche de la physique. En optimisation de la conception par exemple, on optimise des
modèles ou des méta-modèles dont la formulation mathématique renferme des fonctions non
linéaires.
De même l’optimisation topologique ou l’optimisation des formes fait largement appel à
des modèles non linéaires et de plus de très grande taille.
3.6.2. Formulation générale d’un PNL
La forme générale d’un problème d’optimisation non linéaire est la suivante :

9
min 𝑓(𝑥) (7)
𝑥∈ℛ 𝑛

𝑔(𝑥) ≤ 0 (8)
(S.C){
ℎ(𝑥) = 0 (9)

avec :

Les fonctions f, g et h sont typiquement non linéaires, l’équation (8) désigne ce que
nous appelleront des contraintes d’inégalité et l’équation (9) des contraintes d’égalité.
Les techniques de résolution de ce type de problèmes mathématiques ainsi que la
performance des algorithmes d’optimisation dépendent de la nature de la fonction objectif et
des contraintes.
3.7. Problème d’optimisation monoobjectif
Lorsqu’un seul objectif (critère) est donné, le problème d’optimisation est mono-
objectif. Dans ce cas la solution optimale est clairement définie, c’est celle qui a le coût
optimal (minimal, maximal). De manière formelle, à chaque problème est associé un
ensemble Ω des solutions potentielles respectant certaines contraintes et une fonction
d’objectif 𝑓: Ω → ᴪ qui associe à chaque solution admissible 𝑠 ∈ Ω une valeur𝑓(𝑠). Résoudre
un problème d’optimisation consiste à trouver la solution optimale 𝑠 ∗ ∈ Ω qui optimise
(minimise ou maximise) la valeur de la fonction objectif 𝑓. Pour le cas de la minimisation : le
but est de trouver 𝑠 ∗ ∈ Ω tel que𝑓(𝑠 ∗ ) ≤ 𝑓(𝑠) pour tout élément𝑠 ∈ Ω. Un problème de
maximisation peut être défini de manière similaire.
3.7.1. Variables de décision
Les variables de décision sont des quantités numériques pour lesquelles des valeurs sont
à choisir. Cet ensemble de 𝑛 variables est appelé vecteur de décision : (𝑥1 , 𝑥2 , … , 𝑥𝑛 ). Les
différentes valeurs possibles prises par les variables de décision 𝑥𝑖 constituent l’ensemble des
solutions potentielles.
3.7.2. Espace décisionnel et espace objectif
Deux espaces Euclidiens sont considérés en optimisation :
• L’espace décisionnel : de dimension 𝑛, 𝑛 étant le nombre de variables de
décision. Cet espace est constitué par l’ensemble des valeurs pouvant être prise
par le vecteur de décision.
• L’espace objectif : l’ensemble de définition de la fonction objectif,
généralement défini dans ℛ. La valeur dans l’espace objectif d’une solution est
appelée coût, ou fitness.

10
3.7.3. Contraintes
Dans la plupart des problèmes d’optimisation, des restrictions sont imposées par les
caractéristiques du problème. Ces restrictions doivent être satisfaites afin de considérer une
solution acceptable. Cet ensemble de restrictions, appelées contraintes, décrit les
dépendances entre les variables de décision et les paramètres du problème. On formule
usuellement ces contraintes 𝑐𝑗 par un ensemble d’inégalités, ou d’égalités de la forme:
𝑐𝑗 (𝑥1 , 𝑥2 , … , 𝑥𝑛 ) ≥ 0 (10)
3.8. Problèmes d’optimisation multiobjectifs
3.8.1. Introduction
L’optimisation multiobjectifs est un axe de recherche très important à cause de la nature
multiobjectif de la plupart des problèmes réels. Les premiers travaux menés sur les problèmes
multiobjectifs furent réalisés au 19ème siècle sur des études en économie par Edgeworth et
généralisés par Pareto.
Le but de l’optimisation multiobjectif est d’optimiser plusieurs objectifs simultanément.
Ces objectifs sont dans le cas général en conflit: l’amélioration d’un objectif provoque la
détérioration d’un autre objectif. Par conséquent, le résultat final de l’optimisation n’est plus
donné par une solution unique mais plutôt par un ensemble de solutions qui représentent
chacune un compromis entre les différents objectifs à optimiser.
3.8.2. Notions préliminaires sur l’optimisation multiobjectif
Un problème d’optimisation multiobjectif est un problème qui possède plusieurs
fonctions objectif qui sont à minimiser ou à maximiser et un certain nombre de contraintes à
satisfaire. La forme générale d’un problème d’optimisation multiobjectif est donnée par le
système d’équations suivant :
Soit :

𝑥 = [𝑥1 , 𝑥2 , 𝑥3 , … , 𝑥𝑛 ]𝑇 (11)
min 𝑓(𝑥) (12)
ℎ𝑖 (𝑥) = 0, 𝑖 = 1,2 … , 𝑝 (13)
{ 𝑔𝑗 (𝑥) ≤ 0, j = 1,2, … , m (14)
𝑥𝑖𝑙 ≤ 𝑥𝑖 ≤ 𝑥𝑖𝑢 (15)

𝑢 : upper bound: borne supérieure de la variable 𝑥𝑖

𝑙 : lower bound : borne inférieure de la variable 𝑥𝑖

11
Le vecteur 𝑥 est un vecteur de 𝑛 variables de décision. Ces variables définissent
l’espace de décision ou l’espace de recherche D.

La figure (1) présente un problème d’optimisation multiobjectif de deux variables de


décision et trois fonctions objectifs tel que :
Ω : représente l’ensemble des solutions réalisables respectant un ensemble de contraintes C
d’égalité, d’inégalité et des bornes explicite.
𝐹(𝑓1 , 𝑓2 , … , 𝑓𝑝 ) : est le vecteur de la fonctions objectifs à optimiser.
𝑝 : représente le nombre d’objectifs.
ᴪ = 𝐹(Ω) : représente les points réalisables dans l’espace objectif.

Fig.1. Problème d’optimisation multiobjectif (deux variables de décision et trois fonctions objectifs)

12

Vous aimerez peut-être aussi