• Aucun résultat trouvé

Optimisation Combinatoire 2A Applications des flots

N/A
N/A
Protected

Academic year: 2022

Partager "Optimisation Combinatoire 2A Applications des flots"

Copied!
16
0
0

Texte intégral

(1)

Applications des flots

Zolt´an Szigeti

Ensimag Grenoble INP

(2)

Exploitation d’une mine `a ciel ouvert

Le directeur d’une entreprise voudrait exploiter une mine `a ciel ouvert en proc´edant `a des extractions par blocs et

en maximisant le profit.

L’extraction d’un bloc n’est possible que si les blocs situ´es juste au-dessus de ce bloc sont d´ej`a extraits.

On connait par avance pour chaque bloc le profit de son extraction.

Cette valeur peut ˆetre positive ou n´egative, elle d´epend du coˆut de l’extraction du bloc et

de la richesse de son contenu.

Mod´eliser cela par un probl`eme de coupe minimum dans un r´eseau.

2 -2

-2 -1 -2

-1 1

1 3

(3)

Mod´elisation

1 p(v) = profit du blocv,

2 P = blocs de profit positif,

3 N = blocs de profit n´egatif,

4 R´eseau (G = (V,A),g) o`u

1 V =PN∪ {s,t},

2 A={les arcs de contraintes} ∪ {sv:vP} ∪ {ut:uN},

3 g(uv) :=

siuv arc de contrainte, p(v) siu=s,

p(u) siv =t.

2 -2

-2 -1 -2

-1 1

1 3

2 1

1 3

2 2

2 1 1

s t

(4)

Lemme

cap(B∪s)<∞ ⇐⇒les blocs dans B satisfont la contrainte d’extraction.

(Par construction.)

2 -2

-2 -1 -2

-1 1

1 3

2 1

1 3

2 2

2 1 1

s t

(5)

Lemme

cap(B∪s) = X

v∈P\B

g(sv) + X

v∈N∩B

g(vt) = X

v∈P\B

p(v) + X

v∈N∩B

−p(v)

= (X

v∈P

p(v)− X

v∈P∩B

p(v))−(X

v∈B

p(v)− X

v∈P∩B

p(v))

= X

v∈P

p(v)−X

v∈B

p(v).

minimiser = constante−maximiser

2 -2

-2 -1 -2

-1 1

1 3

2 1

1 3

2 2

2 1 1

s t

(6)

Calcul distribu´e sur un ordinateur `a deux processeurs

On voudrait distribuer les modules d’un programme sur un ordinateur

`

a deux processeurs

en minimisant le coˆut total de traitement et

de communication entre processeurs.

On connait par avance

d’une part pour chaque module le coˆut de son traitement sur chacun des deux processeurs et

d’autre part pour chaque paire de modules le coˆut de communication entre processeurs

si ces deux modules sont associ´es aux processeurs diff´erents.

Mod´eliser ce probl`eme par un probl`eme de coupe minimum dans un r´eseau.

(7)

coˆut de traitement M1 M2 M3 M4 P1 4 4 1 2 ai

P2 1 2 4 4 bi

coˆut de communication M1 M2 M3 M4

M1 0 5 1 1

M2 5 0 1 1 cij

M3 1 1 0 5

M3 1 1 5 0

Coˆut `a minimiser coˆut total=

coˆut de traitement des modules trait´es C1 sur P1 + coˆut de traitement des modules trait´es C2 sur P2 +

coˆut de communication pour les modules trait´es sur les processeurs diff´erents

= X

Mi∈C1

ai+ X

Mj∈C2

bj+ X

Mi∈C1,Mj∈C2

cij.

(8)

Mod´elisation

R´eseau (G = (V,A),g) o`u

1 V ={M1,M2,M3,M4,s =P1,t=P2},

2 A={uv,vu:u,v ∈V \ {s,t}}

∪{sv :v∈V \ {s,t}}

∪{vt :v ∈V \ {s,t}},

3 g(uv) :=

cij si uv =MiMj, ai si uv =sMi, bj si uv =Mjt.

1 1 4

M1

M4 M2

M3

s t

4

1

2 4

4 2 5 1

5 1 1

M1 M2 M3 M4 P1 4 4 1 2 ai P2 1 2 4 4 bi

M1 M2 M3 M4

M1 0 5 1 1

M2 5 0 1 1 cij

M3 1 1 0 5

M3 1 1 5 0

(9)

Lemme

cap(C2∪s) = X

Mi∈C1

g(sMi) + X

Mj∈C2

g(Mjt) + X

Mi∈C1,Mj∈C2

g(MiMj)

= X

Mi∈C1

ai + X

Mj∈C2

bj + X

Mi∈C1,Mj∈C2

cij,

qui est le coˆut total `a minimiser o`u Ci = les modules trait´es surPi.

2 4

M1

M4 M2

M3

s t

4

1

2 4

4 1 5

5 1 1

1 1

ai bi

cij C2

(10)

Segmentation des images

Nous devons diviser une image en r´egions coh´erentes, autrement dit, il nous faut distinguer les objets du fond de l’image.

Chaquei ∈V,o`u V est l’ensemble des pixels de l’image, appartient `a un objet avec vraisemblancepi et

appartient au fond de l’image avec vraisemblanceqi.

On a aussi une fonction r(i,j) de p´enalit´e de s´eparation pour chaque paire (i,j)∈E o`u E est l’ensemble des paires de pixels voisins.

Il s’agit de trouver une partitionS,T deV qui maximise P

i∈Spi +P

j∈Tqj −P

i∈S,j∈T,(i,j)∈Er(i,j).

Mod´eliser ce probl`eme par un probl`eme de coupe minimum dans un r´eseau.

(11)

Mod´elisation

R´eseau (G = (V,A),g) o`u

1 V=V ∪ {s,t},

2 A={uv,vu:uv ∈E} ∪ {sv :v ∈V} ∪ {vt :v ∈V},

3 g(uv) :=

pi siuv =si, qj siuv =jt, r(i,j) siuv =ij ∈E.

s t

r(i,j)

pi qj

(12)

Lemme

cap(S∪s) = X

j∈T

g(sj) +X

i∈S

g(it) + X

i∈S,j∈T,ij∈E

g(ij)

= X

j∈T

pj +X

i∈S

qi + X

i∈S,j∈T,ij∈E

r(i,j)

= X

i∈V

(pi+qi)−(X

i∈S

pi+X

j∈T

qj − X

i∈S,j∈T,ij∈E

r(i,j)).

minimiser = constante− maximiser

s t

r(i,j)

pi qj

(13)

Probl`eme

Etant donn´e un r´eseau (G,g) et deux sommets s,t de G, trouver une (s,t)-coupe de capacit´emaximum.

Remarque

Le probl`eme de (s,t)-coupe de capacit´e maximum estNP-difficile.

(14)

Probl`eme

Peut-on faire circuler l’eau dans un syst`eme de tuyaux satisfaisant deux contraintes de capacit´e des tuyaux ?

Mod´elisation

Graphe orient´e G, deux capacit´esf etg sur chaque arc avecf(e)≤g(e).

d´ecider s’il existe une circulation r´ealisable.

D´efinitions

Une fonction x sur les arcs de G est

1 une circulationsi elle v´erifie la contrainte de conservation du flot : dx+(v) =dx(v) ∀v ∈V(G) ⇐⇒dx+(Z) =dx(Z) ∀Z ⊆V(G).

2 r´ealisable si elle satisfait la contrainte de capacit´es : f(e)≤x(e)≤g(e) ∀e ∈A(G).

(15)

Exemple

(0,0,3)

(1,4,4) (1,1,2) (2,3,4)

(1,1,2)

(3,3,4)

(f(e),x(e),g(e))

Lemme (Condition n´ecessaire pour avoir une circulation r´ealisable) Ce qui doit entrer doit pouvoir sortir :

df(Z)≤dx(Z) =dx+(Z)≤dg+(Z) ∀Z ⊆V. Th´eor`eme (Hoffman)

Il existe une circulation r´ealisable dans le r´eseau (G,f,g) si et seulement si df(Z)≤dg+(Z) ∀Z ⊆V.

(16)

Remarques

1 Le mod`ele de flot et celui de circulation sont ´equivalent.

2 Le Th´eor`eme de Ford-Fulkerson et celui de Hoffman sont ´equivalent.

3 On aura un algorithme pour trouver une circulation r´ealisable ou une coupe violant la condition de Hoffman.

4 On verra la prochaine fois les d´emonstrations, l’algorithme et une application des circulations.

Circulation se r´eduit `a flot:

(0,3)

(1,4) (1,2) (2,4)

(1,2)

(3,4)

1 0

2 3

S T

s t

2 3 1

3

3

2 1

1 1

Flot se r´eduit `a circulation:

s t

2 3 1

3

3

2 1

1

1 s t

(0,3) (0,2)

(0,1) (0,3)

(0,3)

(0,2) (0,1)

(0,1)

(0,1) (3,3)

Références

Documents relatifs

- RA 69 : Les équipements type matériel électroniques et informatiques présents en bloc opératoire peuvent jouer un rôle dans la qualité de l'air des salles

La 6 e réunion du groupe d’étude ESCMID pour les infections à Legionella (ESGLI) aura lieu du 10 au 12 septembre 2019 à Athènes, Grèce.. Pour plus de

lire … d’une extension plus importante du bloc sympathique au dessus du bloc sensitif

10. Une automobile effectue une manœuvre qui l’oblige à modifier la vitesse de sa voiture. Le graphique ci-dessous représente la vitesse de la voiture en fonction du temps. a)

Définissez les variables x et y, et traduisez chacune des situations suivantes par un système d’équations. a) La somme de deux nombres est 60 et le double de l’un des

a) D’ordre 5 dont les degrés des sommets sont 5, 4, 2, 1 et 0, et qui ne comporte aucune paire d’arêtes parallèles. b) Connexe; sans aucune paire d’arêtes parallèles;

Pour protéger contre la corrosion une canalisation en acier enterrée, on la réunit à une électrode en magnésium (métal plus réducteur que le fer). Avec le sol l’ensemble forme une

Etant donn´e un graphe biparti G = (U, V ; E ), le cardinal maximum d’un couplage de G = le cardinal minimum d’un ensemble transversal