site de Fabien Torre, université de Lille


Licence Mathématiques et Informatique Appliquées aux Sciences Humaines et Sociales (Licence MIASHS)

Aperçu des cours que je dispense (ou ai dispensés) en tronc commun et dans les différents parcours depuis l'ouverture de cette formation en septembre 2004.

Intelligence Artificielle au semestre 6 en 2017-2018

Programmation d’une Intelligence Artificielle : arbres

Pré-requis

Niveau raisonnable en algorithmique et en programmation.

Contenu de la formation

Le cours débutera par une introduction générale à l’Intelligence Artificielle. Nous nous intéresserons aux problèmes que l’Intelligence Artificielle cherche à résoudre automatiquement. Souvent ludiques, il est admis que ces problèmes nécessitent de l’Intelligence lorsqu’ils sont traités par des êtres humains : trouver le chemin le plus court pour sortir d’un labyrinthe, jouer à un jeu de stratégie à deux joueurs, apprendre à partir d’exemples pour prédire dans de nouvelles situations, etc. Nous étudierons les algorithmes classiques en Intelligence Artificielle qui proposent des solutions à ces problèmes, en particulier nous nous focaliserons sur les algorithmes qui manipulent des structures arborescentes (arbre de recherche, arbre de jeu , arbre de décision, etc.). Les étudiants devront programmer l’un de ces algorithmes, sur le problème de leur choix.

Connaissances

  • Histoire, motivations et principes de l’Intelligence Artificielle.
  • Algorithmes de base pour la résolution de problème en Intelligence Artificielle.
  • Algorithmes A*, min-max, alpha-bêta.
  • Apprentissage supervisé, arbres de décision.

Compétences

  • Poser formellement un problème particulier.
  • Le résoudre par une technique d’Intelligence Artificielle.

Séances du cours « Intelligence Artificielle »

Lundi 22 janvier

Introduction au cours d'Intelligence Artificielle.

Lundi 5 février

Cours sur la résolution de problèmes en Intelligence Artificielle :

  • modélisation de problèmes en IA,
  • problèmes de type « états et opérateurs de changement d'état »,
  • exercices modélisation des problèmes cruches et taquin,
  • premier algorithme de recherche non informé.

Lundi 12 février

TP Python :

  • programmation de la recherche en profondeur d'abord,
  • instanciation sur le problème des cruches.

Lundi 19 février

Suite TP Python :

  • programmation du jeu du taquin,
  • implémentation d'une recherche avec profondeur limitée.

Lundi 5 mars

Fin du cours sur la résolution de problèmes en Intelligence Artificelle :

  • algorithme de recherche en largeur,
  • algorithme A* et définition d'heuristiques,
  • déroulés des différents algorithmes sur un exemple jouet.

Lundi 12 mars

TD/TP : recherche en largeur et algorithme A*.

Lundi 19 mars

Séance sur les jeux en Intelligence Artificelle.

  • cours sur les principes du MinMax,
  • implémentation de MinMax sur le jeu du morpion.

Vendredi 23 mars

Poursuite des jeux en Intelligence Artificelle.

  • cours sur le MinMax en profondeur limitée et l'utilisation d'heuristique,
  • implémentation de MinMax sur le jeu du morpion.

Lundi 26 mars

  • cours sur l'algorithme alpha-bêta et autres optimisations du Min-Max,
  • td sur les coupes alpha-bêta,
  • suivi des projets.

Lundi 9 avril

Suivi des projets.

Lundi 16 avril

Interrogation.

2011-2012 : Algorithmique et programmation au semestre 3

Objectifs

Connaissances en algorithmique :

  • notion de type abstrait,
  • maîtrise des structures de données classiques,
  • connaissance des algorithmes associés,
  • capacité à étudier la complexité de ces algorithmes,
  • raisonnement sur un type abstrait.

Compétences en programmation Python :

  • implémentation de structures de données,
  • codage des algorithmes associés,
  • manipulation de fichiers.

Contenu de la formation

Nous nous intéressons à la représentation de données complexes et à l'étude des principales structures de données utilisées : pile, file, enregistrement, tableau, table de hachage, etc.

On considère ensuite les algorithmes associés à ces structures et à la notion de complexité algorithmique (qui permet de quantifier les ressources, temps et mémoire, nécessaires à l'exécution de ces algorithmes).

Dans cette démarche, les aspects théoriques du cours sont mis en pratique en Python (notamment à travers les dictionnaires de Python) et le découpage fonctionnel assimilé aux semestres précédents est systématiquement mis en œuvre. La manipulation de fichiers en Python est également étudiée.

Fabien Torre Valid HTML5! Valid CSS!
Accueil > Enseignement > Formations > Licence MIASHS
(contenu mis à jour )
site de Fabien Torre, université de Lille

Description

Survoler un lien de navigation pour lire sa description ici...