---
lang: fr
tags: theorie des graphs, S6, ING1
title: Theorie des graphs 6
date: 25/03/2019
---
# Theorie des graphs 6
## Couplages (matching)
++Def++: Dans un G = (V,E) non orienté, un couplage M $\subseteq$ E est un sous-ensemble des aêtes tel que M ne contient pas 2 arêtes adj.
Un couplage M est ==maximal== s'il n'existe pas de couplage M' tel que M Non Inclue dans M'.
Un couplage M est ==maximum== s'il n'existe pas de couplage M' tel que |M'| $>$ |M|
```graphviz
graph G {
rankdir=LR
a -- b -- c -- d -- e -- f -- a
}
```
E = {a,b,c,d,e,f}
{a,d} est un couplage maximal
{a,c,d} n'est pas un couplage
{a,c,e} est un couplage maximum
++Def++: Un couplage M si |M| = |V|/2
Exemple 1:
:::info
Voir photo du 25/03/2019
:::
Exemple 2:
- Armée multinationnale:
- On a des conducteurs de tanks qui parlent chacun 1 ou plusieurs lagues
- Pour un conduire un tank, il faut 2 conducteur qui parlent la même langue
- Coomment apparier les conducteurs pour maximiser le nombre de tanks ?
:::info
Voir 2eme photo du 25/03/2019
:::
Du coup, quel algo pour trouver un couplage maximAL ?
1. Choisir une arrête (x,y) de E, et l'ajouter à M
2. Retirer les sommets x et y du graph
3. Répeter les étapes tant E $\neq$ $\emptyset$
++Def:++ Un chemin améliorant est un chemin qui relie deux sommets non touché par M (sommets "isolés") en alternant des arêtes de E\M avec avec des arêtes de M
Si P est un chemin améliorant, alors M' = M $\bigoplus$ P (XOR, c-a-d les arêtes qui sont dans M ou P, mais pas dans les 2) est un couplage tel que |M'| > |M|. Parce que P contient x arêtes dans M et x+1 arêtes dans E\M
:::info
3eme photo du 25/03/2019
:::
Mais est-ce qu'il toujours un chemin améliorant ?
==Théorème==: Il existe un chemin améliorant ssi M n'est pas maximUM.
($\Leftrightarrow$) Evident, si P est améliorant, alors |M $\bigoplus$ P| > |M|, donc M pas maximum.
($\Leftarrow$) Supposons M non maximum. Alors il existe un couplage M' tel que |M| < |M'|
On considère le graphe G' = (V, M $\bigoplus$ M')
:::info
4eme photo du 25/03/2019
:::
Nécessairement:
1. M $\bigoplus$ M' contient plus d'arêtes de M'
2. Chaque sommet de G' touche au plus une arête de M et au plus une arête de M'
==> Les sommets de G' qui ne sont pas isolés sont sur des chemins améliorant de G.
Algo pour trouver un couplage maximum:
- Partir d'un couplage quelconque (Par ex M = $\emptyset$)
- Répêter
- Tant qu'il existe un chemin améliorant P, faire: M <- M $\bigoplus$ P