0% ont trouvé ce document utile (0 vote)
3 vues14 pages

Document Machine Learning

Le document traite de l'application de l'apprentissage automatique dans l'industrie pétrolière et gazière, en présentant des concepts clés, des types d'apprentissage, et des algorithmes de clustering. Il décrit également un pipeline d'apprentissage, les données et caractéristiques nécessaires, ainsi que des exercices pratiques pour illustrer ces concepts. Enfin, il aborde des techniques de visualisation et d'interprétation des résultats obtenus par le machine learning.

Transféré par

Josh Pierce
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
3 vues14 pages

Document Machine Learning

Le document traite de l'application de l'apprentissage automatique dans l'industrie pétrolière et gazière, en présentant des concepts clés, des types d'apprentissage, et des algorithmes de clustering. Il décrit également un pipeline d'apprentissage, les données et caractéristiques nécessaires, ainsi que des exercices pratiques pour illustrer ces concepts. Enfin, il aborde des techniques de visualisation et d'interprétation des résultats obtenus par le machine learning.

Transféré par

Josh Pierce
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Machine Learning - Oil & Gas 7 mai 2026

Machine Learning
Applications dans l’industrie Pétrole & Gaz

Apprentissage Automatique pour l’énergie

Concepts clés · Pipelines · Clustering


Forage · Production · Géologie

7 mai 2026
Document pédagogique - Version 2025 - Spécial Oil & Gas

1 / 14
Machine Learning - Oil & Gas 7 mai 2026

Table des matières

1 Concepts clés du Machine Learning 3


1.1 Les 5 piliers fondamentaux . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Les données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Les features (caractéristiques) . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Les étiquettes (labels) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5 Le modèle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.6 La généralisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 Phases d’un pipeline d’apprentissage 4


2.1 Visualisation du pipeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 Les 3 phases essentielles . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

3 Types d’apprentissage 5
3.1 Apprentissage supervisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2 Apprentissage non supervisé . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.3 Apprentissage par renforcement . . . . . . . . . . . . . . . . . . . . . . . . 5

4 Apprentissage non supervisé - Clustering 5


4.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.2 Applications courantes en Oil & Gas . . . . . . . . . . . . . . . . . . . . . 6

5 Algorithmes de clustering 6
5.1 K-means . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.1.1 Principe en 5 étapes . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.1.2 Code K-means . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.2 DBSCAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.2.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.2.2 Code DBSCAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5.3 Comparaison K-means vs DBSCAN . . . . . . . . . . . . . . . . . . . . . . 7

6 Visualisation et interprétation 7
6.1 Réduction de dimension avec PCA . . . . . . . . . . . . . . . . . . . . . . 7

7 Exercices corrigés - Contexte Oil & Gas 7


7.1 Exercice 1 : Identifier les composantes - Forage . . . . . . . . . . . . . . . . 7
7.2 Exercice 2 : Choisir l’algorithme - Production . . . . . . . . . . . . . . . . 8
7.3 Exercice 3 : Clustering des formations géologiques . . . . . . . . . . . . . . 8
7.4 Exercice 4 : Détection d’anomalies sur tête de puits . . . . . . . . . . . . . 10
7.5 Exercice 5 : Segmentation de puits pour optimisation de production . . . . 11
7.6 Exercice 6 : Application réelle - Prédiction d’usure de trépan . . . . . . . . 12
7.7 Exercice 7 : Interprétation pédagogique pour un ingénieur pétrolier . . . . 12

8 Résumé visuel - Applications Oil & Gas 13

9 Glossaire spécifique Oil & Gas 13

10 Ressources complémentaires 13

2 / 14
Machine Learning - Oil & Gas 7 mai 2026

1 Concepts clés du Machine Learning

Le Machine Learning (apprentissage automatique) est un domaine de l’intelli-


gence artificielle qui permet aux ordinateurs d’apprendre à partir de données, sans
être explicitement programmés.

Application dans l’industrie Oil & Gas : Le ML permet aujourd’hui de pré-


dire les pannes de pompes, d’optimiser la production, de détecter des anomalies
sismiques et d’anticiper les kick de forage.

1.1 Les 5 piliers fondamentaux

Données Features Étiquettes Modèle Généralisation

1.2 Les données


Les données sont la matière première du machine learning. Elles peuvent être :
— Structurées : tableaux (Excel, CSV, bases de données SQL)
— Non structurées : textes, images, vidéos, sons

Dataset Oil & Gas typique : Journal de forage avec profondeur, taux de péné-
tration, pression en fond, densité de boue, etc.

1.3 Les features (caractéristiques)


Ce sont les variables d’entrée utilisées pour faire des prédictions. On les note géné-
ralement X.

Feature Type Exemple Description


Profondeur (m) Numérique 2500 Profondeur du forage
Taux pénétration (m/h) Numérique 12 ROP (Rate of Penetration)
Pression fond (psi) Numérique 4500 Pression en fond de trou
Densité boue (ppg) Numérique 12.5 Mud weight
Formation Catégoriel "Calcaire" Type de roche traversée

Table 1 – Exemples de features en forage pétrolier

3 / 14
Machine Learning - Oil & Gas 7 mai 2026

1.4 Les étiquettes (labels)


C’est ce qu’on cherche à prédire. On les note généralement y.
— Classification binaire : y ∈ {0, 1} (ex : kick = oui/non, panne = oui/non)
— Classification multi-classe : y ∈ {1, 2, 3} (ex : type de formation rocheuse)
— Régression : y ∈ R (ex : débit de pétrole en barils/jour)

1.5 Le modèle
Un modèle est une fonction mathématique f qui transforme les features en prédic-
tion :
ŷ = f (X)

1.6 La généralisation

La généralisation est la capacité d’un modèle à bien performer sur des données
invisibles (non utilisées pendant l’entraînement).

Attention aux pièges !


— Underfitting : modèle trop simple → mauvais partout
— Overfitting : modèle trop complexe → excellent sur les données d’entraîne-
ment, médiocre sur les nouvelles données

2 Phases d’un pipeline d’apprentissage


2.1 Visualisation du pipeline
Données brutes (logs de forage)

Nettoyage & Normalisation

Entraînement (60%) Division des données Validation (20%)

Test (20%)

4 / 14
Machine Learning - Oil & Gas 7 mai 2026

2.2 Les 3 phases essentielles


1. Entraînement (Training) : 60-70% des données. Le modèle apprend à partir
des exemples.
2. Validation : 15-20% des données. Ajustement des hyperparamètres, préven-
tion de l’overfitting.
3. Test : 15-20% des données. Évaluation finale de la généralisation.

3 Types d’apprentissage
Machine Learning

Supervisé
Non Supervisé
Renforcement

Régression
Clustering
Classification Agent
RéductionEnvironnement
dim.

3.1 Apprentissage supervisé


On dispose des étiquettes (exemples corrigés).

Tâche Exemple Oil & Gas Algorithmes


Classification "Détection de kick (influx de gaz) ?" KNN, SVM, Arbre
Régression "Prédiction du débit de pétrole (bbl/j)" Régression linéaire, RF

3.2 Apprentissage non supervisé


Pas d’étiquettes → on cherche des structures cachées.

3.3 Apprentissage par renforcement


L’agent apprend par essais-erreurs avec récompenses.

Exemples Oil & Gas :


— Optimisation du paramétrage de forage
— Contrôle automatique de vanne de sécurité
— Gestion de production offshore

4 Apprentissage non supervisé - Clustering

5 / 14
Machine Learning - Oil & Gas 7 mai 2026

4.1 Définition

Le clustering (ou partitionnement de données) est une technique qui regroupe des
points similaires entre eux, et dissimilaires des points des autres groupes.

4.2 Applications courantes en Oil & Gas


Segmentation puits Détection d’anomalies (kick)

Classification faciès Regroupement zones production

5 Algorithmes de clustering
5.1 K-means
5.1.1 Principe en 5 étapes
1. Choisir K = nombre de clusters
2. Placer K centroïdes aléatoirement
3. Assigner chaque point au centroïde le plus proche
4. Déplacer chaque centroïde au centre de son cluster
5. Répéter 3-4 jusqu’à convergence

5.1.2 Code K-means


 
from sklearn . cluster import KMeans

# C r a t i o n du m o d l e ( K =3 clusters )
kmeans = KMeans ( n_clusters =3 , random_state =42)

# Entra nement
clusters = kmeans . fit_predict ( X )

# R c u p r e r les centres
centres = kmeans . cluster_centers_
print (f" Centres des clusters :\ n { centres } " )
 

5.2 DBSCAN
5.2.1 Principe
DBSCAN utilise la densité plutôt que la distance aux centres.

6 / 14
Machine Learning - Oil & Gas 7 mai 2026

5.2.2 Code DBSCAN


 
from sklearn . cluster import DBSCAN

# eps = 0.5 , min_samples = 5


dbscan = DBSCAN ( eps =0.5 , min_samples =5)

clusters = dbscan . fit_predict ( X )


# Attention : cluster = -1 signifie " point i s o l / bruit "
 

5.3 Comparaison K-means vs DBSCAN

Critère K-means DBSCAN


Forme des clusters Sphérique Arbitraire
Gère le bruit Non Oui
Choix nb clusters À spécifier Automatique
Sensible aux outliers Oui Non

6 Visualisation et interprétation
6.1 Réduction de dimension avec PCA
 
from sklearn . decomposition import PCA
import matplotlib . pyplot as plt

# R duction 2 dimensions
pca = PCA ( n_components =2)
X_2d = pca . fit_transform ( X )

# Affichage
plt . figure ( figsize =(10 , 6) )
scatter = plt . scatter ( X_2d [: , 0] , X_2d [: , 1] , c = clusters ,
cmap = ’ viridis ’)
plt . colorbar ( scatter , label = ’ Cluster ’)
plt . xlabel ( ’ P r e m i r e composante principale ’)
plt . ylabel ( ’ D e u x i m e composante principale ’)
plt . title ( ’ Visualisation des clusters - P t r o l e & Gaz ’)
plt . show ()
 

7 Exercices corrigés - Contexte Oil & Gas


7.1 Exercice 1 : Identifier les composantes - Forage
Énoncé : Pour une application de prédiction de kick (influx de gaz dangereux) lors
du forage, identifiez :

7 / 14
Machine Learning - Oil & Gas 7 mai 2026

a) Les données
b) Les features
c) Le label
d) Le type d’apprentissage
Corrigé :
— Données : Historique des forages avec incidents de kick
— Features : profondeur, ROP (taux pénétration), pression fond, densité boue, débit
boue retour, température fond, type de formation
— Label : Kick = 1 (présence) / 0 (absence)
— Type : Supervisé - Classification binaire

Pourquoi c’est important ? Un kick non détecté peut causer un blowout (éruption
incontrôlée) avec conséquences humaines et environnementales graves.

7.2 Exercice 2 : Choisir l’algorithme - Production


Énoncé : Pour chaque cas en production pétrolière, choisissez entre K-means et DBS-
CAN :
a) Regrouper 500 puits selon leur courbe de déclin de production (formes sphériques)
b) Détecter des opérations de maintenance anormales (5% des données aberrantes)
c) Identifier des zones de production dans un gisement avec forme de "rivière"
Corrigé :
a) K-means (clusters sphériques, puits similaires)
b) DBSCAN (gère le bruit des anomalies)
c) DBSCAN (formes non sphériques, géologie complexe)

7.3 Exercice 3 : Clustering des formations géologiques


Énoncé : Vous disposez de données de diagraphie (logging) pour 1000 mètres de
forage. Les features sont : résistivité (Ohm.m), densité (g/cc), porosité neutron (%). Faites
un clustering pour identifier les différentes formations rocheuses.
 
import numpy as np
import pandas as pd
from sklearn . cluster import KMeans
from sklearn . preprocessing import StandardScaler
import matplotlib . pyplot as plt

# D o n n e s s i m u l e s ( diagraphie )
np . random . seed (42)
n_samples = 1000

# 3 formations g o l o g i q u e s d i f f r e n t e s

8 / 14
Machine Learning - Oil & Gas 7 mai 2026

formation1 = np . random . normal ([100 , 2.5 , 15] , [20 , 0.2 , 3] , (333 ,


3) ) # Sable
formation2 = np . random . normal ([500 , 2.2 , 8] , [50 , 0.15 , 2] , (333 ,
3) ) # Calcaire
formation3 = np . random . normal ([20 , 2.7 , 2] , [10 , 0.1 , 1] , (334 , 3) )
# Argile

X = np . vstack ([ formation1 , formation2 , formation3 ])

# Normalisation
scaler = StandardScaler ()
X_scaled = scaler . fit_transform ( X )

# M t h o d e du coude pour trouver K optimal


inerties = []
K_range = range (1 , 8)
for k in K_range :
kmeans = KMeans ( n_clusters =k , random_state =42)
kmeans . fit ( X_scaled )
inerties . append ( kmeans . inertia_ )

plt . plot ( K_range , inerties , ’bo - ’)


plt . xlabel ( ’ Nombre de clusters ( K ) ’)
plt . ylabel ( ’ Inertie ’)
plt . title ( ’ M t h o d e du coude - Diagraphie ’)
plt . show ()
# Le coude est K =3 (3 formations )

# Application avec K =3
kmeans = KMeans ( n_clusters =3 , random_state =42)
clusters = kmeans . fit_predict ( X_scaled )

# Visualisation
plt . figure ( figsize =(10 , 6) )
scatter = plt . scatter ( X_scaled [: , 0] , X_scaled [: , 1] , c = clusters ,
cmap = ’ viridis ’)
plt . scatter ( kmeans . cluster_centers_ [: , 0] ,
kmeans . cluster_centers_ [: , 1] ,
s =200 , c = ’ red ’ , marker = ’X ’ , label = ’ C e n t r o d e s ’)
plt . xlabel ( ’ R s i s t i v i t ( n o r m a l i s e ) ’)
plt . ylabel ( ’ D e n s i t ( n o r m a l i s e ) ’)
plt . title ( ’ Clustering des formations g o l o g i q u e s ’)
plt . legend ()
plt . colorbar ( scatter , label = ’ Formation ’)
plt . show ()

# Interpr tation
df = pd . DataFrame (X , columns =[ ’ Resistivite ’ , ’ Densite ’ ,
’ Porosite_neutron ’ ])
df [ ’ cluster ’] = clusters
print ( df . groupby ( ’ cluster ’) . mean () )
 

9 / 14
Machine Learning - Oil & Gas 7 mai 2026

Interprétation des résultats :


— Cluster 0 : Haute résistivité, densité moyenne → Calcaire
— Cluster 1 : Faible résistivité, haute densité → Argile
— Cluster 2 : Résistivité moyenne, densité basse → Sable réservoir

7.4 Exercice 4 : Détection d’anomalies sur tête de puits


Énoncé : Utilisez DBSCAN pour détecter des comportements anormaux sur une tête
de puits de production.
 
from sklearn . cluster import DBSCAN
import numpy as np
import matplotlib . pyplot as plt

# D o n n e s normales de production
np . random . seed (42)
n_normal = 200
pression_norm = np . random . normal (250 , 20 , n_normal ) # pression
en bar
debit_norm = np . random . normal (500 , 50 , n_normal ) # d bit
m3 /j
X_normal = np . column_stack ([ pression_norm , debit_norm ])

# Anomalies ( bouchage , rosion , etc .)


n_anomalies = 15
pression_anom = np . random . uniform (100 , 400 , n_anomalies )
debit_anom = np . random . uniform (0 , 1000 , n_anomalies )
X_anom = np . column_stack ([ pression_anom , debit_anom ])

X_total = np . vstack ([ X_normal , X_anom ])

# DBSCAN
dbscan = DBSCAN ( eps =15 , min_samples =10)
clusters = dbscan . fit_predict ( X_total )

# R sultats
n_bruit = np . sum ( clusters == -1)
print (f" Points normaux : { len ( X_normal ) } " )
print (f" Anomalies d t e c t e s : { n_bruit } " )

# Visualisation
plt . figure ( figsize =(10 , 6) )
plt . scatter ( X_total [ clusters != -1 , 0] , X_total [ clusters != -1 , 1] ,
c = ’ blue ’ , alpha =0.6 , label = ’ Normal ’)
plt . scatter ( X_total [ clusters == -1 , 0] , X_total [ clusters == -1 , 1] ,
c = ’ red ’ , s =100 , marker = ’X ’ , label = ’ Anomalie d t e c t e ’)
plt . xlabel ( ’ Pression t t e puits ( bar ) ’)
plt . ylabel ( ’ D b i t ( m / j ) ’)
plt . title ( ’ D t e c t i o n d \ ’ anomalies - T t e de puits ( DBSCAN ) ’)
plt . legend ()
plt . grid ( True , alpha =0.3)

10 / 14
Machine Learning - Oil & Gas 7 mai 2026

plt . show ()
 

7.5 Exercice 5 : Segmentation de puits pour optimisation de pro-


duction
Énoncé : Un champ pétrolier a 500 puits. Vous disposez des données suivantes par
puits : profondeur totale (m), débit initial (bbl/j), taux d’eau (%), temps de production
(années). Groupez les puits pour définir des stratégies de production adaptées.
 
import pandas as pd
import numpy as np
from sklearn . cluster import KMeans
from sklearn . preprocessing import StandardScaler
import matplotlib . pyplot as plt

# Simulation des d o n n e s
np . random . seed (42)
n_puits = 500

puits_data = pd . DataFrame ({
’ profondeur ’: np . random . choice ([1500 , 2200 , 3100 , 4500] ,
n_puits ) ,
’ debit_initial ’: np . random . exponential (800 , n_puits ) ,
’ taux_eau ’: np . random . beta (2 , 5 , n_puits ) * 100 ,
’ age_production ’: np . random . uniform (0.5 , 25 , n_puits )
})

# Normalisation
scaler = StandardScaler ()
X_scaled = scaler . fit_transform ( puits_data )

# Clustering avec K =4
kmeans = KMeans ( n_clusters =4 , random_state =42)
puits_data [ ’ cluster ’] = kmeans . fit_predict ( X_scaled )

# Analyse des clusters


for i in range (4) :
cluster = puits_data [ puits_data [ ’ cluster ’] == i ]
print ( f " \ n === Cluster { i } : { len ( cluster ) } puits === " )
print ( f " Profondeur moyenne : { cluster [ ’ profondeur ’]. mean () :.0 f }
m" )
print ( f " D b i t initial moyen :
{ cluster [ ’ debit_initial ’]. mean () :.0 f } bbl / j " )
print ( f " Taux eau moyen : { cluster [ ’ taux_eau ’]. mean () :.1 f }% " )
print ( f " ge moyen : { cluster [ ’ age_production ’]. mean () :.1 f }
ans " )

# Recommandations
print ("\n " + " = " *50)
print (" RECOMMANDATIONS S T R A T G I Q U E S " )

11 / 14
Machine Learning - Oil & Gas 7 mai 2026

print ("=" *50)


print (" Cluster 0 Puits jeunes haut d b i t Maintenir
production " )
print (" Cluster 1 Puits vieux haut taux eau tudier abandon
ou EOR " )
print (" Cluster 2 Puits profonds Surveillance haute pression " )
print (" Cluster 3 Puits m a t u r i t moyenne Optimiser lift " )
 

7.6 Exercice 6 : Application réelle - Prédiction d’usure de trépan


Énoncé : Expliquez comment construire un modèle supervisé pour prédire l’usure
d’un trépan de forage.
Corrigé :
1. Collecte des données : Historique des forages avec :
— Features : ROP, poids sur l’outil (WOB), vitesse rotation (RPM), couple, débit
boue, type de formation, heures de forage cumulées
— Label : usure trépan (% ou niveau 1-8 selon IADC)
2. Prétraitement : Nettoyage, normalisation, suppression outliers
3. Modèle : Régression (valeur continue) ou classification (niveaux)
4. Application :
 
from sklearn . ensemble import RandomForestRegressor
from sklearn . model_selection import train_test_split

X = df [[ ’ ROP ’ , ’ WOB ’ , ’ RPM ’ , ’ couple ’ , ’ debit_boue ’ , ’ heures ’ ]]


y = df [ ’ usure_trepan ’]

X_train , X_test , y_train , y_test = train_test_split (X , y ,


test_size =0.2)

model = RandomForestRegressor ( n_estimators =100)


model . fit ( X_train , y_train )
predictions = model . predict ( X_test )
 

5. Bénéfice métier : Le modèle permet de programmer le changement de trépan


avant casse, réduisant les coûts de 15-30%.

7.7 Exercice 7 : Interprétation pédagogique pour un ingénieur


pétrolier
Question : Expliquez le clustering à un ingénieur de production.
Corrigé type :
"Ingénieur, vous avez 200 puits sur votre champ. Chaque puits a des caracté-
ristiques (profondeur, débit, pression, taux d’eau). Le clustering, c’est comme
classifier automatiquement ces puits en familles. L’ordinateur va regrouper les
puits qui se ressemblent sans que vous lui disiez combien de groupes chercher.
À la fin, vous allez voir des groupes naturels : les puits jeunes à haut débit,

12 / 14
Machine Learning - Oil & Gas 7 mai 2026

les puits vieux avec forte eau, les puits profonds, etc. Chaque groupe aura une
stratégie de production différente. C’est un outil d’aide à la décision, pas un
remplacement de votre expertise."

8 Résumé visuel - Applications Oil & Gas


Machine Learning

Supervisé Non Supervisé

ClassificationDétection kickPanne pompe


ClusteringFaciès géologiquesSegmentation puits

Table 2 – Applications concrètes par domaine


Domaine Application Type ML
Forage Prédiction de kick Classification supervisée
Forage Usure trépan Régression
Production Optimisation lift Renforcement
Production Détection bouchage Anomalies (DBSCAN)
Géologie Classification faciès Clustering (K-means)
Géologie Corrélation puits Réduction dimension

9 Glossaire spécifique Oil & Gas

Terme Définition
Kick Entrée de fluide formation (gaz/oil) dans le puits, risque
d’éruption
ROP (Rate of Taux de pénétration du trépan (m/h)
Penetration)
WOB (Weight Poids appliqué sur l’outil de forage
On Bit)
Diagraphie Enregistrement continu des propriétés des formations
Faciès Ensemble de caractéristiques d’une formation rocheuse
EOR (Enhanced Techniques de récupération assistée du pétrole
Oil Recovery)
BOP (Blowout Système de sécurité anti-éruption
Preventer)

10 Ressources complémentaires
— Scikit-learn : bibliothèque Python - [Link]

13 / 14
Machine Learning - Oil & Gas 7 mai 2026

— SPE : Society of Petroleum Engineers - articles sur ML


— OnePetro : base de données techniques Oil & Gas
— Kaggle : compétitions (SPE Data-Driven Drilling)

Merci pour votre attention !


Application du Machine Learning dans l’industrie Pétrole & Gaz
"Data is the new oil" - Clive Humby

Image

Document créé avec LATEX- 7 mai 2026- Spécial Oil & Gas

14 / 14

Vous aimerez peut-être aussi