8.1 INTRODUCTION CHAPITRE 10 ALGORITHMES PROBABILISTES. Exemple. 8.1 Introduction (10.1 à 10.4) 2. 8.2 Classification des algorithmes probabilistes 4



Documents pareils
Chapitre 3 : Fonctions d une variable réelle (1)

Limites des Suites numériques

[ édité le 10 juillet 2014 Enoncés 1. Exercice 6 [ ] [correction] Si n est un entier 2, le rationnel H n =

EXERCICES : DÉNOMBREMENT

20. Algorithmique & Mathématiques

1 Mesure et intégrale

Comportement d'une suite

. (b) Si (u n ) est une suite géométrique de raison q, q 1, on obtient : N N, S N = 1 qn+1. n+1 1 S N = 1 1

Chap. 5 : Les intérêts (Les calculs financiers)

Deuxième partie : LES CONTRATS D ASSURANCE VIE CLASSIQUES

Dénombrement. Chapitre Enoncés des exercices

CHAPITRE 2 SÉRIES ENTIÈRES

FEUILLE D EXERCICES 17 - PROBABILITÉS SUR UN UNIVERS FINI

Exo7. Déterminants. = 4(b + c)(c + a)(a + b). c + a c + b 2c Correction. b + a 2b b + c. Exercice 2 ** X a b c a X c b b c X a c b a X

Chapitre 2 SONDAGE ALEATOIRE SIMPLE OU A PROBABILITES EGALES. 2.1 DEFINITIONS 2.2 SONDAGE ALEATOIRE SIMPLE SANS REMISE (PESR) 2.2.

Séries réelles ou complexes

Dénombrement. Introduction. 1 Cardinaux d'ensembles nis. ECE3 Lycée Carnot. 12 novembre Quelques dénitions

LES ÉCLIPSES. Éclipser signifie «cacher». Vus depuis la Terre, deux corps célestes peuvent être éclipsés : la Lune et le Soleil.

2 ième partie : MATHÉMATIQUES FINANCIÈRES

Intégration et probabilités ENS Paris, TD (20)13 Lois des grands nombres, théorème central limite. Corrigé :

Suites et séries de fonctions

Convergences 2/2 - le théorème du point fixe - Page 1 sur 9

Etude de la fonction ζ de Riemann

Séquence 5. La fonction logarithme népérien. Sommaire

STATISTIQUE : TESTS D HYPOTHESES

14 Chapitre 14. Théorème du point fixe

SÉRIES STATISTIQUES À DEUX VARIABLES

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable

Chap. 6 : Les principaux crédits de trésorerie et leur comptabilisation

x +1 + ln. Donner la valeur exacte affichée par cet algorithme lorsque l utilisateur entre la valeur n =3.

4 Approximation des fonctions

Chap. 6 : Les principaux crédits de trésorerie et leur comptabilisation

Probabilités et statistique pour le CAPES

Groupe orthogonal d'un espace vectoriel euclidien de dimension 2, de dimension 3

UNIVERSITE MONTESQUIEU BORDEAUX IV. Année universitaire Semestre 2. Prévisions Financières. Travaux Dirigés - Séances n 4

UNIVERSITÉ DE SFAX École Supérieure de Commerce

II LES PROPRIETES DES ESTIMATEURS MCO 1. Rappel : M1 LA REGRESSION : HYPOTHESES ET TESTS Avril 2009

Statistique descriptive bidimensionnelle

Les algorithmes de tri

capital en fin d'année 1 C 0 + T C 0 = C 0 (1 + T) = C 0 r en posant r = 1 + T 2 C 0 r + C 0 r T = C 0 r (1 + T) = C 0 r 2 3 C 0 r 3...

PROMENADE ALÉATOIRE : Chaînes de Markov et martingales

Consolidation. C r é e r un nouveau classeur. Créer un groupe de travail. Saisir des données dans un groupe

55 - EXEMPLES D UTILISATION DU TABLEUR.

Exercice I ( non spé ) 1/ u 1 = u / Soit P la propriété : u n + 4. > 0 pour n 1. P est vraie au rang 1 car u 1

Processus géométrique généralisé et applications en fiabilité

STATISTIQUE AVANCÉE : MÉTHODES

Processus et martingales en temps continu

Cours de Statistiques inférentielles

3.1 Différences entre ESX 3.5 et ESXi 3.5 au niveau du réseau. Solution Cette section récapitule les différences entre les deux versions.

c. Calcul pour une évolution d une proportion entre deux années non consécutives

Polynésie Septembre Exercice On peut traiter la question 4 sans avoir traité les questions précédentes.

Chapitre 3 : Transistor bipolaire à jonction

Cours 5 : ESTIMATION PONCTUELLE

Baccalauréat S Asie 19 juin 2014 Corrigé

Module 3 : Inversion de matrices

La France, à l écoute des entreprises innovantes, propose le meilleur crédit d impôt recherche d Europe

Statistiques appliquées à la gestion Cours d analyse de donnés Master 1

Statistique Numérique et Analyse des Données

UV SQ 20. Automne Responsable d Rémy Garandel ( m.-el. remy.garandel@utbm.fr ) page 1

Terminale S. Terminale S 1 F. Laroche

Les Nombres Parfaits.

TRANSFERT DE CHARGE DANS UN RÉSEAU DE PROCESSEURS TOTALEMENT CONNECTÉS (*) par Maryse BÉGUIN ( 1 )

Exercices de mathématiques

Examen final pour Conseiller financier / conseillère financière avec brevet fédéral. Recueil de formules. Auteur: Iwan Brot

Université Pierre et Marie Curie. Biostatistique PACES - UE

Mobile Business. Communiquez efficacement avec vos relations commerciales 09/2012

Neolane Message Center. Neolane v6.0

Introduction : Mesures et espaces de probabilités

Neolane Leads. Neolane v6.0

Formation d un ester à partir d un acide et d un alcool

Principes et Méthodes Statistiques

Université de Bordeaux - Master MIMSE - 2ème année. Scoring. Marie Chavent machaven/

Mécanismes de protection contre les vers

Etude Spéciale SCORING : UN GRAND PAS EN AVANT POUR LE MICROCRÉDIT?

Un nouvel opérateur de fusion adaptatif. A new adaptive operator of fusion. 1. introduction

Renseignements et monitoring. Renseignements commerciaux et de solvabilité sur les entreprises et les particuliers.

Solutions particulières d une équation différentielle...

Chaînes de Markov. Arthur Charpentier

Sommaire Chapitre 1 - L interface de Windows 7 9

Télé OPTIK. Plus spectaculaire que jamais.

La fibre optique arrive chez vous Devenez acteur de la révolution numérique

Augmentation de la demande du produit «P» Prévision d accroître la capacité de production (nécessité d investir) Investissement

Régulation analogique industrielle ESTF- G.Thermique

Réseaux d ondelettes et réseaux de neurones pour la modélisation statique et dynamique de processus

Donnez de la liberté à vos données. BiBOARD.

Simulations interactives de convertisseurs en électronique de puissance

Université Victor Segalen Bordeaux 2 Institut de Santé Publique, d Épidémiologie et de Développement (ISPED) Campus Numérique SEME

Une action! Un message!

Gérer les applications

Guide des logiciels de l ordinateur HP Media Center

RECHERCHE DE CLIENTS simplifiée

DETERMINANTS. a b et a'

Tempêtes : Etude des dépendances entre les branches Automobile et Incendie à l aide de la théorie des copulas Topic 1 Risk evaluation

Résolution numérique des équations aux dérivées partielles (PDE)

POLITIQUE ECONOMIQUE ET DEVELOPPEMENT

Faites prospérer vos affaires grâce aux solutions d épargne et de gestion des dettes

La maladie rénale chronique

Logiciel de synchronisation de flotte de baladeurs MP3 / MP4 ou tablettes Androïd

PROBLEMES DIOPTIMISATION EN NOMBRES ENTIERS J. L. NICOLAS

Transcription:

8. INTRODUCTION CHAPITRE 0 ALGORITHMES PROBABILISTES Les uméros de sectio idiqués à droite et utilisés das ces trasparets correspodet à l aciee structuratio du coteu 8. Itroductio (0. à 0.4) 2 8.2 Classificatio des algorithmes probabilistes 4 8.3 Algorithmes probabilistes umériques (0.5) 6 8.3. Approimatio de valeurs sigulières 6 8.3.. Epériece du comte de Buffo (0.5.) 6 8.3..2 Jet de dards sur ue cible carrée 7 8.3.2 Itégratio umérique (0.5.2) 8 8.3.3 Comptage probabiliste (estimatio d ue valeur etière) (0.5.3) 8.4 Algorithmes de Sherwood (0.7, p. 353) 2 8.4. La sélectio et le tri (0.7.2) 3 8.4.3 Fouille das ue liste compacte triée (pb. 0.36) 4 8.5 Algorithmes de Las Vegas (0.7) 7 8.5. Problème des 8 reies (0.7.) 9 8.6 Algorithmes de Mote-Carlo (0.6) 2 8.6. Problème du tableau majoritaire 2 4 8.6.2 Autres problèmes (0.6. et 0.6.2) 2 6 Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES Eemple Vous participez à u jeu questioaire; vous avez répodu correctemet à ue première questio. Cela vous doe droit à l ue des possibilités suivates: A vous arrêtez de jouer et vous vous cotetez d u gai de 00 $. B vous avez la possibilité de tirer à pile ou face; si vous tirez pile, vous gagez 500 $, sio, vous gagez u pri de cosolatio de 0 $. C U téléspectateur vous fait l offre suivate: il tire à pile ou face; s il tire pile, il vous remet la moitié des 500 $ du cas B, sio, il s egage à vous remettre les 00 $ du cas A. Que choisissez-vous? Répose Il fau maimiser l'espérace de gai. Celle-ci est de 00 $ das le cas A, (500 + 0) / 2 = 255 $ das le cas B, et (250 + 00) / 2 = 75 $ das le cas C. E e se fodat que sur la maimisatio du gai, il faut doc choisir le cas B. Das u cas plus gééral, soiet le gai fie du cas A, y le gros lot du cas B, et z le lot de cosolatio du cas B. Les espéraces de gai das les cas A, B et C sot respectivemet, (y + z) / 2, et y/4 + /2. Comme 2z < < y/2, le cas C est toujours meilleur que le cas A, qui peut doc être élimié. Le choi etre B et C dépedra des valeurs relatives de, y et z. Pricipe e algorithmique Lorsqu u algorithme se trouve devat ue alterative, il est parfois préférable de choisir aléatoiremet la prochaie actio à predre que de s efforcer à empruter la voie la plus rapide ou la meilleure. Critère de choi Le temps employé à détermier le choi optimal peut être prohibitif, comparé au temps qui sera écoomisé e moyee suite à ce choi. Par oppositio, l algorithme probabiliste peut être efficace das le ses de l espérace mathématique du temps d eécutio. 2 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

8. INTRODUCTION (suite) Eemples A Recherche du k e plus petit élémet das u tableau à élémets. Implique le choi d u pivot : - la médiae - le er élémet du tableau - u élémet aléatoire B Recherche d ue solutio au problème des 8 reies. Aspects particuliers d u algorithme probabiliste - E eécutat u même algorithme sur u même eemplaire, des solutios différetes peuvet être obteues. - L aalyse des algorithmes probabilistes est souvet complee. Distributios uiformes (otatios) Sur des réels a et b: uiforme (a, b) retoure u ombre réel choisi aléatoiremet, uiformémet, et idépedammet, tel que a < b, à u coût uitaire. Sur des etiers i et j, uiforme (i..j) retoure u etier k choisi aléatoiremet tel que i k j. Lie etre uiforme (etiers) et uiforme (réels): uiforme (i..j) = uiforme (i, j+) Sur u esemble fii o vide, uiforme(x) retoure u élémet choisi aléatoiremet das X. Géérateurs de ombres aléatoires. E pratique, o utilise plutôt des géérateurs de variables pseudo-aléatoires, capables de géérer ue chaîe d apparece aléatoire à partir d u germe. Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 3 8.2 CLASSIFICATION DES ALGORITHMES PROBABILISTES U algorithme probabiliste laisse au hasard le soi de predre certaies de ses décisios. Quatre grades catégories A) Solutio approimative de problèmes umériques La répose de l algorithme est toujours approimative, mais sa précisio est d autat meilleure e moyee que le temps dot l algorithme dispose est grad. Eemples: Techiques de simulatio. Estimatio d ue valeur umérique (valeur d ue itégrale, ombre d objets das u esemble très grad, ombre d objets disticts das u esemble très grad, etc.). Iterpolatio, etrapolatio. B) Algorithmes de Sherwood Retouret toujours ue répose, toujours eacte. - Il eiste u algorithme détermiiste déjà cou pour résoudre le problème, beaucoup plus rapide e moyee qu e pire cas. - L utilisatio du hasard permet de dimiuer cette différece etre bos et mauvais eemplaires. Eemple (rappel): le tri de Hoare pred u temps moye das O( log) u temps e pire cas das Ω( 2 ) 4 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

8.2 CLASSIFICATION DES ALGORITHMES PROBABILISTES (suite) Quatre grades catégories (suite) C ) Algorithmes de Las Vegas Ils e retouret jamais de répose ieacte mais ils peuvet e pas trouver de répose. La probabilité de succès d u tel algorithme est d autat meilleure que le temps dot il dispose est grad. La probabilité d échec peut être réduite arbitrairemet près de 0. Eemples : a) problème des 8 reies b) factorisatio d u etier D ) Algorithmes de Mote-Carlo Ils doet toujours ue répose, mais celle-ci est pas toujours eacte. Il est difficile de détermier si la répose obteue est correcte. Comme pour les algorithmes de Las Vegas, la probabilité de succès (c està-dire ici de répose correcte) d u tel algorithme est d autat meilleure que le temps dot il dispose est grad. Problème bie caractérisé. Défiitio : U problème est bie caractérisé s il est toujours possible de vérifier efficacemet l eactitude d ue solutio présumée. Eemple : trouver u diviseur d u ombre (bie caractérisé) trouver le plus petit diviseur d u ombre (pas bie caractérisé) Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 5 8.3 ALGORITHMES PROBABILISTES NUMÉRIQUES 8.3. Approimatio de valeurs sigulières. 8.3.. Epériece du comte de Buffo Vous échappez sur votre placher de bois le coteu d ue boîte de cure-dets. Ceu-ci sot répadus e des positios et des agles aléatoires. Chaque cure-dets est 2 fois mois log que la largeur d ue latte du placher. Combie de cure-dets chevaucherot 2 lattes? latte A ß Probabilité qu u cure-det chevauche 2 lattes: (acie problème 8.3.) 2 arc cos d = 2π 0 π Par eemple, si la boîte coteait 355 cure-dets, le ombre moye de curedets qui chevauchet 2 lattes est 355 π 3 Voilà doc ue méthode pour estimer π! 6 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

8.3. Approimatio de valeurs sigulières (suite). 8.3..2 Jet de dards sur ue cible carrée. L epériece cosiste à jeter dards sur ue cible carrée et à compter le ombre k d etre eu tombat à l itérieur du cercle iscrit das ce carré. Nombre moye de dards à l itérieur du cercle : k = πr 2 4r 2 = π 4 Par coséquet, π 4k. Cette epériece peut être simulée par l algorithme suivat: FONCTION Dards(): réel. k 0. POUR i JUSQU À FAIRE {Lacer u dard} uiforme (0,) y uiforme (0,) {Regarder s il est das le cercle} SI 2 + y 2 ALORS k k + RETOURNER 4k. FIN Dards. L approimatio de π retourée est d autat meilleure que est grad. Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 7 8.3.2 Itégratio umérique Itégratio de Mote-Carlo Soit f : [0, ] [0, ] ue foctio cotiue. Alors 0 f() d est ue mesure de l'aire située sous la courbe y = f(). y = f() 0 Évaluatio de cette itégrale FONCTION Calcul-Itégrale (f, ): réel. k 0 POUR i JUSQU À FAIRE { essais} uiforme (0, ) y uiforme (0, ) SI y f() ALORS {il est sous la courbe } k k + {o le compte} RETOURNER k/. FIN Calcul-Itégrale. Notes º 4 2 d = π 0 Doc f() = 4 2 peut être utilisée pour estimer la valeur de π. 2º (Acie pb. 8.3.5) Soit ue foctio f: [a, b] [c, d]. Évaluer a b f() d. b Répose: f() d = (b a) c + (b a) (d c) g() d a 0 où g() est f() rameée à : [0,] [0,], c est-à-dire: g() = d c (f(a + (b a)) c) 8 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

La surface sous la courbe est approimée par la jutapositio de trapèzes dot les sommets sot (i =, 2,..., ) : ( a + (i ) δ, 0 ), ( a + i δ, 0 ), ( a + (i ) δ, f(a + (i ) δ) ), ( a + i δ, f(a + i δ) ). où δ = b a 8.3.2 Itégratio umérique (suite) Autre méthode pour estimer la valeur d ue itégrale défiie. Il eiste des maières probabilistes plus efficaces d estimer ue itégrale défiie. Das le cas le plus simple, o géère aléatoiremet et uiformémet u certai ombre de poits à l itérieur de l itervalle coceré. L estimatio est alors le produit de l itervalle par la moyee arithmétique de la valeur de la foctio e ces poits. FONCTION Calcul-Itégrale (f,, a, b): réel. {f = foctio à itégrer, = ombre d essais, (a, b) = itervalle d itégratio} Somme 0 POUR i JUSQU À FAIRE uiforme (a, b) Somme Somme + f() RETOURNER (b a) Somme {largeur de l itervalle moyee arithmétique} FIN Calcul-Itégrale. E [f()] = a b f() Doc, u estimateur de a b f() d est b a d f(i) i= b a Algorithme détermiiste (meilleur): méthode du trapèze. y=f() a b a+delta b-delta Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 9 8.3.2 Itégratio umérique (suite) Méthode du trapèze (calculs).. Aisi, l aire cherchée est: S = δ i= f(a+i δ) + f(a+(i )δ) 2 = δ f(a) + f(b) 2 + f(a+i δ) i= FONCTION Trapèze (f,, a, b): réel. Delta b a Somme (f(a) + f(b)) /2 {demi-somme au bores} POUR a + Delta PAS Delta JUSQU À b Delta FAIRE {demi-sommes itermédiaires} Somme Somme + f() RETOURNER Somme * Delta. FIN Trapèze. Notes : º Cette méthode de subdivisio (détermiiste) peut toutefois etraîer des erreurs. Par eemple, avec f() = si 2 (00! π), tout appel à Trapèze (f,, 0, ) avec 2 0 retoure la valeur 0 (vraie valeur = /2). 2º Les algorithmes probabilistes umériques sot surtout utilisés pour évaluer ue itégrale multiple (le ombre de poits écessaires augmete pas avec le ombre de dimesios d itégratio). Noter que le p.p.c.m. des cet premiers etiers suffirait. 0 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

8.3.3 Comptage probabiliste (estimatio d ue valeur etière) Problème : Détermier la cardialité (très élevée) d u esemble fii X, où ous pouvos puiser das X d ue faço aléatoire, uiforme et idépedate. Nombre de faços différetes de piger k objets disticts parmi :! ( ) ( 2)... ( k+) = ( k)! Nombre de faços différetes de piger k objets (répétitios permises) :... (k facteurs) = k Aisi, la probabilité pour que k objets tirés parmi, avec remise, de faço aléatoire, uiforme et idépedate soiet disticts, est égale à P(k, ) = ( ) ( 2)... ( k+) k =! k( k)! Eemple : (problème 8.3.9 ou 0.) Ue salle cotiet 25 persoes choisies aléatoiremet, êtes-vous prêt à parier qu au mois deu d etre elles ot le même aiversaire? Calculos P(25, 365) = 0,432995. La répose est doc OUI à 56,87%. Résultat (problème 8.3.4). Soit k le ombre de tirages avat l occurrece de la première répétitio. Alors: (problème 8.3.4) Lorsque est grad, E[k] ted vers π 2 Ce résultat peut être utilisé pour estimer la cardialité d u grad esemble: FONCTION Comptage (X : esemble): etier. k 0 S Ø a uiforme(x) RÉPÉTER k k + S S {a} a uiforme(x) JUSQU À CE QUE a S. RETOURNER 2k 2 π. FIN Comptage. Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 8.4 ALGORITHMES DE SHERWOOD appelés algorithmes de Las Vegas du premier type das le ouveau livre (cf. p. 353, e particulier les trois deriers aliéas) Toute aalyse e moyee d u algorithme doit être basée sur ue hypothèse cocerat la distributio de probabilité des eemplaires à traiter. Cette hypothèse peut être satisfaite pour certaies applicatios, et pas pour d autres. Par eemple, ue applicatio qui géère des eemplaires presque triés e satisfait pas l hypothèse que les eemplaires à trier sot aléatoires. But d u algorithme de Sherwood : Uiformiser le temps requis pour les différets eemplaires d ue taille doée. Soiet : A u algorithme détermiiste, ta() le temps requis par l algorithme A pour résoudre l eemplaire, X l esemble des eemplaires de taille. Si chaque élémet X est équiprobable, le temps moye pris par A pour résoudre u eemplaire de taille est ta () = card(x) ta() X Mais il est possible qu il eiste u X pour lequel ta() >> ta (). C est pourquoi o cherche u algorithme probabiliste B tel que X : tb() ta () + s() où tb() est l espérace mathématique du temps pris par B pour résoudre, et s() est u coût à payer pour l uiformisatio du temps. Note : u mauvais temps pris par B e déped pas de, mais uiquemet des choi probabilistes faits par B. Soit tb () le temps espéré moye pris par B pour résoudre u eemplaire de taille. Alors et il est clair que tb () = card(x) tb() X tb () ta () + s(). Aisi, u algorithme de Sherwood B a presque le même comportemet que l algorithme détermiiste équivalet A si s() est égligeable. 2 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

8.4. La sélectio et le tri (sectio 0.7.2 du ouveau livre) Positio du problème. Reveos au problème de la recherche du k me plus petit élémet d u tableau de élémets. Deu choi de pivot, deu algorithmes: A) Pseudo-médiae : temps liéaire e pire cas, costate cachée élevée. B) Premier élémet du tableau : temps liéaire e moyee, temps quadratique e pire cas (prohibitif), costate cachée beaucoup plus faible. E gééral, B est meilleur; mais, pour u eemplaire doé, B peut être désastreu cotrairemet à A. Stratégie de l algorithme probabiliste C : Choisir le pivot aléatoiremet parmi les élémets de T. FONCTION Sélectio-Sherwood (T[..], k): élémet de T. { Retoure le k me plus petit élémet de T; o suppose k } i ; j TANT QUE i < j faire m T[uiforme(i..j)] Partitioer (T, i, j, m, u, v) { pivot autour de m } SI k < u ALORS j u SINON SI k > v ALORS i v+ SINON i, j k FIN TANT QUE. RETOURNER T[i]. FIN Sélectio-Sherwood. Avatages de l algorithme C Algorithme simple : o évite le calcul de la pseudo-médiae. Algorithme o récursif : costate cachée faible. Surtout tc() O() X Grâce à l approche probabiliste, u algorithme efficace e moyee mais iefficace sur certais eemplaires a été trasformé e u algorithme efficace quel que soit l eemplaire. 8.4.2 Prétraitemet stochastique Après cette opératio, les élémets de T[i..u ] sot tous iférieurs à m, ceu de T[u..v] sot égau à m, et ceu de T[v+..j] sot supérieurs à m. Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 3 8.4.3 Fouille das ue liste compacte triée (simplemet problème 0.36 das le ouveau livre) Liste compacte = ses élémets sot compactés das u tableau. Soiet deu vecteurs Val [.. ], Ptr [.. ] et u etier Tête, les clefs sot triées e ordre croissat : Val[Tête], Val[Ptr(Tête)], etc. Ptr[i] = 0 désige la fi de la liste le rag d ue clef est égal au ombre de clefs das la liste. Eemple : i 2 3 4 5 6 7 Val[i] 2 3 3 5 2 8 Ptr[i] 2 5 6 7 0 3 avec Tête = 4, représete la liste (, 2, 3, 5, 8, 3, 2). La recherche dichotomique e peut être appliquée (le milieu de la liste e peut être repéré). Algorithme A détermiiste FONCTION A(): positio. RETOURNER Chercher (, Tête). FIN A. avec FONCTION Chercher (, i): positio. { retrouve ue clef à partir d ue positio i e autat que Val[i] } TANT QUE > Val[i] FAIRE i Ptr[i] RETOURNER i. FIN Chercher. Problème 8.4.5 Détermier ta^ (, k), le ombre eact d accès au tableau Val par A pour chercher ue clef de rag k parmi clefs ( k ) : ta^ (, k) = k Détermier pa ^ (), le ombre eact d accès e pire cas: pa ^ () = Ma {ta^ (, k) k } = Détermier ma ^ (), le ombre eact d accès e moyee: ma ^ () = k= ta^ (, k) = + 2 4 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

8.4.3 Fouille das ue liste compacte triée (suite) Algorithme probabiliste D FONCTION D(): positio. i uiforme (.. ) y Val[i] SELON < y : RETOURNER Chercher (, Tête) > y : RETOURNER Chercher (, Ptr[i]) AUTREMENT : RETOURNER i. { = y} FIN D. Problème 8.4.6. Nombre eact d accès au tableau Val pour rechercher la clé de rag k : + k si < Val[i] (cas <) + k rag (Val[i]) si > Val[i] (cas >) si = Val[i] (cas =) Le problème est aisi d évaluer l espérace mathématique td^ (, k) de ce ombre e utilisat les probabilités p <, p >, et p = des différets cas. O a: td^ (; k) = i= { (+k) p < + (+k rag(val[i])) p > + () p = } Cepedat, même e supposat que tous les rags rag(val[i]) soiet équiprobables, il est FAUX de coclure ceci (voir eercice 8): td^ (, k) = ( + k) 2 + ( + k + 2 ) 2 + = 2 + 2k 2k ( 2 )/2 2 Pourquoi? Pire cas FAUX e découlat: pd ^ () = Ma { td^ (, k) k } = td^ (, ) = 22 ( 2 )/2 2 0,75 Cas moye FAUX e découlat: md ^ () = td^ (, k) = td^ (, k= 2 ) 0,25 Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 5 8.4.3 Fouille das ue liste compacte triée (fi) Algorithme B détermiiste FONCTION B (): positio. i Tête. Ma Val [i]. POUR j jusqu'à FAIRE y Val[j]. SI Ma < y ALORS i j. Ma y. FIN POUR. RETOURNER Chercher (, i). FIN B. Aalyse (problèmes 8.4.8 et 8.4.9) Cet algorithme doe : mb ^ () O( ) pour le cas cas moye, ^ () = Ω() pour le pire cas. pb Doer u eemple eplicite de pire cas (problème 8.4.0). Algorithme de Sherwood C (à epliciter: l etrapoler de B) Aalyse (problèmes 8.4. et 8.4.2). Cet algorithme est efficace même e pire cas, puisque pc ^ () O( ) 8.4.4 Adressage dispersé (hashig) uiversel 6 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

8.5 ALGORITHMES DE LAS VEGAS Caractéristiques. U algorithme de Las Vegas e retoure jamais de répose ieacte mais peut parfois e trouver aucue répose. Il peut résoudre certais problèmes pour lesquels aucu algorithme détermiiste efficace est cou. Bie que: - l espérace mathématique du temps soit boe pour chaque eemplaire, - la probabilité d u temps ecessif soit égligeable, il y a aucue limite sur le temps écessaire à l obtetio d ue solutio. U algorithme de Las Vegas peut s'eprimer par u e-tête à 3 paramètres LV(, var y, var Succès), où: désige l'eemplaire à résoudre, Succès vaut VRAI si ue solutio a été obteue, et FAUX sio, y est la solutio correspodat à si Succès = VRAI. Philosophie sous-jacete. Soiet: p() la probabilité de succès de LV pour l eemplaire, s() l espérace mathématique du temps requis par LV sur e cas de succès. e() l espérace mathématique du temps requis par LV sur e cas d échec. FONCTION Obstié(): solutio correspodat à. RÉPÉTER LV(, y, Succès) JUSQU À Succès RETOURNER y. FIN Obstié. Soit t() l espérace mathématique du temps pris par l algorithme Obstié pour résoudre. O a : t() = p() s() + ( p()) (e() + t()) d où : t() = s() + p() p() e() Aisi, la miimisatio de t() est ue affaire de compromis etre p, s, et e. Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 7 8.5 ALGORITHMES DE LAS VEGAS (suite) Problème (acie 8.5.) Soiet s() et e() les temps eacts pris par LV. Calculer la probabilité pour que l algorithme Obstié obtiee ue répose e u temps t. Le ombre de tours de boucle de la foctio Obstié est ue variable aléatoire de loi biomiale égative. La probabilité d obteir u succès après i échecs est ( p())i p(). Le temps de répose de LV est aisi : - après 0 échec : s() avec ue probabilité p() - après échec : s() + e() avec ue probabilité p() ( p()) - après 2 échecs : s() + 2 e() avec ue probabilité p() ( p()) 2 -... - après i échecs : s() + i e() avec ue probabilité p() ( p())i Soit i0 défii par: s() + i0 e() t < s() + (i0 + ) e(), soit i0 = t s() e() La probabilité pour que l algorithme LV fourisse ue répose e u temps au plus égal à t est doc : F (t) = Prob (ombre d échecs i0) = p() ( p())i. i=0 i0 8 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

8.5. Problème des 8 reies Stratégie : placer les reies aléatoiremet sur les liges successives, e s assurat que les reies déjà placées e soiet pas e prise les ues avec les autres. Avec l algorithme suivat, si Succès = VRAI alors Essai [.. 8] cotiet la solutio. PROCÉDURE ReiesLV (8, VAR Essai, VAR Succès). Col, Diag, Diag2 Ø {Col, Diag, Diag2 = coloes et diagoales couvertes} k 0 { k = ombre de liges dot la reie est placée } {Assert: Essai [.. k] est k-prometteur } RÉPÉTER {Assert: Essai [.. k] est k-prometteur } Nb 0 { Nb = ombre de coloes dispoibles sur la (k+) e lige } POUR i À 8 FAIRE SI i Col ET i k Diag ET i+k Diag2 ALORS { la coloe i est dispoible pour la (k+) e reie } Nb Nb+ SI uiforme(.. Nb) = ALORS j i. SI Nb > 0 { la coloe j a été choisie avec prob. /Nb parmi les Nb possibles} ALORS { o officialise le placemet de la (k+) e reie } Essai [k+] j {Assert.: Essai [.. k+] est (k+)-prometteur } Col Col {j} ; Diag Diag {j k} ; Diag2 Diag2 {j+k}. k k+. {Assert.: Essai [.. k] est k-prometteur } JUSQU À Nb = 0 OU k=8 Succès (Nb > 0). FIN ReiesLV. Par uiformité avec la théorie géérale, o a coservé le premier paramètre pour idiquer la taille de l eemplaire etré; ici, cette taille est ue costate (vous pouvez gééraliser l algorithme e paramétrat das cette variable le ombre de liges et de coloes de l échiquier). Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 9 8.5. Problème des 8 reies (suite) Statistiques obteues par cet algorithme. À l aide de plusieurs essais par ordiateur, o obtiet : Probabilité de succès de l algorithme : p(8) = 0,2934 Nombre moye de œuds eplorés e cas de succès : s(8) = 9 (costat) Nombre moye de œuds eplorés e cas d échec : e(8) = 6,97 ce qui ous permet de calculer: Espérace mathématique du ombre de œuds eplorés e répétat l algorithme jusqu à l obtetio d u succès : t(8) = s(8) + p(8) e(8) = 55,927 p(8) ce qui est mois de la moitié du ombre de œuds eplorés par l algorithme détermiiste avec retour arrière. Autre amélioratio Cet algorithme de Las Vegas abadoe tout dès qu u échec est recotré; il recommece à 0. D où ue autre stratégie combiat les deu approches (probabiliste et détermiiste): Jumeler cet algorithme de Las Vegas avec u algorithme par retour arrière. Placer quelques reies aléatoiremet et placer les autres par retour arrière, sas reveir sur la positio des reies placées aléatoiremet. (voir détails das le livre) 8.5.2 Racies carrées modulo u premier 8.5.3 Factorisatio etière 8.5.4 Choi d u chef 20 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

8.6 ALGORITHMES DE MONTE-CARLO Caractéristiques. Le problème eige ue solutio eacte. U algorithme de Mote-Carlo doe toujours ue répose mais cette répose est pas toujours eacte. Il peut être difficile de détermier efficacemet si la répose est eacte. S adresse à des problèmes pour lesquels aucu algorithme efficace est cou pour trouver ue solutio à coup sûr. Défiitios Soit p u ombre réel etre 0,5 et. U algorithme de Mote-Carlo est p-correct s il retoure ue solutio correcte avec ue probabilité d au mois p, quel que soit l eemplaire. L avatage d'u tel algorithme est p 0,5. L algorithme est cosistat s il e retoure jamais deu solutios correctes distictes pour le même eemplaire. Stratégie pour augmeter la probabilité de succès d u algorithme cosistat et p-correct : º appliquer l algorithme plusieurs fois 2º choisir la répose la plus fréquete. Remarque. Pour amplifier l avatage d u algorithme, il faut l appliquer plusieurs fois, ce qui est coûteu (cf. livre sectio 0.6.4). Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 2 8.6 ALGORITHMES DE MONTE-CARLO (suite) Eercice (acie problème 8.6.) FONCTION Premier(): boolée. SI PGCD (, 30030) = ALORS RETOURNER VRAI. SINON { est pas premier avec 30030} RETOURNER FAUX. FIN Premier. L algorithme retoure vrai si et seulemet si e cotiet aucu des facteurs suivats : 2, 3, 5, 7, et 3 (30030 = 2 3 5 7 3). º Motrer que l algorithme décide correctemet das plus de 80% des cas si u ombre est premier. Pour cela, il s agit de vérifier que plus de 80% des etiers cotieet l u de ces ombres e facteur. Pour tout premier i, la proportio des etiers possédat i comme facteur premier est /i. Soiet: pi la proportio des etiers possédat i comme facteur mais e possédat comme facteur aucu ombre premier iférieur à i ; r i la proportio des etiers e possédat comme facteur aucu ombre premier iférieur ou égal à i. Soit j le plus grad ombre premier iférieur à i (pour i 3). O a la relatio de récurrece: pi = i rj et ri = rj pi. avec les coditios iitiales immédiates: p 2 = r 2 = 2 i 2 3 5 7 3 pi /2 /6 /5 4/05 8/385 6/00 % 50,0000 6,6667 6,6667 3,8095 2,0779,5984 ri /2 /3 4/5 8/35 6/77 92/00 % 50,0000 33,3333 26,6667 22,857 20,7792 9,808 O a r 3 80,8% > 80%. 2º Quelle costate coduirait à ue probabilité de succès de plus de 85 %? Pour obteir ri > 0,85 avec i premier, il faut choisir i 37 (r 37 = 0,487). La costate deviet alors : 30 030 7 9 23 29 3 37 = 7 420 738 34 80. 3º Est-ce u algorithme de Mote-Carlo? 22 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

8.6 ALGORITHMES DE MONTE-CARLO (suite) Algorithmes de Mote-Carlo biaisés Défiitio U algorithme de Mote-Carlo est y0-biaisé ssi: il eiste u sous-esemble X d eemplaires, il eiste ue solutio coue y0 tels que l algorithme retoure la boe répose si l eemplaire est pas das X, la boe répose est y0 si l eemplaire est das X (mais l algorithme peut se tromper pour u tel eemplaire). E résumé: y0-biaisé si l algorithme retoure y0, c est la boe répose. Raisoemet de base Soit MC u algorithme de Mote-Carlo cosistat, y0-biaisé et p-correct. Soiet u eemplaire et y la valeur retourée par MC(). Deu cas: Cas : y = y0 X y0 est la boe répose X y0 est la boe répose Cas 2: y y0 X y est la boe répose X l algorithme s est trompé. (y0 est la solutio) (et la probabilité d erreur est d au plus p) Corollaire Répétos k fois l eécutio de MC(); o obtiet les réposes y, y2,..., yk: Si i tel que yi = y0 la solutio correcte est y0. Si i j tels que yi yj X y0 est la solutio correcte. Si les yi sot tous égau à ue même valeur y y0, de deu choses l ue: - ou bie X et y est la boe répose, - ou bie X et l algorithme s est trompé k fois, mais cela est possible qu avec ue probabilité d erreur (obstiée) de ( p) k. Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 23 8.6. Problème du tableau majoritaire (problème 0.26) Défiitios (rappel) Soit T[..] u tableau de élémets. U élémet est dit majoritaire das T ssi # {i T[i] = } > 2 Le tableau T est dit majoritaire s il cotiet u élémet majoritaire. Algorithme de base FONCTION Major (T[..]): boolée. {Tirer u élémet au hasard das T} i uiforme (..). T[i]. {Compter le ombre k d élémets égau à } k 0. POUR j à FAIRE SI T[j] = ALORS k k+. RETOURNER (k > /2). FIN Major. Si Major (T) = VRAI T est effectivemet majoritaire (doc Major est VRAI-biaisé). Si Major (T) = FAUX o e peut pas coclure, mais Prob( est mioritaire T est majoritaire) = ( p) < 2 Cet algorithme est doc 2 -correct et VRAI-biaisé avec X = { T T 'est pas majoritaire }. 24 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche

8.6. Problème du tableau majoritaire (suite) Pour réduire cette probabilité d erreur de 50% à mois de 50%, o utilise cet algorithme répétitivemet. Le résultat est toujours u algorithme de Mote- Carlo biaisé. Avec deu iveau FONCTION Major2(T): boolée. SI Major(T) ALORS RETOURNER VRAI. SINON {échec au premier essai} RETOURNER Major(T). FIN Major2. Prob (Major2(T) = VRAI T est majoritaire) = Prob (Major(T) = VRAI T est majoritaire) + Prob (Major(T) = FAUX, Major2(T) = VRAI T est majoritaire) = p + ( p) p = ( p) 2 > 3 4. Aisi, Major2 est VRAI-biaisé et 3/4 -correct. Avec trois iveau De même, l algorithme FONCTION Major3(T): boolée. SI Major2(T) ALORS RETOURNER VRAI. SINON {échec au deu premiers essais} RETOURNER Major(T). FIN Major3. est VRAI-biaisé et 7/8 -correct. ( eercice 3, acie problème 8.6.5). Cas gééral FONCTION MajorMC(T, ε ): boolée. {dit si T est majoritaire avec ue probabilité d erreur < ε} k lg(/ε). POUR i JUSQU À k FAIRE SI Major(T) ALORS RETOURNER VRAI. {Assert.: tous les appels à Major ot retouré FAUX} RETOURNER FAUX. Fi MajorMC. Aalyse d algorithmes 200 Chapitre 0 - ALGORITHMES PROBABILISTES 25 8.6. Autres problèmes Vérificatio d u produit matriciel (0.6.) Test de primalité d u grad etier (0.6.2) Voir livre, p. 34-347 26 Chapitre 0 - ALGORITHMES PROBABILISTES 200 R. Lelouche