Commit 886faa4485b695fa36f63e886c95f79f2a7aa425

Authored by dsotofor
1 parent 253dafeeb6
Exists in main

5th

Showing 6 changed files with 1133 additions and 0 deletions Side-by-side Diff

chapters/EIAH.aux View file @ 886faa4
  1 +\relax
  2 +\providecommand\hyper@newdestlabel[2]{}
  3 +\citation{ZHANG2021100025}
  4 +\citation{CHIU2023100118}
  5 +\@writefile{toc}{\contentsline {chapter}{\numberline {3}Environnements Informatiques d'Apprentissage Humain}{25}{chapter.3}\protected@file@percent }
  6 +\@writefile{lof}{\addvspace {10\p@ }}
  7 +\@writefile{lot}{\addvspace {10\p@ }}
  8 +\@writefile{toc}{\contentsline {section}{\numberline {3.1}L'Intelligence Artificielle}{25}{section.3.1}\protected@file@percent }
  9 +\citation{Robertson2014ARO}
  10 +\citation{MUANGPRATHUB2020e05227}
  11 +\citation{HUANG2023104684}
  12 +\@writefile{toc}{\contentsline {section}{\numberline {3.2}Systèmes de Recommandation dans les EIAH}{26}{section.3.2}\protected@file@percent }
  13 +\citation{HUANG2023104684}
  14 +\citation{HUANG2023104684}
  15 +\citation{pmlr-v108-seznec20a}
  16 +\citation{INGKAVARA2022100086}
  17 +\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces Architecture du système de recommandation proposé dans \cite {HUANG2023104684}\relax }}{27}{figure.caption.10}\protected@file@percent }
  18 +\newlabel{figArch}{{3.1}{27}{Architecture du système de recommandation proposé dans \cite {HUANG2023104684}\relax }{figure.caption.10}{}}
  19 +\citation{LALITHA2020583}
  20 +\citation{ZHAO2023118535}
  21 +\citation{SU2022109547}
  22 +\citation{MUANGPRATHUB2020e05227}
  23 +\citation{Zhou2021}
  24 +\citation{EZALDEEN2022100700}
  25 +\citation{EZALDEEN2022100700}
  26 +\citation{EZALDEEN2022100700}
  27 +\citation{ZHANG2021100025}
  28 +\citation{CHIU2023100118}
  29 +\citation{Robertson2014ARO}
  30 +\citation{HUANG2023104684}
  31 +\citation{pmlr-v108-seznec20a}
  32 +\citation{INGKAVARA2022100086}
  33 +\citation{LALITHA2020583}
  34 +\citation{SU2022109547}
  35 +\citation{MUANGPRATHUB2020e05227}
  36 +\citation{Zhou2021}
  37 +\citation{EZALDEEN2022100700}
  38 +\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces Niveaux du système de recommandation dans \cite {EZALDEEN2022100700}\relax }}{30}{figure.caption.11}\protected@file@percent }
  39 +\newlabel{fig:figLevels}{{3.2}{30}{Niveaux du système de recommandation dans \cite {EZALDEEN2022100700}\relax }{figure.caption.11}{}}
  40 +\@writefile{lot}{\contentsline {table}{\numberline {3.1}{\ignorespaces Tableau de synthèse des articles analysés dans l'état de l'art des EIAH\relax }}{30}{table.caption.12}\protected@file@percent }
  41 +\newlabel{tabArts}{{3.1}{30}{Tableau de synthèse des articles analysés dans l'état de l'art des EIAH\relax }{table.caption.12}{}}
  42 +\@setckpt{./chapters/EIAH}{
  43 +\setcounter{page}{31}
  44 +\setcounter{equation}{0}
  45 +\setcounter{enumi}{0}
  46 +\setcounter{enumii}{0}
  47 +\setcounter{enumiii}{0}
  48 +\setcounter{enumiv}{0}
  49 +\setcounter{footnote}{0}
  50 +\setcounter{mpfootnote}{0}
  51 +\setcounter{part}{2}
  52 +\setcounter{chapter}{3}
  53 +\setcounter{section}{2}
  54 +\setcounter{subsection}{0}
  55 +\setcounter{subsubsection}{0}
  56 +\setcounter{paragraph}{0}
  57 +\setcounter{subparagraph}{0}
  58 +\setcounter{figure}{2}
  59 +\setcounter{table}{1}
  60 +\setcounter{caption@flags}{2}
  61 +\setcounter{continuedfloat}{0}
  62 +\setcounter{subfigure}{0}
  63 +\setcounter{subtable}{0}
  64 +\setcounter{parentequation}{0}
  65 +\setcounter{thmt@dummyctr}{0}
  66 +\setcounter{vrcnt}{0}
  67 +\setcounter{upm@subfigure@count}{0}
  68 +\setcounter{upm@fmt@mtabular@columnnumber}{0}
  69 +\setcounter{upm@format@section@sectionlevel}{1}
  70 +\setcounter{upm@fmt@savedcounter}{0}
  71 +\setcounter{@@upm@fmt@inlineenumeration}{0}
  72 +\setcounter{@upm@fmt@enumdescription@cnt@}{0}
  73 +\setcounter{upmdefinition}{0}
  74 +\setcounter{section@level}{1}
  75 +\setcounter{Item}{0}
  76 +\setcounter{Hfootnote}{0}
  77 +\setcounter{bookmark@seq@number}{29}
  78 +\setcounter{DefaultLines}{2}
  79 +\setcounter{DefaultDepth}{0}
  80 +\setcounter{L@lines}{3}
  81 +\setcounter{L@depth}{0}
  82 +\setcounter{float@type}{8}
  83 +\setcounter{algorithm}{0}
  84 +\setcounter{ALG@line}{0}
  85 +\setcounter{ALG@rem}{0}
  86 +\setcounter{ALG@nested}{0}
  87 +\setcounter{ALG@Lnr}{2}
  88 +\setcounter{ALG@blocknr}{10}
  89 +\setcounter{ALG@storecount}{0}
  90 +\setcounter{ALG@tmpcounter}{0}
  91 +}
chapters/EIAH.tex View file @ 886faa4
  1 +\chapter{Environnements Informatiques d'Apprentissage Humain}
  2 +\markboth{CHAPITRE 3. \'ETAT DE L'ART (EIAH)}{}
  3 +
  4 +Dans ce chapitre sont mentionnés des travaux qui sont en rapport avec le travail de la thèse spécifiquement sur les EIAH, mais ils utilisent des approches différents, alors ici est faite une classification de ces travaux mais selon le thème principal qu'ils abordent.
  5 +
  6 +\section{L'Intelligence Artificielle}
  7 +
  8 +L'intelligence artificielle a été appliquée avec succès au domaine de l'éducation dans plusieurs écoles de différents pays et pour l'apprentissage de l'informatique, les langues étrangères et les sciences comme le montre le travail de \cite{ZHANG2021100025} qui analyse des articles dans la période de 1993-2020, où il est importante de voir aussi que il n'y a pas une distinction en age, ni en niveau culturel, ni en niveau éducatif. En plus, avec les différentes techniques d'intelligence artificielle qui sont appliquées il est possible d'adapter la stratégie d'apprentissage pour n'importe qui et maximiser le rendement et acquisition des connaissances. Une caractéristique assez notable est que les représentations et algorithmes peuvent changer et évoluer. Aujourd'hui il y a encore beaucoup de potentiel pour développer encore les capacités de calcul et d'adaptation.\\
  9 +
  10 +Un travail plus analytique de l'utilisation de l'intelligence artificielle dans l'éducation est \cite{CHIU2023100118} qui présente une révision des travaux d'intelligence artificielle appliquée à l'éducation extraits des bases de données bibliographiques ERIC, WOS et Scopus dont la date de publication est dans la période 2012-2021, ce travail est focalisé sur les tendances et les outils employées pour aider dans le processus d'apprentissage. Après l'analyse de 92 travaux, une classification des contributions de l'IA est crée : apprentissage, enseignement, évaluation et administration. Dans l'apprentissage, est utilisée généralement l'IA pour attribuer des tâches en fonction des compétences individuelles, fournir des conversations homme-machine, analyser le travail des étudiants pour obtenir des commentaires et accroître l'adaptabilité et l'interactivité dans les environnements numériques. Dans l'enseignement, peuvent être appliquées des stratégies d'enseignement adaptatives, améliorer la capacité des enseignants à enseigner et soutenir le développement professionnel des enseignants. Dans le domaine de l'évaluation, l'IA peut fournir une notation automatique et prédire les performances des élèves. L'IA aide dans le domaine de l'administration à améliorer la performance des plateformes de gestion, à soutenir la prise de décision pédagogique et à fournir des services personnalisés. Quelques-unes des lacunes identifiées de l'IA dans le domaine de l'éducation sont : les ressources recommandées par les plateformes d'apprentissage personnalisées sont trop homogènes, les données nécessaires pour les modèles d'IA sont très spécifiques, le lien entre les technologies et l'enseignement n'est pas bien clair, la plupart des travaux sont conçus pour un domaine ou un objectif très spécifique (peu de généralité), l'inégalité éducative car les technologies ne motivent pas tous les types d'élèves et parfois il y a des attitudes négatives envers l'IA, parce qu'elle est difficile à maîtriser et a intégrer dans les cours.\\
  11 +
  12 +Les techniques d'IA peuvent aussi aider à prendre des décisions stratégiques qui visent des objectifs à long échéance comme le montre le travail de \cite{Robertson2014ARO} qui analyse plusieurs publications réalisées dans le domaine de l'utilisation de l'IA en jeux stratégiques. Les jeux stratégiques sont un très bon terrain d'entrainement parce que ils contient plusieurs règles, environnements pleins de contraintes, actions et réactions en temps réel, caractère aléatoire et informations cachées. Les techniques principales identifiées sont: l'apprentissage par renforcement, les modèles Bayésiens, la recherche en arbre, le raisonnement à partir de cas, les réseaux de neurones et les algorithmes évolutifs. Ici est notable aussi comme la combinaison de ces techniques permet dans certains cas d'améliorer le comportement global des algorithmes et d'obtenir meilleures réponses.
  13 +
  14 +\section{Systèmes de Recommandation dans les EIAH}
  15 +
  16 +Les systèmes de recommandation dans les environnements d'apprentissage considèrent les exigences, les nécessites, le profil, les talents, les intérêts et l'évolution de l'apprenant pour s'adapter et recommander des ressources ou des exercices avec le but d'améliorer l'acquisition et maîtrise de concepts et des connaissances en général. L'adaptation de ces systèmes peut être de deux types, l'adaptation de la présentation qui montre aux apprenants les ressources en concordance avec leurs faiblesses et l'adaptation de la navigation qui change la structure du cours en fonction du niveau et style d'apprentissage de chaque apprenant \cite{MUANGPRATHUB2020e05227}. Ces systèmes montrent des effets positifs pour les apprenants comme le révèle le travail de \cite{HUANG2023104684}, qui applique l'intelligence artificielle pour personnaliser des recommandations de ressources en vidéo et ainsi aider et motiver les apprenants, les effets ont été validés avec la différence entre des test préliminaires et des test après la finalisation du cours ainsi que un groupe de contrôle qui a suivi le même cours sans le système de recommandation. La figure \ref{figArch} montre l'architecture du système où l'intelligence artificielle est utilisée dans différents étapes du processus avec les données de l'apprenant et la supervision et contrôle du professeur.\\
  17 +
  18 +\begin{figure}
  19 +\centering
  20 +\includegraphics[scale=0.5]{./Figures/architecture.png}
  21 +\caption{Architecture du système de recommandation proposé dans \cite{HUANG2023104684}}
  22 +\label{figArch}
  23 +\end{figure}
  24 +
  25 +Le travail de \cite{pmlr-v108-seznec20a} propose un modèle générique de recommandation qui peut être utilisé dans les systèmes de recommandation de produits ou les systèmes d'apprentissage. Ce modèle est basé sur l'algorithme par renforcement UCB (Upper Confidence Bound) qui permet de trouver une solution approchée à une variante du problème bandit manchot non stationnaire (MAB), où les recompenses de chaque action diminuent chaque fois que elle est utilisée. Pour valider le modèle une comparaison avec trois autres algorithmes sur une base de données réelle a été réalisée, les métriques employées sont la moyenne accumulée du régret et la moyenne de la récompense accumulée. Avec les deux métriques, le modèle proposé est très performant.\\
  26 +
  27 +Aussi \cite{INGKAVARA2022100086}, met en évidence que les technologies et les systèmes de recommandation peuvent s'adapter à différents besoins et aspirations ainsi que favoriser l'apprentissage auto-régulé. Ce type d'apprentissage aide aux apprenants à acquérir les habilités pour améliorer leur vitesse et performance; parce que y trouvent des objectifs variables, un environnement structuré, des temps d'apprentissage variable et des ressources de support et de renforcement.\\
  28 +
  29 +Comme vu précédemment, les techniques de l'intelligence artificielle sont largement utilisées dans l'apprentissage et l'enseignement; l'apprentissage adaptatif pour suggérer des ressources d'étude est l'objectif du travail de \cite{LALITHA2020583} où est proposé un système avec un module de personnalisation qui collecte l'information de l'apprenant et ses exigences, un module de classification qui compare l'information avec d'autres profiles en utilisant l'algorithme KNN et un module de recommandation chargé de identifier les ressources communs entre les profiles et d'extraire information complémentaire d'Internet avec Random Forest pour améliorer le processus d'apprentissage du nouveau apprenant. Les techniques et les stratégies sont très variées mais l'objectif est de s'adapter aux apprenants et leurs besoins; Dans \cite{ZHAO2023118535} les données des apprenants sont collectés et classifiés dans groupes avec des caractéristiques similaires, puis pour déterminer la performance de chaque apprenant est utilisée la méthode d'analyse par enveloppement des données (DEA) qui permet d'identifier les besoins spécifiques de chaque groupe et ainsi proposer un parcours d'apprentissage personnalisé.\\
  30 +
  31 +Un aspect pertinent des systèmes de recommandation qu'il faut bien considérer est la représentation des données des enseignants, des apprenants et l'environnement; parce que les multiples types de structures qu'on peut utiliser et son contenu peuvent conduire vers des résultats différents et changements dans la performance des algorithmes ou techniques employées. La proposition de \cite{SU2022109547} est de stocker les données des apprenants dans deux graphes évolutifs qui contient les relations entre les questions et les réponses correctes ainsi que les réponses données par les apprenants, pour construire un graphe global de chaque apprenant avec son état cognitif et avec lequel est analysé et prédit la performance dans un contexte spécifique et ainsi pouvoir proposer un parcours personnalisé. Dans \cite{MUANGPRATHUB2020e05227} sont représentés les concepts comme trois ensembles: les objets (G), les attributs (M) et les relations entre G et M ; avec l'idée de les analyser avec l'approche FCA (Formal Context Analysis), Ce type de représentation permet de mettre en rapport les ressources, les questions et les sujets, ainsi si un apprenant étudie un sujet $S_1$ et il y a une règle qui relie $S_1$ avec le sujet $S_4$ ou la question $Q_34$, alors le système peut suggérer l'étude de ces ressources, l'algorithme complet explore la structure prédéfinie du cours pour recommander un parcours exhaustif d'apprentissage.\\
  32 +
  33 +La recommandation personnalisé d'exercices est aussi une autre approche des systèmes de recommandation comme le fait \cite{Zhou2021} de forme spécifique pour l'apprentissage de l'anglais, le système contient un module principal qui représente les apprenants comme des vecteurs selon le modèle DINA où sont stockes les points de connaissance acquise, le vecteur est n-dimensionnel $K=\{k_1, k_2, ..., k_n\}$ et chaque dimension correspond à un point de connaissance, ainsi si $k_1=1$ alors l'apprenant maîtrise le point de connaissance $k_1$, et si $k_2=0$ alors l'apprenant doit étudier le point de connaissance $k_2$ car il n'a pas acquise la maîtrise dans ce point-là. Sur ce type de représentation est basé la recommandation des questions proposées par le système, il y a aussi une librairie de ressources associes à chacune des possibles questions, avec lesquelles l'apprenant peut renforcer son apprentissage et avancer dans le programme du cours.\\
  34 +
  35 +Certains travaux de recommandation et personnalisation considèrent des variables complémentaires aux notes comme dans \cite{EZALDEEN2022100700}, qui lie l'analyse du comportement de l'apprenant et l'analyse sémantique. La première étape consiste en collecter les données nécessaires pour créer un profile de l'apprenant, avec le profile complet, sont associés l'apprenant et un groupe de catégories prédéfinies d'apprentissage selon ses préférences et les données historiques, puis en ayant une valeur pour chaque catégorie sont cherchés les concepts associés pour les catégories et ainsi est générée une guide pour obtenir des ressources qu'on peut recommander sur le web. Le système est divisé en quatre niveaux comme montre la figure \figref{figLevels} où chacun des niveaux est chargé de une tache spécifique dont les résultats sont envoyés au niveau suivant jusqu'à arriver aux recommandations personnalisés pour l'apprenant.\\
  36 +
  37 +\mfigure[!ht]{scale=0.5}{./Figures/ELearningLevels.png}{Niveaux du système de recommandation dans \cite{EZALDEEN2022100700}}{figLevels}
  38 +
  39 +%\begin{figure}[!ht]
  40 +%\centering
  41 +%\includegraphics[scale=0.5]{./Figures/ELearningLevels.png}
  42 +%\caption{Niveaux du système de recommandation dans le travail \cite{EZALDEEN2022100700}}
  43 +%\label{figLevels}
  44 +%\end{figure}
  45 +
  46 +Une limitation générale qui presentent les algorithmes d'IA dans les EIAH est que ce type d'algorithmes ne permettent pas d'oublier l'information avec laquelle ils ont été entrainés, une propiété nécessaire pour les EIAH dans certaines situations où peut se produire un disfonctionnement du système, la réévaluation d'un apprenant ou la reestructuration d'un cours.\\
  47 +
  48 +Le tableau \ref{tabArts} montre un récapitulatif des articles analysés dans l'état de l'art des EIAH.\\
  49 +
  50 +\begin{table}
  51 +\footnotesize
  52 +\begin{tabular}{p{4.2cm}p{10cm}}
  53 +Référence&Limites et faiblesses\\
  54 +\hline
  55 +\cite{ZHANG2021100025}&Niveau global d'application de EIAH. Analyse des effets de l'IA\\
  56 +\cite{CHIU2023100118}&Aspects non cognitifs en IA. Motivation des apprenants\\
  57 +\cite{Robertson2014ARO}&Peu de test. Pas de standard d'évaluation\\
  58 +\cite{HUANG2023104684}&Recommandation en fonction de la motivation seulement. N'est pas général pour tous les apprenants\\
  59 +\cite{pmlr-v108-seznec20a}&Le modèle n'a pas été testé avec données d'étudiants. UCB prends beaucoup de temps pour explorer les alternatives\\
  60 +\cite{INGKAVARA2022100086}&Modèle très complexe. Définition de constantes subjectif et beaucoup de variables.\\
  61 +\cite{LALITHA2020583}&A besoin de beaucoup de données pour entrainement. Ne marche pas dans le cas 'cold-start', nést pas totalement automatisé\\
  62 +\cite{SU2022109547}&Estimation de la connaissance de façon subjective. Il est nécessaire une étape d'entrenaiment\\
  63 +\cite{MUANGPRATHUB2020e05227}&Structure des règles complexe. Définition de la connaissance de base complexe\\
  64 +\cite{Zhou2021}&Utilisation d'un filtre collaboratif sans stratification. Utilisation d'une seule metrique de distance\\
  65 +\cite{EZALDEEN2022100700}&Il n y a pas de comparaison avec d'autres modèles différents de CNN. Beaucoup de variables à valeurs subjectives\\
  66 +
  67 +\end{tabular}
  68 +\caption{Tableau de synthèse des articles analysés dans l'état de l'art des EIAH}
  69 +\label{tabArts}
  70 +\end{table}
chapters/contexte.aux View file @ 886faa4
  1 +\relax
  2 +\providecommand\hyper@newdestlabel[2]{}
  3 +\@writefile{toc}{\contentsline {chapter}{\numberline {2}Contexte}{7}{chapter.2}\protected@file@percent }
  4 +\@writefile{lof}{\addvspace {10\p@ }}
  5 +\@writefile{lot}{\addvspace {10\p@ }}
  6 +\@writefile{toc}{\contentsline {section}{\numberline {2.1}Notions et Algorithmes}{7}{section.2.1}\protected@file@percent }
  7 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.1}Environnements Informatiques pour l'Apprentissage Humain (EIAH)}{7}{subsection.2.1.1}\protected@file@percent }
  8 +\citation{Nkambou}
  9 +\citation{Nkambou}
  10 +\citation{LALITHA2020583}
  11 +\citation{LALITHA2020583}
  12 +\citation{LALITHA2020583}
  13 +\@writefile{lof}{\contentsline {figure}{\numberline {2.1}{\ignorespaces L'architecture générale des EIAH, les composantes et leurs interactions (\cite {Nkambou})\relax }}{8}{figure.caption.4}\protected@file@percent }
  14 +\providecommand*\caption@xref[2]{\@setref\relax\@undefined{#1}}
  15 +\newlabel{fig:figEIAH}{{2.1}{8}{L'architecture générale des EIAH, les composantes et leurs interactions (\cite {Nkambou})\relax }{figure.caption.4}{}}
  16 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.2}Stratégies d'Apprentissage}{8}{subsection.2.1.2}\protected@file@percent }
  17 +\citation{ROLDANREYES20151}
  18 +\@writefile{lof}{\contentsline {figure}{\numberline {2.2}{\ignorespaces Stratégies d'apprentissage (\cite {LALITHA2020583})\relax }}{9}{figure.caption.5}\protected@file@percent }
  19 +\newlabel{fig:figStra}{{2.2}{9}{Stratégies d'apprentissage (\cite {LALITHA2020583})\relax }{figure.caption.5}{}}
  20 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.3}Raisonnement à partir de cas (RàPC)}{9}{subsection.2.1.3}\protected@file@percent }
  21 +\citation{10.1007/978-3-030-58342-2_20}
  22 +\citation{min8100434}
  23 +\citation{min8100434}
  24 +\citation{min8100434}
  25 +\citation{Richter2013}
  26 +\@writefile{lof}{\contentsline {figure}{\numberline {2.3}{\ignorespaces Cycle fondamental du raisonnement à partir de cas (\cite {min8100434})\relax }}{10}{figure.caption.6}\protected@file@percent }
  27 +\newlabel{fig:figCycle}{{2.3}{10}{Cycle fondamental du raisonnement à partir de cas (\cite {min8100434})\relax }{figure.caption.6}{}}
  28 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.1.3.1}Rechercher}{11}{subsubsection.2.1.3.1}\protected@file@percent }
  29 +\newlabel{eqSim}{{2.1}{11}{Rechercher}{equation.2.1.1}{}}
  30 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.1.3.2}Adapter (Réutiliser)}{11}{subsubsection.2.1.3.2}\protected@file@percent }
  31 +\citation{Richter2013}
  32 +\citation{Richter2013}
  33 +\@writefile{lof}{\contentsline {figure}{\numberline {2.4}{\ignorespaces Principe de réutilisation dans le RàPC (\cite {Richter2013})\relax }}{12}{figure.caption.7}\protected@file@percent }
  34 +\newlabel{fig:figReut}{{2.4}{12}{Principe de réutilisation dans le RàPC (\cite {Richter2013})\relax }{figure.caption.7}{}}
  35 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.1.3.3}Réviser et Réparer}{12}{subsubsection.2.1.3.3}\protected@file@percent }
  36 +\citation{RICHTER20093}
  37 +\citation{Marie}
  38 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.1.3.4}Stocker (Retenir)}{13}{subsubsection.2.1.3.4}\protected@file@percent }
  39 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.1.3.5}Conteneurs de Connaissance}{13}{subsubsection.2.1.3.5}\protected@file@percent }
  40 +\citation{hajduk2019cognitive}
  41 +\@writefile{lof}{\contentsline {figure}{\numberline {2.5}{\ignorespaces Cycle du RàPC, les étapes, les conteneurs et leurs liens\relax }}{14}{figure.caption.8}\protected@file@percent }
  42 +\newlabel{fig:figCycle}{{2.5}{14}{Cycle du RàPC, les étapes, les conteneurs et leurs liens\relax }{figure.caption.8}{}}
  43 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.4}Systèmes Multi-Agents}{14}{subsection.2.1.4}\protected@file@percent }
  44 +\citation{Hoang}
  45 +\citation{Hoang}
  46 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.5}Pensée Bayesienne}{15}{subsection.2.1.5}\protected@file@percent }
  47 +\newlabel{eqBayes}{{2.2}{15}{Pensée Bayesienne}{equation.2.1.2}{}}
  48 +\citation{10.1145/3459665}
  49 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.6}Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{16}{subsection.2.1.6}\protected@file@percent }
  50 +\newlabel{eqDist}{{2.3}{16}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.1.3}{}}
  51 +\newlabel{eqMet1}{{2.4}{16}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.1.4}{}}
  52 +\newlabel{eqMet2}{{2.5}{16}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.1.5}{}}
  53 +\citation{9072123}
  54 +\newlabel{eqV1}{{2.6}{17}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.1.6}{}}
  55 +\newlabel{eqV2}{{2.7}{17}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.1.7}{}}
  56 +\newlabel{eqV3}{{2.8}{17}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.1.8}{}}
  57 +\newlabel{eqCond}{{2.9}{17}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.1.9}{}}
  58 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.7}K-Moyennes}{17}{subsection.2.1.7}\protected@file@percent }
  59 +\newlabel{eqKM}{{2.10}{17}{K-Moyennes}{equation.2.1.10}{}}
  60 +\citation{WANG2021331}
  61 +\newlabel{eqCentres}{{2.11}{18}{K-Moyennes}{equation.2.1.11}{}}
  62 +\newlabel{eqApp}{{2.12}{18}{K-Moyennes}{equation.2.1.12}{}}
  63 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.8}Modèle de Mélange Gaussien GMM (\textit {Gaussian Mixture Model})}{18}{subsection.2.1.8}\protected@file@percent }
  64 +\newlabel{eqGMM}{{2.13}{18}{Modèle de Mélange Gaussien GMM (\textit {Gaussian Mixture Model})}{equation.2.1.13}{}}
  65 +\newlabel{eqK}{{2.14}{18}{Modèle de Mélange Gaussien GMM (\textit {Gaussian Mixture Model})}{equation.2.1.14}{}}
  66 +\newlabel{eqdProb}{{2.15}{18}{Modèle de Mélange Gaussien GMM (\textit {Gaussian Mixture Model})}{equation.2.1.15}{}}
  67 +\citation{9627973}
  68 +\citation{9434422}
  69 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.9}Fuzzy-C}{19}{subsection.2.1.9}\protected@file@percent }
  70 +\newlabel{eqFuzzy}{{2.16}{19}{Fuzzy-C}{equation.2.1.16}{}}
  71 +\newlabel{eqFCond}{{2.17}{19}{Fuzzy-C}{equation.2.1.17}{}}
  72 +\newlabel{eqFV}{{2.18}{19}{Fuzzy-C}{equation.2.1.18}{}}
  73 +\newlabel{eqFU}{{2.19}{19}{Fuzzy-C}{equation.2.1.19}{}}
  74 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.10}Bandit Manchot MAB (\textit {Multi-Armed Bandits})}{19}{subsection.2.1.10}\protected@file@percent }
  75 +\citation{9870279}
  76 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.11}Échantillonnage de Thompson TS (\textit {Thompson Sampling})}{20}{subsection.2.1.11}\protected@file@percent }
  77 +\newlabel{eqBeta}{{2.20}{20}{Échantillonnage de Thompson TS (\textit {Thompson Sampling})}{equation.2.1.20}{}}
  78 +\@writefile{lof}{\contentsline {figure}{\numberline {2.6}{\ignorespaces Comportement de la distribution Beta avec différents valeurs dans ses paramètres\relax }}{21}{figure.caption.9}\protected@file@percent }
  79 +\newlabel{fig:figBeta}{{2.6}{21}{Comportement de la distribution Beta avec différents valeurs dans ses paramètres\relax }{figure.caption.9}{}}
  80 +\@setckpt{./chapters/contexte}{
  81 +\setcounter{page}{22}
  82 +\setcounter{equation}{20}
  83 +\setcounter{enumi}{0}
  84 +\setcounter{enumii}{0}
  85 +\setcounter{enumiii}{0}
  86 +\setcounter{enumiv}{0}
  87 +\setcounter{footnote}{0}
  88 +\setcounter{mpfootnote}{0}
  89 +\setcounter{part}{1}
  90 +\setcounter{chapter}{2}
  91 +\setcounter{section}{1}
  92 +\setcounter{subsection}{11}
  93 +\setcounter{subsubsection}{0}
  94 +\setcounter{paragraph}{0}
  95 +\setcounter{subparagraph}{0}
  96 +\setcounter{figure}{6}
  97 +\setcounter{table}{0}
  98 +\setcounter{caption@flags}{2}
  99 +\setcounter{continuedfloat}{0}
  100 +\setcounter{subfigure}{0}
  101 +\setcounter{subtable}{0}
  102 +\setcounter{parentequation}{0}
  103 +\setcounter{thmt@dummyctr}{0}
  104 +\setcounter{vrcnt}{0}
  105 +\setcounter{upm@subfigure@count}{0}
  106 +\setcounter{upm@fmt@mtabular@columnnumber}{0}
  107 +\setcounter{upm@format@section@sectionlevel}{2}
  108 +\setcounter{upm@fmt@savedcounter}{0}
  109 +\setcounter{@@upm@fmt@inlineenumeration}{0}
  110 +\setcounter{@upm@fmt@enumdescription@cnt@}{0}
  111 +\setcounter{upmdefinition}{0}
  112 +\setcounter{section@level}{2}
  113 +\setcounter{Item}{0}
  114 +\setcounter{Hfootnote}{0}
  115 +\setcounter{bookmark@seq@number}{22}
  116 +\setcounter{DefaultLines}{2}
  117 +\setcounter{DefaultDepth}{0}
  118 +\setcounter{L@lines}{3}
  119 +\setcounter{L@depth}{0}
  120 +\setcounter{float@type}{8}
  121 +\setcounter{algorithm}{0}
  122 +\setcounter{ALG@line}{0}
  123 +\setcounter{ALG@rem}{0}
  124 +\setcounter{ALG@nested}{0}
  125 +\setcounter{ALG@Lnr}{2}
  126 +\setcounter{ALG@blocknr}{10}
  127 +\setcounter{ALG@storecount}{0}
  128 +\setcounter{ALG@tmpcounter}{0}
  129 +}
chapters/contexte.tex View file @ 886faa4
  1 +\chapter{Contexte}
  2 +
  3 +\section{Notions et Algorithmes}
  4 +
  5 +Dans ce chapitre sont décrits plus en détails les concepts et algorithmes utilisés dans le développement des modules. CEs modules font partie des contributions de cette thèse à l'environnement informatique pour l'apprentissage humain (EIAH) appelé AI-VT (\textit{Artificial Intelligence - Artificial Trainer}).
  6 +
  7 +\subsection{Environnements Informatiques pour l'Apprentissage Humain (EIAH)}
  8 +
  9 +Les EIAH sont des outils pour aider les apprenants dans le processus d'apprentissage et d'acquisition de la connaissance. Ces outils sont conçus pour fonctionner avec des stratégies d'apprentissage online et mixtes. Fondamentalement, l'architecture de ces systèmes est divisé en quatre composants comme le montre la figure \figref{figEIAH} :\\
  10 +\begin{itemize}
  11 +\item Le domaine, qui contient les concepts, les règles et les stratégies pour résoudre des problèmes dans un domaine spécifique. Ce module peut détecter et corriger les erreurs des apprenants. L'information, généralement, est organisée selon des séquences pédagogiques.
  12 +\item L'apprenant, ce module est le noyau du système car il contient toute l'information cognitive possible de l'apprenant ainsi que son évolution. Ce module doit avoir les informations implicites et explicites pour pouvoir créer une représentation de la connaissance et le processus d'apprentissage. C'est également important parce que cette information doit permettre de générer un diagnostic de l'état de la connaissance de l'apprenant, à partir duquel le système peut prédire les résultats dans certains domaines et choisir la stratégie optimale pour présenter les nouveaux contenus.
  13 +\item L'enseignant, reçoit l'information des modules précédents grâce à laquelle il peut prendre des décisions sur le changement de parcours ou sur la stratégie d'apprentissage. Il peut également interagir avec l'apprenant.
  14 +\item L'interface, est le module qui gère les configurations et les interactions entre les modules par différents moyens interactifs.\\
  15 +\end{itemize}
  16 +
  17 +\mfigure[!ht]{scale=0.5}{./Figures/EIAH.png}{L'architecture générale des EIAH, les composantes et leurs interactions (\cite{Nkambou})}{figEIAH}
  18 +
  19 +Le développement et la configuration de ce type de systèmes sont multidisciplinaires et impliquent plusieurs domaines de recherche comme: l'intelligence artificielle, la pédagogie, la psychologie, les sciences cognitives et l'éducation.
  20 +
  21 +\subsection{Stratégies d'Apprentissage}
  22 +
  23 +Dans \cite{LALITHA2020583}, l'apprentissage est défini comme une fonction du cerveau humain acquise grâce au changement permanent dans l'obtention de connaissances et de compétences par le biais d'un processus de transformation du comportement lié à l'expérience ou à la pratique. L'apprentissage implique réflexion, compréhension, raisonnement et mise en oeuvre. Un individu peut utiliser différentes stratégies pour acquérir la connaissance. Comme le montre la figure \figref{figStra}, les stratégies peuvent être classées entre mode traditionnel et mode online.
  24 +
  25 +\mfigure[!ht]{scale=0.4}{./Figures/TLearning.png}{Stratégies d'apprentissage (\cite{LALITHA2020583})}{figStra}
  26 +
  27 +%\begin{figure}[!ht]
  28 +%\centering
  29 +%\includegraphics[scale=0.4]{./Figures/TLearning.png}
  30 +%\caption{Stratégies d'apprentissage (\cite{LALITHA2020583})}
  31 +%\label{figStra}
  32 +%\end{figure}
  33 +
  34 +L'apprentissage traditionnel se réfère au type d'apprentissage en classe, centré sur l'enseignant où la présence physique dans le temps et l'espace est fondamentale. Ici, l'enseignement est direct de l'enseignant à l'élève, et les ressources sont généralement des documents imprimés. L'apprentissage et la participation doivent être actifs, la rétroaction est instantanée et des interactions sociales sont présentes. Par contre, il y a un manque de flexibilité en fonction du temps \colorbox{yellow}{MLB:à revoir}.\\
  35 +
  36 +L'autre stratégie globale est l'apprentissage online, qui est basé sur les ressources et l'information disponible sur le web. Cette stratégie incite activement les apprenants à acquérir de nouvelles connaissances indépendamment \colorbox{yellow}{MLB:indépendantes ou indépendemment à qq chose} grâce aux vastes ressources disponibles en ligne. Les points positifs de cette stratégie sont par exemple: la rentabilité, la mise à niveau continue des compétences et des connaissances ou une plus grande opportunité d'accéder au contenu du monde entier. Pour l'apprenant, l'auto-motivation et l'interaction peuvent être des défis à surmonter. Pour l'enseignant, il est parfois difficile d'évaluer l'évolution du processus d'apprentissage de l'individu. L'apprentissage online fait aussi référence à l'utilisation de dispositifs électroniques pour apprendre (e-learning) où les apprenants peuvent être guidés par l'enseignant à travers des liens, du matériel spécifique d'apprentissage, des activités ou exercices.\\
  37 +
  38 +Il existe aussi certaines stratégies mixtes qui combinent des caractéristiques des deux stratégies fondamentales, comme un cours online mais avec quelques séances en présentiel pour des activités spécifiques ou des cours traditionnels avec du matériel d'apprentissage complémentaire online.
  39 +
  40 +%\subsection{Traitement du langage naturel (NLP)}
  41 +%
  42 +%Le traitement du langage naturel est un domaine de recherche interdisciplinaire qui essaie à travers de multiples méthodes analyser et faire comprendre aux machines le langage et la communication humaine. Ce domaine est catégorisé comme une branche de l'intelligence artificielle \cite{kedia2020hands}.\\
  43 +%
  44 +%Comme on peut lire dans \cite{ghosh2019natural}, le NLP est constitué de plusieurs tâches standardisées, entre elles, la tokenisation qui est la procédure qui consiste à diviser une phrase en ses mots constitutifs, par exemple le résultat de tokeniser la phrase "Je lis un livre", est "Je", "lis", "un", "livre"; avec cet exemple on a tokenisée la phrase en utilisant uni-grams, c'est-à-dire des tokens de taille un, mais on peut extraire des ensembles de tokens, si on divise la phrase en paires de tokens alors on parle de bi-grams: "Je lis", "un livre"; en général on parle de n-grams où "n" est le nombre de tokens.\\
  45 +%
  46 +%Une autre tâche fondamentale du NLP est le "PoS Tagging" qui ajoute des identificateurs à chacun des tokens d'une phrase avec le propos de faciliter l'analyse et le filtrage du contenu des phrases. Ainsi "Le ciel est bleu", est [("Le", "AR"), ("ciel", "NN"), ("est", "VBZ"), ("bleu", "JJ")], où AR: article, NN: nom, VBZ: verbe troisième personne, JJ: adjectif. Ainsi, il est possible de connaître et de filtrer les phrases par la catégorisation de leur contenu.\\
  47 +%
  48 +%La tokenisation et le "PoS Tagging" fonctionnent avec les caractères qui font partie de l'alphabet, mais les phrases communément écrites contient aussi des caractères symboliques qui représentent des aspects complémentaires du langage et qui ne sont pas considérés dans les analyses, car ils n'apportent pas d'information significative. La tâche d'effacer les symboles jugés inutiles s'appelle "cleaning text", usuellement ces symboles sont les signes de ponctuation et parfois les articles définis / indéfinis et les mots qui servent de lien comme par exemple en français: "le", "la", "les", "est", "et", etc. Il y a d'autres tâches qui sont utilisées aussi dans NLP, mais elles sont plus spécifiques comme: normalisation, correction, "stemming", "lemmatization", "NER", etc. Elles peuvent être consultées plus en détail et avec exemples de code dans \cite{ghosh2019natural}.\\
  49 +%
  50 +%L'exécution des tâches précitées est appelée prétraitement du texte, l'idée est de donner au texte un format pour l'envoyer comme donnée d'entré à un modèle chargé de l'analyser selon un certain objectif prédétermine. Les modèles de NLP se basent en algorithmes d'apprentissage automatique qui fonctionnent avec données numériques, alors les modèles doivent convertir le texte vers une représentation numérique, cette transformation s'appelle "vectorization" ou "vector embeddings". L'une des méthodes les plus simples et les plus élémentaires est le "BoW (Bag of Words) Model" qui génère un vecteur avec les fréquences de chaque mot d'un alphabet dans une phrase, comme le montre la figure \figref{figBOW}, les limitations principales du "BoW Model" sont d'abord que les vecteurs de représentation générés sont creuses, et aussi il n'y a pas de préservation de l'ordre des mots, alors on perdre contexte et signification des phrases et du texte. Une autre modèle est TF-IDF qui normalise les fréquences d'apparition et essaie d'associer une importance aux mots, ce qui évite d'analyser la pertinence de chaque mot seulement par sa fréquence d'apparition dans le texte. Autres modèles de vectorisation plus sophistiqués comme les réseaux de neurones (Word2vec, Doc2Vec, fastText) peuvent être consultés dans \cite{kedia2020hands}.\\
  51 +%
  52 +%\mfigure[!ht]{scale=0.7}{./Figures/BoW.png}{Bag of words pour une phrase}{figBOW}
  53 +%
  54 +%%\begin{figure}
  55 +%%\centering
  56 +%%\includegraphics[scale=0.7]{./Figures/BoW.png}
  57 +%%\caption{Bag of words pour une phrase.}
  58 +%%\label{figBOW}
  59 +%%\end{figure}
  60 +
  61 +\subsection{Raisonnement à partir de cas (RàPC)}
  62 +
  63 +Le raisonnement à partir de cas est un type de modèle de raisonnement qui essaie d'imiter le comportement humain pour résoudre de nouveaux problèmes, en se souvenant des expériences passées. Le principe de base est que les problèmes similaires ont des solutions similaires. Si un nouveau problème arrive et que le modèle connait déjà la solution d'un problème similaire, alors la solution au nouveau problème peut être inférée des solutions déjà trouvées \colorbox{yellow}{MLB: suppr la fin de la phrase, redondant ?ou connues pour les problèmes similaires} \cite{ROLDANREYES20151}.\\
  64 +
  65 +Un cas est défini comme la représentation de la description d'un problème et la description de sa solution. Dans le raisonnement à partir de cas il existe une base de cas qui permet la création de nouvelles solutions en cherchant les problèmes similaires, en utilisant les données de la description du problème et leurs solutions associées.\\
  66 +
  67 +Formellement, le modèle nécessite les ensembles $P$ qui correspond à l'espace des problèmes et $S$ l'espace des solutions, alors un problème $x$ et sa solution $y$ appartiennent à ces espaces $x \in P$ et $y \in S$. Si $y$ est solution de $x$ alors, un cas dans le modèle est représenté par le couple $(x,y) \in P \times S$. Le RàPC a besoin d'une base de $n$ problèmes et de leurs solutions associées $(x^n, y^n)$, cette base est appelée base de cas. L'objectif du RàPC est, étant donné un nouveau problème $x^z$ de trouver sa solution $y^z$ en utilisant la base de cas \cite{10.1007/978-3-030-58342-2_20}.\\
  68 +
  69 +\mfigure[!ht]{scale=30}{./Figures/cycle.png}{Cycle fondamental du raisonnement à partir de cas (\cite{min8100434})}{figCycle}
  70 +
  71 +%\begin{figure}
  72 +%\centering
  73 +%\includegraphics[scale=30]{./Figures/cycle.png}
  74 +%\caption{Cycle fondamental du raisonnement à partir de cas %(\cite{min8100434})}
  75 +%\label{figCycle}
  76 +%\end{figure}
  77 +
  78 +Le processus du RàPC est divisé en quatre étapes qui forment un cycle, la figure \figref{figCycle} montre le cycle et le flux d'informations ainsi que les associations de chacune des étapes \cite{min8100434}: rechercher, adapter, réviser et stocker. Chacune des étapes est décrite dans \cite{Richter2013}.
  79 +
  80 +\subsubsection{Rechercher}
  81 +L'objectif de cette étape est de rechercher dans la base de cas, les cas similaires à un nouveau cas donné. Cette similarité n'est pas un concept général, mais dépend du contexte, de l'objectif et du type de données. La question fondamentale qui se pose dans cette étape est: quel est le cas le plus approprié dans la base de cas qui me permet de réutiliser sa solution pour résoudre le nouveau problème donné?\\
  82 +
  83 +Pour évaluer le nouveau cas avec les cas de la base de données, il est nécessaire de les comparer et ainsi trouver la similitude entre eux. La comparaison entre les cas est différente selon la représentation du cas, c'est-à-dire la structure qui contient la description du problème. Généralement, il est \colorbox{yellow}{MLB:Je ne comprends pas} employé la représentation par attributs, qui décrit le cas (problème) comme un ensemble d'attributs avec des valeurs spécifiques, cette représentation est connue comme la représentation attribut-valeur. La similitude entre deux cas attribut-valeur $c_1={a_{1,1}, a_{1,1}, ..., a_{1,n}}$ et $c_2={a_{2,1}, a_{2,1}, ..., a_{2,n}}$ mesure la somme de la distance entre les attributs individuellement avec une valeur de pondération qui détermine l'importance de chaque attribut dans le mesure global comme le montre l'équation\colorbox{yellow}{MLB:A revoir} \ref{eqSim}. Dans cette étape, il est possible aussi de sélectionner $k$ différents cas similaires au nouveau cas donné.
  84 +\
  85 +
  86 +\begin{equation}
  87 +\sum_{i=1}^n \omega_i \; sim (a_{1,i}, a_{2,i})
  88 +\label{eqSim}
  89 +\end{equation}
  90 +
  91 +\subsubsection{Adapter (Réutiliser)}
  92 +L'idée du RàPC est d'utiliser l'expérience pour essayer de résoudre de nouveaux cas (problèmes). La figure \figref{figReut} montre le principe de réutilisation où est utilisée la solution d'un cas (problème) ancien pour l'adapter et servir comme solution d'un nouveau cas.\\
  93 +
  94 +Il existe des situations pour lesquelles le nouveau cas et un ancien cas sont très similaires alors la solution au cas ancien est aussi valide pour le nouveau cas. Cependant, le plus souvent il est nécessaire d'adapter l'ancienne solution pour arriver à une solution satisfaisante du nouveau cas. De la même manière que pour la phase 'rechercher', il existe beaucoup de stratégies d'adaptation qui dépendent de la représentation, du contexte et des algorithmes utilisés. Une des stratégies les plus utilisées est la définition d'un ensemble de règles qui permettent la transformation de la solution \colorbox{yellow}{MLB:ne comprends pas}
  95 + ou les solutions trouvées. L'objectif ici est d'inférer une nouvelle solution $y_z$ du cas $x_z$ à partir des $k$ cas retrouvés dans la première étape.\\
  96 +
  97 +\mfigure[!ht]{scale=20}{./Figures/Reuse.png}{Principe de réutilisation dans le RàPC (\cite{Richter2013})}{figReut}
  98 +
  99 +%\begin{figure}
  100 +%\centering
  101 +%\includegraphics[scale=20]{./Figures/Reuse.png}
  102 +%\caption{Principe de réutilisation dans le RàPC (\cite{Richter2013})}
  103 +%\label{figReut}
  104 +%\end{figure}
  105 +
  106 +\subsubsection{Réviser et Réparer}
  107 +
  108 +Une fois que le système propose une solution au nouveau cas, cette solution doit être évaluée et révisée qu'elle soit correcte selon certains critères de validation. L'étape de révision est chargée d'évaluer l'applicabilité de la solution obtenue dans l'étape 'adaptation', cette évaluation peut être réalisée dans le monde réel ou dans une simulation.\\
  109 +
  110 +Alors dans cette phase, la tâche est de valider si le couple $(x_z, y_z)$ est correct, c'est-à-dire si la solution trouvée $y_z$ résout le problème $x_z$ et satisfait les règles de validité et d'applicabilité. Si la solution n'est pas bonne en termes de qualité de la réponse, alors une nouvelle solution doit être générée en revenant à l'étape précédente. Si la solution est bonne, mais qu'elle ne satisfait pas les critères d'acceptation alors la solution doit être réparée pour corriger ses failles.\\
  111 +
  112 +Le processus d'évaluation, de révision et de réparation entraine parfois un processus d'apprentissage qui permet d'améliorer la détection et la correction des failles des futures solutions générées. L'apprentissage est possible, car les modèles d'évaluation/réparation utilisent souvent des paramètres pour donner des résultats et sur ces paramètres il est possible d'appliquer des algorithmes qui vont aider à mesurer et changer les solutions selon les cas particuliers.\\
  113 +
  114 +L'évaluation peut se faire soit par un expert humain qui a la capacité d'évaluer la solution selon le contexte et la pertinence, soit par un système qui fonctionne dans le monde réel renvoyant le résultat de l'application de la solution ou soit par un modèle qui utilise des simulations numériques ou données et des tests statistiques. La correction des solutions peut être automatique, mais dépend du domaine et de l'information disponible pour le faire, usuellement le conteneur du vocabulaire a un ensemble de règles qui sont appliquées aux solutions qui ont été identifiées comme non valides.
  115 +
  116 +\subsubsection{Stocker (Retenir)}
  117 +
  118 +Si un nouveau cas résolu est jugé pertinent, alors celui-ci peut être stocké dans la base de cas pour qu'il aide dans la résolution de futures nouveaux cas. Dans le RàPC c'est considéré comme un processus d'apprentissage, car tous les cas résolus ne sont pas retenus, seulement certains d'entre eux, ceux qui remplissent des critères prédéfinis. Cette étape a deux rôles différents, le premier est d'aider le système à améliorer sa capacité à sélectionner des cas, évaluer et corriger les solutions générées; et le second est d'optimiser la taille de la base de cas pour éviter de gaspiller l'espace de stockage et ralentir le système au moment de trouver les cas similaires.
  119 +
  120 +\subsubsection{Conteneurs de Connaissance}
  121 +
  122 +Pour pouvoir exécuter le cycle complet, le RàPC dépend de quatre sources différentes d'information, ces sources sont appelées les conteneurs. Les conteneurs sont: le conteneur de cas, le conteneur d'adaptation, le conteneur du vocabulaire et le conteneur de similarité \cite{RICHTER20093}:
  123 +
  124 +\begin{itemize}
  125 +\item Conteneur de cas: il contient les expériences passées que le système peut utiliser pour résoudre les nouveaux problèmes. L'information est structurée comme un couple $(p, s)$, où $p$ est la description d'un problème et $s$ est la description de sa solution.
  126 +\item Conteneur d'adaptation: il stocke le ou les stratégies d'adaptation ainsi que les règles et paramètres nécessaires pour les exécuter.
  127 +\item Conteneur du vocabulaire: il contient l'information de la représentation.\colorbox{yellow}{MLB:c'est-à-dire ?les éléments... les fonctions?} Les éléments comme les entités, les attributs, les fonctionnes ou les relations entre les entités. Généralement dans le RàPC est utilisée la représentation des cas avec la structure clé-valeur.
  128 +\item Conteneur de similarité: il stoke les paramètres et la mesure de similarité $sim(p_1, p_2)$ entre les cas $p_1$ et $p_2$. \colorbox{yellow}{MLB:ne comprends pas la phrase} De plus, il est nécessaire de définir la fonction comme si le résultat est grande, alors la similitude entre $p_1$ et $p_2$ est importante ou au contraire.\\
  129 +\end{itemize}
  130 +
  131 +La figure \figref{figCycle} montre les liens entre les étapes du RàPC et les conteneurs, les flèches montrent le flux de l'information, les lignes continues suivent le parcours du cycle du RàPC, les lignes discontinues sont les liens entre les étapes et les conteneurs. L'étape "Retain" peut elle interagir avec les conteneurs 2, 3 et 4 comme dans le travail de Marie \cite{Marie}.\\
  132 +
  133 +\mfigure[!ht]{scale=2.5}{./Figures/CycleCBR.png}{Cycle du RàPC, les étapes, les conteneurs et leurs liens}{figCycle}
  134 +
  135 +%\begin{figure}
  136 +%\centering
  137 +%\includegraphics[scale=2.5]{./Figures/CycleCBR.png}
  138 +%\caption{Cycle du RàPC, les étapes, les conteneurs et leurs liens}
  139 +%\label{figCycle}
  140 +%\end{figure}
  141 +
  142 +\subsection{Systèmes Multi-Agents}
  143 +
  144 +Les systèmes multi-agents sont des systèmes conçus pour résoudre des problèmes en combinant l'intelligence artificielle et le calcul distribué. Ces systèmes sont composés de multiples entités autonomes appelées agents, qui ont la capacité de communiquer entre elles et également de coordonner leurs comportements \cite{hajduk2019cognitive}.\\
  145 +
  146 +Les agents ont comme propriétés:
  147 +\begin{itemize}
  148 +\item Autonomie: les agents fonctionnent sans intervention externe des êtres humains ou d'autres entités, ils ont un mécanisme interne qui leur permet de contrôler leurs états.
  149 +\item Réactivité: les agents ont la capacité de percevoir l'environnement dans lequel ils sont et peuvent réagir aux changements qui se produisent.
  150 +\item Pro-activité: les changements et réactions peuvent se produire aussi comme l'effet du processus cognitif interne, non seulement à cause des changements dans l'environnement \colorbox{yellow}{MLB:phrase à revoir}.
  151 +\item Coopération: étant donné que les agents peuvent communiquer les uns avec les autres, ils échangent de l'information qui les aide à se coordonner et à résoudre un même problème.
  152 +\item Apprentissage: il est nécessaire qu'un agent soit capable de réagir dans un environnement dynamique et inconnu, il doit donc avoir la capacité d'apprendre de ses interactions et ainsi améliorer la qualité de ses réactions et comportements.\\
  153 +\end{itemize}
  154 +
  155 +Il existe quatre types d'agent en fonction des capacités et des approches:
  156 +\begin{itemize}
  157 +\item Réactif: c'est l'agent qui perçoit constamment l'environnement et agit en fonction de ses objectifs.
  158 +\item Basé sur les réflexes: c'est l'agent qui considère les options pour atteindre ses objectifs et développe un plan à suivre.
  159 +\item Hybride agent: il combine les deux modèles antérieurs en utilisant chacun d'eux en fonction de la situation et de l'objectif.
  160 +\item Basé sur le comportement: l'agent contient un ensemble de modèles de comportement pour réaliser certaines tâches spécifiques, chaque comportement se déclenche selon des règles prédéfinies ou des conditions d'activation. Le comportement de l'agent peut être modélisé avec différentes stratégies cognitives de pensée ou de raisonnement.
  161 +\end{itemize}
  162 +
  163 +\subsection{Pensée Bayesienne}
  164 +
  165 +D'après les travaux de certains mathématiciens et neuroscientifiques, toute forme de cognition peut être modélisée dans le cadre de la formule de Bayes (equation \ref{eqBayes}), car elle permet de tester différentes hypothèses et donner plus de crédibilité à celle qui est confirmée par les observations. Étant donné que ce type de modèle cognitif permet l'apprentissage optimal, la prédiction sur les événements passés, l'échantillonnage représentatif et l'inférence d'information manquante; il est appliqué dans quelques algorithmes de machine learning et d'intelligence artificielle \cite{Hoang}.
  166 +
  167 +\begin{equation}
  168 +P(A|B)=\frac{P(B|A)P(A)}{P(B)}
  169 +\label{eqBayes}
  170 +\end{equation}
  171 +
  172 +La formule de Bayes calcule la probabilité a posteriori $P(A|B)$ de la plausibilité de la théorie $A$ compte tenu des données $B$, et requiert trois termes: (1) une probabilité a priori $P(A)$ de la plausibilité de l'hypothèse $A$, (2) le terme $P(B|A)$ qui mesure la capacité de l'hypothèse $A$ à expliquer les données observées $B$ et (3) la fonction de partition $P(B)$ qui met en compétition toutes les hypothèses qui ont pu générer les données observées $B$. À chaque nouvelle évaluation de la formule, la valeur du terme a priori $P(A)$ est actualisée par la valeur du terme a posteriori $P(A|B)$. Ainsi, à chaque évaluation, le degré de plausibilité de chaque hypothèse est ajusté \cite{Hoang}.\\
  173 +
  174 +Par la suite, nous explicitons quelques algorithmes, intègrés généralement dans l'étape "Rechercher" du RàPC, pour la recherche des cas les plus proches d'un nouveau cas.
  175 +
  176 +\subsection{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}
  177 +
  178 +Comme est défini dans \cite{10.1145/3459665}, la méthode des 'k' plus proches voisins est une méthode pour classifier des données dans des classes spécifiques. Pour faire cela, il est nécessaire de disposer d'une base de données avec des exemples déjà identifiés. Pour classer de nouveaux exemples, la méthode attribue la même classe que celle de leurs voisins les plus proches. Généralement, l'algorithme compare les caractéristiques d'une entité avec plusieurs possibles voisins pour essayer d'btenir des résultats plus précis. 'k' représente le nombre de voisins, puisque l'algorithme peut être exécuté à chaque fois avec un nombre différent de voisins.\\
  179 +
  180 +Étant donné un jeu de données $D$ constitue de $(x_i)_{i \in [1,n]}$ données (où $n = |D|$). Chacune des données est décrite par $F$ caractéristiques qui sont des valeurs numériques normalisées $[0,1]$, et par une classe de labellisation $y_j \in Y$. Le but est de classifier une donnée inconnue $q$. Pour chaque $x_i \in D$, il est possible de calculer la distance entre $q$ et $x_i$ comme l'équation \ref{eqDist}.
  181 +
  182 +\begin{equation}
  183 +d(q,x_i)=\sum_{f \in F} w_f \delta(q_f, x_{if})
  184 +\label{eqDist}
  185 +\end{equation}
  186 +
  187 +C'est une somme de \colorbox{yellow}{MLB:à vérifier de} toutes les caractéristiques $F$ avec $w_f$ le poids pour chaque caractéristique. \colorbox{yellow}{MLB:vérifier la suite}La fonction de distance $\delta$ peut être une métrique générique. Pour des valeurs numériques discrètes il est possible d'utiliser la définition \ref{eqMet1},
  188 +
  189 +\begin{equation}
  190 +\delta(q_f, x_{if})=
  191 +\begin{cases}
  192 +0&q_f=x_{if}\\
  193 +1&q_f \neq x_{if}
  194 +\end{cases}
  195 +\label{eqMet1}
  196 +\end{equation}
  197 +
  198 +et si les valeurs sont continues l'équation \ref{eqMet2}.
  199 +
  200 +\begin{equation}
  201 +\delta(q_f, x_{if})= \lvert q_f-x_{if} \rvert
  202 +\label{eqMet2}
  203 +\end{equation}
  204 +
  205 +\colorbox{yellow}{MLB:paragraphe A vérifier, dernière phrase incomprise}Souvent, pour décider de la classe d'une donnée inconnue, on attribue un poids plus important aux voisins les plus proches. Une technique assez générale pour y parvenir est le vote pondéré en fonction de la distance. Les voisins peuvent voter sur une certaine classe pour attribuer à la donnée inconnue avec des votes pondérés par l'inverse de leur distance (équation \ref{eqV1}).
  206 +
  207 +\begin{equation}
  208 +N(a,b)= \begin{cases} 1 & a=b \\ 0 & a \neq b \end{cases}
  209 +\label{eqV1}
  210 +\end{equation}
  211 +
  212 +L'équation de vote peut être comme l'équation \ref{eqV2}.
  213 +
  214 +\begin{equation}
  215 +vote(y_i)=\sum_{c=1}^{k} \frac{1}{d(q, x_c)^p}N(y_j, y_c)
  216 +\label{eqV2}
  217 +\end{equation}
  218 +
  219 +une autre alternative est basée sur le travail de Shepard, équation \ref{eqV3}.
  220 +
  221 +\begin{equation}
  222 +vote(y_i)=\sum_{c=1}^{k} e^{d(q, x_c)}N(y_j, y_c)
  223 +\label{eqV3}
  224 +\end{equation}
  225 +
  226 +La fonction de distance peut être n'importe quelle mesure d'affinité entre deux objets, mais cette fonction doit répondre à quatre critères (équations \ref{eqCond}).
  227 +
  228 +\begin{equation}
  229 +\begin{array}{l}
  230 + d(x,y) \ge 0\\
  231 + d(x,y) = 0, \; seulement \; si \; x=y\\
  232 + d(x,y)=d(y,x)\\
  233 + d(x,z) \ge d(x,y) + d(y,z)\\
  234 +\end{array}
  235 +\label{eqCond}
  236 +\end{equation}
  237 +
  238 +\subsection{K-Moyennes}
  239 +
  240 +Selon \cite{9072123}, K-Moyennes est un algorithme d'apprentissage utilisé pour partitionner et grouper des données. \colorbox{yellow}{MLB:il faur un verbe dans la phrase}Étant donné $X = \{x_1, . . . , x_n\}$ un ensemble dans un espace Euclidien $\mathbb{R}^d$. Et $A = \{a_1, . . . , a_c\}$ avec $c$ comme nombre de groupes. Ainsi que $z = [z_{ik} ]_{n \times c}$, où $z_{ik}$ est une variable binaire (i.e. $z_{ik} \in \{0, 1\}$) qui indique si une donnée $x_i$ appartient au k-ème groupe, $k = 1, · · · , c$. L'équation \ref{eqKM} montre la fonction objective k-moyenne.
  241 +
  242 +\begin{equation}
  243 +J (z, A) = \sum_{i=1}^n \sum_{k=1}^c z_{ik} \parallel x_i - a_k \parallel ^2
  244 +\label{eqKM}
  245 +\end{equation}
  246 +
  247 +\colorbox{yellow}{MLB:a discuter}L'algorithme des k moyennes est itéré à travers les conditions nécessaires pour minimiser la fonction objectif des k moyennes $J (z, A)$ avec la mise à jour des équations pour les centres du groupe (équation \ref{eqCentres}) et les appartenances (\ref{eqApp}), respectivement.
  248 +
  249 +\begin{equation}
  250 +a_k=\frac{\sum_{i=1}^n z_{ik}x_{ij}}{\sum_{i=1}^n z_{ik}}
  251 +\label{eqCentres}
  252 +\end{equation}
  253 +
  254 +\begin{equation}
  255 +z_{ik}=\begin{cases}1 & if \parallel x_i - a_k \parallel ^2=min_{1 \le k \le c} \parallel x_i - a_k \parallel ^2\\ 0,&otherwise\end{cases}
  256 +\label{eqApp}
  257 +\end{equation}
  258 +
  259 +\subsection{Modèle de Mélange Gaussien GMM (\textit{Gaussian Mixture Model})}
  260 +
  261 +Comme décrit dans \cite{WANG2021331}, le modèle de mélange gaussien (GMM) est un modèle probabiliste composé de plusieurs modèles gaussiens simples. Considérant une variable multidimensionnelle $x=\{x_1, x_2, ..., x_d\}$ en tant qu'entrée, GMM multivarié est défini comme dans l'équation \ref{eqGMM}.
  262 +
  263 +\begin{equation}
  264 +p(x \lvert \theta)=\sum_{k=1}^K \alpha_k g(x \lvert \theta_k)
  265 +\label{eqGMM}
  266 +\end{equation}
  267 +
  268 +Dans cette équation, $K$ est le nombre de modèles gaussiens uniques dans GMM, également appelés composants; \colorbox{yellow}{MLB:pas compris}$\alpha_k$ est la probabilité de mélange de la k-ème composante du modèle de mélange sujette à la condition que montre l'équation \ref{eqK}.
  269 +
  270 +\begin{equation}
  271 +\sum_{k=1}^K \alpha_k=1
  272 +\label{eqK}
  273 +\end{equation}
  274 +
  275 +$\theta_k$ représente la valeur moyenne et la matrice de covariance de chaque modèle gaussien unique: $\theta_k=\lbrace \mu_k, \Sigma_k \rbrace$. Pour un seul modèle gaussien multivarié, nous avons la fonction de densité de probabilité $g(x)$ (équation \ref{eqdProb}).
  276 +
  277 +\begin{equation}
  278 +g(x; \mu, \Sigma)=\frac{1}{(2\pi)^{n/2} \lvert \Sigma \rvert ^{1/2}} exp \left( - \frac{1}{2} (x-\mu)^T \Sigma ^{-1} (x-\mu) \right )
  279 +\label{eqdProb}
  280 +\end{equation}
  281 +
  282 +La tâche principale est d'obtenir les paramètres $\alpha_k, \theta_k$ pour tout $k$ défini dans GMM en utilisant un ensemble de données avec $N$ échantillons d'entrainement. Une solution classique et disponible pour l'estimation des paramètres requis utilise l'algorithme de maximisation des attentes (Expectation-Maximization EM), qui vise à maximiser la vraisemblance de l'ensemble de données. Il s'agit d'une approche itérative, et les paramètres sont continuellement mis à jour jusqu'à ce qu'ils répondent au critère terminal: \colorbox{yellow}{MLB:la suite est bien l'expression du critère?}lorsque la valeur delta log-vraisemblance entre deux itérations est inférieure à un seuil donné. Les paramètres du modèle de mélange peuvent enfin être obtenus après des itérations répétées, qui présentent une estimation de la distribution de l'ensemble des données et qui \colorbox{yellow}{MLB:ok qui?}sont utilisés pour une opération de génération ultérieure.
  283 +
  284 +\subsection{Fuzzy-C}
  285 +Fuzzy C-Means Clustering (FCM) est un algorithme de clustering flou non supervisé largement utilisé \cite{9627973}. Le FCM utilise comme mesure de distance la mesure euclidienne. Supposons d'abord que l'ensemble d'échantillons à regrouper est $X=\{x_1,x_2,...,x_n\}$, où $x_j \in R^d(1 \le j \le n)$ dans le d-dimensionnel espace Euclidien, et $c$ est le nombre de clusters. L'équation \ref{eqFuzzy} montre la fonction objectif de FCM.
  286 +
  287 +\begin{equation}
  288 +J(U,V)=\sum_{i=1}^c \sum_{j=1}^n u_{ij}^m (x_j - v_i)^T A(x_j-v_i)
  289 +\label{eqFuzzy}
  290 +\end{equation}
  291 +
  292 +où $A$ est la matrice métrique, $m$ est un nombre quelconque ($m > 1$) qui dénote le degré de flou, $u_{ij}$ est le degré d'appartenance du j-ème échantillon $x_j$ qui appartient au i-ème cluster, dont le centre est $v_i$. $U=(u_{ij})$, $V=[v_1,v_2,...,v_c], 1 \le i \le c, 1 \le j \le n, 2 \le c < n$, et $u_{ij}$ satisfait les conditions de l'équation \ref{eqFCond}.
  293 +
  294 +\begin{equation}
  295 +\sum_{i=1}^c u_{ij} = 1, u_{ij} \ge 0
  296 +\label{eqFCond}
  297 +\end{equation}
  298 +
  299 +Pour compléter le modèle, les équations de mise à jour pour le centre du cluster $v_i$ (équation \ref{eqFV}) et des degrés d'appartenance $u_{ij}$ (équation \ref{eqFU}) sont définies.
  300 +
  301 +\begin{equation}
  302 +v_i=\frac{\sum_{j=1}^n u_{ij}^m x_j}{\sum_{j=1}^n u_{ij}^m}
  303 +\label{eqFV}
  304 +\end{equation}
  305 +
  306 +\begin{equation}
  307 +u_{ij}=\frac{((x_j-v_i)^TA(x_j-v_i))^{\frac{2}{m-1}}}{\left( \sum_{h=1}^c (x_j-v_h)^TA(x_j-v_h) \right)^{\frac{2}{m-1}}}
  308 +\label{eqFU}
  309 +\end{equation}
  310 +
  311 +Les algorithmes qui se trouvent dans la suite de cette section sont des algorithmes qui font partie de l'intelligence artificielle et sont utilisés dans certains EIAH pour améliorer les recommandations, essayer de corriger et de détecter les faiblesses des apprenants de façon automatique.
  312 +
  313 +\subsection{Bandit Manchot MAB (\textit{Multi-Armed Bandits})}
  314 +
  315 +Dans \cite{9434422} MAB est décrit comme un problème qui appartient au domaine de l'apprentissage par renforcement, celui-ci représente un processus de prise de décision séquentielle dans des instants $t$ de temps, où un utilisateur doit sélectionner une action $k_t \in K$ à réaliser dans un ensemble $K$ fini de possibles actions et chacune d'elles donne une récompense qui est inconnue pour l'utilisateur. L'objectif est de maximiser la récompense cumulée globale dans le temps. La clé pour trouver une solution au problème est de trouver l'équilibre optimal entre l'exploration (exécuter des actions inconnues pour collecter de l'information complémentaire) et l'exploitation (continuer à exécuter les actions déjà connues pour cumuler plus de gains). L'un des algorithmes utilisés pour résoudre ce problème c'est l'échantillonnage de Thompson.
  316 +
  317 +\subsection{Échantillonnage de Thompson TS (\textit{Thompson Sampling})}
  318 +
  319 +Comme indiqué dans \cite{9870279}, l'algorithme d'échantillonnage de Thompson est un algorithme de type probabiliste utilisé généralement pour résoudre le problème MAB.\colorbox{yellow}{MLB:ne comprends pas la suite} Il est basé sur le principe Bayesien où il y a une distribution de probabilité a priori et avec les données obtenues est génèrée une distribution de probabilité a posteriori utilisée pour essayer de maximiser l'estimation de la valeur espérée, la distribution de base utilisée est la distribution Beta qui est définie sur $[0, 1]$ et paramétrée par deux valeurs $\alpha$ et $\beta$, c'est un cas particulier de la loi de Dirichlet comme le montre la figure \figref{figBeta}. L'équation \ref{eqBeta} décrit formellement la famille des courbes générées par la distribution Beta.\\
  320 +
  321 +Chaque action de MAB a une distribution Beta dont les paramètres sont initialisés en 1. Ces valeurs changent et sont calculées à partir des récompenses obtenues : si au moment d'exécuter une action spécifique le résultat est un succès, alors la valeur du paramètre $\alpha$ de sa distribution Beta doit augmenter mais si le résultat est un échec alors la valeur du paramètre $\beta$ de sa distribution Beta doit augmenter. De ce façon, la distribution pour chacune des possibles actions est ajustée en privilégiant les actions qui génèrent le plus de récompenses sur les autres actions. A chaque nouvelle itération, toutes les distributions sont plus précises sur la valeur espérée des actions.\\
  322 +
  323 +\mfigure[!ht]{scale=0.5}{./Figures/beta-distribution.png}{Comportement de la distribution Beta avec différents valeurs dans ses paramètres}{figBeta}
  324 +
  325 +%\begin{figure}
  326 +%\centering
  327 +%\includegraphics[scale=0.5]{./Figures/beta-distribution.png}
  328 +%\caption{Comportement de la distribution Beta avec différentes valeurs dans ses paramètres}
  329 +%\label{figBeta}
  330 +%\end{figure}
  331 +
  332 +\begin{equation}
  333 +B(x, \alpha, \beta) =
  334 +\begin{cases}
  335 +\frac{x^{\alpha-1}(1-x)^{\beta - 1}}{\int_0^1 u^{\alpha - 1}(1-u)^{\beta - 1}du} & pour x \in [0, 1] \\
  336 +0&sinon
  337 +\end{cases}
  338 +\label{eqBeta}
  339 +\end{equation}
  340 +
  341 +Dans les deux chapitres suivants nous présentons les travaux récents, en rapport avec le sujet de thèse, qui utilisent les concepts et algorithmes explicités dans ce chapitre.\\
chapters/contexte2.aux View file @ 886faa4
  1 +\relax
  2 +\providecommand\hyper@newdestlabel[2]{}
  3 +\citation{LALITHA2020583}
  4 +\citation{LALITHA2020583}
  5 +\citation{LALITHA2020583}
  6 +\@writefile{toc}{\contentsline {chapter}{\numberline {2}Contexte}{7}{chapter.2}\protected@file@percent }
  7 +\@writefile{lof}{\addvspace {10\p@ }}
  8 +\@writefile{lot}{\addvspace {10\p@ }}
  9 +\@writefile{toc}{\contentsline {section}{\numberline {2.1}Les stratégies d'apprentissage humain et les environnements informatiques pour l'apprentissage humain (EIAH)}{7}{section.2.1}\protected@file@percent }
  10 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.1}Les stratégies d'apprentissage}{7}{subsection.2.1.1}\protected@file@percent }
  11 +\citation{Nkambou}
  12 +\citation{Nkambou}
  13 +\@writefile{lof}{\contentsline {figure}{\numberline {2.1}{\ignorespaces Stratégies d'apprentissage (\cite {LALITHA2020583})\relax }}{8}{figure.caption.4}\protected@file@percent }
  14 +\providecommand*\caption@xref[2]{\@setref\relax\@undefined{#1}}
  15 +\newlabel{fig:figStra}{{2.1}{8}{Stratégies d'apprentissage (\cite {LALITHA2020583})\relax }{figure.caption.4}{}}
  16 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.2}Les EIAH}{8}{subsection.2.1.2}\protected@file@percent }
  17 +\@writefile{lof}{\contentsline {figure}{\numberline {2.2}{\ignorespaces L'architecture générale des EIAH, les composantes et leurs interactions (\cite {Nkambou})\relax }}{9}{figure.caption.5}\protected@file@percent }
  18 +\newlabel{fig:figEIAH}{{2.2}{9}{L'architecture générale des EIAH, les composantes et leurs interactions (\cite {Nkambou})\relax }{figure.caption.5}{}}
  19 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.3}L'exerciseur initial AI-VT}{10}{subsection.2.1.3}\protected@file@percent }
  20 +\citation{ROLDANREYES20151}
  21 +\citation{10.1007/978-3-030-58342-2_20}
  22 +\citation{min8100434}
  23 +\citation{min8100434}
  24 +\citation{min8100434}
  25 +\citation{Richter2013}
  26 +\@writefile{toc}{\contentsline {section}{\numberline {2.2}Le contexte technique}{11}{section.2.2}\protected@file@percent }
  27 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.1}Le raisonnement à partir de cas (RàPC)}{11}{subsection.2.2.1}\protected@file@percent }
  28 +\@writefile{lof}{\contentsline {figure}{\numberline {2.3}{\ignorespaces Cycle fondamental du raisonnement à partir de cas (\cite {min8100434})\relax }}{12}{figure.caption.6}\protected@file@percent }
  29 +\newlabel{fig:figCycle}{{2.3}{12}{Cycle fondamental du raisonnement à partir de cas (\cite {min8100434})\relax }{figure.caption.6}{}}
  30 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.1.1}Rechercher}{12}{subsubsection.2.2.1.1}\protected@file@percent }
  31 +\citation{Richter2013}
  32 +\citation{Richter2013}
  33 +\newlabel{eqSim}{{2.1}{13}{Rechercher}{equation.2.2.1}{}}
  34 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.1.2}Adapter (Réutiliser)}{13}{subsubsection.2.2.1.2}\protected@file@percent }
  35 +\@writefile{lof}{\contentsline {figure}{\numberline {2.4}{\ignorespaces Principe de réutilisation dans le RàPC (\cite {Richter2013})\relax }}{13}{figure.caption.7}\protected@file@percent }
  36 +\newlabel{fig:figReut}{{2.4}{13}{Principe de réutilisation dans le RàPC (\cite {Richter2013})\relax }{figure.caption.7}{}}
  37 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.1.3}Réviser et Réparer}{13}{subsubsection.2.2.1.3}\protected@file@percent }
  38 +\citation{RICHTER20093}
  39 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.1.4}Stocker (Retenir)}{14}{subsubsection.2.2.1.4}\protected@file@percent }
  40 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.1.5}Conteneurs de Connaissance}{14}{subsubsection.2.2.1.5}\protected@file@percent }
  41 +\citation{hajduk2019cognitive}
  42 +\@writefile{lof}{\contentsline {figure}{\numberline {2.5}{\ignorespaces Cycle du RàPC, les étapes, les conteneurs et leurs flux de données\relax }}{15}{figure.caption.8}\protected@file@percent }
  43 +\newlabel{fig:figCycle}{{2.5}{15}{Cycle du RàPC, les étapes, les conteneurs et leurs flux de données\relax }{figure.caption.8}{}}
  44 +\citation{Hoang}
  45 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.2}Les systèmes multi-agents}{16}{subsection.2.2.2}\protected@file@percent }
  46 +\citation{Hoang}
  47 +\citation{10.1145/3459665}
  48 +\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.3}Différents algorithmes et fonctions implémentés dans AI-VT pour la personnalisation et l'adaptation des séances d'entrainement proposées}{17}{subsection.2.2.3}\protected@file@percent }
  49 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.3.1}Pensée Bayesienne}{17}{subsubsection.2.2.3.1}\protected@file@percent }
  50 +\newlabel{eqBayes}{{2.2}{17}{Pensée Bayesienne}{equation.2.2.2}{}}
  51 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.3.2}Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{17}{subsubsection.2.2.3.2}\protected@file@percent }
  52 +\newlabel{eqDist}{{2.3}{18}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.2.3}{}}
  53 +\newlabel{eqMet1}{{2.4}{18}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.2.4}{}}
  54 +\newlabel{eqMet2}{{2.5}{18}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.2.5}{}}
  55 +\newlabel{eqV1}{{2.6}{18}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.2.6}{}}
  56 +\newlabel{eqV2}{{2.7}{18}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.2.7}{}}
  57 +\newlabel{eqV3}{{2.8}{18}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.2.8}{}}
  58 +\citation{9072123}
  59 +\citation{WANG2021331}
  60 +\newlabel{eqCond}{{2.9}{19}{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}{equation.2.2.9}{}}
  61 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.3.3}K-Moyennes}{19}{subsubsection.2.2.3.3}\protected@file@percent }
  62 +\newlabel{eqKM}{{2.10}{19}{K-Moyennes}{equation.2.2.10}{}}
  63 +\newlabel{eqCentres}{{2.11}{19}{K-Moyennes}{equation.2.2.11}{}}
  64 +\newlabel{eqApp}{{2.12}{19}{K-Moyennes}{equation.2.2.12}{}}
  65 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.3.4}Modèle de Mélange Gaussien GMM (\textit {Gaussian Mixture Model})}{19}{subsubsection.2.2.3.4}\protected@file@percent }
  66 +\newlabel{eqGMM}{{2.13}{19}{Modèle de Mélange Gaussien GMM (\textit {Gaussian Mixture Model})}{equation.2.2.13}{}}
  67 +\citation{9627973}
  68 +\newlabel{eqK}{{2.14}{20}{Modèle de Mélange Gaussien GMM (\textit {Gaussian Mixture Model})}{equation.2.2.14}{}}
  69 +\newlabel{eqdProb}{{2.15}{20}{Modèle de Mélange Gaussien GMM (\textit {Gaussian Mixture Model})}{equation.2.2.15}{}}
  70 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.3.5}Fuzzy-C}{20}{subsubsection.2.2.3.5}\protected@file@percent }
  71 +\newlabel{eqFuzzy}{{2.16}{20}{Fuzzy-C}{equation.2.2.16}{}}
  72 +\newlabel{eqFCond}{{2.17}{20}{Fuzzy-C}{equation.2.2.17}{}}
  73 +\citation{9434422}
  74 +\citation{9870279}
  75 +\newlabel{eqFV}{{2.18}{21}{Fuzzy-C}{equation.2.2.18}{}}
  76 +\newlabel{eqFU}{{2.19}{21}{Fuzzy-C}{equation.2.2.19}{}}
  77 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.3.6}Bandit Manchot MAB (\textit {Multi-Armed Bandits})}{21}{subsubsection.2.2.3.6}\protected@file@percent }
  78 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {2.2.3.7}Échantillonnage de Thompson TS (\textit {Thompson Sampling})}{21}{subsubsection.2.2.3.7}\protected@file@percent }
  79 +\@writefile{lof}{\contentsline {figure}{\numberline {2.6}{\ignorespaces Comportement de la distribution Beta avec différentes valeurs de paramètres $alpha$ et $beta$\relax }}{22}{figure.caption.9}\protected@file@percent }
  80 +\newlabel{fig:figBeta}{{2.6}{22}{Comportement de la distribution Beta avec différentes valeurs de paramètres $alpha$ et $beta$\relax }{figure.caption.9}{}}
  81 +\newlabel{eqBeta}{{2.20}{22}{Échantillonnage de Thompson TS (\textit {Thompson Sampling})}{equation.2.2.20}{}}
  82 +\@setckpt{./chapters/contexte2}{
  83 +\setcounter{page}{23}
  84 +\setcounter{equation}{20}
  85 +\setcounter{enumi}{0}
  86 +\setcounter{enumii}{0}
  87 +\setcounter{enumiii}{0}
  88 +\setcounter{enumiv}{0}
  89 +\setcounter{footnote}{0}
  90 +\setcounter{mpfootnote}{0}
  91 +\setcounter{part}{1}
  92 +\setcounter{chapter}{2}
  93 +\setcounter{section}{2}
  94 +\setcounter{subsection}{3}
  95 +\setcounter{subsubsection}{7}
  96 +\setcounter{paragraph}{0}
  97 +\setcounter{subparagraph}{0}
  98 +\setcounter{figure}{6}
  99 +\setcounter{table}{0}
  100 +\setcounter{caption@flags}{2}
  101 +\setcounter{continuedfloat}{0}
  102 +\setcounter{subfigure}{0}
  103 +\setcounter{subtable}{0}
  104 +\setcounter{parentequation}{0}
  105 +\setcounter{thmt@dummyctr}{0}
  106 +\setcounter{vrcnt}{0}
  107 +\setcounter{upm@subfigure@count}{0}
  108 +\setcounter{upm@fmt@mtabular@columnnumber}{0}
  109 +\setcounter{upm@format@section@sectionlevel}{3}
  110 +\setcounter{upm@fmt@savedcounter}{0}
  111 +\setcounter{@@upm@fmt@inlineenumeration}{0}
  112 +\setcounter{@upm@fmt@enumdescription@cnt@}{0}
  113 +\setcounter{upmdefinition}{0}
  114 +\setcounter{section@level}{3}
  115 +\setcounter{Item}{0}
  116 +\setcounter{Hfootnote}{0}
  117 +\setcounter{bookmark@seq@number}{25}
  118 +\setcounter{DefaultLines}{2}
  119 +\setcounter{DefaultDepth}{0}
  120 +\setcounter{L@lines}{3}
  121 +\setcounter{L@depth}{0}
  122 +\setcounter{float@type}{8}
  123 +\setcounter{algorithm}{0}
  124 +\setcounter{ALG@line}{0}
  125 +\setcounter{ALG@rem}{0}
  126 +\setcounter{ALG@nested}{0}
  127 +\setcounter{ALG@Lnr}{2}
  128 +\setcounter{ALG@blocknr}{10}
  129 +\setcounter{ALG@storecount}{0}
  130 +\setcounter{ALG@tmpcounter}{0}
  131 +}
chapters/contexte2.tex View file @ 886faa4
  1 +\chapter{Contexte}
  2 +
  3 +Dans ce chapitre sont décrits plus en détails le contexte applicatif et le contexte technique de ces travaux de recherche. Il présente les concepts et algorithmes utilisés dans le développement des modules. Ces modules font partie des contributions de cette thèse à l'environnement informatique pour l'apprentissage humain (EIAH) appelé AI-VT (\textit{Artificial Intelligence - Artificial Trainer}).
  4 +
  5 +Ce chapitre commence par une présentation des EIAH suivie d'une présentation sommaire du fonctionnement d'AI-VT. AI-VT étant un système de raisonnement à partir de cas (RàPC) modélisé sous la forme d'un système multi-agents (SMA), cette présentation des EIAH est suivie d'une présentation du RàPC, puis des SMA. Ce chapitre se termine par une présentation de différents algoritmes et notions implémentés dans AI-VT pour la personnalisation et l'adaptation des séances d'entraînement proposées par l'EIAH.
  6 +
  7 +\section{Les stratégies d'apprentissage humain et les environnements informatiques pour l'apprentissage humain (EIAH)}
  8 +
  9 +\subsection{Les stratégies d'apprentissage}
  10 +
  11 +Dans \cite{LALITHA2020583}, l'apprentissage est défini comme une fonction du cerveau humain acquise grâce au changement permanent dans l'obtention de connaissances et de compétences par le biais d'un processus de transformation du comportement lié à l'expérience ou à la pratique. L'apprentissage implique réflexion, compréhension, raisonnement et mise en oeuvre. Un individu peut utiliser différentes stratégies pour acquérir la connaissance. Comme le montre la figure \figref{figStra}, les stratégies peuvent être classées entre mode traditionnel et mode en-ligne.
  12 +
  13 +\mfigure[!ht]{scale=0.4}{./Figures/TLearning.png}{Stratégies d'apprentissage (\cite{LALITHA2020583})}{figStra}
  14 +
  15 +%\begin{figure}[!ht]
  16 +%\centering
  17 +%\includegraphics[scale=0.4]{./Figures/TLearning.png}
  18 +%\caption{Stratégies d'apprentissage (\cite{LALITHA2020583})}
  19 +%\label{figStra}
  20 +%\end{figure}
  21 +
  22 +L'apprentissage traditionnel se réfère à l'apprentissage-type tel qu'il est fait dans une classe. Il est centré sur l'enseignant où la présence physique est l'élément fondamental dans la mesure où elle implique une unité de temps et de lieu. Ici, L'enseignant intéragit directement avec l'élève, et les ressources sont généralement des documents imprimés. L'apprentissage et la participation doivent y être actifs, la rétroaction y est instantanée et il existe des interactions sociales. Par contre, il y a un manque de flexibilité en sur le temps.\colorbox{yellow}{MLB:à revoir}.\\
  23 +
  24 +L'autre stratégie globale est l'apprentissage en-ligne, qui s'appuie sur les ressources et l'information disponible sur le web. Cette stratégie incite les apprenants à être actifs pour acquérir de nouvelles connaissances de manière autonome \colorbox{yellow}{MLB:indépendantes ou indépendemment à qq chose} grâce aux nombreuses ressources disponibles. Les points positifs de cette stratégie sont par exemple la rentabilité, la mise à niveau continue des compétences et des connaissances ou une plus grande opportunité d'accéder au contenu du monde entier. Pour l'apprenant, l'auto-motivation et l'interaction peuvent être des défis à surmonter. Pour l'enseignant, il est parfois difficile d'évaluer l'évolution du processus d'apprentissage de l'individu. L'apprentissage en-ligne fait aussi référence à l'utilisation de dispositifs électroniques pour apprendre (\textit{e-learning}) où les apprenants peuvent être guidés par l'enseignant à travers des liens, du matériel spécifique d'apprentissage, des activités ou exercices.\\
  25 +
  26 +Il existe également des stratégies mixtes combinant des caractéristiques des deux stratégies fondamentales, comme un cours en-ligne mais avec quelques séances en présentiel pour des activités spécifiques ou des cours traditionnels avec du matériel d'apprentissage complémentaire en-ligne.
  27 +
  28 +\subsection{Les EIAH}
  29 +
  30 +\mfigure[!h]{scale=0.5}{./Figures/EIAH.png}{L'architecture générale des EIAH, les composantes et leurs interactions (\cite{Nkambou})}{figEIAH}
  31 +
  32 +Les EIAH sont des outils pour aider les apprenants dans le processus d'apprentissage et l'acquisition de la connaissance. Ces outils sont conçus pour fonctionner avec des stratégies d'apprentissage en-ligne et mixtes. Fondamentalement, l'architecture de ces systèmes est divisée en quatre composants comme le montre la figure \figref{figEIAH}. Ces composants sont :\\
  33 +\begin{itemize}
  34 +\item Le \textit{domaine} (\textit{Domain Model} sur la figure \figref{figEIAH}), qui contient les concepts, les règles et les stratégies pour résoudre des problèmes dans un domaine spécifique. Ce composant peut détecter et corriger les erreurs des apprenants. En général, l'information est divisée en séquences pédagogiques.
  35 +\item Le composant \textit{apprenant} (\textit{Student Model} sur la figure \figref{figEIAH}), qui est le noyau du système car il contient toute l'information utile à l'EIAH concernant l'apprenant (\textit{User-Learner} sur la figure \figref{figEIAH}). Ce composant contient également les informations sur l'évolution de l'acquisition des compétences de l'apprenant. Ce module doit avoir les informations implicites et explicites pour pouvoir créer une représentation des connaissances acquises, non et partiellement acquises et l'évolution de l'apprentissage de l'apprentant. Ces informations doivent permettre de générer un diagnostic de l'état de la connaissance de l'apprenant, à partir duquel le système peut prédire les résultats dans certains domaines et choisir la stratégie optimale pour présenter les nouveaux contenus.
  36 +\item L'\textit{enseignant} (\textit{Tutoring Model} sur la figure \figref{figEIAH}) est également modélisé sous la forme d'un composant. Il reçoit l'information des modules précédents, information grâce à laquelle il peut prendre des décisions sur le changement de parcours ou sur la stratégie d'apprentissage. Il peut également interagir avec l'apprenant.
  37 +\item L'\textit{interface} (\textit{Interface} sur la figure \figref{figEIAH}) est le module chargé de la gestion des configurations de l'EIAH et des interactions entre ses composants.\\
  38 +\end{itemize}
  39 +
  40 +Le développement et la configuration de ce type de systèmes relèvent de multiples disciplines et impliquent plusieurs domaines de recherche parmi lesquels figurent la pédagogie, l'éducation, la psychologie, les sciences cognitives et l'intelligence artificielle.
  41 +
  42 +%\subsection{Traitement du langage naturel (NLP)}
  43 +%
  44 +%Le traitement du langage naturel est un domaine de recherche interdisciplinaire qui essaie à travers de multiples méthodes analyser et faire comprendre aux machines le langage et la communication humaine. Ce domaine est catégorisé comme une branche de l'intelligence artificielle \cite{kedia2020hands}.\\
  45 +%
  46 +%Comme on peut lire dans \cite{ghosh2019natural}, le NLP est constitué de plusieurs tâches standardisées, entre elles, la tokenisation qui est la procédure qui consiste à diviser une phrase en ses mots constitutifs, par exemple le résultat de tokeniser la phrase "Je lis un livre", est "Je", "lis", "un", "livre"; avec cet exemple on a tokenisée la phrase en utilisant uni-grams, c'est-à-dire des tokens de taille un, mais on peut extraire des ensembles de tokens, si on divise la phrase en paires de tokens alors on parle de bi-grams: "Je lis", "un livre"; en général on parle de n-grams où "n" est le nombre de tokens.\\
  47 +%
  48 +%Une autre tâche fondamentale du NLP est le "PoS Tagging" qui ajoute des identificateurs à chacun des tokens d'une phrase avec le propos de faciliter l'analyse et le filtrage du contenu des phrases. Ainsi "Le ciel est bleu", est [("Le", "AR"), ("ciel", "NN"), ("est", "VBZ"), ("bleu", "JJ")], où AR: article, NN: nom, VBZ: verbe troisième personne, JJ: adjectif. Ainsi, il est possible de connaître et de filtrer les phrases par la catégorisation de leur contenu.\\
  49 +%
  50 +%La tokenisation et le "PoS Tagging" fonctionnent avec les caractères qui font partie de l'alphabet, mais les phrases communément écrites contient aussi des caractères symboliques qui représentent des aspects complémentaires du langage et qui ne sont pas considérés dans les analyses, car ils n'apportent pas d'information significative. La tâche d'effacer les symboles jugés inutiles s'appelle "cleaning text", usuellement ces symboles sont les signes de ponctuation et parfois les articles définis / indéfinis et les mots qui servent de lien comme par exemple en français: "le", "la", "les", "est", "et", etc. Il y a d'autres tâches qui sont utilisées aussi dans NLP, mais elles sont plus spécifiques comme: normalisation, correction, "stemming", "lemmatization", "NER", etc. Elles peuvent être consultées plus en détail et avec exemples de code dans \cite{ghosh2019natural}.\\
  51 +%
  52 +%L'exécution des tâches précitées est appelée prétraitement du texte, l'idée est de donner au texte un format pour l'envoyer comme donnée d'entré à un modèle chargé de l'analyser selon un certain objectif prédétermine. Les modèles de NLP se basent en algorithmes d'apprentissage automatique qui fonctionnent avec données numériques, alors les modèles doivent convertir le texte vers une représentation numérique, cette transformation s'appelle "vectorization" ou "vector embeddings". L'une des méthodes les plus simples et les plus élémentaires est le "BoW (Bag of Words) Model" qui génère un vecteur avec les fréquences de chaque mot d'un alphabet dans une phrase, comme le montre la figure \figref{figBOW}, les limitations principales du "BoW Model" sont d'abord que les vecteurs de représentation générés sont creuses, et aussi il n'y a pas de préservation de l'ordre des mots, alors on perdre contexte et signification des phrases et du texte. Une autre modèle est TF-IDF qui normalise les fréquences d'apparition et essaie d'associer une importance aux mots, ce qui évite d'analyser la pertinence de chaque mot seulement par sa fréquence d'apparition dans le texte. Autres modèles de vectorisation plus sophistiqués comme les réseaux de neurones (Word2vec, Doc2Vec, fastText) peuvent être consultés dans \cite{kedia2020hands}.\\
  53 +%
  54 +%\mfigure[!ht]{scale=0.7}{./Figures/BoW.png}{Bag of words pour une phrase}{figBOW}
  55 +%
  56 +%%\begin{figure}
  57 +%%\centering
  58 +%%\includegraphics[scale=0.7]{./Figures/BoW.png}
  59 +%%\caption{Bag of words pour une phrase.}
  60 +%%\label{figBOW}
  61 +%%\end{figure}
  62 +
  63 +\colorbox{yellow}{À mon avis, il faut ajouter ici une présentation sommaire d'AI-VT, quitte à ce que celle-ci}\\
  64 +\colorbox{yellow}{soit refaite de manière plus détaillée dans le chapitre présentant AI-VT et son architecture.}\\
  65 +\colorbox{yellow}{Voici ma proposition ci-dessous.}
  66 +
  67 +\subsection{L'exerciseur initial AI-VT}
  68 +
  69 +Le DISC travaille depuis plusieurs années sur l’utilisation potentielle de l’intelligence artificielle dans le cadre d’un exerciseur couvrant plusieurs domaines d’apprentissage. Cet exerciseur, appelé AI-VT(Artificial Intelligence Virtual Trainer) est fondé sur différents concepts d’intelligence artificielle et ses domaines d’application sont l’apprentissage de l’aïkido, des bases de l’algorithmique et de l’anglais. Un premier réseau de convolution détermine les lacunes de l’apprenant en analysant l’une de ses copies d’examen. Puis un système de raisonnement à partir de cas distribué prend le relais et détermine une liste d’exercices à proposer en regard de ses lacunes et en tenant compte des séances qui ont déjà été proposées par le système à cet apprenant.
  70 +
  71 +Dans le système AI-VT, une séance d'entraînement est proposée dans le cadre d'un cycle d'entraînement. Ainsi, un exercice proposé en première séance du cycle peut être reproposé ensuite dans une autre séance, afin de consolider les acquis et de remettre en mémoire certaines connaissances à l'apprenant. Une séance est entièrement consacrée à une seule et même compétence, déclinée en plusieurs sous-compétences. Des exercices dans différentes sous-compétences sont proposées à chaque séance. Les exercices d'une même sous-compétence sont regroupés. Un même exercice pouvant permettre de travailler deux sous-compétences différentes, un mécanisme de règlement des conflits a été implémenté dans AI-VT afin qu'un même exercice ne puisse être proposé plus d'une seule fois dans une même séance d'entraînement. Dans AI-VT, l'énoncé d'un exercice est constitué de deux parties : le contexte et la question. Cette structure modulaire permet d'associer plusieurs questions à un même contexte et inversement. Les réponses apportées par les apprenants à chaque exercice sont notées sur 10 points et le temps mis pour répondre à chaque question est comptabilisée. L'étudiant dispose d'une interface présentant un tableau de bord des exercices, sous-compétences et compétences qu'il ou elle a travaillé.
  72 +
  73 +Pour l’apprentissage de l’Anglais, un robot est chargé d’énoncer les exercices de la séance.
  74 +Pour l’heure, les apprenants ont une liste personnalisée d’exercices proposée par le système AI-VT, mais c’est à l’enseignant de vérifier la validité des algorithmes/solutions proposés par les étudiants et d’identifier leurs difficultés. L’amélioration du système et de la personnalisation du parcours de l’apprenant implique une correction automatique des exercices et cela sans utiliser un entrainement spécifique à chaque exercice. La définition de profils d’apprenants par le recueil de traces reste également à travailler pour optimiser les aides et séances d’exercices.
  75 +
  76 +Le système AI-VT a été implémenté en se fondant sur deux paradigmes de l'IA : la séance d'entraînement est construite par différents modules suivant la philosophie du raisonnement à partir de cas, et l'architecture logicielle a été modélisée selon un système multi-agents. Une présentation sommaire de ces deux paradigmes de l'IA sont présentés dans cette section, et celles-ci sont suivies de la présentation de différents algorithmes et fonctions implémentés dans l'EIAH AI-VT. Des états de l'art plus complets sur les EIAH et le RàPC sont présentés dans le chapitre suivant. Le système AI-VT, son architecture et les évolutions qui ont été ralisées sur celle-ci sont détaillés dans le chapitre 4.
  77 +
  78 +\section{Le contexte technique}
  79 +
  80 +\subsection{Le raisonnement à partir de cas (RàPC)}
  81 +
  82 +Le raisonnement à partir de cas est un modèle de raisonnement fondé sur l'hypothèse que les problèmes similaires ont des solutions similaires. Ainsi, les systèmes de RàPC infèrent une solution à un problème posé à partir des solutions mises en oeuvre auparavant pour résoudre d'autres problèmes similaires \cite{ROLDANREYES20151}.\\
  83 +
  84 +Un cas est défini comme étant la représentation d'un problème et la description de sa solution. Les cas résolus sont stockés et permettent au système de RàPC de construire de nouveaux cas à partir de ceux-ci. Formellement, si $P$ est l'espace des problèmes et $S$ l'espace des solutions, alors un problème $x$ et sa solution $y$ appartiennent à ces espaces : $x \in P$ et $y \in S$. Si $y$ est solution de $x$ alors, un cas est représenté par le couple $(x,y) \in P \times S$. Le RàPC a besoin d'une base de $N$ problèmes et de leurs solutions associées. Cette base est appelée base de cas. Ainsi tout cas d'indice $n \in [1,N]$ de cette base de cas est formalisé de la manière suivante : $(x^n, y^n)$. L'objectif du RàPC est, étant donné un nouveau problème $x^z$ (, de trouver sa solution $y^z$ en utilisant les cas stockés dans la base de cas \cite{10.1007/978-3-030-58342-2_20}.\\
  85 +
  86 +\mfigure[!h]{scale=30}{./Figures/cycle.png}{Cycle fondamental du raisonnement à partir de cas (\cite{min8100434})}{figCycle}
  87 +
  88 +%\begin{figure}
  89 +%\centering
  90 +%\includegraphics[scale=30]{./Figures/cycle.png}
  91 +%\caption{Cycle fondamental du raisonnement à partir de cas %(\cite{min8100434})}
  92 +%\label{figCycle}
  93 +%\end{figure}
  94 +
  95 +Le processus du RàPC est divisé en quatre étapes formant un cycle. La figure \figref{figCycle} montre le cycle, le flux d'informations ainsi que les relations entre chacune des étapes \cite{min8100434}: rechercher, adapter, réviser et stocker. Chacune des étapes est décrite dans \cite{Richter2013} de la manière suivante.
  96 +
  97 +\subsubsection{Rechercher}
  98 +L'objectif de cette étape est de rechercher dans la base de cas, les cas similaires à un nouveau cas donné. Cette similarité n'est pas un concept général, mais dépend du contexte, de l'objectif et du type de données. La question fondamentale qui se pose dans cette étape est: quel est le cas le plus approprié dans la base de cas qui permet de réutiliser sa solution pour résoudre le nouveau problème donné?\\
  99 +
  100 +Le nouveau cas est comparé à chaque cas de la base afin d'en évaluer la similitude. La comparaison entre les cas est différente selon la structure de la base et la manière dont les problèmes sont décrits dans celle-ci. Généralement, un problème est représenté par un ensemble d'attributs aux valeurs spécifiques. Cette représentation est connue comme la représentation attribut-valeur. La similitude entre deux cas de ce type est calculée suivant l'équation \ref{eqSim}. La similitude entre deux cas attribut-valeur $c_1={a_{1,1}, a_{1,1}, ..., a_{1,n}}$ et $c_2={a_{2,1}, a_{2,1}, ..., a_{2,n}}$ est la somme podérée des similitudes entre les attributs considérés individuellement. La pondération détermine l'importance de chaque attribut. \\
  101 +
  102 +\begin{equation}
  103 +\sum_{i=1}^n \omega_i \; sim (a_{1,i}, a_{2,i})
  104 +\label{eqSim}
  105 +\end{equation}
  106 +
  107 +Dans cette étape, il est possible de sélectionner $k$ différents cas similaires au nouveau cas donné.
  108 +
  109 +\subsubsection{Adapter (Réutiliser)}
  110 +L'idée du RàPC est d'utiliser l'expérience pour essayer de résoudre de nouveaux cas (problèmes). La figure \figref{figReut} montre le principe de réutilisation d'un cas (problème) résolu (appelé \textit{cas source}) auparavant pour le proposer en solution d'un nouveau cas (dénommé \textit{cas cible}) après adaptation.\\
  111 +
  112 +Si certains cas cibles sont très similaires au cas source le plus proche, il est cependant souvent nécessaire d'adapter la solution du cas source le plus similaire afin d'arriver à une solution satisfaisante pour le cas cible. De la même manière que pour la phase de recherche du cas le plus similaire, il existe de nombreuses stratégies d'adaptation. Celles-ci dépendent de la représentation des cas, du contexte dans lequel le RàPC est mis en oeuvre et des algorithmes utilisés pour l'adaptation. L'une des stratégies les plus utilisées est la définition d'un ensemble de règles transformant la
  113 + ou les solutions des cas sources les plus similaires au cas cible. L'objectif ici est d'inférer une nouvelle solution $y^z$ du cas $x^z$ à partir des $k$ cas sources retrouvés dans la première étape.\\
  114 +
  115 +\mfigure[!ht]{scale=20}{./Figures/Reuse.png}{Principe de réutilisation dans le RàPC (\cite{Richter2013})}{figReut}
  116 +
  117 +%\begin{figure}
  118 +%\centering
  119 +%\includegraphics[scale=20]{./Figures/Reuse.png}
  120 +%\caption{Principe de réutilisation dans le RàPC (\cite{Richter2013})}
  121 +%\label{figReut}
  122 +%\end{figure}
  123 +
  124 +\subsubsection{Réviser et Réparer}
  125 +
  126 +La solution adaptée proposée doit ensuite être évaluée et révisée afin de satisfaire certains critères de validation. L'étape de révision est chargée d'évaluer l'applicabilité de la solution cible obtenue suite à l'étape 'adaptation'. Cette évaluation peut être réalisée dans le monde réel ou dans une simulation.\\
  127 +
  128 +L'objectif de cette phase de révision est la validation du couple $(x^z, y^z)$. Autrement dit, le but est ici de vérifier si la solution trouvée $y^z$ résout le problème $x^z$ et satisfait les règles de validité et d'applicabilité. Si la solution n'est pas correcte, l'expert mettant en oeuvre la solution doit ajuster ou modifier la solution cible proposée.\\
  129 +
  130 +Le processus d'évaluation, de révision et de réparation peut être mis en oeuvre via un processus d'apprentissage permettant d'améliorer la détection et la correction des failles des futures solutions générées. Dans les travaux de cette thèse, nous avons envisagé la possibilité d'utiliser différents outils d'apprentissage pour évaluer et réviser les solutions cibles dans certains cas particuliers.\\
  131 +
  132 +L'évaluation peut être faite :
  133 +\begin{itemize}
  134 + \item par un expert humain capable d'évaluer la solution et sa pertinence dans le contexte applicatif,
  135 + \item par un système fonctionnant en production et renvoyant le résultat de l'application de la solution,
  136 + \item par un modèle statistique ou un système de test.
  137 +\end{itemize}
  138 +
  139 +La correction des solutions peut être automatique, mais elle dépend du domaine et de l'information disponible. Un ensemble de règles peut aider à identifier les solutions non valides.
  140 +
  141 +\subsubsection{Stocker (Retenir)}
  142 +
  143 +Si le cas cible résolu est jugé pertinent, alors celui-ci peut être stocké dans la base de cas pour aider ensuite à la résolution de futurs cas cible.
  144 +La décision de stocker ou non un nouveau cas dans la base de cas doit tenir compte de la capacité de cette nouvelle base de cas à proposer de futures solutions pertinentes, évaluer et corriger les solutions cibles générées d'une part, et maintenir une base de cas d'une taille ne gaspillant pas inutilement des ressources de stockage et de calculs du système de RàPC d'autre part.
  145 +
  146 +\subsubsection{Conteneurs de Connaissance}
  147 +
  148 +Pour pouvoir exécuter le cycle complet, le RàPC dépend de quatre sources différentes d'information. Ces sources sont appelées les conteneurs de connaissances par \cite{RICHTER20093}. Cet article définit les conteneurs suivants dans les systèmes de RàPC : le conteneur de cas, le conteneur d'adaptation, le conteneur du vocabulaire et le conteneur de similarité :
  149 +
  150 +\begin{itemize}
  151 +\item Le conteneur de cas contient les expériences passées que le système peut utiliser pour résoudre les nouveaux problèmes. L'information est structurée sous la forme d'un couple $(p, s)$, où $p$ est la description d'un problème et $s$ est la description de sa solution.
  152 +\item Le conteneur d'adaptation stocke la ou les stratégies d'adaptation ainsi que les règles et paramètres nécessaires pour les exécuter.
  153 +\item Le conteneur du vocabulaire contient l'information, sa signification et sa terminologie. Les éléments comme les entités, les attributs, les fonctions ou les relations entre les entités peuvent y être décrits.
  154 +\item Le conteneur de similarité contient l'ensemble des connaissances liées et nécessaires au calcul de la similarité entre deux cas : les fonctions de calcul de similarité et les paramètres de mesure de similarité $sim(p_1, p_2)$ entre les cas $p_1$ et $p_2$.
  155 +\end{itemize}
  156 +
  157 +La figure \figref{figCycle} montre les flux d'informations entre les étapes du RàPC et les conteneurs. Les flèches continues de la figure \figref{figCycle} décrivent l'ordre dans lequel les phases du cycle du RàPC sont exécutées. Les flèches avec des lignes discontinues matérialisent les flux d'information, c'est-à-dire les liens entre les étapes du cycle et les conteneurs de connaissance.\\
  158 +
  159 +\mfigure[!ht]{scale=2.5}{./Figures/CycleCBR.png}{Cycle du RàPC, les étapes, les conteneurs et leurs flux de données}{figCycle}
  160 +
  161 +%\begin{figure}
  162 +%\centering
  163 +%\includegraphics[scale=2.5]{./Figures/CycleCBR.png}
  164 +%\caption{Cycle du RàPC, les étapes, les conteneurs et leurs liens}
  165 +%\label{figCycle}
  166 +%\end{figure}
  167 +
  168 +\subsection{Les systèmes multi-agents}
  169 +
  170 +Les systèmes multi-agents sont des systèmes conçus pour résoudre des problèmes en combinant l'intelligence artificielle et le calcul distribué. Ces systèmes sont composés de multiples entités autonomes appelées agents, qui ont la capacité de communiquer entre elles et également de coordonner leurs comportements \cite{hajduk2019cognitive}.\\
  171 +
  172 +Les agents ont les propriétés suivantes :
  173 +\begin{itemize}
  174 +\item Autonomie: les agents fonctionnent sans intervention externe des êtres humains ou d'autres entités, ils ont un mécanisme interne qui leur permet de contrôler leurs états.
  175 +\item Réactivité: les agents ont la capacité de percevoir l'environnement dans lequel ils sont et peuvent réagir aux changements qui se produisent.
  176 +\item Pro-activité: les agents peuvent effectuer des changements, réagir à différents stimuli provenant de leur environnement et s'engager dans un processus cognitif interne.
  177 +\item Coopération : les agents peuvent communiquer les uns avec les autres, échanger des informations afin de se coordonner et résoudre un même problème.
  178 +\item Apprentissage: il est nécessaire qu'un agent soit capable de réagir dans un environnement dynamique et inconnu, il doit donc avoir la capacité d'apprendre de ses interactions et ainsi améliorer la qualité de ses réactions et comportements.\\
  179 +\end{itemize}
  180 +
  181 +Il existe quatre types d'agent en fonction des capacités et des approches:
  182 +\begin{itemize}
  183 +\item Réactif: c'est l'agent qui perçoit constamment l'environnement et agit en fonction de ses objectifs.
  184 +\item Basé sur les réflexes: c'est l'agent qui considère les options pour atteindre ses objectifs et développe un plan à suivre.
  185 +\item Hybride : il combine les deux modèles antérieurs en utilisant chacun d'eux en fonction de la situation et de l'objectif.
  186 +\item Basé sur le comportement: l'agent a à sa disposition un ensemble de modèles de comportement pour réaliser certaines tâches spécifiques. Chaque comportement se déclenche selon des règles prédéfinies ou des conditions d'activation. Le comportement de l'agent peut être modélisé avec différentes stratégies cognitives de pensée ou de raisonnement.
  187 +\end{itemize}
  188 +
  189 +\subsection{Différents algorithmes et fonctions implémentés dans AI-VT pour la personnalisation et l'adaptation des séances d'entrainement proposées}
  190 +
  191 +\subsubsection{Pensée Bayesienne}
  192 +
  193 +D'après les travaux de certains mathématiciens et neuroscientifiques, toute forme de cognition peut être modélisée dans le cadre de la formule de Bayes (equation \ref{eqBayes}), car elle permet de tester différentes hypothèses et donner plus de crédibilité à celle qui est confirmée par les observations. Étant donné que ce type de modèle cognitif permet l'apprentissage optimal, la prédiction sur les événements passés, l'échantillonnage représentatif et l'inférence d'information manquante; il est appliqué dans quelques algorithmes de machine learning et d'intelligence artificielle \cite{Hoang}.
  194 +
  195 +\begin{equation}
  196 +P(A|B)=\frac{P(B|A)P(A)}{P(B)}
  197 +\label{eqBayes}
  198 +\end{equation}
  199 +
  200 +La formule de Bayes calcule la probabilité a posteriori $P(A|B)$ de la plausibilité de la théorie $A$ compte tenu des données $B$, et requiert trois termes: (1) une probabilité a priori $P(A)$ de la plausibilité de l'hypothèse $A$, (2) le terme $P(B|A)$ qui mesure la capacité de l'hypothèse $A$ à expliquer les données observées $B$ et (3) la fonction de partition $P(B)$ qui met en compétition toutes les hypothèses qui ont pu générer les données observées $B$. À chaque nouvelle évaluation de la formule, la valeur du terme a priori $P(A)$ est actualisée par la valeur du terme a posteriori $P(A|B)$. Ainsi, à chaque évaluation, le degré de plausibilité de chaque hypothèse est ajusté \cite{Hoang}.\\
  201 +
  202 +Par la suite, nous explicitons quelques algorithmes, intègrés généralement dans l'étape "Rechercher" du RàPC, pour la recherche des cas les plus proches d'un nouveau cas.
  203 +
  204 +\subsubsection{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}
  205 +
  206 +Comme est défini dans \cite{10.1145/3459665}, la méthode des 'k' plus proches voisins est une méthode pour classifier des données dans des classes spécifiques. Pour faire cela, il est nécessaire de disposer d'une base de données avec des exemples déjà identifiés. Pour classer de nouveaux exemples, la méthode attribue la même classe que celle de leurs voisins les plus proches. Généralement, l'algorithme compare les caractéristiques d'une entité avec plusieurs possibles voisins pour essayer d'obtenir des résultats plus précis. 'k' représente le nombre de voisins, sachant que l'algorithme peut être exécuté à chaque fois avec un nombre différent de voisins.\\
  207 +
  208 +Étant donné un jeu de données $D$ constitué de $(x_i)_{i \in [1,n]}$ données (où $n = |D|$). Chacune des données est décrite par $F$ caractéristiques qui sont des valeurs numériques normalisées $[0,1]$, et par une classe de labellisation $y_j \in Y$. Le but est de classifier une donnée inconnue $q$. Pour chaque $x_i \in D$, il est possible de calculer la distance entre $q$ et $x_i$ selon l'équation \ref{eqDist}.
  209 +
  210 +\begin{equation}
  211 +d(q,x_i)=\sum_{f \in F} w_f \delta(q_f, x_{if})
  212 +\label{eqDist}
  213 +\end{equation}
  214 +
  215 +La distance entre $q$ et $x_i$ est la somme pondérée de toutes les distances élémentaires $delta$ calculées pour chaque caractéristique. La fonction de distance $\delta$ peut être une métrique générique. Pour des valeurs numériques discrètes il est possible d'utiliser la définition \ref{eqMet1},
  216 +
  217 +\begin{equation}
  218 +\delta(q_f, x_{if})=
  219 +\begin{cases}
  220 +0&q_f=x_{if}\\
  221 +1&q_f \neq x_{if}
  222 +\end{cases}
  223 +\label{eqMet1}
  224 +\end{equation}
  225 +
  226 +et si les valeurs sont continues l'équation \ref{eqMet2}.
  227 +
  228 +\begin{equation}
  229 +\delta(q_f, x_{if})= \lvert q_f-x_{if} \rvert
  230 +\label{eqMet2}
  231 +\end{equation}
  232 +
  233 +Un poids plus important est généralement attribué aux voisins les plus proches. Le vote pondéré en fonction de la distance est une technique couramment utilisée (équation \ref{eqV1}).
  234 +
  235 +\begin{equation}
  236 +N(a,b)= \begin{cases} 1 & a=b \\ 0 & a \neq b \end{cases}
  237 +\label{eqV1}
  238 +\end{equation}
  239 +
  240 +Le vote est couramment calculé selon l'équation \ref{eqV2}.
  241 +
  242 +\begin{equation}
  243 +vote(y_i)=\sum_{c=1}^{k} \frac{1}{d(q, x_c)^p}N(y_j, y_c)
  244 +\label{eqV2}
  245 +\end{equation}
  246 +
  247 +une autre alternative est basée sur le travail de Shepard, équation \ref{eqV3}.
  248 +
  249 +\begin{equation}
  250 +vote(y_i)=\sum_{c=1}^{k} e^{d(q, x_c)}N(y_j, y_c)
  251 +\label{eqV3}
  252 +\end{equation}
  253 +
  254 +La fonction de distance peut être n'importe quelle mesure d'affinité entre deux objets, mais cette fonction doit répondre à quatre critères (équations \ref{eqCond}).
  255 +
  256 +\begin{equation}
  257 +\begin{array}{l}
  258 + d(x,y) \ge 0\\
  259 + d(x,y) = 0, \; seulement \; si \; x=y\\
  260 + d(x,y)=d(y,x)\\
  261 + d(x,z) \ge d(x,y) + d(y,z)\\
  262 +\end{array}
  263 +\label{eqCond}
  264 +\end{equation}
  265 +
  266 +\subsubsection{K-Moyennes}
  267 +
  268 +Selon \cite{9072123}, K-Moyennes est un algorithme d'apprentissage utilisé pour partitionner et grouper des données. Considérons $X = \{x_1, . . . , x_n\}$ un ensemble de vecteurs dans un espace Euclidien $\mathbb{R}^d$, et $A = \{a_1, . . . , a_c\}$ où $c$ est le nombre de groupes. Considérons également $z = [z_{ik} ]_{n \times c}$, où $z_{ik}$ est une variable binaire (i.e. $z_{ik} \in \{0, 1\}$) qui indique si une donnée $x_i$ appartient au k-ème groupe, $k = 1, · · · , c$. La fonction bijective k-moyenne est définie selon l''équation \ref{eqKM}.
  269 +
  270 +\begin{equation}
  271 +J (z, A) = \sum_{i=1}^n \sum_{k=1}^c z_{ik} \parallel x_i - a_k \parallel ^2
  272 +\label{eqKM}
  273 +\end{equation}
  274 +
  275 +\colorbox{yellow}{MLB:a discuter. JH : Pas compris, à reformuler ensemble}L'algorithme des k moyennes est itéré à travers les conditions nécessaires pour minimiser la fonction objectif des k moyennes $J (z, A)$ avec la mise à jour des équations pour les centres du groupe (équation \ref{eqCentres}) et les appartenances (\ref{eqApp}), respectivement.
  276 +
  277 +\begin{equation}
  278 +a_k=\frac{\sum_{i=1}^n z_{ik}x_{ij}}{\sum_{i=1}^n z_{ik}}
  279 +\label{eqCentres}
  280 +\end{equation}
  281 +
  282 +\begin{equation}
  283 +z_{ik}=\begin{cases}1 & if \parallel x_i - a_k \parallel ^2=min_{1 \le k \le c} \parallel x_i - a_k \parallel ^2\\ 0,&otherwise\end{cases}
  284 +\label{eqApp}
  285 +\end{equation}
  286 +
  287 +\subsubsection{Modèle de Mélange Gaussien GMM (\textit{Gaussian Mixture Model})}
  288 +
  289 +Le modèle de mélange gaussien (GMM) est un modèle probabiliste composé de plusieurs modèles gaussiens simples. Ce modèle est décrit dans \cite{WANG2021331}. En considérant une variable d'entrée multidimensionnelle $x=\{x_1, x_2, ..., x_d\}$, GMM multivarié est défini selon dans l'équation \ref{eqGMM}.
  290 +
  291 +\begin{equation}
  292 +p(x \lvert \theta)=\sum_{k=1}^K \alpha_k g(x \lvert \theta_k)
  293 +\label{eqGMM}
  294 +\end{equation}
  295 +
  296 +Dans cette équation, $K$ est le nombre de modèles gaussiens uniques dans GMM, également appelés composants; \colorbox{yellow}{MLB:pas compris, JH : Idem}$\alpha_k$ est la probabilité de mélange de la k-ème composante du modèle de mélange sujette à la condition que montre l'équation \ref{eqK}.
  297 +
  298 +\begin{equation}
  299 +\sum_{k=1}^K \alpha_k=1
  300 +\label{eqK}
  301 +\end{equation}
  302 +
  303 +$\theta_k$ représente la valeur moyenne et la matrice de covariance de chaque modèle gaussien unique: $\theta_k=\lbrace \mu_k, \Sigma_k \rbrace$. Pour un seul modèle gaussien multivarié, nous avons la fonction de densité de probabilité $g(x)$ (équation \ref{eqdProb}).
  304 +
  305 +\begin{equation}
  306 +g(x; \mu, \Sigma)=\frac{1}{(2\pi)^{n/2} \lvert \Sigma \rvert ^{1/2}} exp \left( - \frac{1}{2} (x-\mu)^T \Sigma ^{-1} (x-\mu) \right )
  307 +\label{eqdProb}
  308 +\end{equation}
  309 +
  310 +La tâche principale est d'obtenir les paramètres $\alpha_k, \theta_k$ pour tout $k$ défini dans GMM en utilisant un ensemble de données avec $N$ échantillons d'entrainement. Une solution classique et disponible pour l'estimation des paramètres requis utilise l'algorithme de maximisation des attentes (Expectation-Maximization EM), qui vise à maximiser la vraisemblance de l'ensemble de données. Il s'agit d'un algorithme itératif durant lequel les paramètres sont continuellement mis à jour jusqu'à ce que la valeur delta log-vraisemblance entre deux itérations soit inférieure à un seuil donné.
  311 +
  312 +\subsubsection{Fuzzy-C}
  313 +Fuzzy C-Means Clustering (FCM) est un algorithme de clustering flou non supervisé largement utilisé \cite{9627973}. Le FCM utilise comme mesure de distance la mesure euclidienne. Supposons d'abord que l'ensemble d'échantillons à regrouper est $X=\{x_1,x_2,...,x_n\}$, où $x_j \in R^d(1 \le j \le n)$ dans un espace Euclidien à $d$ dimensions, et $c$ le nombre de clusters. L'équation \ref{eqFuzzy} montre la fonction objectif de FCM.
  314 +
  315 +\begin{equation}
  316 +J(U,V)=\sum_{i=1}^c \sum_{j=1}^n u_{ij}^m (x_j - v_i)^T A(x_j-v_i)
  317 +\label{eqFuzzy}
  318 +\end{equation}
  319 +
  320 +où $A$ est la matrice métrique, $m$ est un nombre quelconque ($m > 1$) qui dénote le degré de flou, $u_{ij}$ est le degré d'appartenance du j-ème échantillon $x_j$ qui appartient au i-ème cluster, dont le centre est $v_i$. $U=(u_{ij})$, $V=[v_1,v_2,...,v_c], 1 \le i \le c, 1 \le j \le n, 2 \le c < n$ satisfaisant les conditions de l'équation \ref{eqFCond}.
  321 +
  322 +\begin{equation}
  323 +\sum_{i=1}^c u_{ij} = 1, u_{ij} \ge 0
  324 +\label{eqFCond}
  325 +\end{equation}
  326 +
  327 +Pour compléter le modèle, les équations de mise à jour pour le centre du cluster $v_i$ (équation \ref{eqFV}) et des degrés d'appartenance $u_{ij}$ (équation \ref{eqFU}) sont définies.
  328 +
  329 +\begin{equation}
  330 +v_i=\frac{\sum_{j=1}^n u_{ij}^m x_j}{\sum_{j=1}^n u_{ij}^m}
  331 +\label{eqFV}
  332 +\end{equation}
  333 +
  334 +\begin{equation}
  335 +u_{ij}=\frac{((x_j-v_i)^TA(x_j-v_i))^{\frac{2}{m-1}}}{\left( \sum_{h=1}^c (x_j-v_h)^TA(x_j-v_h) \right)^{\frac{2}{m-1}}}
  336 +\label{eqFU}
  337 +\end{equation}
  338 +
  339 +Les algorithmes qui se trouvent dans la suite de cette section sont des algorithmes qui font partie de l'intelligence artificielle et sont utilisés dans certains EIAH pour améliorer les recommandations, essayer de corriger et de détecter les faiblesses des apprenants de façon automatique.
  340 +
  341 +\subsubsection{Bandit Manchot MAB (\textit{Multi-Armed Bandits})}
  342 +
  343 +Dans \cite{9434422} MAB est décrit comme un problème qui appartient au domaine de l'apprentissage par renforcement. Celui-ci représente un processus de prise de décision séquentielle dans des instants $t$ de temps, où un utilisateur doit sélectionner une action $k_t \in K$ à réaliser dans un ensemble $K$ fini d'actions possibles et donnant une récompense inconnue de l'utilisateur. L'objectif est de maximiser la récompense cumulée globale dans le temps. La clé pour trouver une solution au problème est de trouver l'équilibre optimal entre l'exploration (exécuter des actions inconnues pour collecter de l'information complémentaire) et l'exploitation (continuer à exécuter les actions déjà connues pour cumuler plus de gains). L'un des algorithmes utilisés pour résoudre ce problème c'est l'échantillonnage de Thompson.
  344 +
  345 +\subsubsection{Échantillonnage de Thompson TS (\textit{Thompson Sampling})}
  346 +
  347 +Comme indiqué dans \cite{9870279}, l'algorithme d'échantillonnage de Thompson est un algorithme de type probabiliste utilisé généralement pour résoudre le problème MAB.\colorbox{yellow}{MLB:ne comprends pas la suite} Il est basé sur le principe Bayesien et donc sur une distribution de probabilité a priori. Cet algorithme génère une distribution de probabilité a posteriori pour tenter de maximiser l'estimation de la valeur espérée. La distribution Beta initiale est définie sur $[0, 1]$. Elle est définie à l'aide de deux paramètres $\alpha$ et $\beta$.
  348 +
  349 +Chaque action de MAB a une distribution Beta dont les paramètres sont initialisés à 1. Ces valeurs changent et sont calculées à partir des récompenses obtenues : si au moment d'exécuter une action spécifique le résultat est un succès, alors la valeur du paramètre $\alpha$ de sa distribution Beta doit augmenter mais si le résultat est un échec alors la valeur du paramètre $\beta$ de sa distribution Beta doit augmenter. De ce façon, la distribution pour chacune des actions possibles est ajustée en privilégiant les actions qui génèrent le plus de récompenses.\\
  350 +
  351 +L'échantillonnage de Thompson est un cas particulier de la loi de Dirichlet comme le montre la figure \figref{figBeta}. L'équation \ref{eqBeta} décrit formellement la famille des courbes générées par la distribution Beta.\\
  352 +
  353 +\mfigure[!ht]{scale=0.5}{./Figures/beta-distribution.png}{Comportement de la distribution Beta avec différentes valeurs de paramètres $alpha$ et $beta$}{figBeta}
  354 +
  355 +%\begin{figure}
  356 +%\centering
  357 +%\includegraphics[scale=0.5]{./Figures/beta-distribution.png}
  358 +%\caption{Comportement de la distribution Beta avec différentes valeurs dans ses paramètres}
  359 +%\label{figBeta}
  360 +%\end{figure}
  361 +
  362 +\begin{equation}
  363 +B(x, \alpha, \beta) =
  364 +\begin{cases}
  365 +\frac{x^{\alpha-1}(1-x)^{\beta - 1}}{\int_0^1 u^{\alpha - 1}(1-u)^{\beta - 1}du} & pour x \in [0, 1] \\
  366 +0&sinon
  367 +\end{cases}
  368 +\label{eqBeta}
  369 +\end{equation}
  370 +
  371 +Le chapitre suivant présente un état de l'art plus détaillé des EIAH et des systèmes de RàPC dédiés aux EIAH.\\