La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

9 mars 2007Cours de graphes 6 - Intranet1 Cours de graphes Chemins dEuler. Chemins de Hamilton. Couplages.

Présentations similaires


Présentation au sujet: "9 mars 2007Cours de graphes 6 - Intranet1 Cours de graphes Chemins dEuler. Chemins de Hamilton. Couplages."— Transcription de la présentation:

1 9 mars 2007Cours de graphes 6 - Intranet1 Cours de graphes Chemins dEuler. Chemins de Hamilton. Couplages.

2 9 mars 2007Cours de graphes 6 - Intranet2 Les grandes lignes du cours Définitions de base Définitions de base Connexité Connexité Les plus courts chemins Les plus courts chemins Dijkstra et Bellmann-Ford Dijkstra et Bellmann-Ford Arbres Arbres Arbres de recouvrement minimaux Arbres de recouvrement minimaux Problèmes de flots Problèmes de flots Coloriage de graphes, graphes planaires Coloriage de graphes, graphes planaires Couplage Couplage Chemins dEuler et de Hamilton Chemins dEuler et de Hamilton Problèmes NP-complets Problèmes NP-complets

3 9 mars 2007Cours de graphes 6 - Intranet3 Chemins dEuler ----------------------------------------------------------------- C H E M I N S E T C Y C L E S D E U L E R ! ! !

4 9 mars 2007Cours de graphes 6 - Intranet4 Chemins dEuler ----------------------------------------------------------------- Lorigine historique :Lorigine historique : –La Pregel et les ponts à Königsberg ( Kaliningrad ) !

5 9 mars 2007Cours de graphes 6 - Intranet5 Chemins dEuler ----------------------------------------------------------------- Lorigine historique :Lorigine historique : –La Pregel et les ponts à Königsberg ( Kaliningrad ) ! –Pouvons-nous trouver un chemin qui traverse chaque pont une et une seule fois ?

6 9 mars 2007Cours de graphes 6 - Intranet6 Chemins dEuler ----------------------------------------------------------------- Lorigine historique :Lorigine historique : –La Pregel et les ponts à Königsberg ( Kaliningrad ) ! –Pouvons-nous trouver un chemin qui traverse chaque pont une et une seule fois ? –Si oui, les points de départ et darrivée coïncident-ils ?

7 9 mars 2007Cours de graphes 6 - Intranet7 Chemins dEuler ----------------------------------------------------------------- En termes de graphes :En termes de graphes : –Nous avons un multi - graphe !

8 9 mars 2007Cours de graphes 6 - Intranet8 Chemins dEuler ----------------------------------------------------------------- En termes de graphes :En termes de graphes : –Nous avons un multi - graphe !

9 9 mars 2007Cours de graphes 6 - Intranet9 Chemins dEuler ----------------------------------------------------------------- En termes de graphes :En termes de graphes : –Nous avons un multi - graphe !

10 9 mars 2007Cours de graphes 6 - Intranet10 Chemins dEuler ----------------------------------------------------------------- En termes de graphes :En termes de graphes : –Nous avons un multi - graphe ! –Pouvons-nous trouver un chemin qui passe une et une seule fois par chaque arête ? ( couverture des arêtes ) –Si oui, le chemin est-il un cycle ?

11 9 mars 2007Cours de graphes 6 - Intranet11 Chemins dEuler ----------------------------------------------------------------- Nous pouvons passer dun multi-graphe à un graphe simple :Nous pouvons passer dun multi-graphe à un graphe simple : –Il suffit de matérialiser un pont par un sommet !

12 9 mars 2007Cours de graphes 6 - Intranet12 Chemins dEuler ----------------------------------------------------------------- Nous pouvons passer dun multi-graphe à un graphe simple :Nous pouvons passer dun multi-graphe à un graphe simple : –Il suffit de matérialiser un pont par un sommet !

13 9 mars 2007Cours de graphes 6 - Intranet13 Chemins dEuler ----------------------------------------------------------------- Nous pouvons passer dun multi-graphe à un graphe simple :Nous pouvons passer dun multi-graphe à un graphe simple : –Il suffit de matérialiser un pont par un sommet ! –Nous conservons le même problème en même problème en termes de couverture termes de couverture des arêtes ! des arêtes !

14 9 mars 2007Cours de graphes 6 - Intranet14 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ?

15 9 mars 2007Cours de graphes 6 - Intranet15 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ? –La réponse est OUI !

16 9 mars 2007Cours de graphes 6 - Intranet16 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ? –La réponse est OUI ! 1 D

17 9 mars 2007Cours de graphes 6 - Intranet17 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ? –La réponse est OUI ! 1 2 D

18 9 mars 2007Cours de graphes 6 - Intranet18 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ? –La réponse est OUI ! 1 23 D

19 9 mars 2007Cours de graphes 6 - Intranet19 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ? –La réponse est OUI ! 1 23 4 D

20 9 mars 2007Cours de graphes 6 - Intranet20 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ? –La réponse est OUI ! 1 23 4 5 D

21 9 mars 2007Cours de graphes 6 - Intranet21 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ? –La réponse est OUI ! 1 23 4 5 6 D

22 9 mars 2007Cours de graphes 6 - Intranet22 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ? –La réponse est OUI ! 1 23 4 5 6 7 D

23 9 mars 2007Cours de graphes 6 - Intranet23 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ? –La réponse est OUI ! 1 23 4 5 6 7 8 D A

24 9 mars 2007Cours de graphes 6 - Intranet24 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ? –La réponse est OUI ! 1 23 4 5 6 7 8 D A A et D sont les seuls sommets de degré impair !

25 9 mars 2007Cours de graphes 6 - Intranet25 Chemins dEuler ----------------------------------------------------------------- La « maison de Nicolas » :La « maison de Nicolas » : –Pouvons-nous dessiner la figure suivante dun seule trait et sans lever le crayon ? –La réponse est OUI ! 1 23 4 5 6 7 8 D A A et D sont les seuls sommets de degré impair ! Le point de départ est lun de ceux-ci et le point darrivée lautre.

26 9 mars 2007Cours de graphes 6 - Intranet26 Chemins dEuler ----------------------------------------------------------------- L E T H E O R E M E D E U L E R S U R L E S C H E M I N S ! ! !

27 9 mars 2007Cours de graphes 6 - Intranet27 Chemins dEuler ----------------------------------------------------------------- Le théorème dEuler (1736) :Le théorème dEuler (1736) : –Un multi-graphe possède un chemin dEuler si et seulement si tous ses sommets, sauf peut-être deux, sont de degré pair !

28 9 mars 2007Cours de graphes 6 - Intranet28 Chemins dEuler ----------------------------------------------------------------- Le théorème dEuler (1736) :Le théorème dEuler (1736) : –Un multi-graphe possède un chemin dEuler si et seulement si tous ses sommets, sauf peut-être deux, sont de degré pair ! –Les sommets de degré impair, sils existent, sont les points de départ et darrivée !

29 9 mars 2007Cours de graphes 6 - Intranet29 Chemins dEuler ----------------------------------------------------------------- Le théorème dEuler (1736) :Le théorème dEuler (1736) : –Un multi-graphe possède un chemin dEuler si et seulement si tous ses sommets, sauf peut-être deux, sont de degré pair ! –Les sommets de degré impair, sils existent, sont les points de départ et darrivée ! –Si tous les sommets sont de degré pair, et seulement dans ce cas, le chemin dEuler est un cycle dEuler !

30 9 mars 2007Cours de graphes 6 - Intranet30 Chemins dEuler ----------------------------------------------------------------- Le théorème dEuler (1736) :Le théorème dEuler (1736) : –Un multi-graphe possède un chemin dEuler si et seulement si tous ses sommets, sauf peut-être deux, sont de degré pair ! –Les sommets de degré impair, sils existent, sont les points de départ et darrivée ! –Si tous les sommets sont de degré pair, et seulement dans ce cas, le chemin dEuler est un cycle dEuler ! Remarque :Remarque : –Nous conservons le même résultat si nous transformons un multi-graphe en un graphe simple, car les sommets auxiliaires ( les ponts ) sont de degré 2 !

31 9 mars 2007Cours de graphes 6 - Intranet31 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés !Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés !

32 9 mars 2007Cours de graphes 6 - Intranet32 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés !Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés ! –Soit le chemin dEuler suivant : u v... w

33 9 mars 2007Cours de graphes 6 - Intranet33 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés !Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés ! –Soit le chemin dEuler suivant : –Si « u » est différent de « v », le sommet « u » intervient avec un degré impair dans le chemin ! u v... u

34 9 mars 2007Cours de graphes 6 - Intranet34 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés !Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés ! –Soit le chemin dEuler suivant : –Si « u » est différent de « v », le sommet « u » intervient avec un degré impair dans le chemin ! –Si « u » est différent de « v », le sommet « v » intervient avec un degré impair dans le chemin ! u v... v v

35 9 mars 2007Cours de graphes 6 - Intranet35 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés !Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés ! –Soit le chemin dEuler suivant : –Si « u » est différent de « v », le sommet « u » intervient avec un degré impair dans le chemin ! –Si « u » est différent de « v », le sommet « v » intervient avec un degré impair dans le chemin ! –Si « u » et « v » sont identiques, cest-à-dire en présence dun cycle, le sommet « u » intervient avec un degré pair ! u v... v v

36 9 mars 2007Cours de graphes 6 - Intranet36 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés !Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés ! –Soit le chemin dEuler suivant : –Si « u » est différent de « v », le sommet « u » intervient avec un degré impair dans le chemin ! –Si « u » est différent de « v », le sommet « v » intervient avec un degré impair dans le chemin ! –Si « u » et « v » sont identiques, cest-à-dire en présence dun cycle, le sommet « u » intervient avec un degré pair ! –Tout autre sommet « w » intervient avec un degré pair dans le chemin dEuler ! u v... w w

37 9 mars 2007Cours de graphes 6 - Intranet37 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés !Admettons lexistence dun chemin ou dun cycle dEuler et déduisons-en les propriétés sur les degrés ! –Soit le chemin dEuler suivant : –Si « u » est différent de « v », le sommet « u » intervient avec un degré impair dans le chemin ! –Si « u » est différent de « v », le sommet « v » intervient avec un degré impair dans le chemin ! –Si « u » et « v » sont identiques, cest-à-dire en présence dun cycle, le sommet « u » intervient avec un degré pair ! –Tout autre sommet « w » intervient avec un degré pair dans le chemin dEuler ! –Le chemin ou cycle dEuler contient toutes les arêtes du graphe, doù le résultat annoncé ! u v... w

38 9 mars 2007Cours de graphes 6 - Intranet38 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !

39 9 mars 2007Cours de graphes 6 - Intranet39 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si tous les sommets du graphe G sont de degré pair :Si tous les sommets du graphe G sont de degré pair :

40 9 mars 2007Cours de graphes 6 - Intranet40 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si tous les sommets du graphe G sont de degré pair :Si tous les sommets du graphe G sont de degré pair : –En enlevant une arête ( u, v ) nous obtenons un graphe G dont exactement deux arêtes sont de degré impair !

41 9 mars 2007Cours de graphes 6 - Intranet41 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si tous les sommets du graphe G sont de degré pair :Si tous les sommets du graphe G sont de degré pair : –En enlevant une arête ( u, v ) nous obtenons un graphe G dont exactement deux arêtes sont de degré impair ! –Par application de la seconde partie du théorème ( celle qui est à venir ), nous déduisons que G admet un chemin dEuler qui commence en « u » et se termine en « v » !

42 9 mars 2007Cours de graphes 6 - Intranet42 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si tous les sommets du graphe G sont de degré pair :Si tous les sommets du graphe G sont de degré pair : –En enlevant une arête ( u, v ) nous obtenons un graphe G dont exactement deux arêtes sont de degré impair ! –Par application de la seconde partie du théorème ( celle qui est à venir ), nous déduisons que G admet un chemin dEuler qui commence en « u » et se termine en « v » ! –En insérant à nouveau larête ( u, v ) nous obtenons le cycle dEuler annoncé !

43 9 mars 2007Cours de graphes 6 - Intranet43 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair :

44 9 mars 2007Cours de graphes 6 - Intranet44 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G !

45 9 mars 2007Cours de graphes 6 - Intranet45 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons dabord que G est connexe ! ( Cas A )

46 9 mars 2007Cours de graphes 6 - Intranet46 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons dabord que G est connexe ! –Si v = w, tous les sommets de G sont pairs et il existe un cycle dEuler ( v ; v ) ! Et donc un chemin dEuler ( u, v ; v ) ! cycle dEuler ( v ; v ) ! Et donc un chemin dEuler ( u, v ; v ) ! ( Cas A )

47 9 mars 2007Cours de graphes 6 - Intranet47 Preuve du théorème dEuler ----------------------------------------------------------------- u v u et v sont au départ de degrés impairs !

48 9 mars 2007Cours de graphes 6 - Intranet48 Preuve du théorème dEuler ----------------------------------------------------------------- u v u et v sont au départ de degrés impairs ! La suppression de larête ( u, v ) les rend de degrés pairs !

49 9 mars 2007Cours de graphes 6 - Intranet49 Preuve du théorème dEuler ----------------------------------------------------------------- u v u et v sont au départ de degrés impairs ! La suppression de larête ( u, v ) les rend de degrés pairs ! Par hypothèse sur le nombre darêtes, et vu que tous les sommets sont de degrés pairs, il existe un cycle dEuler avec v comme point de départ et darrivée !

50 9 mars 2007Cours de graphes 6 - Intranet50 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons dabord que G est connexe ! –Si v = w, tous les sommets de G sont pairs et il existe un cycle dEuler ( v ; v ) ! Et donc un chemin dEuler ( u, v ; v ) ! cycle dEuler ( v ; v ) ! Et donc un chemin dEuler ( u, v ; v ) ! ( Cas A )

51 9 mars 2007Cours de graphes 6 - Intranet51 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons dabord que G est connexe ! –Si v = w, tous les sommets de G sont pairs et il existe un cycle dEuler ( v ; v ) ! Et donc un chemin dEuler ( u, v ; v ) ! cycle dEuler ( v ; v ) ! Et donc un chemin dEuler ( u, v ; v ) ! –Si v = w, v et w sont les seuls sommets dans G de degré impair ! Il existe donc dans G un chemin dEuler ( w ; v ) ! impair ! Il existe donc dans G un chemin dEuler ( w ; v ) ! Et du coup un chemin dEuler ( u, w ; v ) dans G ! Et du coup un chemin dEuler ( u, w ; v ) dans G ! / ( Cas A )

52 9 mars 2007Cours de graphes 6 - Intranet52 Preuve du théorème dEuler ----------------------------------------------------------------- u v u et v sont au départ de degrés impairs et w de degré pair ! w

53 9 mars 2007Cours de graphes 6 - Intranet53 Preuve du théorème dEuler ----------------------------------------------------------------- u v u et v sont au départ de degrés impairs et w de degré pair ! w La suppression de larête ( u, w ) donne à u de degré pair et à v et w des degrés impairs !

54 9 mars 2007Cours de graphes 6 - Intranet54 Preuve du théorème dEuler ----------------------------------------------------------------- u v u et v sont au départ de degrés impairs et w de degré pair ! w La suppression de larête ( u, w ) donne à u de degré pair et à v et w des degrés impairs ! Par hypothèse sur le nombre darêtes, et vu que v et w sont les seuls sommets de degrés impairs, il existe un chemin dEuler avec w comme départ et v comme arrivée !

55 9 mars 2007Cours de graphes 6 - Intranet55 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons dabord que G est connexe ! –Si v = w, tous les sommets de G sont pairs et il existe un cycle dEuler ( v ; v ) ! Et donc un chemin dEuler ( u, v ; v ) ! cycle dEuler ( v ; v ) ! Et donc un chemin dEuler ( u, v ; v ) ! –Si v = w, v et w sont les seuls sommets dans G de degré impair ! Il existe donc dans G un chemin dEuler ( w ; v ) ! impair ! Il existe donc dans G un chemin dEuler ( w ; v ) ! Et du coup un chemin dEuler ( u, w ; v ) dans G ! Et du coup un chemin dEuler ( u, w ; v ) dans G ! / ( Cas A )

56 9 mars 2007Cours de graphes 6 - Intranet56 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons maintenant que G nest plus connexe ! ( Cas B )

57 9 mars 2007Cours de graphes 6 - Intranet57 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons maintenant que G nest plus connexe ! –Nous avons les composantes connexes CC( u ) et CC( w ) ! ( Cas B )

58 9 mars 2007Cours de graphes 6 - Intranet58 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons maintenant que G nest plus connexe ! –Nous avons les composantes connexes CC( u ) et CC( w ) ! ( Cas B ) CC( u ) CC( w ) uw On lappelle un « isthme » ! v

59 9 mars 2007Cours de graphes 6 - Intranet59 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons maintenant que G nest plus connexe ! –Nous avons les composantes connexes CC( u ) et CC( w ) ! ( Cas B ) CC( u ) CC( w ) uw On lappelle un « isthme » ! v

60 9 mars 2007Cours de graphes 6 - Intranet60 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons maintenant que G nest plus connexe ! –Nous avons les composantes connexes CC( u ) et CC( w ) ! –Lemme : La somme des degrés des sommets dun graphe (connexe) est paire ! (connexe) est paire ! Donc, le nombre de sommets de degrés impairs Donc, le nombre de sommets de degrés impairs est paire ! ! ! est paire ! ! ! ( Cas B )

61 9 mars 2007Cours de graphes 6 - Intranet61 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons maintenant que G nest plus connexe ! –Nous avons les composantes connexes CC( u ) et CC( w ) ! CC( u ) CC( w ) uw On lappelle un « isthme » ! ( Cas B ) v Tous pairs ! Deuximpairs ou tous pairs !

62 9 mars 2007Cours de graphes 6 - Intranet62 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons maintenant que G nest plus connexe ! –Nous avons les composantes connexes CC( u ) et CC( w ) ! –Les sommets de CC( u ) sont pairs, doù le circuit dEuler ( u ; u ). ( Cas B )

63 9 mars 2007Cours de graphes 6 - Intranet63 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons maintenant que G nest plus connexe ! –Nous avons les composantes connexes CC( u ) et CC( w ) ! –Les sommets de CC( u ) sont pairs, doù le circuit dEuler ( u ; u ). –CC( w ) possède 0 ( v = w ) ou 2 ( v = w ) sommets de degrés impairs et il existe un chemin dEuler ( w ; v ) ! impairs et il existe un chemin dEuler ( w ; v ) ! / ( Cas B )

64 9 mars 2007Cours de graphes 6 - Intranet64 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons maintenant que G nest plus connexe ! –Nous avons les composantes connexes CC( u ) et CC( w ) ! –Les sommets de CC( u ) sont pairs, doù le circuit dEuler ( u ; u ). –CC( w ) possède 0 ( v = w ) ou 2 ( v = w ) sommets de degrés impairs et il existe un chemin dEuler ( w ; v ) ! impairs et il existe un chemin dEuler ( w ; v ) ! –On a donc le chemin dEuler ( u ; u, w ; v ), comme annoncé ! / ( Cas B )

65 9 mars 2007Cours de graphes 6 - Intranet65 Preuve du théorème dEuler ----------------------------------------------------------------- Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler !Admettons les conditions de parité sur les degrés et déduisons-en lexistence dun chemin ou cycle dEuler ! Si « u » et « v » sont les seuls sommets de degré impair :Si « u » et « v » sont les seuls sommets de degré impair : –Nous choisissons une arête ( u, w ) et nous la supprimons pour obtenir un graphe G ! pour obtenir un graphe G ! –Admettons maintenant que G nest plus connexe ! –Nous avons les composantes connexes CC( u ) et CC( w ) ! –Les sommets de CC( u ) sont pairs, doù le circuit dEuler ( u ; u ). –CC( w ) possède 0 ( v = w ) ou 2 ( v = w ) sommets de degrés impairs et il existe un chemin dEuler ( w ; v ) ! impairs et il existe un chemin dEuler ( w ; v ) ! –On a donc le chemin dEuler ( u ; u, w ; v ), comme annoncé ! / ( Cas B )

66 9 mars 2007Cours de graphes 6 - Intranet66 Construction dun chemin dEuler ----------------------------------------------------------------- L A C O N S T R U C T I O N D U N C H E M I N D E U L E R ! ! !

67 9 mars 2007Cours de graphes 6 - Intranet67 Construction dun chemin dEuler ----------------------------------------------------------------- Supposons données les conditions de parité sur les degrés !Supposons données les conditions de parité sur les degrés !

68 9 mars 2007Cours de graphes 6 - Intranet68 Construction dun chemin dEuler ----------------------------------------------------------------- Supposons données les conditions de parité sur les degrés !Supposons données les conditions de parité sur les degrés ! Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) !Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) !

69 9 mars 2007Cours de graphes 6 - Intranet69 Construction dun chemin dEuler ----------------------------------------------------------------- Supposons données les conditions de parité sur les degrés !Supposons données les conditions de parité sur les degrés ! Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) !Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) ! Nous considérons un sommet courant « s » à partir duquel nous continuons le chemin ! Au début, nous choisissons pour « s » un des deux sommets impairs du graphe !Nous considérons un sommet courant « s » à partir duquel nous continuons le chemin ! Au début, nous choisissons pour « s » un des deux sommets impairs du graphe !

70 9 mars 2007Cours de graphes 6 - Intranet70 Construction dun chemin dEuler ----------------------------------------------------------------- Supposons données les conditions de parité sur les degrés !Supposons données les conditions de parité sur les degrés ! Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) !Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) ! Nous considérons un sommet courant « s » à partir duquel nous continuons le chemin ! Au début, nous choisissons pour « s » un des deux sommets impairs du graphe !Nous considérons un sommet courant « s » à partir duquel nous continuons le chemin ! Au début, nous choisissons pour « s » un des deux sommets impairs du graphe ! Si « s » est identique à « v » et quil est isolé, nous avons fini !Si « s » est identique à « v » et quil est isolé, nous avons fini !

71 9 mars 2007Cours de graphes 6 - Intranet71 Construction dun chemin dEuler ----------------------------------------------------------------- Supposons données les conditions de parité sur les degrés !Supposons données les conditions de parité sur les degrés ! Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) !Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) ! Nous considérons un sommet courant « s » à partir duquel nous continuons le chemin ! Au début, nous choisissons pour « s » un des deux sommets impairs du graphe !Nous considérons un sommet courant « s » à partir duquel nous continuons le chemin ! Au début, nous choisissons pour « s » un des deux sommets impairs du graphe ! Si « s » est identique à « v » et quil est isolé, nous avons fini !Si « s » est identique à « v » et quil est isolé, nous avons fini ! Si « s » na que le seul voisin « u », nous empruntons larête en question avant de la supprimer ! Nous continuons en « u ».Si « s » na que le seul voisin « u », nous empruntons larête en question avant de la supprimer ! Nous continuons en « u ».

72 9 mars 2007Cours de graphes 6 - Intranet72 Construction dun chemin dEuler ----------------------------------------------------------------- Supposons données les conditions de parité sur les degrés !Supposons données les conditions de parité sur les degrés ! Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) !Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) ! Nous considérons un sommet courant « s » à partir duquel nous continuons le chemin ! Au début, nous choisissons pour « s » un des deux sommets impairs du graphe !Nous considérons un sommet courant « s » à partir duquel nous continuons le chemin ! Au début, nous choisissons pour « s » un des deux sommets impairs du graphe ! Si « s » est identique à « v » et quil est isolé, nous avons fini !Si « s » est identique à « v » et quil est isolé, nous avons fini ! Si « s » na que le seul voisin « u », nous empruntons larête en question avant de la supprimer ! Nous continuons en « u ».Si « s » na que le seul voisin « u », nous empruntons larête en question avant de la supprimer ! Nous continuons en « u ». Si « s » a plusieurs voisins, dont listhme ( s, u ), nous empruntons nimporte quelle arête, sauf listhme !Si « s » a plusieurs voisins, dont listhme ( s, u ), nous empruntons nimporte quelle arête, sauf listhme ! Remarque : listhme est unique ( pourquoi ? ) ! Remarque : listhme est unique ( pourquoi ? ) !

73 9 mars 2007Cours de graphes 6 - Intranet73 Construction dun chemin dEuler ----------------------------------------------------------------- Supposons données les conditions de parité sur les degrés !Supposons données les conditions de parité sur les degrés ! Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) !Si tous les sommets sont de degré pair, nous enlevons une arête ( u, v ) et nous construisons le chemin dEuler ( u ; v ) ! Nous considérons un sommet courant « s » à partir duquel nous continuons le chemin ! Au début, nous choisissons pour « s » un des deux sommets impairs du graphe !Nous considérons un sommet courant « s » à partir duquel nous continuons le chemin ! Au début, nous choisissons pour « s » un des deux sommets impairs du graphe ! Si « s » est identique à « v » et quil est isolé, nous avons fini !Si « s » est identique à « v » et quil est isolé, nous avons fini ! Si « s » na que le seul voisin « u », nous empruntons larête en question avant de la supprimer ! Nous continuons en « u ».Si « s » na que le seul voisin « u », nous empruntons larête en question avant de la supprimer ! Nous continuons en « u ». Si « s » a plusieurs voisins, dont listhme ( s, u ), nous empruntons nimporte quelle arête, sauf listhme !Si « s » a plusieurs voisins, dont listhme ( s, u ), nous empruntons nimporte quelle arête, sauf listhme ! Remarque : listhme est unique ( pourquoi ? ) ! Remarque : listhme est unique ( pourquoi ? ) ! Sinon, nous choisissons une arête ( s, u ) quelconque !Sinon, nous choisissons une arête ( s, u ) quelconque !

74 9 mars 2007Cours de graphes 6 - Intranet74 Construction dun chemin dEuler ----------------------------------------------------------------- Complexité :Complexité : A chaque étape, nous choisissons une des O( | E | ) arêtes !A chaque étape, nous choisissons une des O( | E | ) arêtes !

75 9 mars 2007Cours de graphes 6 - Intranet75 Construction dun chemin dEuler ----------------------------------------------------------------- Complexité :Complexité : A chaque étape, nous choisissons une des O( | E | ) arêtes !A chaque étape, nous choisissons une des O( | E | ) arêtes ! A chaque étape, nous sélectionnons une arête et testons, à moins que larête ne soit unique, si elle est un isthme en lançant une « vague » qui est de complexité O( | E | ) !A chaque étape, nous sélectionnons une arête et testons, à moins que larête ne soit unique, si elle est un isthme en lançant une « vague » qui est de complexité O( | E | ) !

76 9 mars 2007Cours de graphes 6 - Intranet76 Construction dun chemin dEuler ----------------------------------------------------------------- Complexité :Complexité : A chaque étape, nous choisissons une des O( | E | ) arêtes !A chaque étape, nous choisissons une des O( | E | ) arêtes ! A chaque étape, nous sélectionnons une arête et testons, à moins que larête ne soit unique, si elle est un isthme en lançant une « vague » qui est de complexité O( | E | ) !A chaque étape, nous sélectionnons une arête et testons, à moins que larête ne soit unique, si elle est un isthme en lançant une « vague » qui est de complexité O( | E | ) ! Si elle nest pas un isthme, larête est parcourue !Si elle nest pas un isthme, larête est parcourue ! Sinon, nous parcourons une quelconque autre arête !Sinon, nous parcourons une quelconque autre arête !

77 9 mars 2007Cours de graphes 6 - Intranet77 Construction dun chemin dEuler ----------------------------------------------------------------- Complexité :Complexité : A chaque étape, nous choisissons une des O( | E | ) arêtes !A chaque étape, nous choisissons une des O( | E | ) arêtes ! A chaque étape, nous sélectionnons une arête et testons, à moins que larête ne soit unique, si elle est un isthme en lançant une « vague » qui est de complexité O( | E | ) !A chaque étape, nous sélectionnons une arête et testons, à moins que larête ne soit unique, si elle est un isthme en lançant une « vague » qui est de complexité O( | E | ) ! Si elle nest pas un isthme, larête est parcourue !Si elle nest pas un isthme, larête est parcourue ! Sinon, nous parcourons une quelconque autre arête !Sinon, nous parcourons une quelconque autre arête ! Globalement, nous obtenons une complexité en O( | E |^2 ) = O( | V |^4 ).Globalement, nous obtenons une complexité en O( | E |^2 ) = O( | V |^4 ).

78 9 mars 2007Cours de graphes 6 - Intranet78 Construction dun chemin dEuler ----------------------------------------------------------------- U N E X E M P L E

79 9 mars 2007Cours de graphes 6 - Intranet79 Construction dun chemin dEuler ----------------------------------------------------------------- Exemple :Exemple : D

80 9 mars 2007Cours de graphes 6 - Intranet80 Construction dun chemin dEuler ----------------------------------------------------------------- Exemple :Exemple : D

81 9 mars 2007Cours de graphes 6 - Intranet81 Construction dun chemin dEuler ----------------------------------------------------------------- Exemple :Exemple : D

82 9 mars 2007Cours de graphes 6 - Intranet82 Construction dun chemin dEuler ----------------------------------------------------------------- Exemple :Exemple : D Isthme !

83 9 mars 2007Cours de graphes 6 - Intranet83 Construction dun chemin dEuler ----------------------------------------------------------------- Exemple :Exemple : D Isthme ! Nous évitons listhme et nous continuons avec lune des deux autres arêtes !

84 9 mars 2007Cours de graphes 6 - Intranet84 Construction dun chemin dEuler ----------------------------------------------------------------- Exemple :Exemple : D Isthme ! A prendre listhme, nous perdons toute possibilité de visiter les sommets à droite !

85 9 mars 2007Cours de graphes 6 - Intranet85 Construction dun chemin dEuler ----------------------------------------------------------------- Exemple :Exemple : D

86 9 mars 2007Cours de graphes 6 - Intranet86 Construction dun chemin dEuler ----------------------------------------------------------------- Exemple :Exemple : D

87 9 mars 2007Cours de graphes 6 - Intranet87 Construction dun chemin dEuler ----------------------------------------------------------------- Exemple :Exemple : D Isthme ! Listhme est le seul choix possible !

88 9 mars 2007Cours de graphes 6 - Intranet88 Construction dun chemin dEuler ----------------------------------------------------------------- Exemple :Exemple : D

89 9 mars 2007Cours de graphes 6 - Intranet89 Chemins et cycles de Hamilton ----------------------------------------------------------------- C H E M I N S E T C Y C L E S D E H A M I L T O N ! ! !

90 9 mars 2007Cours de graphes 6 - Intranet90 Chemins et cycles de Hamilton ----------------------------------------------------------------- Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ? Si oui, les points de départ et darrivée sont-ils voisins ?Si oui, les points de départ et darrivée sont-ils voisins ?

91 9 mars 2007Cours de graphes 6 - Intranet91 Chemins et cycles de Hamilton ----------------------------------------------------------------- Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ? Si oui, les points de départ et darrivée sont-ils voisins ?Si oui, les points de départ et darrivée sont-ils voisins ? Dodéca-èdre

92 9 mars 2007Cours de graphes 6 - Intranet92 Chemins et cycles de Hamilton ----------------------------------------------------------------- Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ? Si oui, les points de départ et darrivée sont-ils voisins ?Si oui, les points de départ et darrivée sont-ils voisins ? Dodéca-èdre Cycle de Hamilton

93 9 mars 2007Cours de graphes 6 - Intranet93 Chemins et cycles de Hamilton ----------------------------------------------------------------- Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ? Si oui, les points de départ et darrivée sont-ils voisins ?Si oui, les points de départ et darrivée sont-ils voisins ? Dodéca-èdre Cycle de Hamilton Cest le casse-tête inventé par Lord Hamilton en 1856.

94 9 mars 2007Cours de graphes 6 - Intranet94 Chemins et cycles de Hamilton ----------------------------------------------------------------- Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ? Si oui, les points de départ et darrivée sont-ils voisins ?Si oui, les points de départ et darrivée sont-ils voisins ? Dodéca-èdre Cycle de Hamilton Le greedy ne marche pas car il faut considérer tout le graphe pour construire la solution !

95 9 mars 2007Cours de graphes 6 - Intranet95 Chemins et cycles de Hamilton ----------------------------------------------------------------- Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ? Si oui, les points de départ et darrivée sont-ils voisins ?Si oui, les points de départ et darrivée sont-ils voisins ? Dodéca-èdre Cycle de Hamilton Le greedy ne marche pas car il faut considérer tout le graphe pour construire la solution ! ? ? ?

96 9 mars 2007Cours de graphes 6 - Intranet96 Chemins et cycles de Hamilton ----------------------------------------------------------------- Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ? Si oui, les points de départ et darrivée sont-ils voisins ?Si oui, les points de départ et darrivée sont-ils voisins ? Le graphe complet K ! 5

97 9 mars 2007Cours de graphes 6 - Intranet97 Chemins et cycles de Hamilton ----------------------------------------------------------------- Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ? Si oui, les points de départ et darrivée sont-ils voisins ?Si oui, les points de départ et darrivée sont-ils voisins ? Le graphe complet K ! 5 Ce graphe admet des chemins de Hamilton !

98 9 mars 2007Cours de graphes 6 - Intranet98 Chemins et cycles de Hamilton ----------------------------------------------------------------- Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ? Si oui, les points de départ et darrivée sont-ils voisins ?Si oui, les points de départ et darrivée sont-ils voisins ? Le graphe complet K ! 5 Ce graphe admet des chemins de Hamilton ! Le graphe de Peterson !

99 9 mars 2007Cours de graphes 6 - Intranet99 Chemins et cycles de Hamilton ----------------------------------------------------------------- Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ? Si oui, les points de départ et darrivée sont-ils voisins ?Si oui, les points de départ et darrivée sont-ils voisins ? Le graphe complet K ! 5 Ce graphe admet des chemins de Hamilton ! Le graphe de Peterson ! Il est sans chemin de Hamilton !

100 9 mars 2007Cours de graphes 6 - Intranet100 Chemins et cycles de Hamilton ----------------------------------------------------------------- U N E A P P L I C A T I O N ! ! !

101 9 mars 2007Cours de graphes 6 - Intranet101 Chemins et cycles de Hamilton ----------------------------------------------------------------- Nous avons 4 jeunes filles A, B, C, D et 4 jeunes gens a, b, c, d.Nous avons 4 jeunes filles A, B, C, D et 4 jeunes gens a, b, c, d. Ils dansent des rondes formées de files et garçons en alternance.Ils dansent des rondes formées de files et garçons en alternance. Combien de rondes peuvent-ils danser si chaque jeune fille ne danse quune seule fois à côté du même jeune homme ?Combien de rondes peuvent-ils danser si chaque jeune fille ne danse quune seule fois à côté du même jeune homme ?

102 9 mars 2007Cours de graphes 6 - Intranet102 Chemins et cycles de Hamilton ----------------------------------------------------------------- Nous avons 4 jeunes filles A, B, C, D et 4 jeunes gens a, b, c, d.Nous avons 4 jeunes filles A, B, C, D et 4 jeunes gens a, b, c, d. Ils dansent des rondes formées de files et garçons en alternance.Ils dansent des rondes formées de files et garçons en alternance. Combien de rondes peuvent-ils danser si chaque jeune fille ne danse quune seule fois à côté du même jeune homme ?Combien de rondes peuvent-ils danser si chaque jeune fille ne danse quune seule fois à côté du même jeune homme ? Le graphe bi-parti complet K ! 4,4 A B C D a b c d

103 9 mars 2007Cours de graphes 6 - Intranet103 Chemins et cycles de Hamilton ----------------------------------------------------------------- Nous avons 4 jeunes filles A, B, C, D et 4 jeunes gens a, b, c, d.Nous avons 4 jeunes filles A, B, C, D et 4 jeunes gens a, b, c, d. Ils dansent des rondes formées de files et garçons en alternance.Ils dansent des rondes formées de files et garçons en alternance. Combien de rondes peuvent-ils danser si chaque jeune fille ne danse quune seule fois à côté du même jeune homme ?Combien de rondes peuvent-ils danser si chaque jeune fille ne danse quune seule fois à côté du même jeune homme ? Le graphe bi-parti complet K ! 4,4 A B C D a b c d Nous cherchons un cycle de Hamilton !

104 9 mars 2007Cours de graphes 6 - Intranet104 Chemins et cycles de Hamilton ----------------------------------------------------------------- Nous avons 4 jeunes filles A, B, C, D et 4 jeunes gens a, b, c, d.Nous avons 4 jeunes filles A, B, C, D et 4 jeunes gens a, b, c, d. Ils dansent des rondes formées de files et garçons en alternance.Ils dansent des rondes formées de files et garçons en alternance. Combien de rondes peuvent-ils danser si chaque jeune fille ne danse quune seule fois à côté du même jeune homme ?Combien de rondes peuvent-ils danser si chaque jeune fille ne danse quune seule fois à côté du même jeune homme ? Le graphe bi-parti complet K ! 4,4 Nous cherchons un cycle de Hamilton ! On peut former une deuxième ronde ! A B C D a b c d

105 9 mars 2007Cours de graphes 6 - Intranet105 Chemins et cycles de Hamilton ----------------------------------------------------------------- Q U E L Q U E S A F F I R M A T I O N S ! ! !

106 9 mars 2007Cours de graphes 6 - Intranet106 Chemins et cycles de Hamilton ----------------------------------------------------------------- Savoir si un graphe admet un chemin ou un cycle de Hamilton est NP-complet en général !Savoir si un graphe admet un chemin ou un cycle de Hamilton est NP-complet en général !

107 9 mars 2007Cours de graphes 6 - Intranet107 Chemins et cycles de Hamilton ----------------------------------------------------------------- Savoir si un graphe admet un chemin ou un cycle de Hamilton est NP-complet en général !Savoir si un graphe admet un chemin ou un cycle de Hamilton est NP-complet en général ! Il sagit de savoir sil existe un chemin simple qui couvre les sommets ! Or, le nombre de chemins simples est en général exponentiel par rapport au nombre de sommets !Il sagit de savoir sil existe un chemin simple qui couvre les sommets ! Or, le nombre de chemins simples est en général exponentiel par rapport au nombre de sommets !

108 9 mars 2007Cours de graphes 6 - Intranet108 Chemins et cycles de Hamilton ----------------------------------------------------------------- Savoir si un graphe admet un chemin ou un cycle de Hamilton est NP-complet en général !Savoir si un graphe admet un chemin ou un cycle de Hamilton est NP-complet en général ! Il sagit de savoir sil existe un chemin simple qui couvre les sommets ! Or, le nombre de chemins simples est en général exponentiel par rapport au nombre de sommets !Il sagit de savoir sil existe un chemin simple qui couvre les sommets ! Or, le nombre de chemins simples est en général exponentiel par rapport au nombre de sommets ! Le chemin de Hamilton comporte | V | - 1 arêtes sur les | E | arêtes quil y a dans le graphe !Le chemin de Hamilton comporte | V | - 1 arêtes sur les | E | arêtes quil y a dans le graphe !

109 9 mars 2007Cours de graphes 6 - Intranet109 Chemins et cycles de Hamilton ----------------------------------------------------------------- Savoir si un graphe admet un chemin ou un cycle de Hamilton est NP-complet en général !Savoir si un graphe admet un chemin ou un cycle de Hamilton est NP-complet en général ! Il sagit de savoir sil existe un chemin simple qui couvre les sommets ! Or, le nombre de chemins simples est en général exponentiel par rapport au nombre de sommets !Il sagit de savoir sil existe un chemin simple qui couvre les sommets ! Or, le nombre de chemins simples est en général exponentiel par rapport au nombre de sommets ! Le chemin de Hamilton comporte | V | - 1 arêtes sur les | E | arêtes quil y a dans le graphe !Le chemin de Hamilton comporte | V | - 1 arêtes sur les | E | arêtes quil y a dans le graphe ! Lesquelles faut-il prendre, lesquelles faut-il laisser ? ? ?Lesquelles faut-il prendre, lesquelles faut-il laisser ? ? ?

110 9 mars 2007Cours de graphes 6 - Intranet110 Chemins et cycles de Hamilton ----------------------------------------------------------------- Il y a des cas particuliers :Il y a des cas particuliers : –Un graphe bi-parti avec un nombre impair de sommets nest jamais hamiltonien !

111 9 mars 2007Cours de graphes 6 - Intranet111 Chemins et cycles de Hamilton ----------------------------------------------------------------- Il y a des cas particuliers :Il y a des cas particuliers : –Un graphe bi-parti avec un nombre impair de sommets nest jamais hamiltonien ! –Un graphe avec n sommets ayant un degré dau moins n/2 pour chaque sommet est hamiltonien ( Dirac ).

112 9 mars 2007Cours de graphes 6 - Intranet112 Chemins et cycles de Hamilton ----------------------------------------------------------------- Il y a des cas particuliers :Il y a des cas particuliers : –Un graphe bi-parti avec un nombre impair de sommets nest jamais hamiltonien ! –Un graphe avec n sommets ayant un degré dau moins n/2 pour chaque sommet est hamiltonien ( Dirac ). –Un graphe avec n sommets tel que pour toute paire de sommets u et v qui ne sont pas voisins on ait la propriété D( u ) + D( v ) >= n est hamiltonien ( Ore ).

113 9 mars 2007Cours de graphes 6 - Intranet113 Chemins et cycles de Hamilton ----------------------------------------------------------------- Une problématique particulière :Une problématique particulière : –Le problème du voyageur de commerce consiste à considérer un graphe pondéré complet et à trouver le cycle de Hamilton le moins cher parmi un nombre exponentiel de cycles de Hamilton !

114 9 mars 2007Cours de graphes 6 - Intranet114 Chemins et cycles de Hamilton ----------------------------------------------------------------- Une problématique particulière :Une problématique particulière : –Le problème du voyageur de commerce consiste à considérer un graphe pondéré complet et à trouver le cycle de Hamilton le moins cher parmi un nombre exponentiel de cycles de Hamilton ! –Si le graphe est incomplet, la simple question de savoir sil existe un cycle de Hamilton est NP-complète ( sans vouloir trouver le meilleur de ces cycles ) !

115 9 mars 2007Cours de graphes 6 - Intranet115 Chemins et cycles de Hamilton ----------------------------------------------------------------- Une problématique particulière :Une problématique particulière : –Le problème du voyageur de commerce consiste à considérer un graphe pondéré complet et à trouver le cycle de Hamilton le moins cher parmi un nombre exponentiel de cycles de Hamilton ! –Si le graphe est incomplet, la simple question de savoir sil existe un cycle de Hamilton est NP-complète ( sans vouloir trouver le meilleur de ces cycles ) ! –Soit cest difficile den trouver un seul cycle, soit cest difficile à cause du trop grand nombre de cycles !

116 9 mars 2007Cours de graphes 6 - Intranet116 Couplages ----------------------------------------------------------------- C O U P L A G E S ! ! !

117 9 mars 2007Cours de graphes 6 - Intranet117 Couplages ----------------------------------------------------------------- Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple !Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple !

118 9 mars 2007Cours de graphes 6 - Intranet118 Couplages ----------------------------------------------------------------- Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple !Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple !

119 9 mars 2007Cours de graphes 6 - Intranet119 Couplages ----------------------------------------------------------------- Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple !Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple ! Un couplage

120 9 mars 2007Cours de graphes 6 - Intranet120 Couplages ----------------------------------------------------------------- Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple !Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple ! Un couplage Les arêtes retenues et les sommets atteints sont dits saturés par le couplage.

121 9 mars 2007Cours de graphes 6 - Intranet121 Couplages ----------------------------------------------------------------- Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple !Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple ! Un couplage Les arêtes retenues et les sommets atteints sont dits saturés par le couplage. Souvent, on souhaite maximiser le nombre de couples ! Un couplage est parfait sil sature tous les sommets du graphe !

122 9 mars 2007Cours de graphes 6 - Intranet122 Les arêtes retenues et les sommets atteints sont dits saturés par le couplage. Couplages ----------------------------------------------------------------- Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple !Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple ! Un couplage parfait ! Souvent, on souhaite maximiser le nombre de couples ! Un couplage est parfait sil sature tous les sommets du graphe !

123 9 mars 2007Cours de graphes 6 - Intranet123 Les arêtes retenues et les sommets atteints sont dits saturés par le couplage. Couplages ----------------------------------------------------------------- Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple !Un couplage dun graphe G = ( V, E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie dau plus un couple ! Un couplage parfait ! Souvent, on souhaite maximiser le nombre de couples ! Un couplage est parfait sil sature tous les sommets du graphe ! Un couplage maximal, non parfait !

124 9 mars 2007Cours de graphes 6 - Intranet124 Deux exemples ----------------------------------------------------------------- D E U X E X E M P L E S

125 9 mars 2007Cours de graphes 6 - Intranet125 Deux exemples ----------------------------------------------------------------- Exemple :Exemple : –Une promotion délèves qui doivent réaliser leur projet dalgorithmique en binômes, –des affinités, qui sont toujours réciproques, entre certains élèves.

126 9 mars 2007Cours de graphes 6 - Intranet126 Deux exemples ----------------------------------------------------------------- Exemple :Exemple : –Une promotion délèves qui doivent réaliser leur projet dalgorithmique en binômes, –des affinités, qui sont toujours réciproques, entre certains élèves. –Quel est le maximum de binômes que nous pouvons former en respectant les affinités ? Y a-t-il une solution qui permette à tout élève de trouver un binôme ?

127 9 mars 2007Cours de graphes 6 - Intranet127 Deux exemples ----------------------------------------------------------------- Exemple :Exemple : –Une promotion délèves qui doivent réaliser leur projet dalgorithmique en binômes, –des affinités, qui sont toujours réciproques, entre certains élèves. –Quel est le maximum de binômes que nous pouvons former en respectant les affinités ? Y a-t-il une solution qui permette à tout élève de trouver un binôme ?

128 9 mars 2007Cours de graphes 6 - Intranet128 Exemple :Exemple : –des lycées représentés par autant de sommets quil y a de places, –des élèves qui ont émis des choix ( arêtes entre des élèves et des places dans les lycées ). Deux exemples -----------------------------------------------------------------

129 9 mars 2007Cours de graphes 6 - Intranet129 Exemple :Exemple : –des lycées représentés par autant de sommets quil y a de places, –des élèves qui ont émis des choix ( arêtes entre des élèves et des places dans les lycées ). –Y a-t-il un couplage qui sature les sommets-élèves ? Deux exemples -----------------------------------------------------------------

130 9 mars 2007Cours de graphes 6 - Intranet130 Exemple :Exemple : –des lycées représentés par autant de sommets quil y a de places, –des élèves qui ont émis des choix ( arêtes entre des élèves et des places dans les lycées ). –Y a-t-il un couplage qui sature les sommets-élèves ? –Un problème plus général : Nous pouvons pondérer les arêtes par des préférences et choisir le couplage qui maximise la somme des satisfactions. Nous pouvons pondérer les arêtes par des préférences et choisir le couplage qui maximise la somme des satisfactions. Deux exemples -----------------------------------------------------------------

131 9 mars 2007Cours de graphes 6 - Intranet131 Lycées Deux exemples -----------------------------------------------------------------

132 9 mars 2007Cours de graphes 6 - Intranet132 Lycées Elèves Deux exemples -----------------------------------------------------------------

133 9 mars 2007Cours de graphes 6 - Intranet133 Lycées Elèves Deux exemples -----------------------------------------------------------------

134 9 mars 2007Cours de graphes 6 - Intranet134 Lycées Elèves Deux exemples -----------------------------------------------------------------

135 9 mars 2007Cours de graphes 6 - Intranet135 Lycées Elèves Deux exemples -----------------------------------------------------------------

136 9 mars 2007Cours de graphes 6 - Intranet136 Lycées Elèves Deux exemples -----------------------------------------------------------------

137 9 mars 2007Cours de graphes 6 - Intranet137 Lycées Elèves Y a-t-il un couplage qui sature les élèves ? Deux exemples -----------------------------------------------------------------

138 9 mars 2007Cours de graphes 6 - Intranet138 Lycées Elèves Y a-t-il un couplage qui sature les élèves ? OUI ! ! ! Deux exemples -----------------------------------------------------------------

139 9 mars 2007Cours de graphes 6 - Intranet139 Deux exemples ----------------------------------------------------------------- Les c - couplages :Les c - couplages : –Un lycée offrant p places est représenté par p sommets non reliés entre eux. –Nous pourrions fusionner ces sommets en un unique sommet qui peut faire partie dau plus p couples.

140 9 mars 2007Cours de graphes 6 - Intranet140 Deux exemples ----------------------------------------------------------------- Les c - couplages :Les c - couplages : –Un lycée offrant p places est représenté par p sommets non reliés entre eux. –Nous pourrions fusionner ces sommets en un unique sommet qui peut faire partie dau plus p couples. –Un c - couplage associe à chaque sommet u un nombre maximum de couples dans lequel ce sommet peut apparaître.

141 9 mars 2007Cours de graphes 6 - Intranet141 Deux exemples ----------------------------------------------------------------- Les c - couplages :Les c - couplages : –Un lycée offrant p places est représenté par p sommets non reliés entre eux. –Nous pourrions fusionner ces sommets en un unique sommet qui peut faire partie dau plus p couples. –Un c - couplage associe à chaque sommet u un nombre maximum de couples dans lequel ce sommet peut apparaître. –Ce nombre doit être inférieur au degré du sommet pour que le problème soit intéressant !

142 9 mars 2007Cours de graphes 6 - Intranet142 Lycées Elèves Deux exemples ----------------------------------------------------------------- 3 2 2 1 1 1 1

143 9 mars 2007Cours de graphes 6 - Intranet143 Lycées Elèves Deux exemples ----------------------------------------------------------------- 3 2 2 1 1 1 1 Trivaux !

144 9 mars 2007Cours de graphes 6 - Intranet144 Lycées Elèves Y a-t-il un c - couplage qui sature les élèves ? Deux exemples ----------------------------------------------------------------- 3 2 2 1 1 1 1

145 9 mars 2007Cours de graphes 6 - Intranet145 Lycées Elèves Y a-t-il un c - couplage qui sature les élèves ? Deux exemples ----------------------------------------------------------------- 3 2 2 1 1 1 1

146 9 mars 2007Cours de graphes 6 - Intranet146 Couplages ----------------------------------------------------------------- C O M M E N T T R O U V E R L E S 1 - C O U P L A G E S M A X I M A U X ? ? ?

147 9 mars 2007Cours de graphes 6 - Intranet147 Couplages ----------------------------------------------------------------- Maximisation des 1 - couplages !Maximisation des 1 - couplages !

148 9 mars 2007Cours de graphes 6 - Intranet148 Couplages ----------------------------------------------------------------- Maximisation des 1 - couplages !Maximisation des 1 - couplages ! Un chemin alterné est un chemin simple quiUn chemin alterné est un chemin simple qui –commence en un sommet non saturé et –qui comporte une alternance darêtes saturées et non-saturées.

149 9 mars 2007Cours de graphes 6 - Intranet149 Couplages ----------------------------------------------------------------- Maximisation des 1 - couplages !Maximisation des 1 - couplages ! Un chemin alterné est un chemin simple quiUn chemin alterné est un chemin simple qui –commence en un sommet non saturé et –qui comporte une alternance darêtes saturées et non-saturées. Un chemin améliorant est un chemin alterné qui se termine en un sommet non saturé !Un chemin améliorant est un chemin alterné qui se termine en un sommet non saturé !

150 9 mars 2007Cours de graphes 6 - Intranet150 Couplages ----------------------------------------------------------------- Maximisation des 1 - couplages !Maximisation des 1 - couplages ! Un chemin alterné est un chemin simple quiUn chemin alterné est un chemin simple qui –commence en un sommet non saturé et –qui comporte une alternance darêtes saturées et non-saturées. Un chemin améliorant est un chemin alterné qui se termine en un sommet non saturé !Un chemin améliorant est un chemin alterné qui se termine en un sommet non saturé ! Saturé : Non-saturé :

151 9 mars 2007Cours de graphes 6 - Intranet151 Couplages ----------------------------------------------------------------- Maximisation des 1 - couplages !Maximisation des 1 - couplages ! Un chemin alterné est un chemin simple quiUn chemin alterné est un chemin simple qui –commence en un sommet non saturé et –qui comporte une alternance darêtes saturées et non-saturées. Un chemin améliorant est un chemin alterné qui se termine en un sommet non saturé !Un chemin améliorant est un chemin alterné qui se termine en un sommet non saturé ! Saturé : Non-saturé : Chemin alterné !

152 9 mars 2007Cours de graphes 6 - Intranet152 Couplages ----------------------------------------------------------------- Maximisation des 1 - couplages !Maximisation des 1 - couplages ! Un chemin alterné est un chemin simple quiUn chemin alterné est un chemin simple qui –commence en un sommet non saturé et –qui comporte une alternance darêtes saturées et non-saturées. Un chemin améliorant est un chemin alterné qui se termine en un sommet non saturé !Un chemin améliorant est un chemin alterné qui se termine en un sommet non saturé ! Saturé : Non-saturé : Chemin alterné ! Chemin améliorant !

153 9 mars 2007Cours de graphes 6 - Intranet153 Couplages ----------------------------------------------------------------- Le chemin améliorant !

154 9 mars 2007Cours de graphes 6 - Intranet154 Couplages ----------------------------------------------------------------- Nous avons toujours :Nous avons toujours : –Les extrémités dun chemin améliorant sont non-saturées ! Le chemin améliorant !

155 9 mars 2007Cours de graphes 6 - Intranet155 Couplages ----------------------------------------------------------------- Nous avons toujours :Nous avons toujours : –Les extrémités dun chemin améliorant sont non-saturées ! –Les sommets intermédiaires sont saturés ! Le chemin améliorant !

156 9 mars 2007Cours de graphes 6 - Intranet156 Couplages ----------------------------------------------------------------- Nous avons toujours :Nous avons toujours : –Les extrémités dun chemin améliorant sont non-saturées ! –Les sommets intermédiaires sont saturés ! –Il y a une arête non-saturée de plus que darêtes saturées ! Le chemin améliorant !

157 9 mars 2007Cours de graphes 6 - Intranet157 Couplages ----------------------------------------------------------------- Nous avons toujours :Nous avons toujours : –Les extrémités dun chemin améliorant sont non-saturées ! –Les sommets intermédiaires sont saturés ! –Il y a une arête non-saturée de plus que darêtes saturées ! Nous améliorons le couplage enNous améliorons le couplage en –saturant les arêtes du chemin améliorant qui ne létaient pas –et en dé-saturant celles qui létaient. Le chemin améliorant !

158 9 mars 2007Cours de graphes 6 - Intranet158 Couplages ----------------------------------------------------------------- Nous avons toujours :Nous avons toujours : –Les extrémités dun chemin améliorant sont non-saturées ! –Les sommets intermédiaires sont saturés ! –Il y a une arête non-saturée de plus que darêtes saturées ! Nous améliorons le couplage enNous améliorons le couplage en –saturant les arêtes du chemin améliorant qui ne létaient pas –et en dé-saturant celles qui létaient. Le nouveau couplage !

159 9 mars 2007Cours de graphes 6 - Intranet159 Couplages ----------------------------------------------------------------- Nous avons toujours :Nous avons toujours : –Les extrémités dun chemin améliorant sont non-saturées ! –Les sommets intermédiaires sont saturés ! –Il y a une arête non-saturée de plus que darêtes saturées ! Nous améliorons le couplage enNous améliorons le couplage en –saturant les arêtes du chemin améliorant qui ne létaient pas –et en dé-saturant celles qui létaient. Complexité en O( | V |^2 * | E | ), car :Complexité en O( | V |^2 * | E | ), car : Le nouveau couplage !

160 9 mars 2007Cours de graphes 6 - Intranet160 Couplages ----------------------------------------------------------------- Nous avons toujours :Nous avons toujours : –Les extrémités dun chemin améliorant sont non-saturées ! –Les sommets intermédiaires sont saturés ! –Il y a une arête non-saturée de plus que darêtes saturées ! Nous améliorons le couplage enNous améliorons le couplage en –saturant les arêtes du chemin améliorant qui ne létaient pas –et en dé-saturant celles qui létaient. Complexité en O( | V |^2 * | E | ), car :Complexité en O( | V |^2 * | E | ), car : –Nous avons au plus O( | V | ) itérations ! Le nouveau couplage !

161 9 mars 2007Cours de graphes 6 - Intranet161 Couplages ----------------------------------------------------------------- Nous avons toujours :Nous avons toujours : –Les extrémités dun chemin améliorant sont non-saturées ! –Les sommets intermédiaires sont saturés ! –Il y a une arête non-saturée de plus que darêtes saturées ! Nous améliorons le couplage enNous améliorons le couplage en –saturant les arêtes du chemin améliorant qui ne létaient pas –et en dé-saturant celles qui létaient. Complexité en O( | V |^2 * | E | ), car :Complexité en O( | V |^2 * | E | ), car : –Nous avons au plus O( | V | ) itérations ! –A chaque itération, nous balayons au plus les O( | V | ) sommets non saturés à la recherche dun chemin améliorant ! Le nouveau couplage !

162 9 mars 2007Cours de graphes 6 - Intranet162 Couplages ----------------------------------------------------------------- Nous avons toujours :Nous avons toujours : –Les extrémités dun chemin améliorant sont non-saturées ! –Les sommets intermédiaires sont saturés ! –Il y a une arête non-saturée de plus que darêtes saturées ! Nous améliorons le couplage enNous améliorons le couplage en –saturant les arêtes du chemin améliorant qui ne létaient pas –et en dé-saturant celles qui létaient. Complexité en O( | V |^2 * | E | ), car :Complexité en O( | V |^2 * | E | ), car : –Nous avons au plus O( | V | ) itérations ! –A chaque itération, nous balayons au plus les O( | V | ) sommets non saturés à la recherche dun chemin améliorant ! –La recherche dun chemin améliorant est en O( | E | ) ! Le nouveau couplage !

163 9 mars 2007Cours de graphes 6 - Intranet163 C O R R E C T I O N D E L A L G O R I T H M E Correction du couplage -----------------------------------------------------------------

164 9 mars 2007Cours de graphes 6 - Intranet164 Correction du couplage ----------------------------------------------------------------- Théorème ( Berge, 1957 ) :Théorème ( Berge, 1957 ) : –Un couplage C est maximal si et seulement sil ne comporte pas de chemin améliorant.

165 9 mars 2007Cours de graphes 6 - Intranet165 Correction du couplage ----------------------------------------------------------------- Théorème ( Berge, 1957 ) :Théorème ( Berge, 1957 ) : –Un couplage C est maximal si et seulement sil ne comporte pas de chemin améliorant. Preuve :Preuve : –Il est trivial que, sil y a encore des chemins améliorants, alors le couplage C ne peut pas être maximal !

166 9 mars 2007Cours de graphes 6 - Intranet166 Correction du couplage ----------------------------------------------------------------- Théorème ( Berge, 1957 ) :Théorème ( Berge, 1957 ) : –Un couplage C est maximal si et seulement sil ne comporte pas de chemin améliorant. Preuve :Preuve : –Il est trivial que, sil y a encore des chemins améliorants, alors le couplage C ne peut pas être maximal ! –Il est moins évident de voir que, en labsence de chemins améliorants, le couplage C soit maximal sur tous les couplages !

167 9 mars 2007Cours de graphes 6 - Intranet167 Correction du couplage ----------------------------------------------------------------- Théorème ( Berge, 1957 ) :Théorème ( Berge, 1957 ) : –Un couplage C est maximal si et seulement sil ne comporte pas de chemin améliorant. Preuve :Preuve : –Il est trivial que, sil y a encore des chemins améliorants, alors le couplage C ne peut pas être maximal ! –Il est moins évident de voir que, en labsence de chemins améliorants, le couplage C soit maximal sur tous les couplages ! –Nous pourrions avoir un maximum local ! ! !

168 9 mars 2007Cours de graphes 6 - Intranet168 Correction du couplage ----------------------------------------------------------------- Un lemme :Un lemme : –Soit un graphe G avec deux couplages C et C qui sont donnés par leurs arêtes !

169 9 mars 2007Cours de graphes 6 - Intranet169 Correction du couplage ----------------------------------------------------------------- Un lemme :Un lemme : –Soit un graphe G avec deux couplages C et C qui sont donnés par leurs arêtes ! –Considérons lensemble darêtes ( C \ C ) v ( C \ C ).

170 9 mars 2007Cours de graphes 6 - Intranet170 Correction du couplage ----------------------------------------------------------------- Un lemme :Un lemme : –Soit un graphe G avec deux couplages C et C qui sont donnés par leurs arêtes ! –Considérons lensemble darêtes ( C \ C ) v ( C \ C ). –Cest lensemble des arêtes qui sont soit dans C, soit dans C.

171 9 mars 2007Cours de graphes 6 - Intranet171 Correction du couplage ----------------------------------------------------------------- Un lemme :Un lemme : –Soit un graphe G avec deux couplages C et C qui sont donnés par leurs arêtes ! –Considérons lensemble darêtes ( C \ C ) v ( C \ C ). –Cest lensemble des arêtes qui sont soit dans C, soit dans C. –Nous ignorons les arêtes de G qui ne sont dans les deux couplages ou dans aucun des deux !

172 9 mars 2007Cours de graphes 6 - Intranet172 Correction du couplage -----------------------------------------------------------------

173 9 mars 2007Cours de graphes 6 - Intranet173 Correction du couplage ----------------------------------------------------------------- Le couplage C !

174 9 mars 2007Cours de graphes 6 - Intranet174 Correction du couplage ----------------------------------------------------------------- Le couplage C !

175 9 mars 2007Cours de graphes 6 - Intranet175 Correction du couplage ----------------------------------------------------------------- Le couplage C ! Nous enlevons ces arêtes !

176 9 mars 2007Cours de graphes 6 - Intranet176 Correction du couplage ----------------------------------------------------------------- Le couplage C ! Nous enlevons ces arêtes ! Daprès le lemme il nous reste :

177 9 mars 2007Cours de graphes 6 - Intranet177 Correction du couplage ----------------------------------------------------------------- Le couplage C ! Nous enlevons ces arêtes ! Daprès le lemme il nous reste : - soit des sommets isolés,

178 9 mars 2007Cours de graphes 6 - Intranet178 Correction du couplage ----------------------------------------------------------------- Le couplage C ! Nous enlevons ces arêtes ! Daprès le lemme il nous reste : - soit des sommets isolés, - soit des cycles de longueur paire qui alternent les arêtes,

179 9 mars 2007Cours de graphes 6 - Intranet179 Daprès le lemme il nous reste : - soit des sommets isolés, - soit des cycles de longueur paire qui alternent les arêtes, - soit des chemins qui alternent les arêtes et dont chaque extrémité est non saturée pour lun des couplages. extrémité est non saturée pour lun des couplages. Correction du couplage ----------------------------------------------------------------- Le couplage C ! Nous enlevons ces arêtes !

180 9 mars 2007Cours de graphes 6 - Intranet180 Correction du couplage ----------------------------------------------------------------- En effet, pour chaque sommet u du graphe G :En effet, pour chaque sommet u du graphe G : –Soit, u nest pas touché par un couplage et deviendra un sommet isolé !

181 9 mars 2007Cours de graphes 6 - Intranet181 Correction du couplage ----------------------------------------------------------------- En effet, pour chaque sommet u du graphe G :En effet, pour chaque sommet u du graphe G : –Soit, u nest pas touché par un couplage et deviendra un sommet isolé ! –Soit, u est touché par un seul couplage et deviendra un sommet de degré 1 !

182 9 mars 2007Cours de graphes 6 - Intranet182 Correction du couplage ----------------------------------------------------------------- En effet, pour chaque sommet u du graphe G :En effet, pour chaque sommet u du graphe G : –Soit, u nest pas touché par un couplage et deviendra un sommet isolé ! –Soit, u est touché par un seul couplage et deviendra un sommet de degré 1 ! –Soit, u est touché par les deux couplages; alors : Si cest par le biais de la même arête, u sera isolé !Si cest par le biais de la même arête, u sera isolé ! Si cest par le biais de deux arêtes différentes, u sera de degré 2 avec une arête dans chaque couplage !Si cest par le biais de deux arêtes différentes, u sera de degré 2 avec une arête dans chaque couplage !

183 9 mars 2007Cours de graphes 6 - Intranet183 Correction du couplage ----------------------------------------------------------------- En effet, pour chaque sommet u du graphe G :En effet, pour chaque sommet u du graphe G : –Soit, u nest pas touché par un couplage et deviendra un sommet isolé ! –Soit, u est touché par un seul couplage et deviendra un sommet de degré 1 ! –Soit, u est touché par les deux couplages; alors : Si cest par le biais de la même arête, u sera isolé !Si cest par le biais de la même arête, u sera isolé ! Si cest par le biais de deux arêtes différentes, u sera de degré 2 avec une arête dans chaque couplage !Si cest par le biais de deux arêtes différentes, u sera de degré 2 avec une arête dans chaque couplage ! –Comme les degrés sont limités à 2 et quil y a alternance entre les couplages, on ne peut avoir que les solutions annoncées !

184 9 mars 2007Cours de graphes 6 - Intranet184 Correction du couplage ----------------------------------------------------------------- Preuve du théorème !Preuve du théorème ! –Soit C un couplage qui naccepte plus de chemin améliorant. Montrons que C est maximal ! –Soit, C un couplage maximal. Construisons le graphe comme énoncé dans le lemme !

185 9 mars 2007Cours de graphes 6 - Intranet185 Correction du couplage ----------------------------------------------------------------- Preuve du théorème !Preuve du théorème ! –Soit C un couplage qui naccepte plus de chemin améliorant. Montrons que C est maximal ! –Soit, C un couplage maximal. Construisons le graphe comme énoncé dans le lemme ! –Nous pouvons obtenir : soit, des points isolés,soit, des points isolés, soit, des cycles avec autant darêtes dans C que dans C,soit, des cycles avec autant darêtes dans C que dans C, soit des chemins avec une extrémité dans chaque couplage – et donc le même nombre darêtes dans chaque couplage.soit des chemins avec une extrémité dans chaque couplage – et donc le même nombre darêtes dans chaque couplage.

186 9 mars 2007Cours de graphes 6 - Intranet186 Correction du couplage ----------------------------------------------------------------- Preuve du théorème !Preuve du théorème ! –Soit C un couplage qui naccepte plus de chemin améliorant. Montrons que C est maximal ! –Soit, C un couplage maximal. Construisons le graphe comme énoncé dans le lemme ! –Nous pouvons obtenir : soit, des points isolés,soit, des points isolés, soit, des cycles avec autant darêtes dans C que dans C,soit, des cycles avec autant darêtes dans C que dans C, soit des chemins avec une extrémité dans chaque couplage – et donc le même nombre darêtes dans chaque couplage.soit des chemins avec une extrémité dans chaque couplage – et donc le même nombre darêtes dans chaque couplage. –Clairement, | C | = | C | !

187 9 mars 2007Cours de graphes 6 - Intranet187 Correction du couplage ----------------------------------------------------------------- Il est impossible davoir un chemin de la forme :Il est impossible davoir un chemin de la forme :...

188 9 mars 2007Cours de graphes 6 - Intranet188 Correction du couplage ----------------------------------------------------------------- Il est impossible davoir un chemin de la forme :Il est impossible davoir un chemin de la forme : En effet, si les arêtes vertes appartenaient au couplage maximal C, celui-ci ne serait pas maximal car C aurait plus darêtes !En effet, si les arêtes vertes appartenaient au couplage maximal C, celui-ci ne serait pas maximal car C aurait plus darêtes ! Si les arêtes vertes appartenaient au couplage C, celui-ci accepterait un chemin améliorant sous la forme des arêtes rouges !Si les arêtes vertes appartenaient au couplage C, celui-ci accepterait un chemin améliorant sous la forme des arêtes rouges !...

189 9 mars 2007Cours de graphes 6 - Intranet189 C O U P L A G E S A V E C P O I D S Couplages pondérés -----------------------------------------------------------------

190 9 mars 2007Cours de graphes 6 - Intranet190 Couplages pondérés ----------------------------------------------------------------- Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !

191 9 mars 2007Cours de graphes 6 - Intranet191 Couplages pondérés ----------------------------------------------------------------- Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions ! 5 4 8 7 3 2 9 Un couplage de poids 13.

192 9 mars 2007Cours de graphes 6 - Intranet192 Couplages pondérés ----------------------------------------------------------------- Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions ! 5 4 8 7 3 2 9 Le couplage parfait a un poids de 9.

193 9 mars 2007Cours de graphes 6 - Intranet193 Couplages pondérés ----------------------------------------------------------------- Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions ! 5 4 8 7 3 2 9 Le couplage maximal a un poids de 14.

194 9 mars 2007Cours de graphes 6 - Intranet194 Couplages pondérés ----------------------------------------------------------------- Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !

195 9 mars 2007Cours de graphes 6 - Intranet195 Couplages pondérés ----------------------------------------------------------------- Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions ! Le couplage maximal nest pas nécessairement optimal :Le couplage maximal nest pas nécessairement optimal : 1 1 3 Le couplage maximal est de poids 2 ! 1 1 3 Il existe un couplage non maximal qui est de poids 3 !

196 9 mars 2007Cours de graphes 6 - Intranet196 1 Couplages pondérés ----------------------------------------------------------------- Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions ! Le couplage maximal nest pas nécessairement optimal :Le couplage maximal nest pas nécessairement optimal : Les couplages qui saturent les mêmes sommets ne donnent pas tous la même satisfaction :Les couplages qui saturent les mêmes sommets ne donnent pas tous la même satisfaction : 1 1 3 Le couplage maximal est de poids 2 ! 1 1 3 Il existe un couplage non maximal qui est de poids 3 ! 1 3 1 1 3 1 3 1 3

197 9 mars 2007Cours de graphes 6 - Intranet197 Synthèse ----------------------------------------------------------------- Chemins dEuler.Chemins dEuler. Chemins de Hamilton.Chemins de Hamilton. Couplages.Couplages.

198 9 mars 2007Cours de graphes 6 - Intranet198 m E r C i e T b O n N e J o U r N é E ! ! ! N o U b L i E z P a S d E p R é P a R e R v O s T D ! ! !


Télécharger ppt "9 mars 2007Cours de graphes 6 - Intranet1 Cours de graphes Chemins dEuler. Chemins de Hamilton. Couplages."

Présentations similaires


Annonces Google