Vous êtes sur la page 1sur 75

Notions lmentaires

Graphes non orients


Un ensemble de sommets Un ensemble dartes
Un chemin 1 A Sommet de degr 3 Graphe valu
ric Sopena

Un arbre couvrant C 4 9 D 5 E
Avril 2005

B 7 2

18

Un cycle 19 G

F 11

Notions lmentaires

Graphes orients
Un ensemble de sommets Un ensemble darcs
Un chemin A B C

Degr entrant 1 Degr sortant 2 Degr 3


ric Sopena

Un circuit

E
Avril 2005

Bref historique

1736, Euler : les ponts de Knigsberg rcrations mathmatiques chimie, lectricit 1852, De Morgan (Guthrie) : quatre couleurs 1946, Kuhn, Ford et Fulkerson, Roy, etc. recherche oprationnelle Depuis 1960, applications (informatique)
Avril 2005

ric Sopena

Un outil pour la modlisation (et la rsolution !) de problmes Problme sur des objets

Graphes
Problme de graphes Solution ? (algorithme)
ric Sopena Avril 2005

Exemple : meilleur trajet


Objet : plan de ville, dure de trajet pour chaque tronon dpart 7 4 9

2
3

2 5 5 12 4 2 2 8 arrive

Problme de plus court chemin dans un graphe valu (algorithmes connus) Version dynamique (volution de la valuation)
ric Sopena Avril 2005

Les ponts de Knigsberg


A B C

Il existe un cycle eulrien si et seulement si tous les sommets sont de degr pair Il existe un chemin eulrien si et seulement si 0 ou 2 sommets sont de degr impair
ric Sopena Avril 2005

Le problme des quatre couleurs


D D G A B C E G B A C E

Graphe planaire

F
F

Tout graphe planaire est coloriable en utilisant quatre couleurs au plus [Appel & Haken, 1977]

ric Sopena

Avril 2005

Quelques domaines dapplication

Chimie Sociologie Bio-informatique Recherche oprationnelle Rseaux de communication Fonctionnement de systmes

ric Sopena

Avril 2005

Autres domaines dapplication

Gographie (cartographie), architecture (plans), linguistique (smantique), etc. Le WEB (graphe des liens, calcul de pertinence dans les moteurs de recherche, etc.) Graphes petits mondes (Kevin Bacon) Les rseaux optiques (producteurs-consommateurs, bande passante, etc.) Bases de donnes (dpendances) Bases de connaissances Techniques de compilation Imagerie numrique (scnes, compression) Grammaires de graphes (aspects dynamiques) Etc.
Avril 2005

ric Sopena

Compression dimages : les quadtrees


Codage dune image par un arbre
ZONE Z NO SO NE NO SE NE SO SE Z

Etc.

Feuilles = pixels ou zones uniformes


ric Sopena Avril 2005

Modlisation de molcules
H H H

H C H
H mthane CH4

H C
H

C
H

C
H

C H
H

butne C4H8

Graphes (multigraphes) avec contraintes sur les degrs des sommets selon le type de sommet

Cayley [1875] Hydrocarbures saturs CnH2n+2 : arbres numration de molcules, disomres, classifications, etc.
ric Sopena Avril 2005

Graphes signs (sociogrammes)

Relation aimer / dtester entre employs Configurations quilibres (A,B) ou non (C)

Notions de clans (employs, nations, politiciens, etc.), algorithmes de dcoupage


ric Sopena Avril 2005

Pouvoir et influence

Chaque individu a une opinion reprsente par un nombre rel (e.g. valeur dun objet)
Ces opinions voluent dans le temps, en fonction des opinions des personnes ayant de linfluence sur lindividu

Lopinion de lindividu UNTEL se stabilise-t-elle ? Si oui, tend-on vers un consensus ? Vers plusieurs ? Qui a rellement de linfluence sur ces consensus ?
Avril 2005

ric Sopena

Dcodage de chanes dADN


Chane dADN = squence de nuclotides A,C,G,T : Adnine, Cytosine, Guanine, Thymine Squenage par hybridation chane ADN
CACGT
CACT CATG CAGT ACGT

CACG
CACG

sondes hybrides

sondes
ric Sopena

Avril 2005

Dcodage de chanes dADN


Sondes hybrides : TCCT, ACTC, CTAC, TCCT, ACTC, CTCC, TACT, CCTA, CTCC Chemin eulrien ?
TCCT ACTCCT ACT CCT TCC CCT
TCCT ACTC

ACT

TACT

CTC
CTCC

TAC

Problme : en gnral, CCT plusieurs solutions possibles


ric Sopena

TCC
CCTA

CTAC

CTA
Avril 2005

Recherche oprationnelle
Mthodes et techniques danalyse pour laide la dcision

ric Sopena

Avril 2005

Recherche oprationnelle
CONOMIE conomie dentreprise Analyse conomique INFORMATIQUE Structures de donnes Algorithmes Bases de donnes

laboration du modle

R.O.

Traitement du modle

MATHMATIQUES Thorie des systmes Mthodes doptimisation Mthodes statistiques


ric Sopena

Thorie des graphes


Avril 2005

Problmes de recherche oprationnelle


n valeurs dterminer ensemble de contraintes fonction(s) optimiser

meilleure solutions dans solution Rn sous-espace un ? de Rn


ric Sopena Avril 2005

Quelques exemples de problmes


Problmes dordonnancement Problmes de flot maximal Problmes daffectation Programmes de transport


dpts de marchandises, clients avec besoins, capacit des canaux illimite (transformations darbres)

Problme du voyageur de commerce


visite de villes, avec retour (chemin hamiltonien de cot minimal)

Problme du sac dos


n objets, chaque objet ayant une utilit , sac de capacit m

Etc.
Avril 2005

ric Sopena

En pratique

Logiciels daide la dcision (bote outils de rsolution)


1. 2. 3. 4. 5. Modliser les donnes du problme Dfinir les contraintes Dfinir la fonction optimiser Utiliser les outils de rsolution Dcider !

conomie, commerce, production, transport, etc.


ric Sopena Avril 2005

Problmes dordonnancement
B

3
A

4
C

3 0 3 3 3 3

8
3 5 5 2 5
F

8
7

2
3

fin

10 10

D Chemin(s) critique(s)

Dates au plus tt Dates au plus tard

Sommets = tches raliser


Arcs = relation dantriorit (valuation : dure de la tche initiale)

ric Sopena

Avril 2005

Rseaux de transport
20

(15)

(50)

15 15 10 10 20

(30)

(30)

(10)

(25)

Dpts de marchandises (stock)


ports, gares, centrales, chteaux deau,
ric Sopena

Canaux (capacit)
bateaux, trains, camions, canalisations,

Clients (besoin)
ports, gares, villes,
Avril 2005

Rseaux de transport
20

(15)

50 (50)

15 15 10 10 20

(30)

30 10

15

S
30 (30)

P
25

(10)

(25)

Rseau de transport : Un sommet source (S), un sommet puits (P), Pour tout sommet u, il existe un chemin de S vers u et un chemin de u vers P
ric Sopena Avril 2005

Flot dans un rseau de transport


15 35
S
50 20

15 15 15 15 10 10 5 5
20 10

15
30
30 15

10 10
25

30

30

10

65

Flot : Pour chaque arc : valeur capacit Pour tout sommet (sauf S et P) : somme des valeurs entrantes = somme des valeurs sortantes
ric Sopena Avril 2005

Flot maximal dans un rseau de transport


15
20

15
35 40
S
50

15 15 15 15 10 10

15
30
30 15

10 10
25

30

30

5
Amlioration : 5

5 10 10
20

10 15

15

70 65

Flot maximal : pas de chane amliorante Souvent des chanes plus complexes , avec retours arrires, Possibilit de cot de transport sur les arcs
Avril 2005

ric Sopena

Coupe minimale
20

80
50

15
15 30 10

15

S
30 10 10

P
25

70

85

20

Une coupe = ensemble darcs dont la suppression spare les sommets S et P Coupe minimale = coupe dont le poids (somme des poids des arcs la composant) est minimal Th : Poids dune coupe minimale = valeur dun flot maximal
Avril 2005

ric Sopena

Problmes daffectation
Exemple : affectation de 5 postes (a,b,) 5 personnes (A,B,)

Matrice des prfrences

Problme

A B C D E

a 1 1 3 1 2

b 2 4 2 2 1

c 3 2 1 3 4

d 4 5 5 5 3

e 5 3 4 4 5

raliser laffectation en minimisant les insatisfactions


Affectation de personnes sur des machines-outils, de commandes sur des sites de production, etc.
Avril 2005

ric Sopena

Problmes daffectation
Problme de flot maximal de cot minimal
A
0
1

Matrice des prfrences

a b c d e A 1 2 3 4 5
etc.

2 3

a
1 1 1

b c d

Capacits : 1 partout
Chaque personne se verra affecte un poste, chaque poste une personne

S etc.
5
1

4
1

Cot unitaire : matrice


Sauf sortant de S ou entrant en P : cot = 0

e
Avril 2005

ric Sopena

Les rseaux de communication


rseaux tlphoniques rseaux informatiques architectures parallles

ric Sopena

Avril 2005

Modlisation dun rseau


utilisateurs, machines, etc. canaux de communication
B A 14 F D
Chemin de communication
Avril 2005

sommets arcs, artes


C

Capacit des canaux

non orient
G
ric Sopena

Modlisation dun rseau


utilisateurs, machines, etc. canaux de communication
B A F D

sommets arcs, artes


C

orient
G
ric Sopena

E
Avril 2005

Quelques applications

Mesure de paramtres

fiabilit charge

Algorithmes de communication

diffusion de message routage de messages

ric Sopena

Avril 2005

Logiciels...

calcul de diffrents paramtres (mesures), comparaison de diffrentes topologies (statique), dtermination de chemins optimaux (dynamique), aide la conception de rseaux...
Avril 2005

ric Sopena

Fiabilit du rseau
panne des canaux de communication
B A F D C

ensemble dartes dconnectant le graphe


ric Sopena Avril 2005

Fiabilit du rseau
panne des sommets relais
B A F D C

ensemble de sommets dconnectant le graphe


ric Sopena Avril 2005

Charge du rseau
Communications A-C, B-D, A-E, F-C, F-E...
B
A

Minimiser la charge des canaux choix de chemins, contraintes de capacit,


ric Sopena Avril 2005

Diffusion dinformations
A veut diffuser une information lensemble du rseau... Algorithme 1 Lorsquun sommet reoit linformation pour la premire fois, il la diffuse ses autres voisins...

Mesures : nombre de messages transmis (charge) nombre dtapes (temps)


ric Sopena Avril 2005

Exemple... messages : 0
B A F D

tapes : 0
C

G
ric Sopena

E
Avril 2005

Exemple... messages : 3
B A F D

tapes : 1
C

G
ric Sopena

E
Avril 2005

Exemple... messages : 10
B A F D

tapes : 2
C

G
ric Sopena

E
Avril 2005

Exemple... messages : 13
B A F

tapes : 3
C
C a reu le message de B en premier

G
ric Sopena

E
Avril 2005

Exemple... messages : 14
B A F D
D a reu le message de C en premier
Avril 2005

tapes : 4
C

G
ric Sopena

Diffusion dinformations
A veut diffuser une information lensemble du rseau...
Algorithme 2 Idem algorithme 1, mais en utilisant les artes dun arbre recouvrant...

Mesures : nombre de messages transmis (charge) nombre dtapes (temps)


ric Sopena Avril 2005

Exemple... messages : 0
B A F D

tapes : 0
C

G
ric Sopena

E
Avril 2005

Exemple... messages : 3
B A F D

tapes : 1
C

G
ric Sopena

E
Avril 2005

Exemple... messages : 5
B A F D

tapes : 2
C

G
ric Sopena

E
Avril 2005

Exemple...

optimal (6 sommets informer)

profondeur de larbre

messages : 6
B A

tapes : 3
C

F Algorithme 1 : 14 messages 4 tapes


ric Sopena

E
Avril 2005

Routage dans les rseaux


A communique avec D via un chemin (route)
B
A

Un routage est un ensemble de N(N-1) routes


ric Sopena Avril 2005

Routage dans les rseaux


Algorithmes pour calculer un routage :

minimisant la charge des sommets, minimisant la charge des artes,

raisonnable en longueur de chemins (dilatation).


rseaux classiques, machines parallles (communications entre processeurs), rseaux optiques, etc.

ric Sopena

Avril 2005

Mise en uvre du routage


Algorithmes de routage

?
message pour A
lentte du message contient lidentit du destinataire

? ?

ric Sopena

Avril 2005

Mise en uvre du routage


Solution 1 : tables de routage
Chaque sommet possde sa propre table de routage
message pour A B C etc. sortie 1 3 1 etc.

Coteux en place mmoire

ric Sopena

Avril 2005

Mise en uvre du routage


Solution 2 : routage par intervalles
Chaque sommet possde sa propre table de routage
message pour [1,8] [9,26] [27,32] sortie 1 3 2

1. Trouver une bonne numrotation des sommets, 2. Trouver un bon routage (dilatation).

ric Sopena

Avril 2005

Hirarchisation des sommets


Graphe dcoup en rgions Chaque rgion possde une capitale Communications via les capitales

ric Sopena

Avril 2005

Hirarchisation des sommets


Graphe dcoup en rgions Chaque rgion possde une capitale Communications via les capitales Table de routage CAPITALE
sa rgion + rseau des capitales

Table de routage VILLE


sa rgion

Possibilit de hirarchies plusieurs niveaux


ric Sopena Avril 2005

Routage dynamique (adaptatif)

Les paires communicantes voluent dans le temps Le rseau volue


Machines parallles, Tlphonie mobile


Contraintes sur le nombre de chemins empruntant une arte (frquences)

ric Sopena

Avril 2005

Fonctionnement de systmes
modlisation par automates

ric Sopena

Avril 2005

Modlisation par un automate

vnement { action } tat 1 tat 2

Les vnements dclenchent des actions (ractions) du systme selon ltat dans lequel celui-ci se trouve Automate dterministe : pour chaque tat, au plus une transition par vnement
ric Sopena Avril 2005

Exemple 1 : une porte

Fermeture { fermer } Ouverte Ouverture { ouvrir } Ferme

ric Sopena

Avril 2005

Exemple 2 : une ampoule

On { allumer } teinte Off { teindre } Allume

ric Sopena

Avril 2005

Produit dautomates
Exemple 1 : une pice dhabitation
Fermeture
Ouverte allume Ferme allume

Ouverture

Fermeture + On

Ouverture + On
Off On Ouverture + Off Fermeture Ouverture
ric Sopena

Off
Fermeture + Off

On

Ouverte teinte

Ferme teinte

Avril 2005

Produit dautomates
Exemple 2 : un rfrigrateur
Fermeture
Ouverte allume Ferme allume

Ouverture

Fermeture + On

Ouverture + On
Off On Ouverture + Off Fermeture Ouverture
ric Sopena

Off
Fermeture + Off

On

Ouverte teinte

Ferme teinte

Avril 2005

Produit dautomates avec contraintes


INTERDIT Ampoule teinte
Ouverte allume

Porte On On Ferme Ouverte Ouverte Fermeture Fermeture

Allume teinte

Ouverture + On
Off On

Fermeture + Off

Ouverte teinte

Fermeture Ouverture

Ferme teinte

ric Sopena

Avril 2005

Produit dautomates avec contraintes

Ouverte allume

En couplant porte et interrupteur

Ouverture + On

Fermeture + Off

On impose des concurrences dvnements (pas toujours possible)


ric Sopena

Ferme teinte

Avril 2005

En pratique...

Modliser le systme par un automate ou plusieurs automates synchroniss .


notion de sous-systme explosion combinatoire, calculs la vole

Vrifier certaines proprits de lautomate.


tats inaccessibles, tats vivaces , interblocages, etc. (problmes de chemins)

Rectifier en consquence... et valider !


Avril 2005

ric Sopena

Quelques applications...

Conception de systmes (respect des spcifications), Outils daide la vrification de systmes (sret de fonctionnement), Outils de vrification de logiciels, etc. aronautique, arospatiale, transport ferroviaire, nuclaire, rseaux tlphoniques, rseaux informatiques, lectronique, ...
Avril 2005

ric Sopena

Techniques de compilation
Reprsentation dun programme par un arbre
expression arithmtique 3 * a + 2 * (b 4) codage par un arbre + * *

2
b

4
Avril 2005

ric Sopena

Techniques de compilation
Reprsentation dun programme par un arbre
instruction si (a > 5) alors b b + 1 codage par un arbre si >

Programme graphe
(sous-arbres communs)
ric Sopena

b
b

+
1
Avril 2005

Techniques de compilation
Principe gnral :

Analyse du texte source (programme) erreurs ventuelles codage du source (arbre ou graphe)

Traduction du codage en un autre langage (langage machine, )

Langage interprt : excution du codage par linterprteur


ric Sopena Avril 2005

Grammaires de graphes...
Rgle de remplacement

Rcriture dun graphe

???
ric Sopena Avril 2005

Construction dun arbre couvrant


Rgle de remplacement Rcriture dun graphe
B A F
Plusieurs solutions mais toujours un arbre couvrant !
ric Sopena

E
Avril 2005

Construction darbres
Rgle de remplacement Rcriture dun graphe
Etc.

ric Sopena

Avril 2005

Le graphe de Kevin Bacon


Sommets = acteurs Artes entre acteurs ayant jou dans un mme film Proprit : Tout acteur est distance au plus 6 de Kevin Bacon !

ric Sopena

Avril 2005

Le graphe de Kevin Bacon (2)


Site Web : http://www.fast-rewind.com/bacon.htm The Oracle of Bacon at Virginia
Louis de Funes has a Bacon number of 2.
Louis de Funes was in Aventures de Rabbi Jacob, Les (1973) with Janet Brandt Janet Brandt was in Queens Logic (1991) with Kevin Bacon
ric Sopena Avril 2005

Le graphe de Kevin Bacon (3)


Site Web : http://www.fast-rewind.com/bacon.htm The Oracle of Bacon at Virginia
Catherine Deneuve has a Bacon number of 2.
Catherine Deneuve was in Anima persa (1977) with Vittorio Gassman Vittorio Gassman was in Sleepers (1996) with Kevin Bacon
ric Sopena Avril 2005

Le graphe de Kevin Bacon (4)


Site Web : http://www.fast-rewind.com/bacon.htm The Oracle of Bacon at Virginia
Audrey Tautou has a Bacon number of 3.

Audrey Tautou was in Venus beaute (institut) (1999) with Bulle Ogier
Bulle Ogier was in Merci Docteur Rey (2002) with Eli Wallach Eli Wallach was in Mystic River (2003) with Kevin Bacon
ric Sopena Avril 2005

Vous aimerez peut-être aussi