G = (N, A) (1)
où N est l’ensemble des nœuds et A est l’ensemble des arêtes et chaque arête est un
pair (u, v) où u, v ∈ N. Si l’ordre des nœuds dans le pair (u, v) est important alors le
graphe est orienté. Dans le cas contraire, le graphe est non orienté.
Dans un graphe orienté, on dit qu’un nœud v est adjacent au nœud u si et seulement si
le pair (u, v) ∈ A. C’est-à-dire, l’arête (u, v) existe dans le graphe. Pour exprimer la
même notion dans un graphe non orienté, on dit qu’un nœud v est adjacent au nœud
u (et par le fait même u est adjacent à v) si (u, v) ∈ A et (v, u) ∈ A.
Lorsqu’un graphe est pondéré, on ajoute un troisième composant dans l’équation (1).
C’est-à-dire,
G = (N, A, c)(2)
où c : N × N → ℜ+ est une fonction donnant le coût de l’arête reliant deux nœuds. Le
domaine de la fonction c(· ) est l’ensemble des nœuds d’où le produit cartésien N × N.
Rappelons que le coût doit être non négative pour permettre l’application de
l’algorithme de Dijsktra, c’est pour cette raison que l’image de la fonction est ℜ+.
Un chemin dans un graphe est une séquence de nœuds u1, u2, …, uW tel que (ui , ui+1)
∈ A pour 1 ≤ i ≤ W – 1. La longueur d’un chemin est alors simplement W – 1.
Également, un nœud u peut avoir un chemin vers lui-même. Si ce chemin n’a pas
d’arêtes alors la longueur de ce chemin est nulle (zéro). Par contre, si ce chemin
possède une arête (u, u) alors le chemin joignant le nœud u est appelé une boucle et sa
longueur demeure nulle (zéro). Un chemin est un chemin simple si tous les nœuds du
chemin sont distincts excepté le nœud de départ et le nœud d’arrivée.
Soit un nœud de départ u1 et un nœud d’arrivée uW. Dans un graphe orienté, un
chemin de longueur ≥ 1 avec u1 = uW est appelé un cycle. Un cycle est un cycle simple
si le chemin composant le cycle est un chemin simple. Dans un graphe non orienté,
on impose une contrainte supplémentaire dans la formation d’un cycle : il faut que les
nœuds du chemin soient tous des nœuds distincts. La raison de cette contrainte
supplémentaire est évidente si l’on considère que le chemin u1, u2, u1 dans un graphe
non orienté est en fait la même arête. C’est-à-dire (u1, u2) = (u2, u1) pour un graphe non
orienté. Donc, nous avons la nomenclature suivante :
Graphe orienté Graphe non orienté
Cycle simple Cycle
Cycle non simple où les nœuds du
chemin ne sont pas tous distincts
N/A
Un graphe orienté sans cycle est un graphe acyclique. Ces graphes ont beaucoup
d’applications dans la pratique. Notamment dans la représentation et l’analyse des