• Aucun résultat trouvé

#10 Schémas d’approximation

N/A
N/A
Protected

Academic year: 2021

Partager "#10 Schémas d’approximation"

Copied!
17
0
0

Texte intégral

(1)

Sch´

emas d’approximation

MTH6311

S. Le Digabel, ´Ecole Polytechnique de Montr´eal

H2018

(2)

Plan

1. Introduction

(3)

1. Introduction

(4)

efinition

Un algorithme A est unsch´ema d’approximation pour un probl`eme P si pour tout ε > 0 et pour toute instance I de P , cet algorithme permet de d´eterminer en temps polynomial en |I| une solution de valeur A(I) telle que

I OPT(I) ≤ A(I) ≤ (1 + ε)OPT(I) si P est un probl`eme de minimisation.

I (1 − ε)OPT(I) ≤ A(I) ≤ OPT(I) si P est un probl`eme de maximisation.

Un sch´ema d’approximation A estcompl`etement polynomial si le temps requis pour d´eterminer A(I) est un polynˆome en |I| et 1/ε.

(5)

Exemple 1

Montrer qu’il n’existe probablement aucun sch´ema d’approximation compl`etement polynomial pour le deuxi`eme probl`eme de bin packing, dans lequel on veut minimiser le nombre de sacs.

(6)

1. Introduction

(7)

Sch´

ema d’approximation pour le sac `

a dos

SAD3

Poser k ← min{d1/εe − 2, n} et best ← 0 Pour tout sous-ensemble K ⊆ {1, 2, . . . , n}

tel que |K| ≤ k et P

i∈K

wi ≤ W

Appliquer SAD2 `a IK obtenue en ne

consid´erant que les Oj tels que

j /∈ K et vj ≤ min{vr: r ∈ K},

avec la capacit´e W −Pi∈Kwi

Soit JK les indices de la solution

Si P

i∈K

vi+ SAD2(IK) > best

M´emoriser K ∪ JK (meilleure solution)

best ← P

i∈K

(8)

Exemple 2

Analyser si l’algorithme SAD3 est un sch´ema d’approximation pour le probl`eme du sac `a dos.

(9)

Sch´

ema d’approximation compl`

etement polynomial

pour le sac `

a dos

Consid´erons le probl`eme du sac `a dos avec capacit´e W et n objets O1, O2, . . . , On de poids wi et de valeur vi, pour i ∈ {1, 2, . . . , n}.

´

Etant donn´e k ∈ {1, 2, . . . , n} et un entier positif z, nous allons consid´erer le probl`eme dual DSAD(k, z) suivant qui consiste `a d´eterminer la plus petite capacit´e de sac n´ecessaire pour atteindre une valeur z `a l’aide des objets O1, O2, . . . , Ok :

min x k P i=1 wixi s.c.    k P i=1 vixi≥ z xi ∈ {0, 1} pour tout i ∈ {1, 2, . . . , n}.

(10)

Sch´

ema d’approximation compl`

etement polynomial

pour le sac `

a dos (suite)

Si on note OPT(I) la valeur optimale d’une instance I du sac `a dos et DSAD(I,k,z) la valeur optimale du probl`eme DSAD(k, z), on a, par la dualit´e :

DSAD(I, n, z) ≤ W ⇔ OPT(I) ≥ z .

R´esoudre le probl`eme du sac `a dos revient donc `a d´eterminer la valeur z∗ maximale telle que DSAD(I, n, z∗) ≤ W , et on aura OPT(I)= z∗.

Ceci peut ˆetre r´ealis´e `a l’aide d’un algorithme de programmation dynamique.

(11)

Sch´

ema d’approximation compl`

etement polynomial

pour le sac `

a dos : Algorithme de programmation

dynamique

DSAD(I,1,z)=    w1 si 0 < z ≤ v1 0 si z = 0 ∞ si z > v1 DSAD(I,k,z)=

minwk+ DSAD(I, k − 1, max{0, z − vk}) , DSAD(I, k − 1, z)

pour tout k > 1.

(12)

Sch´

ema d’approximation compl`

etement polynomial

pour le sac `

a dos (suite)

I Notons V la valeur totale de tous les objets, et soit U une borne sup´erieure sur OPT(I).

I On a donc OPT(I)≤ U ≤ V .

I On peut ainsi calculer DSAD(I,k,z) pour tout k ∈ {1, 2, . . . , n} et pour tout z ∈ {0, 1, . . . , U }.

I On peut donc d´eterminer OPT(I) en temps O(nU ) ⊆ O(nV ).

I Ce n’est pas un algorithme polynomial car V n’est pas

polynomial en la taille de l’instance I : On dit qu’il s’agit d’un algorithme pseudo-polynomial.

(13)

Exemple 3

Soit le probl`eme suivant de sac `a dos `a 7 objets avec W = 9 :

i 1 2 3 4 5 6 7

vi 6 5 8 9 6 7 3

wi 2 3 6 7 5 9 4

Donner le tableau de programmation dynamique pour z ∈ {0, 1, . . . , 16} et k ∈ {1, 2, . . . , 7}.

(14)

Sch´

ema d’approximation compl`

etement polynomial

pour le sac `

a dos (suite)

I Soit une instance I. ´Etant donn´e s > 0, on note Is l’instance obtenue en rempla¸cant chaque vi par bvi/sc.

I Soit X∗ l’ensemble des indices des objets `a prendre pour obtenir la solution optimale de I, et soit Xs l’ensemble des indices des objets `a prendre pour obtenir la solution optimale de Is.

I On note A(I) la valeur totale des objets d’indices appartenant ` a Xs. I On a A(I)= P i∈Xs vi ≥ s P i∈Xs bvi/sc ≥ s P i∈X∗ bvi/sc > P (v − s) = OPT(I) −s|X∗| ≥ OPT(I)−sn.

(15)

Sch´

ema d’approximation compl`

etement polynomial

pour le sac `

a dos (suite)

I Si s ≤ ε OPT(I)/n alors on a montr´e que

A(I) > OPT(I) − εOPT(I) = (1 − ε)OPT(I) .

I On peut par exemple choisir

I s = εV /n2puisque V /n ≤ max{v

1, v2, . . . , vn} ≤ OPT(I), ou I s = εSAD2(I)/n car SAD2(I) ≤ OPT(I).

(16)

Sch´

ema d’approximation compl`

etement polynomial

pour le sac `

a dos : Algorithme

SAD4

1. Ex´ecuter SAD2(I)

2. Si ε < 2n/SAD2(I)

D´eterminer OPT(I) `a l’aide de la

programmation dynamique avec 2×SAD2(I)

comme borne sup´erieure sur OPT(I)

Sinon

Poser s ← ε SAD2(I)/n ≥ 2

3. Construire l’instance Is en rempla¸cant

chaque vi par bvi/sc

4. D´eterminer OPT(Is) `a l’aide de la

(17)

Exemple 4

Montrer que l’algorithme SAD4 est un sch´ema d’approximation compl`etement polynomial pour le probl`eme du sac `a dos.

Références

Documents relatifs

D´ eduire du Th´ eor` eme 2 que pour tout entier strictement positif k, il n’existe ` a ´ equivalence pr` es qu’un nombre fini de simplexes entiers de R n ayant exactement k

Je lance suffisamment mal pour que la probabilit´ e que la fl´ echette tombe dans une zone donn´ ee soit proportionnelle ` a l’aire de cette zone.. Je joue dans une fˆ ete foraine o`

Ce probl` eme mod´ elise un jeu de fl´ echettes, avec quelques libert´ es par rapport ` a la r´ ealit´ e pour les besoins de la cause.. Je d´ ecide de lancer 20 fl´ echettes

On utilise d’abord un th´ eor` eme du type th´ eor` eme de F´ ejer, ou de Weierstrass, pour prouver que h est limite uniforme de polynˆ omes trigonom´ etriques P n (uniquement

Dresser le tableau de variations de la fonction ϕ en pr´ ecisant les limites aux bornes de son ensemble de d´

En appliquant le premier principe de la thermodynamique pour un syst`eme ouvert, exprimer la vitesse d’´ejection des gaz en fonction de , C , 4 , , , et. est une barre homog`ene

Il est rappel´ e aux candidats que leurs copies sont destin´ ees ` a ˆ etre lues et que des points sont pr´ evus dans le bar` eme pour la pr´ esentation des copies.. Pour les

D’apr`es le cours sur les suites g´eom´etriques, comme la raison de la suite (v n ) est strictement comprise entre. − 1 et