slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Cours de graphes PowerPoint Presentation
Download Presentation
Cours de graphes

Loading in 2 Seconds...

play fullscreen
1 / 65

Cours de graphes - PowerPoint PPT Presentation


  • 114 Views
  • Uploaded on

Cours de graphes. Chemins d’Euler. Chemins de Hamilton. Couplages. Les grandes lignes du cours. Définitions de base Connexité Les plus courts chemins Dijkstra et Bellmann-Ford Arbres Arbres de recouvrement minimaux Problèmes de flots Coloriage de graphes, graphes planaires Couplage

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Cours de graphes' - mattox


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Cours de graphes

  • Chemins d’Euler.
  • Chemins de Hamilton.
  • Couplages.

Cours de graphes 6 - Intranet

slide2

Les grandes lignes du cours

  • Définitions de base
  • Connexité
  • Les plus courts chemins
  • Dijkstra et Bellmann-Ford
  • Arbres
  • Arbres de recouvrement minimaux
  • Problèmes de flots
  • Coloriage de graphes, graphes planaires
  • Couplage
  • Chemins d’Euler et de Hamilton
  • Problèmes NP-complets

Cours de graphes 6 - Intranet

slide3

Chemins d’Euler-----------------------------------------------------------------

C H E M I N S

E T

C Y C L E S

D’ E U L E R ! ! !

Cours de graphes 6 - Intranet

slide4

Chemins d’Euler-----------------------------------------------------------------

  • L’origine 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 d’arrivée coïncident-ils ?

Cours de graphes 6 - Intranet

slide5

Chemins d’Euler-----------------------------------------------------------------

  • 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 ?

Cours de graphes 6 - Intranet

slide6

Chemins d’Euler-----------------------------------------------------------------

  • Nous pouvons passer d’un multi-graphe à un graphe simple :
    • Il suffit de matérialiser un pont par un sommet !
    • Nous conservons le
    • même problème en
    • termes de couverture
    • des arêtes !

Cours de graphes 6 - Intranet

slide7

Chemins d’Euler-----------------------------------------------------------------

  • La « maison de Nicolas » :
    • Pouvons-nous dessiner la figure suivante d’un seule trait et sans lever le crayon ?
    • La réponse est OUI !

2

3

6

A et D sont les

seuls sommets

de degré impair !

5

7

1

4

D

A

8

Le point de départ

est l’un de ceux-ci et

le point d’arrivée l’autre.

Cours de graphes 6 - Intranet

slide8

Chemins d’Euler-----------------------------------------------------------------

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 ! ! !

Cours de graphes 6 - Intranet

slide9

Chemins d’Euler-----------------------------------------------------------------

  • Le théorème d’Euler (1736) :
    • Un multi-graphe possède un chemin d’Euler si et seulement si tous ses sommets, sauf peut-être deux, sont de degré pair !
    • Les sommets de degré impair, s’ils existent, sont les points de départ et d’arrivée !
    • Si tous les sommets sont de degré pair, et seulement dans ce cas, le chemin d’Euler est un cycle d’Euler !
  • 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 !

Cours de graphes 6 - Intranet

slide10

Preuve du théorème d’Euler-----------------------------------------------------------------

  • Admettons l’existence d’un chemin ou d’un cycle d’Euler et déduisons-en les propriétés sur les degrés !
    • Soit le chemin d’Euler 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, c’est-à-dire en présence d’un cycle, le sommet « u » intervient avec un degré pair !
    • Tout autre sommet « w » intervient avec un degré pair dans le chemin d’Euler !
    • Le chemin ou cycle d’Euler contient toutes les arêtes du graphe, d’où le résultat annoncé !

. . .

. . .

w

u

v

Cours de graphes 6 - Intranet

slide11

Preuve du théorème d’Euler-----------------------------------------------------------------

  • Admettons les conditions de parité sur les degrés et déduisons-en l’existence d’un chemin ou cycle d’Euler !
  • 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 d’Euler qui commence en « u » et se termine en « v » !
    • En insérant à nouveau l’arête ( u , v ) nous obtenons le cycle d’Euler annoncé !

Cours de graphes 6 - Intranet

slide12

Preuve du théorème d’Euler-----------------------------------------------------------------

  • Admettons les conditions de parité sur les degrés et déduisons-en l’existence d’un chemin ou cycle d’Euler !
  • 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’ !
    • Admettons d’abord que G’ est connexe !
    • Si v  = w , tous les sommets de G’ sont pairs et il existe un
    • cycle d’Euler ( v ; v ) ! Et donc un chemin d’Euler ( u , v ; v ) !

( Cas A )

Cours de graphes 6 - Intranet

slide13

Preuve du théorème d’Euler-----------------------------------------------------------------

u et v sont au départ

de degrés impairs !

u

v

La suppression de

l’arête ( u , v ) les

rend de degrés pairs !

Par hypothèse sur le nombre d’arêtes, et vu que tous

les sommets sont de degrés pairs, il existe un cycle

d’Euler avec v comme point de départ et d’arrivée !

Cours de graphes 6 - Intranet

slide14

Preuve du théorème d’Euler-----------------------------------------------------------------

  • Admettons les conditions de parité sur les degrés et déduisons-en l’existence d’un chemin ou cycle d’Euler !
  • 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’ !
    • Admettons d’abord que G’ est connexe !
    • Si v  = w , tous les sommets de G’ sont pairs et il existe un
    • cycle d’Euler ( v ; v ) ! Et donc un chemin d’Euler ( 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 d’Euler ( w ; v ) !
    • Et du coup un chemin d’Euler ( u , w ; v ) dans G !

( Cas A )

/

Cours de graphes 6 - Intranet

slide15

Preuve du théorème d’Euler-----------------------------------------------------------------

u et v sont au départ

de degrés impairs

et w de degré pair !

u

v

w

La suppression de l’arête ( u , w )

donne à u de degré pair et à v

et w des degrés impairs !

Par hypothèse sur le nombre d’arêtes, et vu que v et w

sont les seuls sommets de degrés impairs, il existe un

chemin d’Euler avec w comme départ et v comme arrivée !

Cours de graphes 6 - Intranet

slide16

Preuve du théorème d’Euler-----------------------------------------------------------------

  • Admettons les conditions de parité sur les degrés et déduisons-en l’existence d’un chemin ou cycle d’Euler !
  • 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’ !
    • Admettons d’abord que G’ est connexe !
    • Si v  = w , tous les sommets de G’ sont pairs et il existe un
    • cycle d’Euler ( v ; v ) ! Et donc un chemin d’Euler ( 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 d’Euler ( w ; v ) !
    • Et du coup un chemin d’Euler ( u , w ; v ) dans G !

( Cas A )

/

Cours de graphes 6 - Intranet

slide17

Preuve du théorème d’Euler-----------------------------------------------------------------

  • Admettons les conditions de parité sur les degrés et déduisons-en l’existence d’un chemin ou cycle d’Euler !
  • 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’ !
    • Admettons maintenant que G’ n’est plus connexe !
    • Nous avons les composantes connexes CC( u ) et CC( w ) !

( Cas B )

Pourquoi ?

CC( u )

CC( w )

u

w

v

On l’appelle

un « isthme » !

Cours de graphes 6 - Intranet

slide18

Preuve du théorème d’Euler-----------------------------------------------------------------

  • Admettons les conditions de parité sur les degrés et déduisons-en l’existence d’un chemin ou cycle d’Euler !
  • 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’ !
    • Admettons maintenant que G’ n’est plus connexe !
    • Nous avons les composantes connexes CC( u ) et CC( w ) !
    • Lemme : La somme des degrés des sommets d’un graphe
    • (connexe) est paire !
    • Donc, le nombre de sommets de degrés impairs
    • est paire ! ! !

( Cas B )

Cours de graphes 6 - Intranet

slide19

Preuve du théorème d’Euler-----------------------------------------------------------------

  • Admettons les conditions de parité sur les degrés et déduisons-en l’existence d’un chemin ou cycle d’Euler !
  • 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’ !
    • Admettons maintenant que G’ n’est plus connexe !
    • Nous avons les composantes connexes CC( u ) et CC( w ) !

( Cas B )

CC( u )

CC( w )

u

w

Tous

pairs !

Deux

impairs

ou tous pairs !

v

On l’appelle

un « isthme » !

Cours de graphes 6 - Intranet

slide20

Preuve du théorème d’Euler-----------------------------------------------------------------

  • Admettons les conditions de parité sur les degrés et déduisons-en l’existence d’un chemin ou cycle d’Euler !
  • 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’ !
    • Admettons maintenant que G’ n’est plus connexe !
    • Nous avons les composantes connexes CC( u ) et CC( w ) !
    • Les sommets de CC( u ) sont pairs, d’où le circuit d’Euler ( u ; u ).
    • CC( w ) possède 0 ( v = w ) ou 2 ( v = w ) sommets de degrés
    • impairs et il existe un chemin d’Euler ( w ; v ) !
    • On a donc le chemin d’Euler ( u ; u , w ; v ) , comme annoncé !

( Cas B )

/

Cours de graphes 6 - Intranet

slide21

Construction d’un chemin d’Euler-----------------------------------------------------------------

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 ! ! !

Cours de graphes 6 - Intranet

slide22

Construction d’un chemin d’Euler-----------------------------------------------------------------

  • 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 d’Euler ( 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 !
  • Si « s » est identique à « v » et qu’il est isolé, nous avons fini !
  • Si « s » n’a que le seul voisin « u », nous empruntons l’arête en question avant de la supprimer ! Nous continuons en « u ».
  • Si « s » a plusieurs voisins, dont l’isthme ( s , u ) , nous empruntons n’importe quelle arête, sauf l’isthme !
  • Remarque : l’isthme est unique ( pourquoi ? ) !
  • Sinon, nous choisissons une arête ( s , u ) quelconque !

Cours de graphes 6 - Intranet

slide23

Construction d’un chemin d’Euler-----------------------------------------------------------------

  • Complexité :
  • A chaque étape, nous choisissons une des O( | E | ) arêtes !
  • A chaque étape, nous sélectionnons une arête et testons, à moins que l’arête ne soit unique, si elle est un isthme en lançant une « vague » qui est de complexité O( | E | ) !
  • Si elle n’est pas un isthme, l’arête est parcourue !
  • Sinon, nous parcourons une quelconque autre arête !
  • Globalement, nous obtenons une complexité en O( | E |^2 ) = O( | V |^4 ).

Cours de graphes 6 - Intranet

slide24

Construction d’un chemin d’Euler-----------------------------------------------------------------

U N

E X E M P L E

Cours de graphes 6 - Intranet

slide25

Construction d’un chemin d’Euler-----------------------------------------------------------------

  • Exemple :

Nous évitons

l’isthme et nous

continuons avec

l’une des deux

autres arêtes !

Isthme !

D

Cours de graphes 6 - Intranet

slide26

Construction d’un chemin d’Euler-----------------------------------------------------------------

  • Exemple :

Isthme !

D

A prendre l’isthme,

nous perdons toute

possibilité de visiter

les sommets à droite !

Cours de graphes 6 - Intranet

slide27

Construction d’un chemin d’Euler-----------------------------------------------------------------

  • Exemple :

L’isthme est

le seul choix

possible !

Isthme !

D

Cours de graphes 6 - Intranet

slide28

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 ! ! !

Cours de graphes 6 - Intranet

slide29

Chemins et cycles de Hamilton-----------------------------------------------------------------

  • Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?
  • Si oui, les points de départ et d’arrivée sont-ils voisins ?

Dodéca-èdre

C’est le casse-tête

inventé par Lord

Hamilton en 1856.

Cycle de

Hamilton

Cours de graphes 6 - Intranet

slide30

Chemins et cycles de Hamilton-----------------------------------------------------------------

  • Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?
  • Si oui, les points de départ et d’arrivée sont-ils voisins ?

Dodéca-èdre

Le greedy ne

marche pas car

il faut considérer

tout le graphe

pour construire

la solution !

Cycle de

Hamilton

Cours de graphes 6 - Intranet

slide31

Chemins et cycles de Hamilton-----------------------------------------------------------------

  • Pouvons-nous trouver un chemin qui passe une et une seule fois dans chaque sommet ?
  • Si oui, les points de départ et d’arrivée sont-ils voisins ?

Le graphe

complet

K !

Le graphe de

Peterson !

5

Ce graphe admet des

chemins de Hamilton !

Il est sans chemin de Hamilton !

Cours de graphes 6 - Intranet

slide32

Chemins et cycles de Hamilton-----------------------------------------------------------------

U N E

A P P L I C A T I O N ! ! !

Cours de graphes 6 - Intranet

slide33

Chemins et cycles de Hamilton-----------------------------------------------------------------

  • 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.
  • Combien de rondes peuvent-ils danser si chaque jeune fille ne danse qu’une seule fois à côté du même jeune homme ?

A

a

Le graphe bi-parti

complet K !

4,4

B

b

Nous cherchons

un cycle de

Hamilton !

On peut former une

deuxième ronde !

C

c

D

d

Cours de graphes 6 - Intranet

slide34

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 ! ! !

Cours de graphes 6 - Intranet

slide35

Chemins et cycles de Hamilton-----------------------------------------------------------------

  • Savoir si un graphe admet un chemin ou un cycle de Hamilton est NP-complet en général !
  • Il s’agit de savoir s’il 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 qu’il y a dans le graphe !
  • Lesquelles faut-il prendre, lesquelles faut-il laisser ? ? ?

Cours de graphes 6 - Intranet

slide36

Chemins et cycles de Hamilton-----------------------------------------------------------------

  • Il y a des cas particuliers :
    • Un graphe bi-parti avec un nombre impair de sommets n’est jamais hamiltonien !
    • Un graphe avec n sommets ayant un degré d’au 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 ).

Cours de graphes 6 - Intranet

slide37

Chemins et cycles de Hamilton-----------------------------------------------------------------

  • 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 s’il existe un cycle de Hamilton est NP-complète ( sans vouloir trouver le meilleur de ces cycles ) !
    • Soit c’est difficile d’en trouver un seul cycle, soit c’est difficile à cause du trop grand nombre de cycles !

Cours de graphes 6 - Intranet

slide38

Couplages-----------------------------------------------------------------Couplages-----------------------------------------------------------------

C O U P L A G E S ! ! !

Cours de graphes 6 - Intranet

slide39

Couplages-----------------------------------------------------------------Couplages-----------------------------------------------------------------

  • Un couplage d’un graphe G = ( V , E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie d’au plus un couple !

Souvent, on souhaite

maximiser le nombre

de couples !

Un couplage est parfait

s’il sature tous les

sommets du graphe !

Un couplage

Les arêtes retenues et les

sommets atteints sont

dits saturés par le couplage.

Cours de graphes 6 - Intranet

slide40

Couplages-----------------------------------------------------------------Couplages-----------------------------------------------------------------

  • Un couplage d’un graphe G = ( V , E ) consiste à trouver un sous-ensemble C des arêtes tel que chaque sommet fasse partie d’au plus un couple !

Souvent, on souhaite

maximiser le nombre

de couples !

Un couplage est parfait

s’il sature tous les

sommets du graphe !

Un couplage

parfait !

Les arêtes retenues et les

sommets atteints sont

dits saturés par le couplage.

Un couplage

maximal,

non parfait !

Cours de graphes 6 - Intranet

slide41

Deux exemples-----------------------------------------------------------------

D E U X

E X E M P L E S

Cours de graphes 6 - Intranet

slide42

Deux exemples-----------------------------------------------------------------

  • Exemple :
    • Une promotion d’élèves qui doivent réaliser leur projet d’algorithmique 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 ?

Nous cherchons un couplage maximal !

Nous aimerions qu'il soit parfait !

Cours de graphes 6 - Intranet

slide43

Deux exemples-----------------------------------------------------------------

  • Exemple :
    • des lycées représentés par autant de sommets qu’il 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.

Cours de graphes 6 - Intranet

slide44

Deux exemples-----------------------------------------------------------------

Lycées

Elèves

Y a-t-il un

couplage

qui sature

les élèves ?

OUI ! ! !

Cours de graphes 6 - Intranet

slide45

Deux exemples-----------------------------------------------------------------

  • 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 d’au 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 !

Cours de graphes 6 - Intranet

slide46

Deux exemples-----------------------------------------------------------------

Lycées

Elèves

3

1

Trivaux !

1

2

1

1

2

Cours de graphes 6 - Intranet

slide47

Deux exemples-----------------------------------------------------------------

Lycées

Elèves

3

1

Y a-t-il un

c-couplage

qui sature

les élèves ?

1

2

1

1

2

Cours de graphes 6 - Intranet

slide48

Couplages-----------------------------------------------------------------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 ? ? ?

Cours de graphes 6 - Intranet

slide49

Couplages-----------------------------------------------------------------Couplages-----------------------------------------------------------------

  • Maximisation des 1-couplages !
  • Un chemin alterné est un chemin simple qui
    • commence en un sommet non saturé et
    • qui comporte une alternance d’arêtessaturées et non-saturées.
  • Un chemin améliorant est un chemin alterné qui se termine en un sommet non saturé !

Saturé :

Chemin alterné !

Non-saturé :

Chemin améliorant !

Cours de graphes 6 - Intranet

slide50

Couplages-----------------------------------------------------------------Couplages-----------------------------------------------------------------

Le chemin améliorant !

  • Nous avons toujours :
    • Les extrémités d’un 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 d’arêtes saturées !
  • Nous 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.

Cours de graphes 6 - Intranet

slide51

Couplages-----------------------------------------------------------------Couplages-----------------------------------------------------------------

Le nouveau couplage !

  • Nous avons toujours :
    • Les extrémités d’un 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 d’arêtes saturées !
  • Nous 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 :
    • 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 d’un chemin améliorant !
    • La recherche d’un chemin améliorant est en O( | E | ) !

Cours de graphes 6 - Intranet

slide52

Correction du couplage-----------------------------------------------------------------

C O R R E C T I O N

D E

L ‘ A L G O R I T H M E

Cours de graphes 6 - Intranet

slide53

Correction du couplage-----------------------------------------------------------------

  • Théorème ( Berge, 1957 ) :
    • Un couplage C est maximal si et seulement s’il ne comporte pas de chemin améliorant.
  • Preuve :
    • Il est trivial que, s’il y a encore des chemins améliorants, alors le couplage C ne peut pas être maximal !
    • Il est moins évident de voir que, en l’absence de chemins améliorants, le couplage C soit maximal sur tous les couplages !
    • Nous pourrions avoir un maximum local ! ! !

Cours de graphes 6 - Intranet

slide54

Correction du couplage-----------------------------------------------------------------

  • Un lemme :
    • Soit un graphe G avec deux couplages C et C’ qui sont donnés par leurs arêtes !
    • Considérons l’ensemble d’arêtes ( C \ C’ ) v ( C’ \ C ).
    • C’est l’ensemble 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 !

Cours de graphes 6 - Intranet

slide55

Correction du couplage-----------------------------------------------------------------

Le couplage C !

Le couplage C’ !

Nous enlevons

ces arêtes !

Cours de graphes 6 - Intranet

slide56

Correction du couplage-----------------------------------------------------------------

Le couplage C !

Le couplage C’ !

Nous enlevons

ces arêtes !

D’aprè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 l’un des couplages.

Cours de graphes 6 - Intranet

slide57

Correction du couplage-----------------------------------------------------------------

  • En effet, pour chaque sommet u du graphe G :
    • Soit, u n’est 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 c’est par le biais de la même arête, u sera isolé !
      • Si c’est 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 qu’il y a alternance entre les couplages, on ne peut avoir que les solutions annoncées !

Cours de graphes 6 - Intranet

slide58

Correction du couplage-----------------------------------------------------------------

  • Preuve du théorème !
    • Soit C un couplage qui n’accepte 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 cycles avec autant d’arêtes dans C que dans C’,
      • soit des chemins avec une extrémité dans chaque couplage – et donc le même nombre d’arêtes dans chaque couplage.
    • Clairement, | C | = | C’ | !

Cours de graphes 6 - Intranet

slide59

Correction du couplage-----------------------------------------------------------------

  • Il est impossible d’avoir 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 d’arêtes !
  • Si les arêtes vertes appartenaient au couplage C , celui-ci accepterait un chemin améliorant sous la forme des arêtes rouges !

. . .

Cours de graphes 6 - Intranet

slide60

Couplages pondérés-----------------------------------------------------------------

C O U P L A G E S

A V E C

P O I D S

Cours de graphes 6 - Intranet

slide61

Couplages pondérés-----------------------------------------------------------------

  • Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !

3

5

9

7

4

8

2

Un couplage de poids 13.

Cours de graphes 6 - Intranet

slide62

Couplages pondérés-----------------------------------------------------------------

  • Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !

3

5

9

7

4

8

2

Le couplage parfait a

un poids de 9.

Cours de graphes 6 - Intranet

slide63

Couplages pondérés-----------------------------------------------------------------

  • Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !

3

5

9

7

4

8

2

Le couplage maximal a

un poids de 14.

Cours de graphes 6 - Intranet

slide64

Couplages pondérés-----------------------------------------------------------------

  • Chaque arête porte un poids non négatif et nous essayons de maximiser la somme « S » des satisfactions !
  • Le couplage maximal n’est pas nécessairement optimal :
  • Les couplages qui saturent les mêmes sommets ne donnent pas tous la même satisfaction :

C'est NP-difficile ! ! !

Le couplage

maximal est

de poids 2 !

Il existe un couplage

non maximal qui

est de poids 3 !

3

3

1

1

1

1

1

1

3

3

1

1

1

1

3

3

Cours de graphes 6 - Intranet

slide65

Synthèse-----------------------------------------------------------------Synthèse-----------------------------------------------------------------

  • Chemins d’Euler.
  • Chemins de Hamilton.
  • Couplages.

Cours de graphes 6 - Intranet