LES GRAPHES.

Slides:



Advertisements
Présentations similaires
Introduction à la Théorie des graphes
Advertisements

La recherche de chemin optimal
Théorie des graphes.
Algorithmes et structures de données avancées Cours 7
Algorithmes et structures de données avancés
CH-IV. L’ORADONNANCEMENT
UMLV 1 Problème G = (S, A) graphe (orienté) Calculer H = (S, B) où B est la clôture réflexive et transitive de A. Note : (s,t) B ssi il existe un chemin.
La construction d ’un réseau PERT
Modélisation par le concept de graphe
Mise à Niveau en Recherche Opérationnelle
Bloc1 : Théorie des graphes et problèmes d’ordonnancement
Bloc1 : Théorie des graphes et problèmes d’ordonnancement
A.Faÿ 1 Recherche opérationnelle Résumé de cours.
Chap. 1 INTRODUCTION Beaucoup de problèmes de la vie courante, tels la gestion de réseaux de communication ou l'ordonnancement de tâches, correspondent.
Introduction à la Théorie des Graphes
Nombre de chaînes de longueur r
Recherche Opérationnelle
Chapitre VIII. Introduction aux graphes
En management de Projet
LES AUTRES MÉTHODES D’ORDONNANCEMENT
Plus courts chemins On présente dans ce chapitre un problème typique de cheminement dans les graphes : la recherche d'un plus court chemin entre deux sommets.
Parcours de formation SIN-7
Algorithmes Branch & Bound
Heuristiques A. Introduction B. Recherche d ’une branche
Traduction ‘libre’ mais qui donne bien l’esprit de la méthode
Théorie des graphes Un peu de vocabulaire.
Algorithme de Bellman-Ford
Structures de données IFT-2000
Modèles d’implantation
Structures de données IFT-2000
IFT Complexité et NP-complétude


1 Licence dinformatique Algorithmique des graphes Problèmes dordonnancement. Utilisation de ce document strictement réservée aux étudiants de l IFSIC dans.
Algorithmes d ’approximation
Recherche Opérationnelle
- GRAPHES - Composantes et types
Why You Ought To Use Formal Methods: a 3-Pages 11-Slides Illustration Eric Jaeger, UPMC / LIP6 Réunion SSURF du 5 avril 2007.
Introduction aux problèmes d'ordonnancement sans temps-morts.
DONG Xiaoguang HONG Liang OULDBABA Fadel WANG Min
GPA750 – Gestion de Projets
Atelier de formation : MAT optimisation II (les graphes).
Structures de données IFT-2000 Abder Alikacem Arbres de recouvrement minimum Département dinformatique et de génie logiciel Édition Septembre 2009 JFK.
Heuristiques C. Recherche de la meilleure branche . Branch And Bound
Exploration systématique de graphes
Programmation procédurale Transformations
Graphes 1. Introduction 2. Définition 3. Représentation mémoire
1 Licence d’informatique Algorithmique des graphes Cours 3 deuxième partie : Opérations et relations entre graphes. Composition, puissances. Utilisation.
On cherche le plus court chemin de E à S sur le graphe suivant :
Séquençage par hybridation
Gestion de projet Planification.
Algorithmes Branch & Bound
Le problème central de l’ordonnancement (les plus longs chemins)
Licence Informatique Algorithmique des graphes
LE FLOT MAXIMAL et LA COUPE MINIMALE
Ceci est un graphe valué Des arcs : 1-2, 1-4, 7-10,…..
1 Licence d’informatique Algorithmique des graphes Cours 7 : Graphes valués Chemins de valeur optimale Algorithme de Bellmann-Kalaba Utilisation de ce.
Licence d’informatique Algorithmique des graphes
Management de projet GESTION des DELAIS séance 2
1 Licence d’informatique Algorithmique des graphes Utilisation de ce document strictement réservée aux étudiants de l ’IFSIC dans le cadre de leur formation.
Projet : Mme Rouan, responsable de l ’implantation d ’un nouveau magasin à Marseille, est une femme organisée. Elle a saisi la liste des tâches à réaliser.

Algorithme de DIJKSTRA
Introduction : des enjeux à la mise à niveau d’un projet !
Projet Théorie des graphes
Algorithmes Branch & Bound Module IAD/RP/RO Master d ’informatique Paris 6 Philippe Chrétienne.
1 Tableur Excel. 2 Introduction Un tableur est un logiciel permettant de manipuler des données numériques et d'effectuer automatiquement des calculs sur.
Construire un GANTT.
SÉANCE 4 : TECHNIQUES POUR LA PLANIFICATION DE PROJETS SIO Gestion de projets, applications SIO Hager Khechine, MBA, PhD.
Réaliser un projet tuteuré!!!!!
Transcription de la présentation:

LES GRAPHES

graphe ( simple orienté ) 1)DEFINITION graphe ( simple orienté )

DEFINITION Un graphe ( simple orienté ) c’est un couple ( X, U ) avec X un ensemble fini et U une partie du produit cartésien X2

Exemple : X = U = Les éléments de X sont les sommets ou points du graphe Les éléments de U sont les arcs du graphe Un graphe est valué si à chaque arc est associé un nombre

Représentation X= U= X3 x4 X1 X2 X4 x x x3 x x X2 x x1 x1 x2 x3 x4     diagramme sagittal Diagramme cartésien tableau matriciel X3 pré\succ x1 x2 x3 x4 1 X4 x x x3 x x X2 x x1 x1 x2 x3 x4 x4 X1 X2  

2)PLANIFICATION DE L’ORDONNANCEMENT DES TACHES :

Exemple Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2

DEUX METHODES a)La méthode P.E.R.T b)La méthode M.P.M.

a)La méthode P.E.R.T

méthode P.E.R.T Chaque arc représente une tâche il est valué par la durée de la tâche A 5 D 2 B 4 C 6 Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2

méthode P.E.R.T Chaque sommet représente une étape X3 A 5 D 2 X4 X1 C Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2 C 6 B 4 X2

méthode P.E.R.T Les arcs définissent les relations d’antériorité X3 A 5 D 2 X4 X1 Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2 C 6 B 4 X2

méthode P.E.R.T Un seul arc entre deux sommets donc introduction de tâches fictives X3 A 5 D 2 Fictive durée 0 X4 X1 Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2 C 6 B 4 X2

b) La méthode M.P.M.

méthode M.P.M. Chaque sommet représente une tâche. A 5 D 2 B 4 C 6 Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2

méthode M.P.M. . On a deux tâches fictives: DEBUT FIN A 5 D 2 fin début B 4 C 6 Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2

méthode M.P.M. Chaque sommet représente une tâche. On a deux tâches fictives: DEBUT FIN A 5 D 2 fin début B 4 C 6 Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2

méthode M.P.M. Les arcs définissent les relations d’antériorité A 5 D 2 fin début Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2 C 6 B 4

méthode M.P.M. Chaque arc est valué par la durée de la tâche placée à son début. tâche DEBUT durée 0 A 5 D 2 fin début Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2 C 6 B 4

méthode M.P.M. Chaque arc est valué par la durée de la tâche placée à son début. tâche DEBUT durée 0 5 A 5 D 2 fin début Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2 C 6 B 4

méthode M.P.M. Chaque arc est valué par la durée de la tâche placée à son début. tâche DEBUT durée 0 5 A 5 D 2 fin 4 début Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2 C 6 B 4 4

méthode M.P.M. Chaque arc est valué par la durée de la tâche placée à son début. tâche DEBUT durée 0 5 A 5 D 2 fin 4 début 6 Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2 C 6 B 4 4

méthode M.P.M. Chaque arc est valué par la durée de la tâche placée à son début. tâche DEBUT durée 0 5 A 5 D 2 2 fin 4 début 6 Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2 C 6 B 4 4

méthode M.P.M. Chaque arc est valué par la durée de la tâche placée à son début. tâche DEBUT durée 0 5 A 5 D 2 2 fin 4 début 6 Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2 C 6 B 4 4

4)DEFINITIONS ET AUTRES REPRESENTATIONS

Si (x, y)  U alors les sommets x et y sont adjacents, x est l’origine de l’arc et y l’extrémité. x est un prédécesseur (précédent) d’y y est un successeur (suivant) de x

Un sommet sans prédécesseur c’est une entrée. Un sommet sans successeur c’est une sortie.

Tableau ou dictionnaire des prédécesseurs sommets prédécesseurs X1 X2 X3 X4

Tableau ou dictionnaire des prédécesseurs sommets prédécesseurs X1 / X2 X3 X1 X2 X4 X2 X3

sommets prédécesseurs A B C D

sommets prédécesseurs A / B C D A B

Tableau ou dictionnaire des successeurs sommets successeurs X1 X2 X3 X4

sommets successeurs X1 X2 X3 X2 X3 X4 X3 X4 /

sommets successeurs A B C D

sommets successeurs A D B C D C /

Matrice adjacente ou booléenne   A B C D fin pr\suc x1 x2 x3 x4 Début 1 5 4 6 2 Dans un graphe valué on remplace les 1 par la valuation

5)ALGORITHME PERMETTANT D’OBTENIR LES NIVEAUX ( graphe sans circuit )

a) Définitions   Un chemin c’est une suite de points d’un graphe, telle que deux points qui se suivent sont reliés par un arc direct. Ex: Chemins: ( x1, x3, x4 ) ; ( x1, x2, x3, x4 ) N’est pas un chemin ( x1, x3, x2 )

Un circuit c’est un chemin non vide dont l’origine et l’extrémité sont confondus. Une boucle c’est : un arc (x, x)

La longueur d’un chemin ( au sens des arcs ) c’est le nombre d’arcs qu’il faut parcourir pour aller de l’origine à l’extrémité du chemin. Ex:  Le chemin ( x1, x2, x3, x4 ) est de longueur 3

Le niveau d’un sommet x c’est la longueur du plus long chemin au sens des arcs entre l’entrée et le sommet x. Ex: x3 est de niveau 2 et x4 est de niveau 3

b) Recherche des niveaux méthode : sommets de niveau 0 : ceux qui n’ont pas de prédécesseurs. sommets de niveau 1 : ceux qui n’ont pas de prédécesseurs quand on a supprimé ceux de niveau 0 ,et ainsi de suite.

sommets de niveau 0 : ceux qui n’ont pas de prédécesseurs Sommets précédents X1 / X2 X3 X1 X2 X4 X2 X3 NIVEAUX

sommets de niveau 0 : ceux qui n’ont pas de prédécesseurs Sommets précédents X1 / X2 X3 X1 X2 X4 X2 X3 NIVEAUX N0 :X1

sommets de niveau 1 : ceux qui n’ont pas de prédécesseurs quand on a supprimé ceux de niveau 0 Sommets précédents X1 / X2 X3 X1 X2 X4 X2 X3 NIVEAUX N0 :X1 N1:

sommets de niveau 1 : ceux qui n’ont pas de prédécesseurs quand on a supprimé ceux de niveau 0 Sommets précédents X1 / X2 X3 X1 X2 X4 X2 X3 NIVEAUX N0 :X1 N1:X2

et ainsi de suite sommets Sommets précédents X1 / X2 X3 X1 X2 X4 X2 X3 NIVEAUX N0 :X1 N1:X2 N2:X3

et ainsi de suite sommets Sommets précédents X1 / X2 X3 X1 X2 X4 X2 X3 NIVEAUX N0 :X1 N1:X2 N2:X3 N3:X4

sommets de niveau 0 : ceux qui n’ont pas de prédécesseurs Sommets précédents A / B C D A B NIVEAUX

sommets de niveau 0 : ceux qui n’ont pas de prédécesseurs Sommets précédents A / B C D A B NIVEAUX N0 :A B

sommets de niveau 1 : ceux qui n’ont pas de prédécesseurs quand on a supprimé ceux de niveau 0 Sommets précédents A / B C D A B NIVEAUX N0:A B N1:C D

3)ALGORITHME PERMETTANT D’OBTENIR LE CHEMIN DE VALEUR OPTIMALE 3)ALGORITHME PERMETTANT D’OBTENIR LE CHEMIN DE VALEUR OPTIMALE.Cas du MPM.

Exemple Tâches Tâches antérieures Durée A / 5 B 4 C 6 D A B 2

Date de début au plus tôt d’une tâche: valeur du chemin maximal depuis le début.

Date de début au plus tôt d’une tâche: valeur du chemin maximal depuis le début. 5 5 A 2 D     2 2 4 fin début 6 6 C 4 4 B Début au plus tard Début au plus tôt durée tâche

Date de début au plus tôt d’une tâche: valeur du chemin maximal depuis le début. 5 5 A 2 D     2 2 4 fin début 6 4 6 C 4 4 B Début au plus tard Début au plus tôt durée tâche

Date de début au plus tôt d’une tâche: valeur du chemin maximal depuis le début. 5 5 A 5 2 D     2 2 4 fin début 6 4 6 C 4 4 B Début au plus tard Début au plus tôt durée tâche

Date de début au plus tôt d’une tâche: valeur du chemin maximal depuis le début. 5 5 A 5 2 D     2 2 4 10 fin début 6 4 6 C 4 4 B Début au plus tard Début au plus tôt durée tâche

Date de début au plus tard d’une tâche: durée totale moins la valeur du chemin maximal de cette tâche à la fin.(donc valeur minimale).

Date de début au plus tard d’une tâche: durée totale moins la valeur du chemin maximal de cette tâche à la fin.(donc valeur minimale). 5 5 A 5 2 D     2 2 4 10 fin début 4 6 C 4 4 B 6 Début au plus tard Début au plus tôt durée tâche

Date de début au plus tard d’une tâche: durée totale moins la valeur du chemin maximal de cette tâche à la fin.(donc valeur minimale). 5 5 A 8 5 2 D     2 2 4 10 fin début 4 6 C 4 4 B 6 Début au plus tard Début au plus tôt durée tâche

Date de début au plus tard d’une tâche: durée totale moins la valeur du chemin maximal de cette tâche à la fin.(donc valeur minimale). 5 3 5 A 8 5 2 D     2 2 4 10 fin début 4 6 C 4 4 B 6 Début au plus tard Début au plus tôt durée tâche

Date de début au plus tard d’une tâche: durée totale moins la valeur du chemin maximal de cette tâche à la fin.(donc valeur minimale). 5 5 A 8 5 2 D     2 2 4 10 fin début 4 6 C 4 4 B 6 Début au plus tard Début au plus tôt durée tâche

Date de début au plus tard d’une tâche: durée totale moins la valeur du chemin maximal de cette tâche à la fin.(donc valeur minimale). 5 3 5 A 8 5 2 D     2 2 4 10 fin début 4 6 C 4 4 B 6 Début au plus tard Début au plus tôt durée tâche

Graphe M.P.M. 5 3 5 A 8 5 2 D 2 4 10 fin 4 6 C 4 4 B 6 début 5 A 8 5 2 D     2 2 4 10 fin début 4 6 C 4 4 B 6 Début au plus tard Début au plus tôt durée tâche

Tâche critique Une tâche est critique si tout retard apporté à son début au plus tôt retarde la date de fin au plus tôt du projet (date de début au plus tôt = date de début au plus tard ) .

Tâche critique(date de début au plus tôt = date de début au plus tard ) . 5 3 5 A 8 5 2 D     2 2 4 10 fin début 4 6 C 4 4 B 6 Début au plus tard Début au plus tôt durée tâche

Chemin critique Chemin critique : il est formé des tâches critiques Une tâche est critique si tout retard apporté à son début au plus tôt retarde la date de fin au plus tôt du projet (date de début au plus tôt = date de début au plus tard ) .

Chemin critique (date de début au plus tôt = date de début au plus tard ) . 5 3 5 A 8 5 2 D     2 2 4 10 fin début 4 6 C 4 4 B 6 Début au plus tard Début au plus tôt durée tâche

Marges

Marge totale d’une tâche le retard maximal que l’on peut admettre au démarrage d’une tâche sans remettre en cause la durée du projet. (date de début au plus tard de la tâche)-( date de début au plus tôt de la tâche)

Marge totale d’une tâche Marges totales date de début au plus tard de la tâche moins date de début au plus tôt de la tâche   A: 3 - 0 = 3 B: 0 - 0 = 0 C: 4 - 4 = 0 D: 8 - 5 = 3

Marge libre d’une tâche : le retard maximal que l’on peut admettre au démarrage d’une tâche sans remettre en cause le début au plus tôt des tâches suivantes. (plus petit début au plus tôt qui suit)-(Date de début au plus tôt de la tâche)-(durée de la tâche))

Marge libre d’une tâche : Marges libres plus petit début au plus tôt qui suit moins Date de début au plus tôt de la tâche durée de la tâche   A: 5 - 0 - 5 =0 B: 4 - 0 - 4 =0 C: 10 - 4 - 6 =0 D: 10 - 5 - 2 =3

fin

6)ALGORITHME PERMETTANT D’OBTENIR LES CHEMINS DE LONGUEUR p

a) Définitions   Un chemin c’est une suite de points d’un graphe, telle que deux points qui se suivent sont reliés par un arc direct. Ex:

La longueur d’un chemin ( au sens des arcs ) c’est le nombre d’arcs qu’il faut parcourir pour aller de l’origine à l’extrémité du chemin. Ex: 

b)Propriété Soit M la Matrice adjacente ou booléenne d’un graphe et soit Mp =(ci,j) la puissance p de M   alors ci,j est le nombre de chemins de longueur p allant du sommet i au sommet j.

c)Remarques Soit n le nombre de sommets Si Mn  0 le graphe contient des circuits et si le terme diagonal ai,i  0 il existe au moins un chemin de longueur n de i à i (c’est à dire un circuit )  

c)Remarques Soit n le nombre de sommets Si Mn  0 le graphe contient des circuits et si le terme diagonal ai,i  0 il existe au moins un chemin de longueur n de i à i (c’est à dire un circuit )   Les colonnes de zéros de Mn permettent de retrouver les nivaux.

c)Remarques Soit n le nombre de sommets Si Mn  0 le graphe contient des circuits et si le terme diagonal ai,i  0 il existe au moins un chemin de longueur n de i à i (c’est à dire un circuit )   Les colonnes de zéros de Mn permettent de retrouver les nivaux.

Exemple b M = c a

Exemple b M = M2 = c a

Exemple a M = M2 = Chemins de longueur 2 : b M = M2 = Chemins de longueur 2 : de a à a :(a, c, a) et (a, a, a ) de a à c :(a, a, c) c a

Exemple b M = M2 = M3 = c a

Exemple a M = M2 = M3 = Chemins de longueur 3 : b M = M2 = M3 = Chemins de longueur 3 : de a à a :a->c->a->a et a->a->c->a et a->a->a->a de c à a :c->a->a->a et c->a->c->a c a

7) ALGORITHME PERMETTANT D’OBTENIR LA FERMETURE TRANSITIVE.

A) Opérations sur les relations a)Union Soit R et R’ deux relations sur un ensemble E, leur réunion RR’ c’est la relation dont le graphe est la réunion des arcs de R et de R’. Exemple

R R’ R R’ M= M’= = b a a c M  M’ Somme Booléenne b b c c a La matrice de R  R’ c’est M  M’

b)composition : R suivi de R’

R R’ R suivi de R’ M= M’= = b a a c M  M’ Produit Booléen b b c a c La matrice de R suivi de R’ c’est M  M’

B) Fermeture transitive de R : Transitivité Une relation est transitive si : (x)(y)(z) (( xRy et yRz )  xRz )

R fermeture transitive Pour la fermeture transitive si on a xRy et yRz on ajoute xRz par transitivité R fermeture transitive sa matrice = b b a c c a

La matrice de la fermeture transitive est Remarque : La matrice de la fermeture transitive est = M  M[2]  M[3]  M[4] +……

fin

3)DEFINITIONS ET AUTRES REPRESENTATIONS

Si (x, y)  U alors les sommets x et y sont adjacents, x est l’origine de l’arc et y l’extrémité. x est un prédécesseur (précédent) d’y y est un successeur (suivant) de x

Un sommet sans prédécesseur c’est une entrée. Un sommet sans successeur c’est une sortie.

Tableau ou dictionnaire des prédécesseurs

sommets prédécesseurs X1 X2 X3 X4

sommets prédécesseurs X1 / X2 X3 X1 X2 X4 X2 X3

sommets prédécesseurs A B C D

sommets prédécesseurs A / B C D A B

Tableau ou dictionnaire des successeurs

sommets successeurs X1 X2 X3 X4

sommets successeurs X1 X2 X3 X2 X3 X4 X3 X4 /

sommets successeurs A B C D

sommets successeurs A D B C D C /

Matrice adjacente ou booléenne