• Aucun résultat trouvé

Optimisation Combinatoire 2A Flots de coˆut minimum

N/A
N/A
Protected

Academic year: 2022

Partager "Optimisation Combinatoire 2A Flots de coˆut minimum"

Copied!
14
0
0

Texte intégral

(1)

Optimisation Combinatoire 2A Flots de coˆut minimum

Zolt´an Szigeti

Ensimag Grenoble INP

(2)

Introduction

Rappel

1 plus courts chemins : coˆut sur les arcs mais pas de capacit´e,

2 flot r´ealisable : capacit´e sur les arcs mais pas de coˆut,

3 circulation r´ealisable : capacit´es sur les arcs mais pas de coˆut,

b t

s d

−7 4

5 3

6

t s

(1,1) (1,1) (0,1) (1,1)

(1,1)

(0,0,3)

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

(1,1,2)

(3,3,4)

But

G´en´eralisation commune de tous.

Z. Szigeti (Ensimag) OC 2A 1 / 13

(3)

D´efinition des m-flots

D´efinition

1 Etant donn´es´

1 un graphe orient´eG = (V,A),

2 une fonctionmsur les sommets deG,

3 deux capacit´esf etg sur chaque arce deG avecf(e)g(e)∀eA,

4 un coˆutcsur les arcs deG,

2 une fonction x sur les arcs est

1 unm-flotsi lam-conservation du flotest v´erifi´ee : dx+(v)dx(v) =m(v) ∀v V.

2 r´ealisablesi lacontrainte de capacit´esest v´erifi´ee : f(e)x(e)g(e) ∀eA.

Exemple

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

(1,1,2) (0,0,2)

(0,1,1) (1,3,3) (2,5,5)

2 2

0 1 -4

c(e)

1

3 -2

-2

m(v)

Probl`eme : Flot de coˆut minimum

Etant donn´es (G,m,f,g,c), trouver dans G un m-flot (f,g)-r´ealisable de c-coˆut (cTx=P

eAc(e)x(e)) minimum.

(4)

Probl`emes de flot de coˆut minimum

Cas sp´eciaux

1 Probl`eme de plus courts chemins :

1 m(v) = 0∀v V \ {s,t}, 1 pours et−1 pourt,

2 f(e) = 0,g(e) = 1∀eA.

3 s’il n’y a pas de circuit dec-coˆut n´egatif alors une solution optimale enti`ere est un (s,t)-chemin de c-coˆut minimum.

2 Probl`eme de (s,t)-flot r´ealisable de valeurk :

1 m(v) = 0∀v V \ {s,t},k pour set −k pourt,

2 f(e) = 0∀eA,

3 c(e) = 0∀eA.

3 Probl`eme de circulation r´ealisable :

1 m(v) = 0∀v V,

2 c(e) = 0∀eA.

4 Probl`eme de transport :

1 m(v)>0 disponibilit´e,m(v)<0 demande,

2 f(e) = 0,g(e) =K ∀eAo`uK=max disponibilit´e.

b t

s d

−7 4

5 3

6

s t

(1,1) (1,1) (0,1) (1,1)

(1,1)

(0,0,3)

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

(1,1,2)

(3,3,4)

V1 V2 V3

U1 U2

38

37 27 58

48 45

5 4 3

6 6

Z. Szigeti (Ensimag) OC 2A 3 / 13

(5)

Existence d’un m-flot

Th´eor`eme

Il existe unm-flot (f,g)-r´ealisable dansG ⇐⇒

m(V) = 0,

dg+(Z)−df(Z)≥m(Z) ∀Z ⊆V. (f(e),x(e),g(e))

(1,1,2) (0,0,2)

(0,1,1) (1,3,3) (2,5,5)

2 2

0 1 -4

c(e)

1

3 -2

-2

m(v) On supposera que m(V) = 0.

(6)

m-flot

Transformation 1

On peut et on va supposer quef(e) = 0 ∀e∈A, (f(e),g(e)) := (0,g(e)−f(e))∀e ∈A, m(v) :=m(v)−(df+(v)−df(v))∀v ∈V.

Lemme

x est unm-flot (f,g)-r´ealisable de c-coˆut minimum ⇐⇒

x−f est un m-flot (f,g)-r´ealisable dec-coˆut minimum.

D´emonstration

1 m-flot : dx+(v)−dx(v)−m(v) = (dx−f+ (v)−dx−f (v)) +(df+(v)−df(v))−m(v) = (dx+f(v)−dxf(v))−m(v),

2 (f,g)-r´ealisable : f(e)≤x(e)≤g(e) ⇐⇒

f(e) = 0≤(x−f)(e)≤g(e)−f(e) =g(e),

3 c-coˆut : cTx=cT(x−f) +cTf et cTf est constante.

Z. Szigeti (Ensimag) OC 2A 5 / 13

(7)

Programmation Lin´eaire

Programme Lin´eaire

Le probl`eme de trouver un m-flot (0,g)-r´ealisable dec-coˆut minimum dans G = (V,A) peut ˆetre ´ecrit comme un programme lin´eaire.

X

vuA

x(vu)− X

uvA

x(uv) = m(v) ∀v∈V,

x(e) ≤ g(e) ∀e ∈A, x(e) ≥ 0 ∀e ∈A, X

eA

c(e)x(e) = w(min).

0

2 -1

(0,0,1) (0,0,2)

(0,1,1) (0,2,2) (0,3,3)

2 2

1 -4

0 -1

(8)

Programmation Lin´eaire

Programme Lin´eaire

Le probl`eme de trouver un m-flot (0,g)-r´ealisable dec-coˆut minimum dans G = (V,A) peut ˆetre ´ecrit comme un programme lin´eaire.

X

vuA

x(vu)− X

uvA

x(uv) = m(v) ∀v∈V,

−x(e) ≥ −g(e) ∀e ∈A, x(e) ≥ 0 ∀e ∈A, X

eA

c(e)x(e) = w(min).

0

2 -1

(0,0,1) (0,0,2)

(0,1,1) (0,2,2) (0,3,3)

2 2

1 -4

0 -1

Z. Szigeti (Ensimag) OC 2A 7 / 13

(9)

Programmation Lin´eaire

Le dual du Programme Lin´eaire

−cπ(uv) (coˆut r´eduit)

p(uv) ≥ −(c(uv) +π(v)−π(u)) ∀uv ∈A,

p(e) ≥ 0 ∀e ∈A,

X

vV

π(v)m(v)−X

eA

p(e)g(e) = z(max).

Les conditions des ´ecarts compl´ementaires

x(e)>0 =⇒ p(e) =−cπ(e), p(e)>0 =⇒ x(e) =g(e).

(10)

Programmation Lin´eaire

Le dual du Programme Lin´eaire

−cπ(uv) (coˆut r´eduit)

p(uv) ≥ −(c(uv) +π(v)−π(u)) ∀uv ∈A,

p(e) ≥ 0 ∀e ∈A,

X

vV

π(v)m(v)−X

eA

p(e)g(e) = z(max).

Les conditions des ´ecarts compl´ementaires

x(e)>0 =⇒ p(e) =−cπ(e), x(e)<g(e) =⇒ p(e) = 0.

Z. Szigeti (Ensimag) OC 2A 9 / 13

(11)

R´eseau auxiliaire

Construction

(Gx,gx,cx) associ´e `a (G,m,g,c,x) :

1 Gx = (V,A1x∪A2x) o`u

1 A1x :={uvA:x(uv)<g(uv)}et

2 A2x :={vu:uvA,x(uv)>0},

2 gx(uv) :=

g(uv)−x(uv) si uv ∈A1x, x(vu) si uv ∈A2x.

3 cx(uv) :=

c(uv) si uv ∈A1x,

−c(vu) si uv ∈A2x.

1 0

2 -1

(0,0,1) (0,0,2)

(0,1,1) (0,2,2) (0,3,3)

2 2

1 -4

0 -1

0 1

2

2 3

2 -2

-1 -4

(12)

Conditions d’optimalit´e

Th´eor`eme

Etant donn´e un´ m-flot g-r´ealisable x pour (G,m,g,c), les conditions suivantes sont ´equivalentes :

1 x est unm-flot g-r´ealisable dec-coˆut minimum,

2 (Gx,cx) est sans circuit absorbant,

3 (Gx,cx) admet un potentiel π,

4 il existe une fonctionπ sur V telle quecxπ(uv)≥0 ∀ uv ∈A(Gx),

5 il existe une fonctionπ sur V telle que∀e ∈A(G):

x(e)> 0 =⇒ cπ(e)≤0, x(e)<g(e) =⇒ cπ(e)≥0.

Z. Szigeti (Ensimag) OC 2A 11 / 13

(13)

D´emonstration

(1) =⇒ (2)

1 Par l’absurde, s’il existe un circuit absorbantC dans (Gx,cx),

2 Soit x(uv) :=

x(uv) +ε siuv ∈A(C)∩A1x x(uv)−ε sivu ∈A(C)∩A2x x(uv) sinon.

o`u

ε:= min{gx(uv) :uv ∈A(C)}.

3 x est unm-flot g-r´ealisable (pareil comme pour les flots).

4

cTx=cTx+ X

uv∈A(C)∩A1x

c(uv)ε+ X

vu∈A(C)∩A2x

c(uv)(−ε)

=cTx+ X

uvA(C)

cx(uv)ε=cTx+cx(C)ε.

5 Puisque C est un circuit decx-coˆut n´egatif etε >0,on a cTx =cTx+cx(C)ε <cTx,contradiction.

(14)

D´emonstration

Continuation

(2) =⇒ (3)Par la caract´erisation des r´eseaux sans circuit absorbant.

(3) =⇒ (4)∀uv ∈A(Gx) : cx(uv)≥π(v)−π(u) =⇒ cx(uv)−π(v) +π(u)≥0 =⇒ cxπ(uv)≥0 pour π:=−π. (4) =⇒ (5)

1 Si x(uv)>0,alors vu∈A2x,donc, par (4),

cπ(uv) =c(uv) +π(v)π(u) =−(cx(vu) +π(u)π(v)) =−cxπ(vu)0.

2 Si x(uv)<g(uv),alors uv ∈A1x,donc, par (4),

cπ(uv) =c(uv) +π(v)π(u) =cx(uv) +π(v)π(u) =cxπ(uv)0.

Z. Szigeti (Ensimag) OC 2A 13 / 13

Références

Documents relatifs

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

Zolt´ an Szigeti. Ensimag

Optimisation Combinatoire 2A Circulations TD. Zolt´

2 Il connait bien sˆ ur pour chaque vol toutes les informations, ` a savoir : la ville de d´epart et de destination et l’heure de d´epart et d’arriv´e. 3 Il connait aussi le temps

Reconstruire le ventricule gauche du coeur `a partir de radiographies Pour diagnostiquer une possible maladie de coeur d’un patient, on doit voir la forme 3-dimensionnelle du

Optimisation Combinatoire 2A Flots de coˆut minimum 2 TD. Zolt´

Reconstruire le ventricule gauche du coeur `a partir de radiographies Pour diagnostiquer une possible maladie de coeur d’un patient, on doit voir la forme 3-dimensionnelle du

P 5 couplage parfait de coˆ ut minimum dans un graphe biparti complet avec coˆ ut non-n´egatif : on ajoute ` a chaque coˆ ut L:=valeur absolue maximale du coˆ ut d’une