Vous êtes sur la page 1sur 10

Université des Sciences et de la Technologie Houari Boumediene

Faculté de Génie Mécanique et Génie des Procédés


M2 Génie de l’environnent

Recherche sur la théorie des graphes

Réaliser par :
BOUTEMINE Mawa
1717 310 73 566
Sommaire

 Introduction

 La théorie des graphes

 Concepts de base

 Analyse de graphe

 Représentation spatiale d'un graphe

 Analyse de graphe

 Représentation matricielle d'un graphe

 Représentation sagittale d'un graphe

 Algorithme de Ford pour la recherche d'un chemin optimal

Introduction :
Le graphe en tant qu’objet mathématique existe depuis de nombreuses années. Les
premières recherches sur le sujet datent de 1736. Dans ses travaux, Euler a mis en place les
bases de la théorie des graphes. Il a utilisé les graphes pour modéliser les problèmes
d’optimisation ou de faisabilité. Les graphes lui ont permis de résoudre le problème des
sept ponts de Königsberg. Ce problème consiste `à trouver un chemin dans la ville qui
passe une seule fois par chacun des sept ponts. Audix-neuvième siècle, ont trouvé des
exemples d’utilisation des graphes à des fins de modélisation de la connaissance. De
nombreux algorithmes et résultats théoriques ont et proposés sur ce sujet. Ils permettent
pour ces classes de graphes d’obtenir des bornes théoriques d’espace nécessaires pour la
représentation des graphes, mais aussi de produire des représentations en temps linéaire.
Les travaux de Hopcroft et Tarjan sur la détection, le calcul de plongement d’un graphe
planaire ainsi que les travaux de De Fraysseix sur le dessin de graphes planaires sont
incontournables.

La théorie des graphes


La théorie des graphes est une branche des mathématiques qui étudie les graphes, qui sont
des structures mathématiques composées de nœuds (ou sommets) reliés par des arêtes (ou
des liens). Les graphes peuvent être utilisés pour modéliser et résoudre une grande variété
de problèmes dans différents domaines, tels que les réseaux de communication, les systèmes
de transport, la biologie, la physique, etc. La théorie des graphes comprend plusieurs
concepts de base, tels que les graphes orientés et non orientés, les cycles, les chemins, les
arbres, les connexions, etc. Elle utilise également diverses techniques pour représenter et
visualiser les graphes, telles que la représentation matricielle et la représentation spatiale.
L’un des problèmes classiques résolus en théorie des graphes est le problème du plus court
chemin, qui consiste à trouver le chemin le plus court entre deux nœuds d'un graphe
pondéré. Cela peut être résolu à l'aide de l'algorithme de Dijkstra, de l'algorithme de
Bellman-Ford ou de l'algorithme de Floyd-Warshall. En résumé, la théorie des graphes est
une discipline mathématique importante qui a des applications dans de nombreux domaines.
Elle permet de modéliser et de résoudre des problèmes en utilisant des graphes et des
algorithmes associés.

Concepts de base
La théorie des graphes repose sur plusieurs concepts de base, notamment :
Nœuds : Les nœuds, également appelés sommets, sont les entités individuelles d'un graphe.
Chaque nœud peut représenter une entité distincte, telle qu'une ville, une personne ou un
concept.
Arêtes : Les arêtes, également appelées liens, sont les connexions entre les nœuds d'un
graphe. Elles représentent les relations ou les interactions entre les entités représentées par
les nœuds.
Graphes orientés et non orientés : Un graphe orienté est un graphe dans lequel les arêtes
ont une direction spécifique, indiquant le sens de la relation entre les nœuds. Dans un
graphe non orienté, les arêtes n'ont pas de direction spécifique.
Cycles : Un cycle est une séquence de nœuds et d'arêtes dans un graphe qui forme une
boucle fermée, où le dernier nœud est relié au premier nœud.
Chemins : Un chemin est une séquence de nœuds et d'arêtes dans un graphe qui relie deux
nœuds spécifiques. Il peut y avoir plusieurs chemins possibles entre deux nœuds.

Exemple
Le schéma suivant s'appelle un graphe. Il possède 4 sommets ; on dit qu'il est d'ordre 4.
Les sommets A et C sont adjacents car ils sont reliés par une arête.
Le sommet C est de degré 3 car 3 arêtes partent de C.
 On appelle graphe non orienté un ensemble de points, appelés sommets, reliés par
des lignes, appelées arêtes.
- L'ordre du graphe est le nombre de sommets.
- Le degré d'un sommet est le nombre d'arêtes partant de ce sommet.
- Deux sommets reliés par une arête sont adjacents.
Exemple : La carte ci-contre représente le réseau de tramway de la ville de Strasbourg. Il
s'agit d'un graphe dont les sommets sont les stations

Arbres : Un arbre est un type spécial de graphe non orienté sans cycles. Il est constitué d'un
ensemble de nœuds reliés entre eux de manière hiérarchique, avec un nœud racine et des
branches qui se ramifient vers d'autres nœuds.
Connexions : La connectivité dans un graphe se réfère à la manière dont les nœuds sont
reliés entre eux. Un graphe peut être connexe, ce qui signifie qu'il existe un chemin entre
chaque paire de nœuds, ou il peut être non connexe, ce qui signifie qu'il existe des groupes
isolés de nœuds sans connexion avec d'autres parties du graphe.
Ces concepts de base constituent les fondements de la théorie des graphes et sont utilisés
pour modéliser et résoudre une grande variété de problèmes dans différents domaines.

Un graphe est défini par un couple G=(V,E)tel que:


V(pour l’anglais vertices) est un ensemble fini des sommets
E(pour l’anglais edges) est un ensemble fini d’arêtes
Un graphe peut être orienté, ou non:

Si oui, les couples (vi,vj) ∈ E sont ordonnés, vi est le sommet initial ,vj est le sommet
terminal.
On appelle alors le couple (vi,vj) un arc ,représenté graphiquement par vi→vj
Si non, les couples ne sont pas orientés et(vi,vj) est équivalent à(vj,vi),et on l’appelle
arête ,représenté par vi−vj
POUR CHAQUE NŒUD DANS LE GRAPHE,

il faut:
1. Une position
2. Une taille (fixe, variable)
3. Une forme (cercle, disque, carré)
4. Une couleur

POUR CHAQUE LIEN DANS LE GRAPHE, il faut :


1. Une position (chevauchement d’autres arêtes ou non)
2. Une taille (longueur, épaisseur du trait)
3. Une forme (courbe, droit)
4. Une couleur

Pour étudier le comportement d’un systèmes distribue, comme les réseaux ad hoc par
exemple, une approche consiste `à modéliser ces réseaux par des graphes, et `à utiliser des
outils de visualisation pour voir le comportement de ces réseaux lorsqu’on leur applique
certains algorithmes. Les graphes permettent notamment d’analyser les chemins entre les
éléments et donc d’inférer par transitivité des relations entre les entités. Le graphe apporte
une modélisation plus intuitive, plus généraliste et par fois plus efficace que la représentation
matricielle. Pour n’importe quelle source de donnée. Il est possible de construire des graphes
en inférant des relations entre les entités en fonction de leurs attributs.

Analyse de graphe :
Mesures :
• Combien une entité est « influencée » par un groupe.
• Place de l’entité par rapport au centre du réseau.
• Perturbation engendrée par la disparition d’une entité.
Détection de communautés :

• Groupes d’entités qui sont fortement connectées


• Groupes isolés
• Groupes pivots
 Métaphores visuelles peuvent être utilisées pour représenter des relations entre des
entités. Voici quelques exemples :
La similitude : Cette métaphore visuelle repose sur le principe que des entités similaires sont
regroupées ou représentées de manière similaire. Par exemple, dans un diagramme de
classification des éléments qui partagent des caractéristiques communes peuvent être
regroupés dans une même catégorie ou couleur.
La position : La position relative des entités peut être utilisée pour représenter des relations.
Par exemple, dans un diagramme de flux, la disposition des éléments peut indiquer l'ordre
chronologique ou la séquence d'événements.
La fermeture : Cette métaphore visuelle se base sur le principe de proximité spatiale pour
représenter des relations. Des entités qui sont physiquement proches les unes des autres
peuvent être perçues comme étant liées ou ayant une relation plus étroite que les entités
éloignées.

Représentation spatiale d'un graphe :


La représentation spatiale d'un graphe consiste à disposer physiquement les nœuds et les
arêtes du graphe dans l'espace de manière à représenter visuellement les connexions entre
eux. Cette représentation est souvent utilisée pour visualiser les graphes et faciliter la
compréhension de leurs relations. Dans une représentation spatiale, chaque nœud du
graphe est généralement représenté par un point ou une forme géométrique, tandis que les
arêtes sont représentées par des lignes ou des courbes qui relient les nœuds correspondants.
L'arrangement des nœuds et des arêtes dans l'espace peut être basé sur différents critères,
tels que la distance entre les nœuds, la minimisation des croisements d'arêtes ou la mise en
évidence de certaines connexions importantes. Il existe plusieurs techniques de disposition
des graphes, telles que la disposition en cercle, la disposition en grille, la disposition
hiérarchique, la disposition en force, etc. Chaque technique a ses avantages et ses
inconvénients, et le choix de la technique dépend souvent du type de graphe et de l'objectif
de la visualisation.
Représentation matricielle d'un graphe :
Le mot « matrice » vient du latin « mater » (mère). Comme on enregistrait les enfants à la
naissance dans des registres, le mot désigna ces registres. Cela explique les mots «
matricule » ou « immatriculation ». Avec les mathématiciens Augustin Louis Cauchy (ci-
contre) et Arthur Cayley, vers 1845, le mot prend naturellement le sens mathématique
qu’on lui connaît aujourd’hui.
La représentation matricielle d'un graphe utilise des matrices pour capturer les relations
entre les nœuds et les arêtes. Les deux types de matrices couramment utilisées sont la
matrice d'adjacence et la matrice d'incidence. La matrice d'adjacence est une matrice carrée
où les lignes et les colonnes représentent les nœuds du graphe. Chaque élément de la
matrice indique s'il existe une arête entre les nœuds correspondants.
Par exemple, si l'élément (i, j) est égal à 1, cela signifie qu'il y a une arête entre les nœuds i et
j.
La matrice d'incidence est une matrice rectangulaire où les lignes représentent les nœuds et
les colonnes représentent les arêtes du graphe. Chaque élément de la matrice indique la
relation entre un nœud et une arête. Par exemple, si l'élément (i, j) est égal à 1, cela signifie
que le nœud i est incident à l'arête j.
Ces représentations matricielles permettent de stocker efficacement les informations sur
les connexions entre les nœuds et les arêtes d'un graphe. Elles sont largement utilisées
dans les algorithmes de graphes pour effectuer des opérations telles que la recherche de
chemins optimaux.

 Considérons un graphe d'ordre n∈N* On numérote ces sommets de 1 à n

On appelle matrice d'adjacence associée à ce graphe la matrice A dont le terme a j i vaut 1 si


les sommets i et j sont reliés par une arête et 0 sinon.

Dans le cas d'un graphe non orienté, les coefficients a j i et a i j sont égaux pour tout i et
tout j compris entre 1 et n. Autrement dit, la matrice d'adjacence est symétrique.

Dans le cas d'un graphe orienté, la matrice d'adjacence n'est pas a priori symétrique.

Exemple

Matrice d'adjacence associée à un graphe

En numérotant les sommets de ce graphe par ordre alphabétique, sa matrice d'adjacence


s'écrit :

( )
0 1 1 01
1 0 11 0
1 1 01 0
0 1 10 0
10000

Représentation sagittale d'un graphe :


La représentation sagittale d'un graphe est une méthode de visualisation qui utilise des
lignes et des flèches pour représenter les connexions entre les nœuds. Dans cette
représentation, chaque nœud est représenté par un point, et les arêtes sont représentées
par des lignes ou des flèches qui indiquent la direction de la connexion entre les nœuds.Pour
représenter un graphe sagittal, vous pouvez dessiner les nœuds sur une ligne horizontale ou
verticale, en plaçant les nœuds de départ à gauche et les nœuds d'arrivée à droite. Ensuite,
vous pouvez utiliser des lignes ou des flèches pour connecter les nœuds correspondants, en
indiquant la direction de la connexion. Les flèches peuvent être utilisées pour représenter
des arêtes orientées, c'est-à-dire des connexions unidirectionnelles. Cette représentation
permet de visualiser facilement les connexions entre les nœuds et de comprendre la
structure du graphe. Cependant, elle peut devenir complexe pour les graphes avec un grand
nombre de nœuds ou d'arêtes.

Algorithme de Ford pour la recherche d'un chemin optimal :


Trouverithme de Ford (ou algorithme de Ford-Bellman) est un algorithme classique utilisé
pour trouver un chemin optimal dans un graphe pondéré. Il peut être utilisé pour des
graphes avec des arêtes de poids négatif ou positif. L’idée principale de l'algorithme de Ford
est de trouver itérativement les chemins améliorants en mettant à jour les distances
minimales entre les nœuds du graphe. L'algorithme commence par attribuer une distance
infinie à tous les nœuds, sauf au nœud source qui a une distance de 0. Ensuite, il effectue des
itérations où il explore toutes les arêtes du graphe et met à jour les distances minimales si un
chemin plus court est trouvé. L’algorithme de Ford continue ces itérations jusqu'à ce
qu'aucune mise à jour supplémentaire ne soit possible ou jusqu'à ce qu'il détecte un cycle de
poids négatif. La détection des cycles de poids négatif est importante car elle indique qu'il n'y
a pas de solution optimale dans le graphe. Une fois que l'algorithme de Ford a terminé ses
itérations, il renvoie les distances minimales entre le nœud source et tous les autres nœuds
du graphe. Ces distances peuvent ensuite être utilisées pour déterminer le chemin optimal
entre le nœud source et tout autre nœud du graphe.

Liste des références :


1. Théorie des graphes et optimisation dans les graphes par Christine Solnon (chrome-
extension://efaidnbmnnnibpcajpcglclefindmkaj/https://perso.liris.cnrs.fr/
christine.solnon/polyGraphes.pdf)
2. MATRICES ET GRAPHES
(chrome-extension://efaidnbmnnnibpcajpcglclefindmkaj/https://www.maths-et-
tiques.fr/telech/Tmg.pdf)
3. Visualisation de Graphes Groupe10 : Edouard CUNIBIL ,Emilie GENNARI ,Benoit
LANGE, Vincent
MARTINEZ(chrome-extension://efaidnbmnnnibpcajpcglclefindmkaj/https://
www.lirmm.fr/~leclere/enseignements/TER/2008/Rapport/18.pdf)
4. https://math.univ-lyon1.fr/irem/Formation_ISN/formation_parcours_graphes/
graphe/2_matrice.html
5. Rapport scientifique présente en vue de l’obtention de l’Habilitation `à Diriger des
Recherches
(chrome-extension://efaidnbmnnnibpcajpcglclefindmkaj/https://www.labri.fr/
perso/auber/download/hdr_auber.pdf)

Vous aimerez peut-être aussi