La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

IFT 615 – Intelligence artificielle Recherche locale Éric Beaudry Département dinformatique Université de Sherbrooke

Présentations similaires


Présentation au sujet: "IFT 615 – Intelligence artificielle Recherche locale Éric Beaudry Département dinformatique Université de Sherbrooke"— Transcription de la présentation:

1 IFT 615 – Intelligence artificielle Recherche locale Éric Beaudry Département dinformatique Université de Sherbrooke

2 Objectifs A la fin de ce rappel vous devriez comprendre: – La différence entre une recherche complète et une recherche locale. – La méthode hill-climbing. – La méthode simulated-annealing. – La méthode beam-search. – Les algorithmes génétiques et de la programmation génétique. IFT615 - Été 20112© Éric Beaudry et Froduald Kabanza

3 Motivations pour une recherche locale Rappel de quelques faits saillants de A*: – Un état final (let but) à atteindre est donné comme entrée. – La solution est un chemin et non juste létat final. – Idéalement on veut un chemin optimal. – Les états rencontrés sont stockés pour éviter de les revisiter. Pour certains types de problèmes impliquant une recherche dans un espace détats, on peut avoir lune ou lautre des caractéristiques suivantes: – Il y une fonction objective à optimiser (possiblement avec un état final). – La solution recherchée est juste létat optimal (ou proche) et non le chemin qui y mène. – Lespace détats est trop grand pour enregistrer les états visités. Pour ce genre de problèmes, une recherche locale peut être la meilleure approche. IFT615 - Été 20113© Éric Beaudry et Froduald Kabanza

4 Principe dune recherche locale Une recherche locale garde juste certains états visités en mémoire: – Le cas le plus simple est hill-climbing qui garde juste un état (létat courant) et laméliore itérativement jusquà converger à une solution. – Le cas le plus élaboré est celui des algorithmes génétiques qui gardent un ensemble détats (appelé population) et le fait évoluer jusquà obtenir une solution. En général, il y a une fonction objective à optimiser (maximiser ou minimiser) – Dans le cas de hill-climbing, elle permet de détermine létat successeur. – Dans le cas des algorithmes génétiques, on lappelle la fonction de fitness. Elle intervient dans le calcul de lensemble des états successeurs de lensemble courant. En général, une recherche locale ne garantie pas de solution optimale. Son attrait est surtout sa capacité de trouver une solution acceptable rapidement. IFT615 - Été 20114© Éric Beaudry et Froduald Kabanza

5 Méthode Hill-Climbing Entrée : – État initial. – Fonction à optimiser: notée VALUE dans lalgorithme; parfois notée h aussi. Méthode – Le nœud courant est initialisé à létat initial. – Itérativement, le nœud courant est comparé à ses successeurs immédiats. Le meilleur voisin immédiat et ayant la plus grande valeur (selon VALUE) que le nœud courant, devient le nœud courant. Si un tel voisin nexiste pas, on arrête et on retourne le nœud courant comme solution. IFT615 - Été 20115© Éric Beaudry et Froduald Kabanza

6 Algorithme Hill-Climbing IFT615 - Été 20116© Éric Beaudry et Froduald Kabanza

7 Illustration de lalgorithme Hill-Climbing Imaginez ce que vous feriez pour arriver au (trouver le) sommet dune colline donnée, en plein brouillard et soufrant damnésie. IFT615 - Été 20117© Éric Beaudry et Froduald Kabanza

8 Illustration de lalgorithme Hill-Climbing l Lalgorithme hill-climbing risque dêtre piégé dans des optimums locaux: sil atteint un nœud dont ses voisins immédiats sont moins bons, il arrête! IFT615 - Été 20118© Éric Beaudry et Froduald Kabanza

9 Exemple: N-Queen Problème: Placer n reines sur un échiquier de taille n× n de sorte que deux reines ne sattaquent mutuellement: – C-à-d., jamais deux reines sur la même diagonale, ligne ou colonne. IFT615 - Été 20119© Éric Beaudry et Froduald Kabanza

10 Hill-Climbing avec 8 reines h (VALUE): nombre de paires de reines qui sattaquent mutuellement directement ou indirectement. On veut le minimiser. l h pour létat affiché: 17 l Encadré: les meilleurs successeurs. IFT615 - Été © Éric Beaudry et Froduald Kabanza

11 Hill-Climbing avec 8 reines Un exemple de minimum local avec h(n)=1 IFT615 - Été © Éric Beaudry et Froduald Kabanza

12 Méthode Simulated Annealing (recuit simulé) Cest une amélioration de lalgorithme hill-climbing pour minimiser le risque dêtre piégé dans des minimums locaux. Approche: – Au lieu de regarder le meilleur voisin immédiat du nœud courant, avec une certaine probabilité regarder un moins bon voisin immédiat: On espère ainsi séchapper des optimums locaux. – Au début de la recherche, la probabilité de prendre un moins bon voisin est plus élevée et diminue graduellement (exponentiellement en fonction de la mauvaise qualité du nœud choisi). La méthode est inspirée dun procédé utilisé en métallurgie pour durcir les matériaux (en métal ou en verre): le procédé alterne des cycles de refroidissement lent et de réchauffage (recuit) qui tendent à minimiser l'énergie du matériau. IFT615 - Été © Éric Beaudry et Froduald Kabanza

13 Algorithme Simulated Annealing IFT615 - Été © Éric Beaudry et Froduald Kabanza

14 Tabu-Search Lalgorithme simulated-annealing minimise le risque dêtre piégé dans des minimums locaux. Par contre, il nélimine pas la possibilité dosciller indéfiniment en revenant à un état antérieurement visité On pourrait enregistrer les états visités (on revient à A* et approches similaires!) mais cest impraticable si lespace détats est trop grand. Lalgorithme tabu-search enregistre seulement les n derniers états visités. – Lensemble tabu est lensemble contenant les n états. Le paramètre n est choisi empiriquement. Cela nélimine pas les oscillations, mais les minimise. IFT615 - Été © Éric Beaudry et Froduald Kabanza

15 Local beam-search On fait progresser un ensemble de n états plutôt quun seul état. 1.On commence avec un ensemble de n états choisis aléatoirement. 2.À chaque itération, tous les successeurs des n états sont générés. 3.Si un deux satisfait le but, on arrête. 4.Sinon on choisit les n meilleurs parmi ces états et on recommence. À ne pas confondre avec tabu-search. IFT615 - Été © Éric Beaudry et Froduald Kabanza

16 Algorithmes génétiques Idée très similaire à local beam-search. Rappel de Local beam search: 1.On commence avec un ensemble n détats choisis aléatoirement. 2.À chaque itération, tous les successeurs des n états sont générés. 3.Si un deux satisfait le but, on arrête. 4.Sinon on choisit les n meilleurs parmi ces états et on recommence. Algorithme génétique – On commence aussi avec un ensemble n détats choisis aléatoirement. Cet ensemble est appelé une population. – Un successeur est généré en combinant deux parents. – Un état est représentée par un mot (chaîne) sur un alphabet (souvent lalphabet binaire). – La fonction dévaluation est appelée fonction de fitness (fonction dadaptabilité, de survie). – La prochaine est génération est produite par sélection, croisement et mutation. IFT615 - Été © Éric Beaudry et Froduald Kabanza

17 Algorithmes génétiques Plus haut, les algorithmes génétiques étaient introduits comme une approche similaire à beam-search, mais plus raffinée. On peut les voir aussi comme un model de calcul inspiré du processus de lévolution naturelle des espèces – Après tout lintelligence humaine est le résultat dun processus dévolution sur des millions dannées : Théorie de lévolution (Darwin, 1858) Théorie de la sélection naturelle (Weismann) Concepts de génétiques (Mendel) – La simulation de lévolution na pas besoin de durer des millions dannées sur un ordinateur. IFT615 - Été © Éric Beaudry et Froduald Kabanza

18 Algorithmes génétiques On représente lespace des solutions dun problème à résoudre par une population (ensemble de chromosomes). – Un chromosome est une chaîne de bits (gènes) de taille fixe. – Par exemple : Une population génère des enfants par un ensemble de procédures simples qui manipulent les chromosomes – Croisement de parents – Mutation dun enfant généré Les enfants sont conservés en fonction de leur adaptabilité (fitness) déterminée par une fonction dadaptabilité donnée, f(x). IFT615 - Été © Éric Beaudry et Froduald Kabanza

19 Algorithmes génétiques 1. Générer aléatoirement une population de n chromosomes. 2. Calculer la valeur dadaptabilité (fitness) de chaque chromosome x. 3. Créer une nouvelle population en : 3.1 Sélectionnant 2 parents chromosomes (chaque parent est sélectionné avec une probabilité proportionnelle à son adaptabilité) et en les croisant avec une certaine probabilité Mutant lenfant obtenu avec une certaine probabilité. 3.3 Plaçant lenfant dans la population. 4. Répéter létape 3 jusquà avoir une population de taille N. 5. Si la population satisfait le critère darrêt, arrêter. Sinon, recommencer à létape 2. IFT615 - Été © Éric Beaudry et Froduald Kabanza

20 Croisement: exemple avec 8 reines = IFT615 - Été © Éric Beaudry et Froduald Kabanza

21 Exemple avec 8 reines Fonction de fitness: nombre de pairs de reines qui ne sattaquent pas (min = 0, max = 8 × 7/2 = 28) Pourcentage de fitness (c-à-d., probabilité de sélection du chromosome): – 24/( ) = 31% – 23/( ) = 29% – 20/( ) = 26% – 11/( ) = 14% IFT615 - Été © Éric Beaudry et Froduald Kabanza

22 Autre Exemple Calculer le maximum de la fonction f(x) = 15x – x 2 Supposons x entre [0, 15] : – on a besoin de seulement 4 bits pour représenter la population. [Michael Negnevitsky. Artificial Intelligence. Addison-Wesley, Page 222.] IFT615 - Été © Éric Beaudry et Froduald Kabanza

23 Autre Exemple (suite) Fixons la taille de la population à 6. La probabilité de croisement à 0.7 Et la probabilité de mutation à La fonction dadaptabilité à f(x)=15x – x 2. Lalgorithme génétique initialise les 6 chromosomes de la population en les choisissant au hasard. IFT615 - Été © Éric Beaudry et Froduald Kabanza

24 Autre Exemple (Illustration des étapes) i+1 Critère darrêt : Maximum de la moyenne dadaptation de la population. Détectée au point où la moyenne dadaptation commence à décroitre. Problème de minima locaux. IFT615 - Été © Éric Beaudry et Froduald Kabanza

25 Programmation génétique Même principes que les algorithmes génétiques sauf que les populations sont des programmes au lieu des chaînes de bits. IFT615 - Été © Éric Beaudry et Froduald Kabanza

26 [Michael Negnevitsky. Artificial Intelligence. Addison-Wesley, Page 247.] IFT615 - Été © Éric Beaudry et Froduald Kabanza

27 IFT615 - Été © Éric Beaudry et Froduald Kabanza


Télécharger ppt "IFT 615 – Intelligence artificielle Recherche locale Éric Beaudry Département dinformatique Université de Sherbrooke"

Présentations similaires


Annonces Google