[PDF] [PDF] Algorithmes gloutons - Unisciel

Ce module présente le paradigme de l'algorithme glouton puis l'applique `a ration est strictement positive par définition, un sous-ensemble optimal est 



Previous PDF Next PDF





[PDF] Algorithmes gloutons Problèmes doptimisation Problèmes d

Algorithmes gloutons Un algorithme glouton construit une solution pas à pas sans revenir sur ses décisions, en effectuant à chaque étape le choix 



[PDF] LES ALGORITHMES GLOUTONS - LIP6

Or par définition, l'algorithme ordonnance l'intervalle qu'il est en train de traiter si celui-ci n'intersecte aucun intervalle de θ C'est le cas pour σ*, donc σ* est 



[PDF] Algorithmes gloutons - LIX-polytechnique

Cours 5': Algorithmes gloutons Théor`eme: l'algorithme donne bien un résultat optimal Définition: Un ensemble A de tâches est dit“indépendant”si il



[PDF] Algorithmes gloutons - Unisciel

Ce module présente le paradigme de l'algorithme glouton puis l'applique `a ration est strictement positive par définition, un sous-ensemble optimal est 



[PDF] Algorithmes Gloutons - MACS

Interval Scheduling : Algorithmes gloutons Approche L'algorithme glouton ' earliest finish time' est optimal Preuve cela contredit la définition de S* ▫ 



[PDF] Chapitre 9 Algorithmique - Apprendre-en-lignenet

impliquées dans la définition et la conception des algorithmes Un algorithme glouton est un algorithme qui suit le principe de faire, étape par étape, un



[PDF] ALG TD Algorithmes Gloutons - IRISA

1 Rappeler la définition d'un arbre couvrant minimal 2 Donner le principe glouton derri`ere l'algorithme de Prim 3 



[PDF] Algorithmique

2 1 2 Algorithme rapide pour les polygones convexes 6 Algorithmes gloutons 35 Définition 6 1 On appelle algorithme glouton un algorithme qui, à chaque

[PDF] epreuve e2 gestion administrative des relations avec le personnel 2016

[PDF] corrige bac pro gestion administration 2016

[PDF] corrigé tonea factory

[PDF] epreuve e2 gestion administrative des relations avec le personnel 2017

[PDF] epreuve e2 gestion administrative des relations avec le personnel 2015

[PDF] der krieg otto dix histoire des arts

[PDF] otto dix der krieg gravures

[PDF] gestion admission bac pro

[PDF] der krieg otto dix description

[PDF] gestion admission post bac 2017

[PDF] gestion admission post bac identifiant

[PDF] otto dix der krieg analyse du tableau

[PDF] la monnaie évaluation ce2

[PDF] apb gestion oullins

[PDF] gestion admission post bac enseignant

Algorithmes gloutons [gl]

Algorithmique

Karine Zampieri, Stephane Riviere, Beatrice Amerein-Soltner

UniscielalgoprogVersion 21 mai 2018

Table des matieres

1 Paradigme de l'algorithme glouton

2

2 Exemple : Rendu de la monnaie

4

3 Exemple : Location d'une voiture

5

3.1 Probleme

5

3.2 Algorithme

5

3.3 Preuve de l'optimalite de l'algorithme

5

3.4 Limites de l'algorithme

6 4

Elements de la strategie gloutonne7

5 Fondements theoriques des methodes gloutonnes

8

5.1 Matro

des. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

5.2 Algorithmes gloutons sur un matro

de pondere. . . . . . . . . . . . . . . 8

6 Conclusion

1 1 Algorithmes gloutonsMots-ClesTechniques de conception, Algorithmes gloutons RequisAxiomatique imperative, Recursivite des actions, Complexite des algorithmes

Diculte• • ◦Objectif

Ce module presente le paradigme del'algorithme gloutonpuis l'applique a plusieurs exemples. Les dernieres sections donnent les elements de la strategie gloutonne ainsi que les fondements theoriques des methodes gloutonnes. 1 Unisciel algoprog { gl00cours-texte, May 21, 20182

1 Paradigme de l'algorithme glouton

Dans ce module, on se concentre sur les problemes d'optimisation.Algorithme glouton (greedyen anglais)

(Dit aussivorace) Procedure algorithmique qui construit une solution d'une maniere incrementale. A chaque etape, cette technique prend la direction la plus prometteuse,

suivant des regles bien simples, en considerant une seule donnee a la fois.Globalement optimale ou heuristique

Ce choix, localement optimal, n'a aucune raison de conduire a une solution globalement optimale. Cependant, certains problemes peuvent ^etre resolus d'une maniere optimale ainsi. Autrement dit,l'optimalite locale conduit a l'optimalite globale. Dans d'autres cas, la methode gloutonne est seulement une heuristique qui ne conduit qu'a unesolution sous-optimale, mais qui peut ^etre utilisee quand on ne conna^t pas d'algorithme exact ecace. Le module @[Heuristiques] revient sur les algorithmes voraces en tant que solutions heuristiques.Algorithme generique d'une procedure gloutonne Il peut ^etre resume comme suit :AlgorithmevoraceDébutS<- EnsembleVide C ensemble des candidats la solution Tant que S n estpasunesolution etC<> EnsembleVide Faire|x <- choisir un é lémentde C le plus prometteur C C x |Sirealisable(solution,x)Alors| |solution <- union (solution,x ) |FinsiFinTantQue

SiSest une solution Alors|RetournerSSinon

|Retournerpas desolution FinSi Fin Le choix de la donnee la plus prometteuse, lors de la construction de la solution, se fait suivant une regle. Cette regle denit en realite la strategie de l'algorithme glouton ainsi concu.Remarque A la n de leur execution, les algorithmes gloutons ne generent qu'une seule solution. De plus, un algorithme glouton ne revient jamais sur une decision prise precedemment. Unisciel algoprog { gl00cours-texte, May 21, 20183Remarque La fonction de selection est generalement basee sur la fonction objectif a optimiser. Unisciel algoprog { gl00cours-texte, May 21, 20184

2 Exemple : Rendu de la monnaie

An de clarier la terminologie introduite ci-avant :Probleme Soit le probleme de rendre la monnaie a un client en lui donnant le moins de pieces possibles.

Elements du schema

Ils sont resumes comme suit :

1. L esca ndidatsp otentiels al aso lution: en semble nid ep iecesd em onnaie,p ar exemple : 1, 5, 10 et 25 centimes. 2. Un es olution: l et otald el 'ensembled ep iecesc hoisiesc orrespondante xactement au montant a payer. 3. Un esol utionr ealisable: l et otald el 'ensembled ep iecesc hoisiesn ed epassep asl e montant a payer. 4. L ad onneel ap lusp rometteuseest l ag randep ieceq uire sted ansl 'ensembled es candidats. 5. F onctiono bjectif: m inimiserl en ombred ep iecesu tiliseesd ansl aso lution.Algorithme L'algorithme glouton pour cet exemple est :AlgorithmevoraceDébutS<- EnsembleVide C ensemble des candidats la solution TantQuetotal(S) EnsembleVide Faire|x <- plus grande pi èce C C x |Sitotal( S) + x < somme à payer Alors| |solution <- union (solution,x ) |FinsiFinTantQue

SiSest une solution Alors|retournerSSinon

|retournerpas desolution FinSi Fin

Exemple

Soit la monnaie de 87 centimes a rendre en utilisant seulementf25, 10, 5, 1g. L'algorithme ci-dessus va generer la solution : 3*25 + 1*10 + 2*1. Unisciel algoprog { gl00cours-texte, May 21, 20185

3 Exemple : Location d'une voiture

3.1 Probleme

On considere le probleme de la location d'une unique voiture. Des clients formulent un ensemble de demandes de location avec, pour chaque demande, le jour du debut de la location et le jour de restitution du vehicule. Le probleme est d'aecter le vehicule de maniere a satisfaire lemaximum de clientspossible (et non pas de maximiser la somme des durees des locations). On dispose donc d'un ensembleEdes demandes de location avec, pour chaque element edeE, la dated(e)du debut de la location et la datef(e)de la n de cette location. On veut obtenir un ensembleFmaximal de demandes satisfaites. Cet ensembleFdoit verier une unique contrainte : deux demandes ne doivent pas se chevaucher dans le temps, c.-a-d. une location doit se terminer avant que la suivante ne commence. Cette contrainte s'ecrit mathematiquement :

3.2 AlgorithmeAlgorithme

FonctionlocationDUneVoiture(E)Début|Tri des é lémentsde E par date de fincroissante:Onobtient une suite e [1],e[2]...e[n]

telle que f e [1])<= f e [2])<=...<= f e n F [1] <- e [1] j <- 1 |Pourk<- 1 à n Faire| |Sid (e[k]) >=f (F[j])Alors| | |j <- j + 1 F j e j | |FinSi|FinPour|Retourner(F)Fin

Complexite

Cet algorithme est glouton car a chaque etape il prend la location: celle qui nit le plus t^ot parmi celles qui sont satisables.

3.3 Preuve de l'optimalite de l'algorithme

SoitF={x1,x2,...,xp}la solution obtenue par l'algorithme glouton, et soitG= {y1,y2,...,yq},q≥p, une solution optimale. On veut montrer queFest optimal et donc queq=p. Unisciel algoprog { gl00cours-texte, May 21, 20186 Supposons que les ensemblesFetGsont classes par dates de n de location croissantes. SiG(solution optimale) ne contient pasF(une solution obtenue), il existe un entierk tel que : ?i < k,xi=yietxk?=yk Par construction deF,xkest une demande de location qui a la date de n minimale et dont la date de debut est posterieure a la date de n dexk-1=yk-1. Par consequent, f(yk)≥f(xk) On peut alors remplacerGparG?={y1,y2,...,yk-1,xk,yk+1,...,yq}tout en satisfaisant la contrainte de non chevauchement des demandes.G?est une autre solution optimale mais ayant strictement plus d'elements en commun avecFqueG. En repetant autant que faire se peut ce procede, on obtient un ensembleHde m^eme cardinalite queGet qui contientF. Cet ensembleHne peut contenir d'autres elements que ceux deFcar ceux-ci, debutants apres la n dexp, auraient ete ajoutes aFpar l'algorithme glouton.

DoncH=FetFetGont le m^eme nombre d'elements.

3.4 Limites de l'algorithme

Il est primordial, ici, que les demandes soient classees pardates de n croissantes. Le tableau suivant presente trois demandes de location classees par dates de debut crois- santes pour lesquelles l'algorithme glouton presente ci-dessus n'est pas optimal.e 1e 2e 3d235 F848 Pour d'evidentes raisons de symetrie, classer les demandes par dates de debut decrois- santes donne par contre un resultat optimal.e 1e 2e 3d532 F675

Attention

L'algorithme glouton ne donne pas l'optimum si notre but est de maximiser la duree totale de location du vehicule. M^eme si on classe les demandes de location par durees decroissantes, un algorithme glouton ne donnera pas une solution optimale : le tableau ci- dessus presente un contre-exemple. En fait, le probleme de la maximisation de cette duree totale est NP-complet (cf. module @[NP-completude]) et on ne conna^t pas d'algorithme de complexite polynomiale pour le resoudre.Remarque Si on dispose de deux voitures et non plus d'une seule, l'algorithme precedent ne donne plus l'optimum. Unisciel algoprog { gl00cours-texte, May 21, 20187 4

Elements de la strategie gloutonne

Un algorithme glouton determine une solution apres avoir eectue une serie de choix. Pour chaque point de decision, il retient le choix qui semble le meilleur a cet instant. Cette strategie ne produit pas toujours une solution optimale. Il existe cependant deux caracteristiques qui indiquent qu'un probleme se pr^ete a une strategie gloutonne : la propriete du choix glouton et une sous-structure optimale.Propriete du choix glouton On peut arriver a une solution globalement optimale en eectuant un choix localement optimal (ou choix glouton). En programmation dynamique on fait un choix a chaque etape, mais ce choix depend de la solution de sous-problemes, au contraire, dans un algorithme glouton, on fait le choix qui semble le meilleur sur le momentpuison resout les sous-problemes qui surviennent une fois le choix fait. Une strategie gloutonne progresse en general de maniere descendante en faisant se succeder les choix gloutons pour ramener iterativement chaque instance du probleme a une instance.Sous-structure optimale Montrer qu'un choix glouton aboutit a un probleme similaire maisramene la demonstration de l'optimalite a prouver qu'une solution optimale doit faire appara^tre une sous-structure optimale. Un probleme fait appara^tre unesous-structure optimalesi une solution optimale contient la solution optimale de sous-problemes. Cette propriete est un indice important de l'applicabilite de la programmation dynamique comme des algorithmes gloutons. Unisciel algoprog { gl00cours-texte, May 21, 20188

5 Fondements theoriques des methodes gloutonnes

La theorie des matro

des ne couvre pas tous les cas d'applications de la methode glou- tonne, mais elle couvre de nombreux cas interessants en pratique.

5.1 Matro

desMatro de

CoupleM= (E,I)veriant les conditions suivantes :

1.Eest un ensemble ni non vide.

2.Iest une famille non vide de sous-ensembles deE, appeles sous-ensemblesinde-

pendantsdeE, telle que siH?Iet siF?HalorsF?I(on dit queIest hereditaire). Autrement dit, siIcontient un sous-ensembleHdeE,Icontient tous les sous-ensembles deH. On remarque que l'ensemble vide est obligatoirement membre deI. 3. S iFetHsont deux elements deI, avec|F|<|H|, alors il existe (au moins) un elementx?H\Ftel queF? {x} ?I(propriete d'echange).Theoreme Tous les sous-ensembles independants maximaux d'un matro de ont la m^eme taille.Preuve Ce resultat est une consequence directe de la propriete d'echange : si un de ces ensembles, H, est strictement plus petit que les autres, la propriete d'echange nous garantit queI contient un sur-ensemble strictH?deH, ce qui contredit la maximalite deH.Matroquotesdbs_dbs43.pdfusesText_43