Chapitre 1
Introduction à la Recherche Opérationnelle
1.1 Definition
Recherche Opérationnelle c’est l’ensemble des méthodes et techniques rationnelles d’ana- lyse et de synthèse de phénomènes d’organisation utilisable pour élaborer des meilleurs dé- cisions.
Autrement dit, il s’agit d’un ensemble des méthodes d’analyse scientifique (maths et info.) des phénomènes d’organisation qui traite de la maximisationd’un profit, d’une per- formance, d’un rendement au bien de laminimisationd’un coût, d’une dépense.
La Recherche Opérationnelle est alors un outil d’aide à la décision.
PROBLÈME CONCRET de type R.O.
MODÉLISATION
RESOLUTION PAR UNE MÉTHODE DE R.O.
INTERPRETATION DES RÉSULTATS
PRISE DE DÉCISION
FIGURE1.1 – Le schéma général suivi par les méthodes de Recherche Opérationnelle.
La recherche opérationnelle apparaît comme une discipline - carrefour , associant étroi- tement les méthode et les résultat de l’économie d’entreprise, la mathématique et l’informa- tique (voir le schéma sur la Fig.4.2). L’élaboration du schéma d’intervention (ou modèle) utilise les ressources conjugues d’analyse économique et de la théorie des systèmes ; elle
a besoin aussi de données fournies par le système informatique et justiciables de méthodes statistiques. Le traitement algorithmique du modèle, après que la mathématique ait permis de choisir une voie pour atteindre une bonne solution (voire l’optimum, s’il est bien définit et accessible), entraîne une réglementation informatique. Enfin la critique des résultats exige, une fois de plus, la réunion des différents acteurs.
Recherche Opérationnelle (aide à la décision)
ECONOMIE INFORMATIQUE
MATHÉMATIQUES
• économie d’entreprise
• analyse économique • algorithmes
• structures de données
• bases de données
• théorie des systèmes
• méthodes d’optimisation
• méthodes statistiques Elaboration
du modèle
Traitement du modèle
FIGURE1.2 –
1.2 Quelques exemples et domaines d’applications de la re- cherche opérationnelle
Un premier exemple : les ponts de Königsberg
Deux îles de la ville sont reliées entre elle par 1 pont. D’autre part 6 autres ponts relient les îles à la ville. La question posée est la suivante :Existe-il un chemin passant une et une seule fois par chaque pont et qui revient au point de départ ?
La réponse est NON (apportée par Euler, 1735). Le preuve utilise un graphe : les arêtes du graphe représentent les ponts et les sommets correspondent aux différents endroits de la ville : les rives gauche et droite et les deux îles. Supposons qu’un tel chemin existe. Un tel chemin est appeléchemin eulérien. Alors nécessairement en chacun des noeuds du graphe il
FIGURE 1.3 – La ville de Königsberg et ses 7 ponts et graphe associé qu problème des point de Königsberg.
y a toujours un nombre paire d’arêtes reliées au noeud : s’il y a une arête qui arrive au noeud, il y en a nécessairement une autre (différente) qui le quitte. Or, on constate que le graphe possède des noeuds (tous en fait !) reliés à un nombre impair d’arêtes. Par conséquent, il n’existe pas de chemin eulérien.
Un problème de production
Détermination d’un plan optimal de fabrication :
Une entreprise fabrique plusieurs produits, ce qui exige des ressources particulières (ma- tières premières, machines, personnel ...) en quantités limitées. Chaque produit rapporte un certain bénéfice (connu) à l’entreprise.Quels produits l’entreprise doit-elle fabriquer et en quelle quantité pour réaliser le bénéfice total le plus élevé ?
On verra que ce problème peut se modéliser par programmation linéaire qui s’écrit for- mellement sous la forme suivante :
La fonction objectif :
maxx F(x) =c�x=c1x1 +c2x2+· · ·+cnxn (1.1)
Les contraintes : �
Ax ≤ b,
x ≥ 0. (1.2)
Un problème de transport
Une entreprise dispose de plusieurs dépôts (Di) contenant chacun un certain nombre de containers. Différents magasins (Mi) commandent des containers. On connaît le coût de transport de chaque dépôt aux magasins. Par exemple,
D1
D2 demande magasins→
M1 M2 M3
5 3 4
6 7 2
4 5 8
↓disponibilité dépôts 8
9 (1.3)
Quelle est l’organisation des livraisons de containers pour minimiser le coût total de transport ?
Ce problème peut se modéliser parprogrammation linéaire en nombre entiers.
Un problème d’affectation
ntâches doivent être affectées ànmachines (une tâche par machine). Le coût d’exécution de chaque tâche par chacune des machines est connu.Trouver l’affectation qui minimise le coût total. Ce problème peut se modéliser par programmation linéaireen variables binaires mais il peut être vu aussi comme un problème deflot maximal à travers un graphe.
Un problème de voyageur de comerce
Un voyageur de commerce doit visiternvilles. La distance entre chaque ville est donnée.
Trouver le plus court trajet passant par lesnvilles.
Ce problème sera résolu parprogrammation dynamique.
Placement optimale de pieces 2D (BIN PACKING)
On dispose de plaques rectangulaires toutes identiques dans lesquelles on veut placer des pièces rectangulaires sans chevauchement. Les pièces à placer ont des dimensions diffé- rentes.Trouver le placement pour minimiser le nombre de plaques utilisées.
FIGURE1.4 – Placement optimal de cinq pièces dans deux plaques.
Ce problème pourra être étudié par des méthodes heuristiques/méthodes évolutionnistes (par exemple algorithmes génétiques).
1.3 Formalisation
Tous les problèmes mentionnés ci-dessus et présentés dqns ce cours peuvent se formaliser de la façon suivante :
On cherche à maximiser une fonctionf sur un ensembleXdonné : max{f(x), x∈X}
oùf :X→Rest la fonction objectif,Xest l’ensemble des solutions possibles, réalisables.
On peut envisager de façon équivalente un problème de minimisation grâce à la relation : minx∈X f(x) =−max
x∈X(−f(x)).