Vous êtes sur la page 1sur 65

République Algérienne Démocratique et Populaire

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique


Université des Sciences et de la Technologie Houari Boumediene

Faculté de Mathématiques
Département de Recherche Opérationnelle

Mémoire
En vu de l’obtention du diplôme de MASTER
Recherche Opérationnelle Modèles et méthodes pour l’ingénierie et la recherche (RO2MIR)

Thème

Planification d’un problème de forage

Présenté par : BOUZIDI Manel


MOHAMMEDI Liza

Soutenu le 29 juin, devant le jury composé de :


Président : CHERGUI Mohamed El-Amine, USTHB
Rapporteur : BOUMESBAH Asma, USTHB
Examinateur : BOUROUBI Sadek, USTHB
Invité : DHINA Okba, Sonatrach
Code Mémoire : 12/RO2MOR/2022

1
Remerciements
Le présent travail a été réalisé au niveau de l’entreprise sonatrach sous la direction de
monsieur DHINA Okba, directeur ingineering et programme.

Au terme de ce travail, il nous est particulièrement agréable d’adresser nos remercie-


ments à toutes les personnes qui nous ont apporté leur aide leur soutien, mais avant tout
nous remercions Dieu le tout puissant et miséricordieux.

Nos vifs remerciements et notre profonde gratitude s’adressent, à Monsieur DHINA


Okba et Monsieur OUEZNADJI Abderrahmane, pour leurs dévouements, leurs disponi-
bilités, leurs efforts, leurs patiences et leurs gentillesses.

Notre profonde gratitude s’adresse également à notre promotrice Madame BOUMES-


BAH Asma de la Faculté de Mathematique (USTHB) pour son soutient, sa disponibilité,
ses encouragements et ses précieux conseils et orientations.

On exprime aussi toute notre gratitude aux membres du jury :


Professeur CHERGUI Mohamed-El-Amine, pour l’honneur qu’il nous a fait en accep-
tant de présider le jury.
Professeur BOUROUBI Sadek, pour avoir accepté d’examiner ce travail.

Un grand merci s’adresse également à tout le personnel de l’entreprise sonatrach pour


leur aide et leur gentillesse.

Nous tenons à exprimer non sincères remerciements à tous les enseignants qui nous
ont enseigne et qui par leurs compétences et dévouement nous ont soutenu et encouragé
tout au long de notre cursus en particulier Monsieur CHERGUI, Madame BOUMESBAH
et Monsieur BOUROUBI pour leurs aides et conseils

2
Dédicaces
je dédie ce travail :

A ma très chère mère Djeddjiga qui m’as donné le vrai amour et mon chère père Mo-
hamed Said qui ma rendue qui je suis aujourd’hui,
toutes les lettres ne sauraient trouver les mots qu’il faut pour exprimer la gratitude,
l’amour, le respect et la reconnaissance. Que DIEU vous bénisse, procure bonne santé et
longue vie.

A mes chers grands-mères (Fatima et Tassadit), qui sont un exemple d’amour et ten-
dresse.

A mes merveilleux frères Moncef et Danyf et ma soeur Krinal, que le bon DIEU les
bénisse.

A mon ancle Farid et toute sa famille.

A toute ma famille et tous ceux qui m’ont soutenue durant tout mon parcours univer-
sitaire.

Je dédie aussi ce travail à ma binôme et ma meilleure amie Liza. Je te remercie pour


ton soutien et je te souhaite une bonne continuation, et à mes chères amies Feriel et Lamia.

BOUZIDI Manel

3
Dédicaces
Je dédie ce travail :

Aux deux piliers de ma vie, mon très cher père et a ma merveilleuse mère, pour leur
amour, leur tendresse, leur soutien et leurs prières tout au long de ma vie et de mes études.

Ce travail est le résultat des sacrifices que vous avez consentis pour mon éducation,
et ma formation. Aucun mot ne pourra traduire l’amour et le respect que je vous porte.
Que Dieu vous protège.

A mes chères sœurs Fatma, Roza, Leatissia et Meriem pour leur amour, leur encoura-
gements permanents et leur soutien moral.

A mes 2 petits frères, mes rayons de soleil et ma source de bonheur, Amine et Ghiles.

A mes très chères grand-mères Fatma et Fatma qui sont pour moi des exemples de
courage, de patience et de bonté. Que Dieu vous protège et vous procure santé et longue
vie.

A toute ma famille pour le soutien tout au long de ma vie et mon parcours universitaire.

Et enfin à ma binôme et meilleure amie Manel , qui a toujours été présente depuis
qu’on se connaı̂t. Je te souhaite le bonheur et la réussite que tu mérites

MOHAMMEDI Liza

4
TABLE DES MATIÈRES

Remerciement 2

Introduction 9

1 Présentation de la société Sonatrach et définitions 11


1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2.1 Activités de Sonatrach . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.2 Objectifs de Sonatrach . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.3 Organisation de la Sonatrach . . . . . . . . . . . . . . . . . . . . . 13
1.2.4 Activité exploration et production . . . . . . . . . . . . . . . . . . 14
1.3 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3.1 Forage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3.2 Pétrole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.3 Exploration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.4 Développement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.5 Exercice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.6 Plan de charge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.7 Durée de forage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.8 Puits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.3.9 Appareil de forage . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.3.10 Démontage, transport et montage . . . . . . . . . . . . . . . . . . 19
1.3.11 Attentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2 Généralité sur des problème l’optimisation 22


2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2 Programmation linéaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.1 Forme générale d’un programme linéaire . . . . . . . . . . . . . . . 22

5
2.2.2 Forme canonique et forme standard . . . . . . . . . . . . . . . . . . 23
2.3 Programmation linéaire en nombres entiers . . . . . . . . . . . . . . . . . . 24
2.3.1 Résolution d’un programme linéaire à variables entières . . . . . . . 25
2.3.2 Problème d’affectation . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.4 Programmation multi-objectif . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.4.1 Forme générale d’un programme multi-objectif . . . . . . . . . . . . 29
2.5 Conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3 Analyse multicritère 30
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.2 Aide multicritères . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3 Objectif de l’aide multicritères . . . . . . . . . . . . . . . . . . . . . . . . 31
3.4 Terminologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.4.1 Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.4.2 Critère . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.4.3 Poids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.4.4 Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.4.5 Matrice des jugements . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.4.6 Évaluation des actions . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.4.7 Problématiques d’aide à la décision . . . . . . . . . . . . . . . . . . 32
3.5 L’agrégation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.5.1 Weighted Sum Method (WSM) . . . . . . . . . . . . . . . . . . . . 33
3.5.2 Avantages et inconvénients . . . . . . . . . . . . . . . . . . . . . . 33
3.6 La méthode PROMETHEE . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.6.1 Les étapes de la méthode PROMETHEE II : . . . . . . . . . . . . . 35
3.7 Analyse Hiérarchique des Procédés (AHP) . . . . . . . . . . . . . . . . . . 36
3.8 Conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

4 Formulation mathématique 40
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.2 Modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.2.1 Données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.2.2 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.2.3 Les fonctions objectif . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.2.4 Les contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.2.5 Le modèle mathématique . . . . . . . . . . . . . . . . . . . . . . . . 43
4.3 Taille du modèle mathématique . . . . . . . . . . . . . . . . . . . . . . . . 44
4.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

6
5 Approche de résolution 45
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.2 Méthode de résolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.2.1 Description de la méthode . . . . . . . . . . . . . . . . . . . . . . . 45
5.2.2 Pondération des critères . . . . . . . . . . . . . . . . . . . . . . . . 46
5.2.3 Agrégation des critères pour chaque alternative . . . . . . . . . . . 47
5.2.4 Affectation des rigs aux puits . . . . . . . . . . . . . . . . . . . . . 47
5.3 Organigramme de la méthode de résolution . . . . . . . . . . . . . . . . . . 49

6 Implémentions et résultats 50
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6.2 Évaluation numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6.2.1 CPLEX : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6.2.2 Résolution exacte . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6.2.3 Rapport CPLEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.3 Présentation du langage utilisé . . . . . . . . . . . . . . . . . . . . . . . . 53
6.3.1 Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
6.4 Présentation de l’application . . . . . . . . . . . . . . . . . . . . . . . . . . 54
6.5 Exemple numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Bibliographie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

7
TABLE DES FIGURES

1.1 La macrostructure de Sonatrach . . . . . . . . . . . . . . . . . . . . . . . . 13


1.2 Appareil de forage, rig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.1 Exemple : séparation et évaluation . . . . . . . . . . . . . . . . . . . . . . 26

5.1 Exemple d’affectation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48


5.2 Organigramme de la méthode . . . . . . . . . . . . . . . . . . . . . . . . . 49

6.1 Solution du CPLEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51


6.2 Statistiques, CPLEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.3 Journal du moteur, CPLEX . . . . . . . . . . . . . . . . . . . . . . . . . . 53
6.4 Fenêtre 1 : accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.5 Fenêtre 2 : comparaison par paire . . . . . . . . . . . . . . . . . . . . . . . 55
6.6 Fenêtre 3 : aide, table de Saaty . . . . . . . . . . . . . . . . . . . . . . . . 56
6.7 Fenêtre 4 : proposition des comparaison par pair . . . . . . . . . . . . . . . 57
6.8 Fenêtre 5 : les poids et le ration de cohérence . . . . . . . . . . . . . . . . . 57
6.9 Fenêtre 6 : aide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.10 Fenêtre 7 : choix de la méthode . . . . . . . . . . . . . . . . . . . . . . . . 59
6.11 Fenêtre 8 : le planning obtenu avec la méthode WSM . . . . . . . . . . . . 59
6.12 Fenêtre 9 : le planning obtenu avec la méthode PROMETHEE II . . . . . 60

8
Introduction

La recherche opérationnelle est une discipline moderne qui utilise les mathématiques,
statistiques, l’économie et aussi l’algorithmique pour modéliser et résoudre des problèmes
complexes, A nos jours la recherche opérationnelle comprend un grand nombre de disci-
plines comme l’optimisation linéaire, l’optimisation non linéaire, la programmation dyna-
mique, la simulation de phénomènes, la théorie de files d’attente, la théorie des graphes
...

La recherche opérationnelle est définie comme un outil d’aide à la décision car elle pro-
pose des modèles conceptuels en vue d’analyser et de maı̂triser des situations complexes
pour permettre aux décideurs de comprendre, d’évaluer les enjeux et d’arbitrer ou de faire
les choix les plus efficaces grâce à des méthodes et techniques rationnelles orientées vers
la recherche du meilleur choix dans la façon d’opérer en vue d’aboutir au résultat visé ou
au meilleur résultat possible ou encore au résultat optimal.

On retrouve la recherche opérationnelle dans plusieurs domaines comme la gestion


d’entreprise, transport, ordonnancement, logistique et gestion des stock, Il existe d’autres
domaines où la recherche opérationnelle intervient : L’industrie manufacturière, la finance,
l’informatique, l’énergie.

Le forage est l’ensemble des opérations permettant le creusement des trous pour at-
teindre en sous-sol de nouvelles zones susceptibles qui contiennent des hydrocarbures. Il
représente une part très importante du coût d’une campagne de recherche. La compétitivité
accrue entre les compagnies pétrolières internationales incite à aller vite pour creuser des
puits devenus de plus en plus coûteux.

Aujourd’hui le forage, réalisé généralement par une société de service spécialisée, est de-
venu une activité très technique. La tendance actuelle est au développement des méthodes
ou de moyens d’aide pour assister le foreur dans le choix des différents paramètres du fo-
rage pour aller vite et diminuer le prix de forage.

La société Sonatrach, jusqu’à ce jour rencontre des problèmes concernant le forage,


que ce soit en exploration ou en développement des nouveaux gisements pétroliers qui
sont d’une importance majore dans l’industrie pétrolière.

La Division Forage est responsable de la maı̂trise d’oeuvre de forage pour la construc-


tion de puits de qualité, à moindres coûts, dans les meilleures conditions de sécurité, de
santé et de protection de l’environnement.

9
Sonatrach nous a confié un des problèmes le plus rencontreé dans la division forage,
qui sera bien défini dans la partie problématique de ce mémoire, qui est en quelque sorte
un problème d’aide à la décision, dont sa réalisation nécessite des outils de la recherche
opérationnelle qui sont les mieux qualifiés pour ce genre de problèmes.

Ce travail se fond sur une recherche d’une méthode de résolution qui s’appuie essen-
tiellement sur la réalisation d’une affection des appareils de forage aux puits adéquats
pour les forer en respectant les objectifs et les conditions exigées par le décideur, cette
dernière garantit une planification de forage.

Pour mieux expliquer et faire comprendre la méthode de résolution on a partagé notre


mémoire en six chapitres :

Le premier chapitre est consacré à la présentation de Sonatrach, ainsi que des généralités,
des définitions et des termes utilisés dans ce mémoire et définir la problématique du
problème posé.

Le deuxième chapitre porte les notions de base sur l’optimisation linéaire, le problème
d’affectation et un aperçu sur la programmation multiobjectif qu’on va utiliser dans la
résolution exacte du problème donné.

Le troisième chapitre définit quelques méthodes de l’analyse multicritères utilisées dans


la résolution approché.

Le quatrième chapitre est consacré à la formulation mathématique de notre problème


( le modèle mathématique ).

L’approche de résolution est bien détaillé dans le chapitre 5, qui est la base du
problème.

Le sixième chapitre qui est le dernier, porte les outils de programmation et l’applica-
tion réalisé.

On clôture avec une conclusion générale.

10
CHAPITRE 1

PRÉSENTATION DE LA SOCIÉTÉ SONATRACH ET


DÉFINITIONS

1.1 Introduction
Il existe dans le monde plusieurs entreprises spécialisées dans le domaine des hydro-
carbures, avec différentes activités. Parmi les principales activités de ces entreprises on
cite : la production, le transport, la séparation, le raffinage, et la commercialisation.

Sonatrach (≪ Société Nationale pour la Recherche, la Production, le Transport, la


Transformation, et la Commercialisation des Hydrocarbures ≫) est une entreprise publique
algérienne et un acteur majeur de l’industrie pétrolière.

1.2 Présentation
Sonatrach est une entreprise publique algérienne, créée en 1963 pour l’exploitation des
ressources des hydrocarbures du pays. Ses activités diversifiées touchent toute la chaı̂ne
de production ; l’exploration, exploitation, transport, raffinage. et de commercialisation
des hydrocarbures et de leurs dérivées [17](tout le chapitre 1).
L’objectif de sonatrach est de valoriser de façon optimale les ressources nationales d’hy-
drocarbures et de créer des richesses qui vont contribuer au développement économique
et social du pays.

Ses activités se concentrent dans quatre principaux domaines l’Amont, l’Aval, le Trans-
port par Canalisation et la Commercialisation.

Sonatrach est aujourd’hui classée la première compagnie d’hydrocarbures en Afrique


et en Méditerranée.

11
Sonatrach est la plus grande entreprise d’Algérie en création de ressources.
Cependant, Sonatrach représente le 12ème groupe au niveau mondial, et le 2èmE exporta-
teur de GNL (gaz naturel liquéfié) et de GPL (gaz de pétrole liquéfié) et 3ème exportateur
de gaz naturel.

1.2.1 Activités de Sonatrach


1. Exploration et Production :
Depuis la création de Sonatrach, l’Activité Exploration-Production en hydrocar-
bures est montée en puissance grâce à l’expertise technologique et le savoir-faire des
équipes dans la recherche et la découverte de nouveaux gisements sur le territoire
national et à travers le monde.

2. Transport Par Canalisations :


Le transport par canalisation assure l’acheminement des hydrocarbures gazeux et
liquides produits par l’Activité Exploration-Production. Le réseau de canalisations
en Algérie s’étend sur près de 20 000 km.

3. Liquéfaction et Séparation :
Pionnier dans le GNL, Sonatrach s’est élever parmi les tous premiers acteurs mon-
diaux dans la production et la commercialisation de produits à forte valeur ajoutée.

4. Raffinage et Pétrochimie :
L’activité Raffinage-Pétrochimie a pour mission de valoriser l’approvisionnement
du marché domestique en carburants.

5. Commercialisation :
Depuis plus de 50 ans, Sonatrach est un fournisseur clé de référence sur la scène
européenne et internationale.

1.2.2 Objectifs de Sonatrach


* Nous pouvons citer ces deux objectifs qui sont les plus importants, tels que :
- Le développement international et le partenariat.
- Le renforcement de ses capacités technologiques.

12
1.2.3 Organisation de la Sonatrach
L’organisation du groupe Sonatrach se compose de trois directions essentielles :

1- La direction générale :

Sa fonction principale est d’assurer le pilotage stratégique et la coordination au sein


de la société mère (la présidence).

2- La direction fonctionnelle :

Son rôle est l’élaboration de ses propres instruments de pilotages et d’expertises afin
de permettre la coordination des stratégies, des politiques et des activités du groupe.

3- La direction opérationnelle :

C’est un ensemble homogène d’activités fonctionnant selon les règles d’une entreprise
autonome dans le cadre des objectifs stratégiques de la présidence.

Figure 1.1 – La macrostructure de Sonatrach

13
1.2.4 Activité exploration et production
L’activité exploration-production, est la division la plus stratégique de la compagnie
nationale des hydrocarbures. C’est le cœur de Sonatrach, C’est cette activité qui assure
les ressources pétrolières et gazières pour l’entreprise Sonatrach et pour le pays. Et pour
ce faire, des processus sont mis en œuvre dont chacune de ses six divisions techniques :
-Division Exploration
-Division Petroleum Engineering et Développement
-Division Forage
-Division Production
-Division Associations
-Division Laboratoire
Par ailleurs, l’activité exploration-production (EP) de Sonatrach a pour mission la re-
cherche, le développement, l’exploitation et la production des hydrocarbures.

Division Forage :

La Division forage a été créée en 1987, sous l’autorité de la branche des hydrocarbures.
En lui attribuant le rôle de ≪ maı̂tre d’œuvre de forage ≫, sa mission essentielle est la
supervision et la conduite de toutes les opérations liées au forage des puits d’exploration
et de développement réalisés en effort propre Sonatrach.
Les missions de la Division forage :

- Dans le domaine du forage :


• Contribuer à la planification des activités de forage de l’Activité EP.
• Mettre en œuvre les plans de forage approuvés.
• Assurant la préservation de l’environnement, de la sécurité des opérations, de la qualité
des ouvrages.
• Minimisant les coûts de réalisation des puits Superviser.

-lors de la réalisation des puits :


• Assurer la surveillance géologique des forages.
• Fournir des prestations d’échantillonnage et d’analyse.
• Recueillir, traiter et interpréter les paramètres de forage.
• Participer à la réalisation de grands projets de l’Activité EP.
• Contribuer au développement du tissu national des sociétés de services aux puits.
• Prendre part aux activités de recherche nationale et internationale dans ses métiers.

Chaque division dispose de son programme type, et la division forage doit s’assurer
que le programme établi par l’une des structures est bien réalisé, et que toutes les données
doivent être communiquées à la structure concernée.

14
1.3 Définitions
Les définitions et généralités à utiliser le plus dans ce mémoire pour bien comprendre.

1.3.1 Forage
Le forage est destiné généralement à exploiter plusieurs ressources naturelles du sous-
sol constitué par différents fluides (eau, pétrole et gaz naturel) piégés dans les sous-sols.
Dans certains cas les forages peuvent servir, pour surveiller ou recharger le réservoir en
fluide par l’injection (cas de puits injecteurs). Dans d’autres cas plus rares le forage sert
à exploiter l’énergie géothermique d’une région.
Avant l’exécution d’un forage une étude préliminaire est indispensable pour localiser en
coordonné de surface et en profondeur le gisement à exploiter, et pour caractériser les
propriétés spécifiques du réservoir (âge, lithologie, épaisseur, géométrie. . .) et du fluide
recherché (nature, salinité, température, densité. . .),afin d’estimer la quantité d’hydrocar-
bure à extraire.
Cette étude se base généralement sur :
- L’étude géologique fondamentale de surface (topographie ; cartographie géologique ; his-
torique) ;
- Des études appliqués tel que la géophysique (sismique ; sondage électrique ; gravi-métrique. . .).

Par la suite, et en fonction de l’étude de l’installation, un programme de forage est


fait pour décrire les différentes étapes du forage appropriés pour exploiter ce gisement.
Le programme de forage fournit des solutions aux différents problèmes et complexités na-
turelles et/ou urbaines. Ce programme se base principalement sur les donnés historiques
des forages similaires dans la même région, ainsi que les donnés géologiques mentionnées
dans l’étude préliminaire.

L’étape suivante consiste à l’exécution du forage. Cette étape est très technique et se
diffère selon la ressource à exploiter (pétrole, eau, gaz) et surtout selon la profondeur du
gisement. Par la suite on procède à la mise en production du forage.

Types de forage :

1- Le forage verticale ;
2- Le forage dirigé ;
3- Le forage horizontale ;

15
1.3.2 Pétrole
Du latin Petra et oleum, soit ≪ huile de pierre ≫, est une huile minérale naturelle
utilisée comme source d’énergie. Il est issu d’un mélange variable d’hydrocarbures associé
à d’autres atomes principalement de soufre, d’Azote et d’oxygène.
Le pétrole peut être visqueux ou liquide, et cette différence réside dans la forme de ses
composants (liquides, gazeux et parfois solides) qui varie dépendemment de la température
et de la pression.

1.3.3 Exploration
Ensemble d’activités, en amant, permettant de mettre en évidence et d’évaluer le
potentiel pétrolier d’une région donnée.

1.3.4 Développement
Phase de mise en production d’un gisement. Après la découverte d’un gisement pétrolifère,
la phase de mise en production comporte le forage des puits, leur équipement et la mise
en œuvre des moyens d’exploitation.

1.3.5 Exercice
c’est la période de forage de tout les puits programmés, autrement dit la durée de
projet qui est généralement une année.

1.3.6 Plan de charge


Est un document spécifié établi dès qu’il y a possibilité de forer un puits. Il contient
tous les données nécessaire à la réalisation d’un puits, transmis parla division production
(DEP) et division exploration (EXP) pour les puits de développement et exploration
respectivement. Ce plan de charge sera lancé au courant de l’exercice N, pour le réaliser
à l’exercice N+1.

1.3.7 Durée de forage


C’est le temps actif de forage, il commence après l’installation de l’appareil sur le puits
et dure jusqu’à la fin du forage.
Notons que la durée de forage (la vitesse d’avancement) dépend de la nature des terrains
rencontrés, type et la nature de puits.

16
1.3.8 Puits
Un puits est un équipement chargé d’extraire les hydrocarbures piégés dans les roches,avec
du matériel de pompage et des systèmes de contrôle et sécurité.
Chaque puits a plusieurs caractéristiques :

Type des puits :

• Exploration ;
• Développement ;

Nature des puits :

• Puits production ;
• Puits injecteur ;
• Puits vertical ;
• Puits horizontal ;

Type des puits pendant le forage :

• Puits programmés : sont les puits a entamés pour le forage durent l’exercice courant.
• Puits livrés : sont ceux forés et finalisé, y compris ceux de l’exercice précédent qui
n’était pas livrés. Notre objectif est de maximiser les puits livrés dans un exercice.
• Puits équivalents : sont ceux entamés dans l’exercice courant et ceux entamés dans
l’exercice précédent N-1 mais livrés dans l’exercice N .

-Ces derniers sont comptés comme suit : si un puits est entamé et terminé dans l’exer-
cice on le compte par un 1. Sinon, on comptabilise son taux de réalisation. L’objectif est
alors de maximiser la somme des taux de réalisation.

Profondeur :

c’est le métrage total à creuser pour atteindre l’objectif du forage, il varie d’une région
a une autre.(dans la région de Hassi Messaoud peut atteindre jusqu’à 4000m).

* Dans le plan de charge des puits, on a une liste des puits à forer avec :
- Le nom de chacun ;
- La profondeur ;
- La priorité ;
- La localisation ;
- Le type et la nature ;
- La priorité de chacun ;
- La durées de forage prévisionnelles.

17
1.3.9 Appareil de forage
L’appareil de forage est une machine qui fonctionne comme une perceuse de grande
taille. Le derrick, communément appelé ”le mât”, est la partie visible de l’appareil. C’est
une tour métallique de plusieurs dizaines de mètres de hauteur. Elle sert à introduire
verticalement dans le puits le ”train de tiges” qui est constitué d’un ensemble de tubes
métalliques vissés bout à bout. Il transmet un mouvement rotatif à l’outil de forage (le
trépan) et achemine un liquide appelé ”boue”, en raison de son aspect, vers le fond du
puits au fur et à mesure de l’approfondissement.
Ci-dessous une illustration :

Figure 1.2 – Appareil de forage, rig

18
* Dans le plan de charge des puits, on a une liste des Rigs disponible qui sont près à
utilisé avec :
- Le nom de chacun ;
- La puissance en HP( hourse power) ;
- L’état de chacun. (bonne, mauvais, moyen, ...).

1.3.10 Démontage, transport et montage


DTM : démonter un rig d’un puits terminé et le transporter vers un autre puits pour
le forer et le remonter.
c’est une phase importante qui engendre un cout selon la distance.
si le DTM est inférieur ou égal à 50 km la distance n’influe pas sur les couts, on peut
leurs donner tous une même durée qui est de 20 à 21 jours.

1.3.11 Attentes
Durant le forage, on peut rencontrer des attentent qui perturbent le planning de fo-
rage. On peut décrire :

A) Attentes en DTM : On dit qu’il y a attente en DTM lorsque l’un des éléments
nécessaires pour cette opération fait un obstacle, on cite :
- Disponibilités des moyens de transport ;
- Un chemin qui mène vers un nouveau puits ;
- L’implantation sur le nouveau puits d’une plate forme (en ciment) qui supportera le rig ;
- L’approvisionnement du chantier en matières consommables (Boue, FOD,...) ;
Lorsque l’un de ces éléments fait défaut, l’opération DTM est arrêtée. On dit alors qu’il
y a ”attente DTM”.

B) Attentes techniques : Comme on a déjà cité , à tout moment de forage peut surgir
un problème technique concernant le matériel qui changera le déroulement des travaux
qui peuvent faire arrêter le forage.

C) Attentes géologiques : Elles sont dues aux :


• Tests géologiques :
• Variation de la porosité des différentes couches à traverser.

D) Attentes organisationnelles : Le forage s’arrête complètement par manque d’un


matériau ou d’un produit nécessaire pour l’opération, on ne peut pas continuer jusqu’à la
réception de ces derniers.

19
1.4 Problématique
Parmi les principales activités de Sonatrach, il nous a été proposé de traiter le problème
de forage des puits. Pour mener à bien cette opération, des appareils nommés rigs sont
utilisés pour le forage des puits sur lesquels ont été faites plusieurs études ; physiques,
géographiques, chimiques . . .. Chaque puits est foré par un seul appareil qui doit pouvoir
le faire, car chaque puits a une profondeur minimale (mètres) à atteindre pour assurer la
production. D’autre part, chaque appareil ne peut forer qu’à une profondeur maximale
qu’il ne peut pas dépasser.
Le problème posé consiste à planifier l’affectation des rigs aux puits durant un exercice
donné, en tenant compte de contraintes physiques à même d’assurer la faisabilité du
forage, sans dépassement de la durée de l’exercice, sachant qu’un rig peut ne pas être
disponible au début de l’exercice, tout en optimisant des objectifs fixées par l’entreprise.
Notons que la gestion d’un rig nécessite un nombre important de matériels, d’ingénieurs
et d’ouvriers qualifiés, qui engendre un coût journalier très important.

Pour faire une planification et une bonne affectation des appareils de forage (ou rigs)
aux puits adéquats, un plan de charge avec toutes les données importantes est nécessaire.
Ce dernier sera transmis par la division production (DEP) et division exploration (EXP)
pour les puits de développement et exploration respectivement. Il sera lancé au cours de
l’exercice N, pour le réaliser à l’exercice N+1 (N peut être une année, un semestre).
Les divisions production (DEP) et exploration (EXP) communiquent alors ce plan de
charge qui contient la liste nominative des puits programmés pour le forage en tenant
compte de :
• la priorité de traitement des puits,
• la durée de forage prévisionnelle de chaque puits,
• la localisation des puits en utilisant le système GPS, afin de déterminer la distance entre
les puits (durée du DTM),
• la profondeur de chaque puits,
• le type de puits (à développer ou à explorer),
• la nature de puits (Vertical, horizontal).

Il en est de même pour les appareils disponibles. Une liste nominative est dressée mon-
trant les caractéristiques telles que :
• la puissance en HP( hourse power),
• l’état de chacun. (bonne, mauvais, moyen, ...).

Après un certain nombre de jours à forer sans arrêt par un rig donné, le forage d’un
puits est achevé et le rig doit ensuite être déplacé vers un autre puits pour être forer à
son tour. Ce déplacement nécessite un nombre de jours qui dépend de la distance entre
les puits, de la durée du montage et du démontage de l’appareil (DTM).

20
Dans le but de minimiser les coûts du projet (le coût de location des rigs , leurs
déplacement et entretient . . .), minimiser la distance totale de parcours des rigs, qui revient
aussi à minimiser la durée du DTM et entamer le forage de tous les puits programmés,
on doit établir une bonne affectation des rigs disponibles et déterminer le déplacement de
chacun de ces derniers en prenant en compte les caractéristiques techniques des appareils
ainsi que les caractéristiques géophysiques des puits à forer.

21
CHAPITRE 2

GÉNÉRALITÉ SUR DES PROBLÈME L’OPTIMISATION

2.1 Introduction
La programmation linéaire a depuis longtemps prouvé sa valeur comme un modèle
important pour de nombreux problèmes d’allocation et des phénomènes économiques.
Les applications en expansion continue dans la littérature, a démontré à maintes reprises
l’importance de la programmation linéaire comme un cadre général pour la formulation
de problèmes.

2.2 Programmation linéaire


Un programme linéaire (P L) est un problème d’optimisation dans lequel la fonction
objectif est linéaire en les inconnues ou variables, et les contraintes se composent d’égalités
et inégalités linéaires. La forme exacte de ces contraintes peut différer d’un problème à
l’autre.[2],[14].

2.2.1 Forme générale d’un programme linéaire


Le problème général de programmation linéaire est la recherche de l’optimum (maxi-
mum ou minimum) d’une fonction linéaire de n variables xj (j = 1, ..., n) liées par des
équations et/ou inéquations appelées contraintes.

22
La formulation mathématique d’un tel problème étant la suivante :

Xn
Optimiser z = cj x j (1)






 j=1

 Xn

aij xj ≤ bi i ∈ I ⊆ {1, ..., m} (2)





 j=1

n
(P ) X (2.1)

 akj xj ≥ bk k ∈ K ⊆ {1, ..., m} (3)


 j=1


 Xn
arj xj = br r ∈ R ⊆ {1, ..., m} (4)







 j=1
xj ∈ R + j = {1, ..., n} (5)

Où :
- xj : variables de décision : elles décrivent les inconnus du problème et représentent des
quantités utiles sur lesquelles des décisions seront prisent.

(1) fonction objectif : constitue la fonction à optimiser( Minimiser ou Maximiser selon


le problème traité) l’objectif à atteindre.

(2), (3), (4) contraintes :elles regroupent toutes les restrictions et conditions imposées
au problème posé sous forme d’inégalités où d’égalités.
Avec :aij , b, cj sont des constantes.

(5) contrainte de non négativité.

• Les ensembles I, K, et R sont disjoints et I ∪ K ∪ R = 1, ..., m.

2.2.2 Forme canonique et forme standard


Les deux programmes linéaires :

X n 
X n
M ax z = cj x j M ax z = cj x j

 


 

 

 j=1 
 j=1
n n
(P C) X (P S) X (2.2)

 aij xj ≤ bi i = 1, m 
 aij xj = bi i = 1, m
 


 j=1 

 j=1
xj ≥ 0 j = 1, m xj ≥ 0 j = 1, m
 

sont écrits sous forme canonique et sous forme standard respectivement.

Remarque : Tout programme linéaire peut être écrit sous forme canonique ou sous
forme standard.

23
La complexité :

La difficulté d’un problème découle de l’efficacité des algorithmes de résolution qu’on


peut lui appliquer. La complexité d’un algorithme évalue un majorant du nombre d’opérations
élémentaires, comme une fonction de la taille des données, qu’on doit effectuer, dans le
pire des cas, pour obtenir le résultat escompté. Un algorithme est dit polynomial s’il est
de complexité polynomiale. Un algorithme qui n’est pas polynomial est dit exponentiel.
Un problème de reconnaissance est un problème dont les résultats ne peuvent prendre
que deux valeurs Vrai ou Faux. A chaque problème d’optimisation combinatoire on peut
associer un problème de reconnaissance. On montre qu’un problème d’optimisation com-
binatoire est au moins aussi difficile que le problème de reconnaissance associé.
On distingue deux types de problèmes de reconnaissance :
- ceux qui peuvent être résolus en temps polynomial en la taille des données (classe P).
- ceux pour lesquels on peut vérifier un certificat donnant la solution, en temps polynomial
en la taille des données (classe NP : Non déterministe Polynomial).
On a alors : P ⊆ NP.
Les problèmes NP-complets sont les problèmes les plus difficiles de la classe NP et sont
équivalents entre eux quant à l’existence d’un algorithme polynomial : si on connaissait
un algorithme polynomial pour l’un d’entre eux, on en connaı̂trait un pour tout problème
de la classe, et on aurait l’égalité P = NP (ce qui est très improbable). Contrairement
au problème (PL) qui est dans la classe P, le problème de la programmation linéaire en
nombres entiers (PLNE) est dans la classe NP-complet [14],[2].

2.3 Programmation linéaire en nombres entiers


Une solution optimale de programme linéaire comportera généralement des compo-
santes frationnaires. Pour certains problèmes une telle solution n’est pas admissible. On
devra dans ce cas imposer aux variables des contraintes supplémentaires (dites contraintes
d’intégrité) : xj entier pour j = 1, n..
Le problème deviendra donc :
(
M axz = cx
(Q) (2.3)
x∈D

Où :
• D = {x ∈ Zn |Ax = b, x ≥ 0} avec Z l’ensemble des nombres entiers relatifs. Un tel
problème est appelé programme linéaire en nombres entiers.

Si les variables ne peuvent prendre que les valeurs 0 ou 1, le programme est linéaire à
variables bivalentes [10], [14].

24
2.3.1 Résolution d’un programme linéaire à variables entières
Les principales familles de méthodes exactes (donne une solution optimale) actuelle-
ment connues pour résoudre les problèmes de programmation linéaire en nombres entiers
sont les méthodes de coupes et les méthodes arborescentes.

Méthode des coupes

Les méthodes de coupes introduites par Gomory sont basées sur l’idée de simplifier
la résolution d’un problème en relaxant certaines de ses contraintes, généralement les
contraintes d’intégrité. Si la solution optimale du problème relaxé est une solution valide
pour le problème original, alors elle est l’optimum recherché. Sinon, il existe certainement
des contraintes du problème initial qui sont violées par la solution courante [7].
Il faut donc trouver un sous-ensemble de ces contraintes alors appelées coupes, puis le
résoudre à nouveau. La procédure se poursuit jusqu’à ce que la solution obtenue soit
réalisable pour le problème original, ou alors que les procédures d’identification de coupes
n’arrivent plus à trouver de contraintes violées. Dans ce dernier cas, le coût de la dernière
solution trouvée est une borne inférieure du coût optimal s’il s’agit d’un problème de
minimisation, ou alors une borne supérieure dans le cas contraire.

Méthode séparation et évaluation (Branch and Bound)

La méthode par séparation et évaluation (Branch and Bound) est très efficace pour
la résolution des problèmes de programmation linéaire en nombres entiers. Elle a été à
l’origine développée par Land et Doig [6] pour résoudre un problème de programmation
linéaire en nombres entiers et a été modifiée plus tard par Dakin [3].
Une approche naı̈ve pour résoudre un problème de programmation linéaire en nombres
entiers est d’énumérer tous les points entiers réalisables du problème, d’évaluer la fonc-
tion objectif en chaque point et d’identifier celui qui a la meilleure valeur de fonction
objectif. Bien qu’une recherche si approfondie dans l’espace des solutions réalisables soit
simple de mettre en oeuvre, elle sera très coûteuse en terme de temps de calcul même
pour des problèmes de taille réduite. La méthode par séparation et évaluation peut être
considérée comme une méthode d’énumération raffinée dans laquelle plusieurs points en-
tiers réalisables sont écartés sans les évaluer. Son principe repose sur trois notions dis-
tinctes : séparation du problème principal, relaxation des sous problèmes et stérilisation
de l’arbre de recherche.

25
graphiquement par un arbre. C’est de cette représentation que vient le nom de méthode
de recherche arborescente .
- Chaque sous-problème créé au cours de l’exploration est symbolisé par un noeud de
l’arbre (ou sommet), le noeud racine représentant le problème initial.
- Les branches de l’arbre symbolisent le processus de séparation, ils représentent la relation
entre les noeuds.
- Les noeuds non séparés sont appelés noeuds pendants.(S1, S2, S3)
Comme dans l’exemple ci-dessous :

Figure 2.1 – Exemple : séparation et évaluation

Méthode branch and cut

Cette méthode couple la méthode par séparation et évaluation avec des coupes pour
résoudre des programmes linéaires en nombres entiers ou mixtes [8].
Le principe est de résoudre la relaxation continue du programme linéaire en nombres en-
tiers à l’aide de l’algorithme du simplexe. Si la solution optimale du problème relaxé n’est
pas entière, on construit une coupe (ou plusieurs) à partir du tableau optimal du simplexe
qu’on rajoute à ce dernier et on optimise de nouveau le tableau du simplexe obtenu. On
répète ce procédé jusqu’à ce qu’une solution entière, soit trouvée, (solution optimale dans
le cas d’un PLNE), ou un test d’arrêt est vérifié. A cette étape, si on n’a pas encore trouvé
de solution entière, alors la partie séparation et évaluation de l’algorithme commence.

2.3.2 Problème d’affectation


Soit N1 et N2 deux ensembles de même cardinal (|N1 | = |N1 | = n) et A ⊂ N1 × N2
une collection de couples de nœuds représentant toutes les affectations possibles. A chaque
couple (i, j) ∈ A tel que i ∈ N1 et j ∈ N2 , on associe un coût cij .

26
L’objectif du problème d’affectation est alors de trouver une affectation de coût minimum
tel que chaque élément i ∈ N1 est affecté à un et un seul élément j ∈ N2 .
Posons xij une variable bivalente telle que xij = 1 si le nœud i ∈ N1 est affecté au nœud
j ∈ N2 , et telle que xij = 0 sinon.[9]

Formulation du problème

On peut donc modéliser le problème d’affectation sous la forme de programme linéaire


standard :
 n X
X n
M in z = cij xij






 i=1 j=1


 n
X
xij = 1 ∀i = 1, n (1)


(P A) j=1
(2.4)
n


 X
xij = 1 ∀i = 1, n (2)





i=1



xij ∈ {0, 1} ∀i = 1, n, j = 1, n

Où :
- cij : Matrice des coûts d’affectation.
Contraintes :
- Les contraintes (1) imposent qu’un un élément i ∈ N1 est affecté à exactement un
élément j ∈ N2
- Les contraintes (2) imposent qu’un un élément j ∈ N2 est affecté à exactement un
élément i ∈ N1

Méthode hongroise
L’algorithme Hongrois [Kuhn (1955)] résout le problème d’affectation en temps poly-
nomial O(n4 ).

Le problème résolu par l’algorithme hongrois s’énonce dans sa formulation initiale


comme suit :

Soit une matrice non négative n × n, où l’élément dans la ième ligne et la j ème colonne
représente le coût de l’attribution de la source j au destination i. Nous devons trouver
une affectation qui a un coût minimum.
Cet algorithme, sert à résoudre les problèmes d’affectation, considérant une matrice n ×
n, en choisissant un seul élément par ligne et par colonne de façon à rendre la somme
minimale.

27
Algorithme

1. Réduction du tableau initial : on soustrait à chaque ligne du tableau initial, le


plus petit élément de la ligne, on fait de même avec les colonnes ;

2. Encadrer et barrer des zéros : on cherche la ligne comportant le moins de zéros


non barrés (en cas d’égalité, choisir arbitrairement la plus haute). On encadre un des zéros
de cette ligne (arbitrairement le plus à gauche). On barre tous les zéros se trouvant sur
la même ligne ou sur la même colonne que le zéro encadré. On recommence l’opération
jusqu’à ce qu’on ne puisse plus encadrer, ni barrer de zéros. Si l’on a encadré un zéro par
ligne et par colonne, c’est terminé, on a la solution optimale Sinon, on passe à l’étape 3 ;

3. Marquer et barrer des lignes et des colonnes :


a) On marque toutes les lignes ne contenant aucun zéro encadré ;
b) On marque toute colonne ayant un zéro barré sur une ligne marquée ;
c) On marque toute ligne ayant un zéro encadré dans une colonne marquée ;
On répète alternativement les opérations b) et c) jusqu’à ne plus pouvoir marquer de
rangée. On trace alors un trait sur toute ligne non marquée et sur toute colonne marquée ;

4. Modification du tableau : les cases non traversées par un trait constituent un


tableau partiel, on retranche à toutes les cases de ce tableau partiel le plus petit élément
de celui-ci, on ajoute ce même élément à toutes les cases du tableau initial barrées deux
fois. On obtient alors un nouveau tableau sur lequel on pourra répéter la succession des
étapes 2 à 4 jusqu’à obtenir un résultat optimal. [5]

2.4 Programmation multi-objectif


L’introduction des problèmes de la programmation linéaire multi-objectif à variables
entières a permis d’élargir considérablement le champ d’application du monde réel de la
programmation linéaire. En effet, très souvent, un seul critère ne suffit pas pour décrit
avec précision les objectifs fixés par les décideurs. Même une combinaison linéaire des ob-
jectifs peut ne pas générer une solution qui satisfait les besoins des décideurs. Ainsi, pour
la plupart des problèmes pratiques, plusieurs objectifs contradictoires doivent être pris en
compte simultanément ; l’amélioration de l’un induit une détérioration d’un autre. Dans
de tels problèmes on ne s’intéresse pas à la recherche de solutions optimales comme pour
un problème de la programmation linéaire en nombres entiers (PLNE), mais plutôt à trou-
ver un ensemble de solutions de compromis qui pourraient satisfaire aux exigences fixées
par les décideurs, et à partir duquel ils peuvent choisir une solution. Dans les problèmes
multi-objectif on ne parle plus de solutions optimales, mais plutôt de solutions efficaces
réalisant un bon compromis.

28
2.4.1 Forme générale d’un programme multi-objectif
Un problème de la programmation linéaire multi-objectif en nombres entiers peut être
formulé comme suit [2] :




 M ax z1 = c1 x




 M ax z2 = c2 x



 .

.




(M OP ) . (2.5)

M ax zk = ck x








 Ax ≤ b




 x≥0

 x vecteur entier
où :
ci un vecteur ligne de Rn pour tout i = 1, ..., k ;
A est une matrice m × n,
b un m-vecteur à coefficients entiers.

Dans la littérature, plusieurs approches de résolution du problème de la programma-


tion multi-objectif sont considérées. Dans les méthodes d’optimisation à priori, on fixe à
l’avance un compromis entre les objectifs. On résout alors un programme dont l’objectif
est une agrégation de tous les objectifs du problème initial. Cependant, la modélisation
du compromis n’est pas toujours facile et si la solution trouvée n’est pas satisfaisante, on
doit résoudre de nouveau le problème avec un autre compromis [2].

2.5 Conclusion :
Concernant la résolution du problème, vu que on a des données très importantes à
prendre en considération qui sont de type qualitatifs, on a jugé bon d’utiliser les méthodes
d’analyse multicritère et d’aide à la décision, avec quoi on peut utilisé les critères quali-
tatifs pour ne pas perdre la qualité de la solution.

29
CHAPITRE 3

ANALYSE MULTICRITÈRE

3.1 Introduction
Parmi les branches de la recherche opérationnelle on trouve l’analyse multicritère qui
est une branche majeur, vise à fournir des outils qui permettront de progresser dans
la résolution d’un problème de décision où plusieurs objectifs, souvent contradictoires,
doivent être pris en compte.

3.2 Aide multicritères


Philippe Vinckea défini l’aide multicritère ainsi : ”L’aide multicritère à la décision vise,
comme son nom l’indique, à fournir à un décideur des outils lui permettant de progresser
dans la résolution du problème de décision à plusieurs points de vue, souvent contradic-
toires, doivent être pris en compte [1].
Pour Bouyssou, l’argument réaliste selon lequel la réalité étant multidimensionnelle, il est
naturel que l’on prenne en compte plusieurs points de vue pour aider à la décision et
donc qu’on utilise des méthodes multicritères, ne peut à lui seul justifier d’adopter une
démarche multicritère pour aider à la décision. Utiliser un tel argument conduirait à voir
le monocritère comme un cas limite et dégénéré du multicritère [15]. L’aide multicritère à
la décision ceuvre à apporter un éclairage et des explications à une catégorie de problèmes
où :

• Plusieurs critères quantitatifs et qualitatifs sont pris en considération ; qui sont :


- souvent hétérogènes ;
- généralement conflictuels ;
- généralement considérés d’inégale importance [16].

30
3.3 Objectif de l’aide multicritères
On utilise l’aide multicrière afin de :

• Contribuer à prendre une décision ou à évaluer plusieurs options (finies) dans des
situations où aucune possibilité n’est parfaite,
• Permettre de concilier les aspects incommensurables : économiques, de design, tech-
nologiques, environnementaux, sociaux, ...

On peut l’appliquer par exemple pour choisir un moyen de transport ou bien choisir
d’acheter un tel ou tel téléphone( ordinateur, tablette,...), prendre une décision d’inves-
tissement,...ect.

3.4 Terminologies
Pour introduire quelques méthodes d’aide à la décision multicritères on doit d’abord
définir ce qui suit : [18],[4]

3.4.1 Action
Le terme action est utilisé pour représenter l’objet de la décision. L’ensemble A des
actions est défini explicitement.
A = {ai, i = 1...n}.
A est un ensemble fini.

3.4.2 Critère
Le terme critère représente une fonction cj (j = 1, ..., k) qui associe à toute action ai
une valeur cj (ai ) : c’est l’évaluation de l’action ai selon le point de vue cj .
Chaque critère est de type quantitatif ou qualitatif et à maximiser ou à minimiser.

On dit la famille des critère es cohérente si elle vérifie les conditions suivantes :

• Exhaustivité :
les critères doivent permettre d’ordonner deux actions a et b :
∀a, b ∈ A, ∀j = 1...k ; cj (a) = cj (b) les actions a et b sont indifférentes.

Cela signifie qu’il est impossible de différencier entre les actions a et b dans un modèle
de préférences globales fondées sur F .

31
• Cohérence :
les critères doivent être cohérents, i.e. ; monotones :
Si ∀j = 1...k ; cj (a) ≥ cj (b) alors laction a est au moins aussi bonne que b.

• Non redondance :
Aucun critère n’est superflu.

3.4.3 Poids
Dans la plupart des méthodes un poids Pj ∈ [0, 1] est associé à chaque critère avec
l’aide de décideur, en vérifiant :

k
X
Pj = 1 pj > 0 ∀j = 1...k,
j=1

Le poids mesure l’importance d’un critère par rapport aux autres du poids.

3.4.4 Performance
Évaluations ou jugements qui représentent les performances de chaque action sur cha-
cun des critères,

eij où i = 1...n, j = 1...k.

3.4.5 Matrice des jugements


E = (eij ) i = 1...n, j = 1...k.

3.4.6 Évaluation des actions


• Si une action a un mauvais score sur tous les critères, on peut l’éliminer
• Une action ai domine une action al si : eij ≥ elj pour tout critère j et si eij0 > elj0
pour au moins un critère j0 .

3.4.7 Problématiques d’aide à la décision


- La problématique de choix : choisir une ou plusieurs ”meilleures actions”.
- La problématique de tri : affecter les actions dans différentes catégories prédéfinies.
- La problématique de rangement : classer les actions dans un ordre de préférence[11].

32
3.5 L’agrégation
Comme le quatrième points de processus de L’approche de résolution de problèmes
multicritères c’est l’agrégation, on va voir quelques méthodes d’analyse multicritère pour
faire une agrégation entre les critère, qui sont celles à utilisé dans la résolution de du
problème.

3.5.1 Weighted Sum Method (WSM)


Également appelée ”la méthode des sommes pondérée”, cette méthode est la plus
simple des méthodes multicritère et la plus utilisée.
Elle requiert que les critères soient quantitatifs, qu’ils aient tous la même unité et qu’ils
s’étendent sur une même échelle ou gamme de valeurs ou qu’ils soient tous normalisés [19].

Cette méthode cherche à agréger les k critères afin de les réduire en un critère unique.
On suppose que les jugements sont transitifs, exp. a>b, b>c alors a>c.

Les étapes :

• Maximiser les critères :


Afin d’avoir une somme pondérée cohérente, il est nécessaire de ne considérer que des
critères à maximiser.
On transforme les critère a minimiser avec cette équation adéquate qui est la suivante :

∀j = 1, ..., k, eij = maxi=1..n eij − eij

• Normalisation des eij :


e
∀i = 1...n, eij Pijeij

• Calculer les sommes pondérées des actions :


k
X
Si = pj ∗ eij ∀ i = 1...n.
j=1

- Les valeurs des Si permet de dresser un classement des actions par ordre de préférence.

- Il est important de noter que la pondération a été fournie par le décideur, vu qu’elle se
calcule par des poids qui répondent à ses préférences personnelles. D’autres pondérations
donneraient des résultats tout à fait différents.

3.5.2 Avantages et inconvénients


- Modèle simple,
- La solution optimale d’une somme pondérée est efficace.

33
Cependant de nombreuses limites existent vis-à-vis de cette méthode, notamment due
à l’interprétation des poids qui prennent en compte :
- L’importance relative des critères,
- Un facteur de normalisation des échelles des critères.

La méthode de la somme pondérée nécessite donc d’avoir des critères comparables et


d’intégrer l’influence de la normalisation préalable.

3.6 La méthode PROMETHEE


La méthode PROMETHEE (Preference Ranking Organisation Méthodes for Enriche-
ment Evaluation) a été proposée pour la première fois en 1982 par Jean Pierre Brans. Elle
fait partie de la famille des méthodes de surclassement value, pour lequel deux traitements
mathématiques particuliers sont proposés : le premier permet de ranger les actions en un
préordre partiel et qui mène à l’incomparabilité (méthode PROMETHEE I), le second
permet de ranger les actions potentielles selon un préordre total (méthode PROMETHEE
II) [18]

D’après Brans, les méthodes PROMETHEE appartiennent à la classe des méthodes


de surclassement et reposent sur les trois étapes suivantes :

1- Enrichissement de la structure de préférence :


Nous allons définir une nouvelle notion, celle de critère généralisé, qui sera définie à partir
d’une fonction de préférence. Cette notion est introduite afin de tenir compte des ampli-
tudes des écarts entre les évaluations sur les différents critères, et également afin d’éliminer
tous les effets d’échelle liés aux unités dans lesquelles les critères sont exprimés.

2- Enrichissement de la relation de dominance :


Une relation de la valeur de surclassement tenant compte de l’ensemble des critères est
proposée et pour chaque paire d’actions, un degré de préférence globale d’une action sur
l’autre sera établi.

3- Aide à la décision :
La relation de surclassement est exploitée en vue d’éclairer le décideur. PROMETHEE I
fournira un rangement partiel des actions, tandis que PROMETHEE II fournit un range-
ment total.

34
3.6.1 Les étapes de la méthode PROMETHEE II :
Dans un problème multicritère les données sont écrites dans une matrice(alternative*critère),tel
que chaque case eij contient la valeur que procure l’alternative i du critère j.

Première étape :

On commence par normaliser la matrice en utilisant une formule propre pour les deux
types de critère (maximisation et minimisation )
Formule pour les critères à maximiser :

eij −min(eij )
Rij = max(eij )−min(eij )
i = 1, ..., n , j = 1, ..., m

Formule pour les critères à minimiser :

max(eij )−(eij )
Rij = max(eij )−min(eij )
i = 1, ..., n , j = 1, ..., m.

Deuxième étape :

Établir les écarts entre les évaluations sur les différents critères (pour voir quelle al-
ternative est la meilleure pour chaque critère).

Troisième étape :

Calculer la fonction de préférence Mj (a, b) tel que :

Mj (a, b) = 0 si Raj ≤ Rbj


Mj (a, b) = (Raj − Rbj ) si Raj > Rbj

Quatrième étape :

Multiplier chaque élément de la matrice M (fonction de préférence) par le poids de son


critère pj avec j = 1...m, puis Calculer la somme de chaque ligne et diviser par la somme
des poids.

Agrégation de la fonction de préférence :

m
X
pj Mj (a, b)
j=1
π(a, b) = m
X
pj
j=1

35
placer toutes ces valeurs dans une matrice (alternatives*alternatives) tel que chaque
élément de la matrice reçois π(a, b) si a diffèrent b, sinon elle sera égale a 0.

Si π(a, b) ≃ 0 faible préférence de ”a” par rapport ”b”.


Si π(a, b) ≃ 1 forte préférence de ”a” par rapport ”b”.

Cinquième étape :

Déterminer les flux positifs et négatifs de profils de préférence :

Le flux positif pour la aème alternative :φ+


Ce flux exprime le caractère surclassant de l’action ”a” face aux (n − 1) autres actions,
c’est-à-dire sa puissance. φ− (a) est d’autant plus grand que a surclasse fortement les
autres actions ;
n
X
+ 1
φ = n−1
π(a, b)(a ̸= b)
b=0

le flux négatif pour la aième alternative :φ−


Ce flux exprime le caractère surclassé de l’action ”a” face aux (n − 1) autres actions ;
c’est-à-dire sa faiblesse. φ− (a) est d’autant moins grand que ”a” est peu surclassé ;
n
X
− 1
φ = n−1
π(b, a)(a ̸= b)
b=0

Sixième étape :

Calculer le flux net pour chaque alternative qui exprime le bilan des flux entrant et
sortant de l’action a, plus φ(a) est grand, l’action est meilleure,

φ(a) = φ+ (a) − φ− (a)

on range alors les alternatives selon leurs flux net du plus grand au plus petit et donc
celle avec la plus grande valeur est considérée comme le meilleur choix a faire.

3.7 Analyse Hiérarchique des Procédés (AHP)


L’AHP a été développée par Thomas SAATY (1980), elle constitue une technique
structurée pour traiter des décisions complexes. Plutôt que de donner une solution exacte
(optimale). Cette méthode aide le décideur à trouver une solution qui correspond à ses
préférences et à sa compréhension de la situation et à déterminer une pondération des
critères. [12][13]

36
Les différentes étapes de l’AHP

1- Remplir la matrice de comparaison (critère-critère) :

La matrice de comparaisons par paires pour chaque critère, doit être remplie en utili-
sant une échelle de comparaison allant de 1 à 9, qui s’appelle l’échelle de Saaty.
Saaty a noté et justifié une utilisation fréquente d’une échelle numérique de comparaison,
bien adaptée à la méthode AHP.

Cette échelle, qui apparaı̂t dans les aspects quantitatifs de la psychologie comporte-
mentale, est présentée ci-dessous :

1
Remarque :pour la réciproque eij = eij
.

2- Déterminer le vecteur priorité :

C’est le vecteur des poids qui est correspondant à la plus grande valeur propre de la
matrice des comparaisons,

37
2-1- Normaliser les eij :

e
∀i =1...n, eij = Pij
eij

Pour chaque matrice de comparaisons par paire, de chaque critère, faire :

2-2- Pour chaque colonne calculer la somme de chaque ligne,

2-3- Diviser chaque élément de la matrice par la somme de la colonne associé,

2-4- Additionner les éléments de chaque vecteur ligne obtenue. On obtient ainsi, le
vecteur propre principal.

2-5- Le vecteur de priorité (ou poids des critères) s’obtient alors, en divisant le vecteur
propre principal par le nombre de critère.

Calcul de la cohérence :

Compte tenu du fait que les valeurs eij des évaluations des matrices de comparaisons
par paire sont sujettes à des fluctuations à cause d’incohérences dans le jugement, elles
peuvent induire des résultats incohérents. A cet effet, le Professeur Saaty a donné une
mesure de cohérence, appelée indice de Cohérence sous forme d’écart ou de degré de
cohérence, à l’aide de la formule suivante :

IC = maxn
n1

où λmax est la valeur propre principale de la matrice de comparaison par paire et n est le
nombre d’éléments comparés.
avec :

λmax = ni=1 ( ni=1 eij * valeur prioritéj )/n


P P

Connaissant l’indice de Cohérence, la question suivante est de savoir comment utiliser


cet indice. Saaty a proposé que nous utilisions cet indice en le comparant à celui qui
convient.

L’indice de Cohérence approprié est appelé indice de cohérence aléatoire (IA).


Pour l’estimer, il a généré de manière aléatoire des matrices à l’aide de l’échelle 1/9,
1/8,..., 1,..., 8, 9. L’indice de cohérence aléatoire moyen des matrices, dont la taille de
l’échantillon est 500, est indiqué dans le tableau ci-dessous.

n 1 2 3 4 5 6 7 8 9 10
IA 0 0 0.58 0.90 1.12 1.24 1.32 1.41 1.45 1.49

38
Le Ratio de cohérence est donné par :

RC = IC
IA

si RC > 0.10, on en conclut que le vecteur de priorité des critères est incohérent et,
par conséquent, il faut revoir les valeurs de la matrice de comparaisons des critères, et
recalculer le vecteur de priorité des critères jusqu’à ce que le Ratio de Cohérence RC soit
inférieur strictement à 0.10.
RC doit être aussi calculé pour chacun des vecteurs de priorités du niveau 1 et testé par
rapport à la valeur 0.10.

3.8 Conclusion :
Ces méthodes seront la base de la méthode de résolution adoptée pour notre problème
qui sera bien défini en détaille dans la suite de ce mémoire.

39
CHAPITRE 4

FORMULATION MATHÉMATIQUE

4.1 Introduction
Le procédé par lequel nous utilisons des expressions mathématiques pour décrire une
situation quantitative réelle s’appelle la modélisation. Modéliser consiste à écrir en nota-
tion mathématique ce qui est exprimé d’abord en mots en faisant intervenir des variables
au besoin.
D’ailleurs ce chapitre que nous allons présenter illustre une modélisation mathématique
qui modélise le problème étudié.

4.2 Modélisation
4.2.1 Données
Ensembles

- P :ensemble des puits à forer, P={P1 , P2 , ..., Pn }

- R : ensemble des appareils ”Rigs”, R={R1 , R2 , ..., Rm }

- L : ensemble des puits non livrés durant l’exercice précédent. C’est des puits dont
l’opération de forage ne s’est pas achevée durant l’exercice précédent.

40
Indices

- i, j, o : pour indiquer les puits, i, j ∈ P ,

- k : Pour indiquer un Rig, k ∈ R,

- lk : désigne le dernier puits foré par l’appareil k dans l’exercice précèdent, lk ∈ L.

Paramètres

- T : la durée d’un exercice,

- Dij : la distance entre les puits i et j,

- T Fik : le temps de forage du puits i par l’appareil k,

- T Dijk : temps de déplacement de l’appareil k du puits i au j,

- T F Rlk : temps de forage restant à l’appareil k sur le puits lk de l’exercice précèdent,

- CTijk : coût de transport de l’appareil k du puits i au puits j,

- CFik : coût de forage du puits j par l’appareil k,



′ ′ ′
 1 si l appareil k se trouve en état d activité en début de période de l exercice courant,

- Ak = k = 1, ..., m

0 sinon



 1 si l appareil k est compatible avec le puits i,

- Bik = i = 1, ..., n , k = 1, ..., m

0 sinon

4.2.2 Variables


 1 si le puits j est f oré immédiatement après le puits i par l appareil k,

- xijk = i = 1, ..., n , j = 1, ..., n , k = 1, ..., m

0 sinon

41
4.2.3 Les fonctions objectif
• Minimiser la distance,
m X
X n X
n
M in z1 = (Dij ∗ xijk )
k=1 i=1 j=1
i̸=j i̸=j

• Minimiser le coût,
m X
X n X
n
M in z2 = (CTijk + CFjk )xijk
k=1 i=1 j=1
i̸=j i̸=j

• Maximiser les puits à forer,


m X
X n X
n
M ax z3 = (xijk )
k=1 i=1 j=1
i̸=j i̸=j

4.2.4 Les contraintes


• Chaque puits doit être foré une seule fois par un seul appareil,

m X
X n
xijk = 1 ∀i = 1...n
k=1 j=1
i̸=j

• Un appareil se déplace dans un seul sens entre deux puits,

xijk + xjik ≤ 1 ∀i, j = 1...n et i ̸= j ∀k = 1, ..., m

• Le déplacement de l’appareil,

xiik = 0 ∀i = 1...n et ∀k = 1...m,

• Contraint qui indique que chaque appareil affecté à a un puits doit en ressortir pour
garantir la continuité de la tournée,

n
X n
X
xiok = xojk ∀o = 1...n et ∀k = 1...m
i=1 j=1
o̸=i o̸=j

• Contrainte de compatibilité des appareils et des puits, C’est à dire qu’on ne peut
pas affecter un appareil de classe inférieure à la classe du puits,

0 ≤ xijk ≤ Bik ∗ Bjk ∀i, j = 1...n et k = 1...m

42
• Contrainte sur la durée de forage ; il faut affecter chaque appareil successivement à
un certain nombre de puits dans un intervalle de temps T.

n
X n X
X n
T F Rlk ∗ Ak + ( T Dlk ik + T Fik )xlik + (T Dijk + T Fjk )xijk ≤ T, ∀k = 1...m
i=1 i=1 j=1
i̸=j i̸=j

4.2.5 Le modèle mathématique


 m X
X n X
n
minz1 = (Dij ∗ xijk )






 k=1 i=1 j=1

 i̸=j i̸=j
m X
n X
n



 X



 Min z2 = (CTijk + CFjk )xijk
k=1 i=1 j=1



 i̸=j i̸=j

 m X
n X
n

 X



 max z3 = (xijk )

 k=1 i=1 j=1
i̸=j

 i̸=j

 m X
n

 X
xijk = 1 ∀i = 1...n (1)




(P L) k=1 j=1
i̸=j

xijk + xjik ≤ 1 ∀i, j = 1...n et i ̸= j ∀k = 1, ..., m (2)





xiik = 0 ∀i = 1...n et ∀k=1...m (3)





 Xn Xn




 xiok = xojk ∀o = 1...n et ∀k = 1...m (4)

 i=1 j=1

 o̸=i o̸=j


0 ≤ xijk ≤ Bik ∗ Bjk ∀i, j = 1...n et k = 1...m (5)





 Xn n X
X n

TFRlk ∗ Ak + ( T Dlk ik + T Fik )xlik + (T Dijk + T Fjk )xijk ≤ T, ∀k = 1...m (6)





 i=1 i=1 j=1

 i̸=j i̸=j


xijk ∈ {0, 1} (7)

43
4.3 Taille du modèle mathématique
Nombre de variables :

Le nombre de variables est : |P |.|P |.|R|=n2 .m

Nombre de contraintes :

Nous avons :
- le nombre de contraintes de type (1) = 1−n
- le nombre de contraintes de type (2) = n2 .m
- le nombre de contraintes de type (3) = n.m
- le nombre de contraintes de type (4) = n.m
- le nombre de contraintes de type (5) = n2 .m
- le nombre de contraintes de type (6) = m

Le nombre de contraintes est : m(2n2 + 2n + 1) + 1 − n

- Pour une instance réaliste : n=200 et m=50 alors :


Le nombre de variables = 2 000 000
Le nombre de contraintes = 4 019 851

4.4 Conclusion
Après la conception du modèle, il nous a été communiqué que beaucoup de critères
manquaient. Il s’agit de critères mesurant caractéristiques relatives aux puits et aux ma-
chines qu’on doit prendre en considération. A cet effet, et compte tenu de la nature
qualitative de certains critères, l’approche analyse multicritère s’avère mieux adaptée à
notre problème.

44
CHAPITRE 5

APPROCHE DE RÉSOLUTION

5.1 Introduction
A l’aide de la recherche opérationnelle, on a conçu un outil d’aide à la décision qui
permet d’établir un planning de forage selon les différentes situations envisageables en
tenant compte des différents aspects cités dans la problématique.
De par la nature du problème, plusieurs critères sont à considérer pour l’affectation d’un
rig à un puits, entre autres ; profondeur du puits, nature du puits, priorité accordée au
puits, l’état d’un rig, sa puissance, etc.
Comme beaucoup de critères sont à caractère qualitatif, il convient d’utiliser des méthodes
de l’analyse multicritère, après avoir énuméré l’ensemble des critères adéquats.

5.2 Méthode de résolution


5.2.1 Description de la méthode
Le problème général est d’établir un planning de forage avec une affectation des rigs
aux puits à forer en respectant entre autres contraintes, celles qui sont propres aux ca-
ractéristiques des rigs et des puits simultanément, dans le but d’atteindre les objectifs du
décideur. Ce planning fera l’objet d’un programme à exécuter pour un exercice donné (en
général une année). On y mentionnera tous les puits programmés à forer avec leurs dates
de début de forage, fin de forage et le rig qui exécutera le forage.

Afin de pouvoir résoudre le problème et dresser un planning de déroulement des fo-


rages qui a pour résultat essentiel le traitement de tous les puits programmés pour le
forage dans l’exercice courent, on doit tenir compte de tous les critères adéquats, aussi
bien quantitatifs que qualitatifs. Pour ce faire, on a adopté une méthode de résolution qui
est divisée en trois parties essentielles :

45
• La pondération des critères.

• L’agrégation des critères pour chaque alternative.

• L’affectation des rigs aux puits.

5.2.2 Pondération des critères


Les données sont représentés par des critères (caractéristiques) de chaque puits et
chaque rig, ainsi que le couple rig-puits qui sont les suivants :
• Critères sur les puits :
- type,
- nature,
- ordre de priorité,
- profondeur,
- durée de forage.

• Critères sur rigs :


- puissance (hours power),
- état.

• Critères de couple rig-puits :


- distance qui les sépare,
- durées de DTM.

Comparaison par paire des critères :

La méthode AHP est une méthode d’analyse multi-critère, qui consiste à faire la com-
paraison par paire des critères. Cette comparaison se fait grâce à une matrice d’évaluation
des critères par paire. Pour ce faire, on fait intervenir le décideur pour le choix des valeurs
d’évaluation en se basant sur l’échelle de Saaty.

Le but recherché étant de fait ressortir le vecteur des poids des critères, qui est
nécessaire pour la mise en oeuvre de la suite de la procédure.

La fiabilité des valeurs obtenues de ces poids est vérifié selon un test de cohérence qui
se fait avec le calcul de cohérence et le ratio de cohérence (RC) de Saaty.
(si RC > 0.1 : revoir les préférence de la comparaison )

46
5.2.3 Agrégation des critères pour chaque alternative
Après l’obtention des poids de chaque critère grâce à la méthode AHP, on doit déterminé
une agrégation de tous ces derniers avec une autre méthode d’analyse multi-critère, une
agrégation qui va nous aider à mesurer l’utilité que le décideur peut tirer de chacune
des alternatives en considérant tous les critères. Parmi les multiples méthodes d’aide à la
décision multi-critère, on a choisi d’utiliser deux méthodes différentes, WSM et PPRO-
METHEE II.

5.2.4 Affectation des rigs aux puits


Le résultat obtenu de la section précédente, sera un coût agrégé des critères considérés,
de l’affectation d’un rig à un puits. Ce qui nous ramène à un problème d’affectation simple
des rigs aux puits, dont la résolution fait appel à la méthode hongroise.

Avant d’appliquer la méthode hongroise, on doit passer d’abord par un teste de com-
patibilité pour les couples, c’est à dire si un rig peut foré le puits ou non. On mets alors,
une condition que :
- si un puits donné ne peut pas être foré par un certain rig, on lui attribue une valeur M
très petite pour interdire l’affectation. La valeur de M est très petite car on a un problème
de maximisation.
- sinon on laisse la valeur trouvé par l’agrégation.

Application de la méthode hongroise :

La méthode hongroise exige pour sont utilisation une matrice carré. On ajoute alors
un certain nombre de rigs fictifs qui va être égale au (nombre de puits - le nombre de rigs
disponibles), car généralement, le nombre de puits est très grand par rapport au nombre
de rigs, qui vont prendre la valeur 0 dans la matrice.

La matrice des coûts (rig-puits) contiendra alors les valeurs trouvés par la méthode
WSM (ou bien PROMETHEE II) pour chaque couple, la valeur M pour les affectations
impossible après avoir utilisé le test de compatibilité, et des 0 pour les appareils fictifs.

47
Figure 5.1 – Exemple d’affectation

En appliquant les étapes de l’algorithme, on trouve une première affectation des rigs
aux puits.
Initialement, en présence de rigs fictifs, certains puits ne seront pas traités. On doit réitérer
le même processus que l’étape initiale pour traiter les puits non encore traités dans les
étapes précédentes, jusqu’au traitement de tous les puits.

Génération de solutions :

Pour donner un plus grand choix de solutions au décideur, on essaie de générer plu-
sieurs solutions, et cela en faisant varier le nombre de rigs utilisés :

• Utiliser le nombre de rigs disponiblse dans le parc,

• Diminuer le nombre de rigs à utiliser :


le choix de suppression se fait par rapport aux rigs :
- qui traitent un seul puits,
- qui traitent un nombre minimum de puits,
- en mauvais état,
- ceux qui risquent de tomber en panne.

• Augmenter le nombre d’appareils à utiliser, on choisissant le nombre et type de rigs


qui conviennent.

48
5.3 Organigramme de la méthode de résolution
L’organigramme suivant résume notre méthodologie de résolution du problème posé :

Figure 5.2 – Organigramme de la méthode

49
CHAPITRE 6

IMPLÉMENTIONS ET RÉSULTATS

6.1 Introduction
Au fil des dernières années, les langages de programmation informatique ont connu un
formidable développement et un très grand nombre de logiciels de programmation ont vu
le jour , d’où la tendance à choisir les logiciels plus spécialisés et plus productifs selon le
domaine. Maintenant et après avoir introduit aux chapitres précédents la méthodologie
de résolution de notre problème, donc pour le réaliser on doit utiliser un langage évolué,
notamment pour l’allocation dynamique de la mémoire. Nous avons appliquées dans ce
but un langage de programmation très performant qui est PYTHON. Nous allons par
conséquent, en premier lieu, présenter le langage de programmation utilisé. En second
lieu, nous présentons l’application et son contenu.
Et pour l’évaluation numérique on a utilisé le solveur CPLEX.

6.2 Évaluation numérique


6.2.1 CPLEX :
CPLEX est un outil informatique d’optimisation commercialisé par IBM son acquisi-
tion de l’entreprise ILOG en 2009. Son nom fait référence au langage C et à l’algorithme
du simplexe. Il est composé d’un exécutable (CPLEX interactif) et d’une bibliothèque de
fonctions pouvant s’interfacé avec différents langages de programmation : C, C++, java
..., et qui regroupe un ensembles d’outils de programmation :
- Un langage de modélisation : Le langage OPL(Optimisation Programming Language).
- Deux solveurs IBM ILOG CPLEX pour programmation mathématique.

50
Le modèle mathématique a été évaluer avec le solveur CPLEX sur des petites instances
pour le valider. Cependant, des instances réalistes peuvent atteindre 2 000 000 de variables,
ce qui fait explosé le temps d’exécution, et rend la résolution par une méthode exacte
impossible.

6.2.2 Résolution exacte


Pour testé le modèle mathématique, on a construit une petite instance avec :
- nombre de puits n = 6,
- nombre de rigs m = 3.
Après exécution sous CPLEX, on obtient la solution qui apparaı̂t sur la figure 6.1.

Figure 6.1 – Solution du CPLEX

La solution complète :
x = (((0 0 0),(0 0 0),(0 0 0),(0 0 0),(0 0 1),(0 0 0))
((0 0 0),(0 0 0),(0 0 0),(0 0 0),(0 0 0),(1 0 0))
((0 0 1),(0 0 0),(0 0 0),(0 0 0),(0 0 0),(0 0 0))
((0 0 0),(1 0 0),(0 0 0),(0 0 0),(0 0 0),(0 0 0))
((0 0 0),(0 0 0),(0 0 1),(0 0 0),(0 0 0),(0 0 0))
((0 0 0),(0 0 0),(0 0 0),(1 0 0),(0 0 0),(0 0 0))) ;

51
Lecture de la solution :

Le résultat est donné sous forme de matrice de dimension n × n, les lignes est les
colonnes vont représenter les puits. Les composantes de cette matrice sont sous forme de
vecteurs booléens de dimension m, tels que la valeur à la position k égale à 1, veut dire
que le rig k est affecté au puits de la colonne où il se trouve, après avoir terminer de forer
le puits de la ligne où il se trouve, 0 sinon.

La solution nous donne cette affectation :


• Le rig numéro 1 va forer le puits 4 puis le puits 2 ensuite le puits 6.
• Le rig numéro 3 va forer le puits 3 puis le puits 1 ensuite le puits 5.
• Le rig numéro 2 n’a pas été affecter.

6.2.3 Rapport CPLEX


Après exécution, CPLEX donne le rapport ci-dessous qui indique, entre autres, le
nombre de variables et celui des contraintes du modèle mathématique,la valeur de la
fonction objectif et quelle méthode de résolution il a utilisé.

Figure 6.2 – Statistiques, CPLEX

52
Figure 6.3 – Journal du moteur, CPLEX

En conclusion, le modèle mathématique donne une solution qui est une affectation
des rigs vers des puits à forer, mais cette solution n’est pas une bonne affectation, car ce
modèle ne peut pas prendre en charge les critères qualitatifs, qui sont tout aussi importants
que ceux quantitatifs pour obtenir une bonne affectation.

6.3 Présentation du langage utilisé


6.3.1 Python
Le choix du langage de programmation s’est naturellement porté sur le langage Py-
thon, car est un langage de programmation informatique open source avancé le plus facile
à apprendre, le plus populaire et le plus utilisé grâce à sa flexibilité et son appréciation.

Il est connu pour être un langage orienté objet, structuré, solide et multiplateforme.
Malgré sa simplicité d’utilisation, ce langage peut être utilisé aussi bien pour des projets
les plus complexes, le Scripting et l’automatisation que pour le développement de logiciels
de qualité professionnelle. Il est donc extrêmement polyvalent.

malgré sa polyvalence, Python reste l’un des langages de programmation les plus facile
à apprendre, pour cause, sa syntaxe qui est conçue pour être lisible et directe. Ainsi, les
développeurs passent plus de temps à tenter de résoudre les problèmes qu’à s’attarder sur
des complexités de langage, c’est ce qui permet à un débutant de le comprendre et donc
de commencer à l’apprendre très facilement.

53
PyCharm

Comme il y a plusieurs logiciels qui utilise le Python comme langage de programma-


tion (PyCharm, Qt, Jupiter, visuel studio...), on a choisi parmi eux le logiciel PyCharm.

PyCharm est un IDE complet misant sur la productivité avec des systèmes d’auto-
complétion intelligente, d’analyse de code en temps réel, de refactoring avancé ; l’intégration
d’outils de tests et de debugging ; et une pléthore de raccourcis clavier permettant de
réaliser presque n’importe quelle tâche rapidement.
il permet aux programmeurs d’écrire un meilleur code Python en moins de temps.

Tkinter

Pour faire une application c’est à dire une interface graphique pour le modèle de
résolution on a opté pour la bibliothèque Tkinter qui est une bibliothèque graphique libre
d’origine pour le langage Python, elle permet de crée des interface.

6.4 Présentation de l’application


La première chose la plus importante à faire est d’introduire les données dans des fi-
chiers Excel, un fichier pour les rigs à utiliser avec ses caractéristiques les plus importantes
qui sont : le nom du rig, sa puissance, son état, son coût de location journalier et le forfait
journalier du DTM. Un autre fichier pour les puits à forer qui contient le nom, le type, la
nature, la priorité, la profondeur et la durée de forage.

L’application est représenté comme suit :

54
Figure 6.4 – Fenêtre 1 : accueil

La page d’accueil contient deux boutons :

1- ”Quitter” : permet de fermer l’application.

2- ”Commencer” : permet de rentrer dans une nouvelle fenêtre pour commencer.

En clinquant sur ”commencer” la fenêtre qui suit s’affichera :

Figure 6.5 – Fenêtre 2 : comparaison par paire

55
C’est une fenêtre qui demande à l’utilisateur de remplir la matrice de comparaison par
paire des critères. Une aide lui est proposé pour le remplissage de cette matrice avec le
bouton suivant :
• ”Aide” : affiche le tableau de Saaty pour aider à remplir le tableau, il s’affiche comme
suit :

Figure 6.6 – Fenêtre 3 : aide, table de Saaty

”Quitter” : nous permet de revenir à la fenêtre 2 de comparaison par paire pour rem-
plir le tableau.

• ”Comparaison cohérente” : en cliquant dessus la matrice se remplie automatiquement


avec des valeurs proposées qui nous donne par la suite un vecteur poids cohérent.

56
Figure 6.7 – Fenêtre 4 : proposition des comparaison par pair

Les valeurs peuvent être modifier, ou saisies manuellement selon le choix du décideur.

• ”Tout effacer” : permet d’effacer toutes les valeurs contenues dans la matrice pour
refaire le remplissage.

Une fois le tableau rempli on clique sur :

• ”Calculer les poids” : qui permet de passer au calcule des poids et du ration de
cohérence par la méthode AHP qui seront affichés dans la fenêtre suivante :

Figure 6.8 – Fenêtre 5 : les poids et le ration de cohérence

• ”Aide” : permet d’afficher une nouvelle fenêtre qui donne une explication a propos

57
de la valeur du ration de cohérence et à quoi il doit être égale, et s’affiche comme suit :

Figure 6.9 – Fenêtre 6 : aide

”Quitter” : en cliquant dessus on ferme la fenêtre d’aide et on revient à celle contenant


les poids.

• ”Réévaluer les poids” : ce bouton permet de revenir à la fenêtre précédente, dans le


cas d’insatisfaction du décideur vis-à-vis des poids obtenus afin de refaire la comparaison
par paire des critères.

• ”Accepter les poids” : Pour continuer, on clique sur ce bouton, et la fenêtre suivante
s’affiche :

Cette fenêtre contient deux champs à remplir avec, l’un le chemin d’accès au fichier
puits, et l’autre le fichier rigs, c’est à dire le lien vers les fichiers Excels ou se trouvent les
tableaux qui contiennent toutes les informations nécessaires à propos des puits et des rigs
à utiliser .

une fois le chemin est définis, on choisira la méthode à utiliser pour donner le planning,
avec ces deux boutons suivants :

58
Figure 6.10 – Fenêtre 7 : choix de la méthode

• ”Etablir le planning avec WSM” : donne la solution avec la méthode de WSM.

Figure 6.11 – Fenêtre 8 : le planning obtenu avec la méthode WSM

59
• ”Etablir le planning avec PROMETHEE II” : donne la solution avec la méthode de
PROMETHEE II.

Figure 6.12 – Fenêtre 9 : le planning obtenu avec la méthode PROMETHEE II

C’est résultats contiennent l’affectation rig-puits qu’on a obtenu, avec la date de début
et de fin du DTM et la date début et de fin de forage pour chaque appareil et le coût de
engendrer par cette affectation.
Avec les résultats de ces dernier, le choix de la meilleure solution se fait.

6.5 Exemple numérique


Avec une instance de 3 rigs et 10 puits, on obtient les résultats qui sont affichés dans
les figure 6.11 et 6.12 avec la méthode WSM et PROMETHEE II respectivement.

60
• Discussion des résultats :
On remarque que la méthode WSM entame tous les puits programmés pendant l’exercice
voulu et ne déborde que de quelques jours sur l’année suivante, par contre la méthode
PROMETHEE II nous donne un planning dans lequel on y trouve un puits entamer
pendant l’exercice n+1, ce qui augmente la durée du projet.
On remarque aussi qu’en sommant les coûts de forage la méthode WSM donne un cout
moins important que PROMETHEE II En conclusion la méthode WSM a donné une
meilleure solution que PROMETHEE .

61
Conclusion

Le travail effectuer dans ce projet vise à résoudre un problème proposé par l’entreprise
sonatrach, qui rentre dans le cadre d’établir un planning de forage.

Le problème traité consiste à planifier l’affectation des rigs aux puits durant un exer-
cice donné, en tenant compte de contraintes physiques à même d’assurer la faisabilité du
forage, sans dépassement de la durée de l’exercice.

A l’aide des outils de la recherche opérationnelle, nous avons proposer en premier lieu
une approche de résolution exacte qui est résolue grâce au solveur CPLEX. Cependant,
compte tenu du nombre de variables que contient ce problème dans une instance réaliste
qui peut attendre les 2 000 000 variables, rend la résolution de la méthode exacte im-
possible, Et en deuxième lieu une méthode de résolution approché qui nous a permis de
répondre au mieux à la problématique. Cette méthode, se base sur des méthodes d’analyse
multi-critère(AHP, WSM, PROMETHEE II),et sur la méthode hongrois connue pour la
résolution du problème d’affectation.

Nous avons pu programmer cette méthode grâce au langage de programmation PY-


THON, ce programme nous a permis obtenir un planning qui prend en charge tous les
puits programmés.

Finalement, en étant loin de prétendre que la solution donné est idéale, nous espérant
que notre modeste travail contribuera positivement dans l’amélioration de la qualité de
la solution.

62
BIBLIOGRAPHIE

[1] S. Bellut, Les processus de la décision : démarches, méthodes et outils, 1er Ed,
ANFOR, Paris, 2002.

[2] M. E-A Chergui, Thèse de Doctorat d’état : Contribution à la programmation non


linéaire multicritère, USTHB, 2010.
[3] R. Dakin, A tree search algorithm for mixed integer programming problems, Compu-
ter Journal 8, pp. 250-255, 1965.

[4] R. Faure, B.Lemaire, C. Picouleau, Précis de recherche opérationnelle, DUNOD,


ISBN 978-2-10-052652-9, 2009.

[5] H.W. KUHN, The Hungarian method for the assignment problem , Naval Research
Logistics, vol. 52, pp. 7-21, 50th anniversary reprint, 2005.

[6] A.H. Land and A.G. Doig, An automatic method for solving discrete programming
problems, Econometrica 28, pp. 497-520, 1960.

[7] J. E. Mitchell, Branch-and-cut algorithms for combinatorial optimization problems ,


In : Handbook of applied optimization, p. 65-77, 2002.

[8] G.L. Nemhauser , Wolsey L.A. Integer and combinatorial optimization, Wiley,
Chichester, 1988.

[9] V.T. Pashos, Optimisation combinatoire 1, concepts fondamentaux, Lavoisier, ISBM


2-7462-1038-X, 2005.

63
[10] S.S Rao, Engineering optimization : theory and practice, Wiley, John, Sons, Incor-
porated, 1996.
[11] B.Roy, Multicriteria methodology for decision aiding, volume 12. Springer Science
Business Media, 2013.

[12] T. L. Saaty,The Analytic Hierarchy Process. McGraw-Hill, New York, 1980.


[13] T. L. Saaty, Décider face à la complexité, une approche analytique multicritère d’aide
à la décision. Paris : Entreprise moderne d’édition 1984.
[14] M. Sakarovitch, Optimisation combinatoire, Méthodes mathématiques et algorith-
miques. Tome 1 : Graphes et Programmation Linéaire ; Tome 2 : Programmation
Discrète, Paris, Hermann, 1984.

[15] H. Simon, Rational choise and the structure of environement, Models of bounled
rationality, Cambridge, 1982.

[16] H. Simon , Administration et processus de décision, 1er, Economica, Paris, 1983.

[17] Documents de Sonatrach

[18] J. Teghem, Recherche opérationnelle, TOME 2, ISBN 978-2-7298-82020, Ellipses


Édition Marketing S.A.,2013 32, rue Bargue 75740 Paris cedex 15.

[19] RAPPORT D’ÉTUDE 09/10/2009N° DRC-09-102861-12257A - Convention


ONEMA-INERIS, Panorama des méthodes d’analyse multicritère comme outils d’aide
à la décision, 2009.

64
Résumé

Ce mémoire traite une des problématique rencontrées dans l’activité exploration et


production de la société Sonatrach qui est la planification d’une affectation des rigs aux
puits durant un exercice donné, en tenant compte de contraintes physiques qui assurent
la faisabilité du forage, sans dépassement de la durée de l’exercice, tout en optimisant des
objectifs fixées par l’entreprise.

En vu du nombre restreint des puits et des rigs, ainsi que la présence de plusieurs
critères, aussi bien quantitatifs que qualitatifs, une modélisation sous forme d’un problème
d’analyse multicritère s’était vite avérée intéressante.

Les méthode AHP, WSM et PROMETHEE II sont des méthode d’analyse multi-
critères, qu’on a choisi pour la conception de la méthode de résolution.

Abstract

This thesis deals with one of the problems encountered in the exploration and produc-
tion activity of the company Sonatrach which is the planning of an assignment of rigs to
wells during a given exercise, taking into account physical constraints which ensure the
feasibility of drilling, without overrun. the duration of the exercise, knowing that a rig
may not be available at the start of the exercise, while optimizing the objectives set by
the company.

Given the limited number of wells and rigs, as well as the presence of several contra-
dictory criteria between them, modeling in the form of a multi-criteria analysis problem
quickly proved to be interesting.

The AHP, WSM and PROMETHEE II methods are multi-criteria analysis methods,
which were chosen for the design of the resolution method.

65

Vous aimerez peut-être aussi