Commit e86ea45825c4c357a3686795a8767861f1a5c00c

Authored by dsotofor
1 parent 025bfa872e
Exists in main

version correct to chapter 5 and corrections to do in chapter 6

Showing 9 changed files with 1007 additions and 1041 deletions Side-by-side Diff

No preview for this file type

chapters/EIAH0.tex View file @ e86ea45
1   -\chapter{Environnements Informatiques d'Apprentissage Humain}
2   -\chaptermark{CHAPITRE 3. \'ETAT DE L'ART (EIAH)}
3   -
4   -Ce chapitre présente les travaux sur les EIAH en lien avec le travail de cette thèse. Les EIAH référencés dans cet état de l'art sont classés selon le thème principal abordé.
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. \cite{ZHANG2021100025} référence un grand nombre de travaux sur la période de 1993-2020. Cet article montre que les besoins et contraintes des EIAH ne sont pas différentes selon l'age, le niveau culturel, ou le niveau éducatif des apprenants. Cet article montre également qu'il est possible d'adapter la stratégie d'apprentissage pour n'importe qui et maximiser le rendement et acquisition des connaissances grâce à différentes techniques d'intelligence artificielle.
9   -
10   -\cite{CHIU2023100118} 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 sur la période 2012-2021. Ce travail est focalisé sur les tendances et les outils employées pour aider le processus d'apprentissage. Une classification des contributions de l'IA est faite, fondée sur 92 travaux scientifiques. Les contributions et l'utilité des outils d'IA implémentés dans les EIAH évalués dans cet article sont évaluées dans les quatre domaines suivants : l'apprentissage, l'enseignement, l'évaluation et l'administration.
11   -Pour l'apprentissage, l'IA est généralement utilisée 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.
12   -Pour l'enseignement, des stratégies d'enseignement adaptatives peuvent être appliquées pour améliorer la capacité des enseignants à enseigner et soutenir le développement professionnel des enseignants.
13   -Dans le domaine de l'évaluation, l'IA peut fournir une notation automatique et prédire les performances des élèves.
14   -Enfin, dans le domaine de l'administration, l'IA contribue à améliorer la performance des plateformes de gestion, à soutenir la prise de décision pédagogique et à fournir des services personnalisés.
15   -Cet article met également en lumière les lacunes suivantes de l'IA :
16   -\begin{itemize}
17   - \item Les ressources recommandées par les plateformes d'apprentissage personnalisées sont trop homogènes,
18   - \item les données nécessaires pour les modèles d'IA sont très spécifiques,
19   - \item le lien entre les technologies et l'enseignement n'est pas bien clair. En effet, la plupart des travaux sont conçus pour un domaine ou un objectif très spécifique difficilement généralisable,
20   - \item 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 parfois difficile à maîtriser et à intégrer dans les cours.
21   -\end{itemize}
22   -
23   -Les techniques d'IA peuvent aussi aider à prendre des décisions stratégiques visant des objectifs à longue échéance comme le montre le travail de \cite{Robertson2014ARO}. Les jeux de stratégie présentent en effet plusieurs particularités singulières. Ils continent plusieurs règles et des environnements contraints. Ils nécessitent de mettre en œuvre des actions et réactions en temps réel. Ils intègrent des aléas et des informations cachées. Les techniques principales identifiées et implémentées dans ces jeux de stratégie sont l'apprentissage par renforcement, les modèles bayésiens, la recherche dans une arborescence, le raisonnement à partir de cas, les réseaux de neurones et les algorithmes évolutifs. Il est également important de noter que la combinaison de ces techniques permet dans certains cas d'améliorer le comportement global des algorithmes et d'obtenir de meilleures réponses.
24   -
25   -\section{Systèmes de recommandation dans les EIAH}
26   -
27   -Des systèmes de recommandation sont régulièrement intégrés aux EIAH.
28   -Ils permettent en effet de tenir compte des exigences, des besoins, du profile, des talents, des intérêts et de l'évolution de l'apprenant pour s'adapter et recommander des ressources ou des exercices dans le but d'améliorer l'acquisition et la maîtrise de concepts et des connaissances en général. L'adaptation de ces systèmes peut être de deux types \cite{MUANGPRATHUB2020e05227} :
29   -\begin{itemize}
30   - \item l'adaptation de la présentation qui montre aux apprenants les ressources en concordance avec leurs faiblesses et
31   - \item l'adaptation de la navigation qui change la structure du cours en fonction du niveau et style d'apprentissage de chaque apprenant.
32   -\end{itemize}
33   -Ces systèmes montrent des effets positifs pour les apprenants comme le révèle le travail de \cite{HUANG2023104684} qui utilise l'IA pour personnaliser des recommandations de ressources en vidéo et ainsi aider et motiver les apprenants. L'évolution des résultats entre les tests préliminaires et ceux réalisés après la finalisation du cours des groupes ayant suivi les cours avec et sans système de recommandation démontrent cet effet positif. 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 sous la supervision et contrôle du professeur.
34   -
35   -\begin{figure}
36   -\centering
37   -\includegraphics[width=\textwidth]{./Figures/architecture.png}
38   -\caption{Traduction de l'architecture du système de recommandation proposé dans \cite{HUANG2023104684}}
39   -\label{figArch}
40   -\end{figure}
41   -
42   -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 fondé sur l'algorithme par renforcement UCB (\textit{Upper Confidence Bound}) qui permet de trouver une solution approchée à une variante du problème \textit{Bandit manchot} non stationnaire (MAB, présenté dans la section \ref{sectBanditManchot} de ce manuscrit), où les récompenses de chaque action diminuent progressivement après chaque utilisation. Pour valider le modèle, une comparaison avec trois autres algorithmes a été menée en considérant une base de données réelle. La performance du système a été démontrée en se fondant sur la moyenne accumulée du regret et la moyenne de la récompense accumulée.
43   -
44   -Aussi \cite{INGKAVARA2022100086} met en évidence que les technologies et les systèmes de recommandation peuvent s'adapter à différents besoins et aspirations et qu'ils peuvent également favoriser l'apprentissage auto-régulé. Ce type d'apprentissage aide les apprenants à acquérir les habilités pour diminuer les délais de réponse et devenir plus performants. Ce type d'apprentissage permet de définir des objectifs variables dans un environnement structuré, également d'adapter le temps nécessaire à l'acquisition et la maîtrise de connaissances et de compétences. De plus, avec les systèmes de recommandation est possible d'avoir accès à des ressources et ainsi constituer un excellent outil pour le renforcement des connaissances acquises.
45   -
46   -L'IA est utilisée pour l'apprentissage adaptatif afin de suggérer des ressources d'étude dans le travail de \cite{LALITHA2020583}. Le système proposé par ces auteurs intègre 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é d'identifier les ressources communes entre les profiles afin d'en extraire des informations complémentaires provenant d'Internet. Ce système inclut également un algorithme \textit{Random Forest} pour améliorer le processus d'apprentissage du nouvel 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ées et classées dans des groupes présentant des caractéristiques similaires. Ensuite, la méthode d'analyse par enveloppement des données (DEA) permet d'identifier les besoins spécifiques de chaque groupe et ainsi proposer un parcours d'apprentissage personnalisé.
47   -
48   -La représentation des données des enseignants, des apprenants et l'environnement sont des aspects particulièrement importants à considérer dans l'implémentation de ces systèmes de recommandation. Ces aspects influencent en effet les performances globales des EIAH dans lesquels ils sont intégrés. La proposition de \cite{SU2022109547} consiste à stocker les données des apprenants dans deux graphes évolutifs qui contiennent les relations entre les questions et les réponses correctes ainsi que les réponses données par les apprenants. Ces informations et relations permettent de construire un graphe global propre à chaque apprenant et donnant une information sur son état cognitif et ainsi de personnaliser son parcours. Dans \cite{MUANGPRATHUB2020e05227} définit dans son EIAH trois ensembles de concepts :
49   -\begin{itemize}
50   - \item les objets (G),
51   - \item les attributs (M) et
52   - \item les relations entre G et M.
53   -\end{itemize}
54   -
55   -L'originalité de ce travail consiste à analyser ces concepts en via l'approche FCA (\textit{Formal Context Analysis}). Ce type de représentation permet de mettre en relation les ressources d'étude, les questions et les sujets. En conséquence, si un apprenant étudie un sujet $S_1$ et si une règle relie $S_1$ au sujet $S_4$ ou la question $Q_{3,4}$, alors le système peut suggérer l'étude des ressources d'étude associés au sujet $S_4$ ou aux questions relies par les règles. Par ailleurs, cet algorithme se fonde sur une structure du cours prédéfinie pour recommander un parcours exhaustif d'apprentissage.
56   -
57   -\cite{Zhou2021} propose un système de recommandation pour personnaliser des exercices pour l'apprentissage de l'anglais. Le système décrit 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 de connaissances $K$ est de dimension $n$ ($K=\{k_1, k_2, ..., k_n\}$) où chaque dimension correspond à un point de connaissance. Ainsi, $k_i=1$ signifie que l'apprenant maîtrise le point de connaissance $k_i$. A contrario, $k_i=0$ signifie que l'apprenant doit étudier le point de connaissance $k_i$ car car non acquise. La recommandation des questions proposées par le système se sert par ailleurs d'une librairie de ressources associes à chacune des questions possibles et permettant à l'apprenant de renforcer son apprentissage et d'avancer dans le programme du cours.
58   -
59   -Certains travaux de recommandation et de personnalisation considèrent des variables complémentaires aux notes. C'est le cas de l'EIAH proposé par \cite{EZALDEEN2022100700}, qui lie l'analyse du comportement de l'apprenant à une analyse sémantique de son propre profil. La première étape consiste à collecter les données nécessaires pour créer un profile de l'apprenant. Fort de ce profile complet, des associations sont faites entre l'apprenant et un groupe de catégories d'apprentissages prédéfinies. Les apprentissages sont regroupés selon ses préférences et les données historiques. Puis les concepts associés pour les catégories sont recherchés et permettent ainsi de générer un guide pour obtenir des ressources internet qu'il est possible de recommander. Le système est divisé en quatre niveaux représentés sur la figure \figref{figLevels} où chacun des niveaux est chargé d'une tache spécifique. Les résultats d'un niveau sont envoyés au niveau suivant jusqu'à arriver aux recommandations personnalisées pour l'apprenant.
60   -
61   -\mfigure[!ht]{width=\textwidth}{./Figures/ELearningLevels.png}{Traduction des niveaux du système de recommandation dans \cite{EZALDEEN2022100700}}{figLevels}
62   -
63   -%\begin{figure}[!ht]
64   -%\centering
65   -%\includegraphics[scale=0.5]{./Figures/ELearningLevels.png}
66   -%\caption{Niveaux du système de recommandation dans le travail \cite{EZALDEEN2022100700}}
67   -%\label{figLevels}
68   -%\end{figure}
69   -
70   -Le tableau \ref{tabArts} présente un récapitulatif des articles analysés dans l'état de l'art des EIAH. Les articles apparaissent dans le même ordre qui ont été cités dans le chapitre. Les limites décris correspondent au temps de calcul, quantité de données d'entrainement, complexité de définitions ou des règles ainsi comme la quantité de variables subjectives.
71   -
72   -Une limitation générale qui présentent 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 propriété nécessaire pour les EIAH dans certaines situations où peut se produire un dysfonctionnement du système, la réévaluation d'un apprenant ou la restructuration d'un cours. Par ailleurs, 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.
73   -
74   -\begin{table}
75   -\footnotesize
76   -\begin{tabular}{p{4.2cm}p{10cm}}
77   -Référence&Limites\\
78   -\hline
79   -\cite{ZHANG2021100025}&Niveau global d'application de EIAH. Analyse des effets de l'IA\\
80   -\cite{CHIU2023100118}&Aspects non cognitifs en IA. Motivation des apprenants\\
81   -\cite{Robertson2014ARO}&Peu de test. Pas de standard d'évaluation\\
82   -\cite{HUANG2023104684}&Recommandation en fonction de la motivation seulement. N'est pas général pour tous les apprenants\\
83   -\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\\
84   -\cite{INGKAVARA2022100086}&Modèle très complexe. Définition de constantes subjectif et beaucoup de variables.\\
85   -\cite{LALITHA2020583}&A besoin de beaucoup de données pour entrainement. Ne marche pas dans le cas 'cold-start', n'est pas totalement automatisé\\
86   -\cite{SU2022109547}&Estimation de la connaissance de façon subjective. Il est nécessaire une étape d'entrainement\\
87   -\cite{MUANGPRATHUB2020e05227}&Structure des règles complexe. Définition de la connaissance de base complexe\\
88   -\cite{Zhou2021}&Utilisation d'un filtre collaboratif sans stratification. Utilisation d'une seule métrique de distance\\
89   -\cite{EZALDEEN2022100700}&Il n y a pas de comparaison avec d'autres modèles différents de CNN. Beaucoup de variables à valeurs subjectives\\
90   -
91   -\end{tabular}
92   -\caption{Tableau de synthèse des articles analysés dans l'état de l'art des EIAH}
93   -\label{tabArts}
94   -\end{table}
chapters/ESCBR.aux View file @ e86ea45
... ... @@ -39,67 +39,64 @@
39 39 \newlabel{eqgen5}{{6.6}{58}{Réutiliser}{equation.6.2.6}{}}
40 40 \newlabel{eqgen6}{{6.7}{58}{Réutiliser}{equation.6.2.7}{}}
41 41 \newlabel{eqgen7}{{6.8}{58}{Réutiliser}{equation.6.2.8}{}}
42   -\newlabel{eqmoyenne1}{{6.9}{58}{Réutiliser}{equation.6.2.9}{}}
43 42 \citation{doi:10.1137/23M1592420}
44   -\newlabel{covmat}{{6.10}{59}{Réutiliser}{equation.6.2.10}{}}
45   -\newlabel{eqPCA}{{6.12}{59}{Réutiliser}{equation.6.2.12}{}}
  43 +\@writefile{lof}{\contentsline {figure}{\numberline {6.6}{\ignorespaces \textit {Stacking} pour la génération de solutions\relax }}{59}{figure.caption.28}\protected@file@percent }
  44 +\newlabel{figSta2}{{6.6}{59}{\textit {Stacking} pour la génération de solutions\relax }{figure.caption.28}{}}
46 45 \@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.1.3}Révision}{59}{subsubsection.6.2.1.3}\protected@file@percent }
47   -\@writefile{lof}{\contentsline {figure}{\numberline {6.6}{\ignorespaces \textit {Stacking} pour la génération de solutions\relax }}{60}{figure.caption.28}\protected@file@percent }
48   -\newlabel{figSta2}{{6.6}{60}{\textit {Stacking} pour la génération de solutions\relax }{figure.caption.28}{}}
49   -\newlabel{eqOpt0}{{6.15}{60}{Révision}{equation.6.2.15}{}}
50   -\newlabel{eqOpt}{{6.16}{60}{Révision}{equation.6.2.16}{}}
  46 +\newlabel{eqOpt0}{{6.11}{60}{Révision}{equation.6.2.11}{}}
  47 +\newlabel{eqOpt}{{6.12}{60}{Révision}{equation.6.2.12}{}}
  48 +\@writefile{lof}{\contentsline {figure}{\numberline {6.7}{\ignorespaces Représentation graphique en deux dimensions du problème de moyenne géométrique. (Points associés au problème ($\lambda _1,..,\lambda _7$) et point rouge solution au problème)\relax }}{60}{figure.caption.29}\protected@file@percent }
  49 +\newlabel{fig:FW}{{6.7}{60}{Représentation graphique en deux dimensions du problème de moyenne géométrique. (Points associés au problème ($\lambda _1,..,\lambda _7$) et point rouge solution au problème)\relax }{figure.caption.29}{}}
51 50 \@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.1.4}Mémorisation}{60}{subsubsection.6.2.1.4}\protected@file@percent }
52   -\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}Résultats}{60}{subsection.6.2.2}\protected@file@percent }
53   -\@writefile{lof}{\contentsline {figure}{\numberline {6.7}{\ignorespaces Représentation graphique en deux dimensions du problème de moyenne géométrique. (Points associés au problème ($\lambda _1,..,\lambda _7$) et point rouge solution au problème)\relax }}{61}{figure.caption.29}\protected@file@percent }
54   -\newlabel{fig:FW}{{6.7}{61}{Représentation graphique en deux dimensions du problème de moyenne géométrique. (Points associés au problème ($\lambda _1,..,\lambda _7$) et point rouge solution au problème)\relax }{figure.caption.29}{}}
  51 +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}Résultats}{61}{subsection.6.2.2}\protected@file@percent }
55 52 \@writefile{lot}{\contentsline {table}{\numberline {6.2}{\ignorespaces Description des bases de données évaluées. (* après codification comme \textit {String})\relax }}{61}{table.caption.30}\protected@file@percent }
56 53 \newlabel{tabBases}{{6.2}{61}{Description des bases de données évaluées. (* après codification comme \textit {String})\relax }{table.caption.30}{}}
57   -\@writefile{lot}{\contentsline {table}{\numberline {6.3}{\ignorespaces Liste des algorithmes évalués\relax }}{62}{table.caption.31}\protected@file@percent }
58   -\newlabel{tabAlgs}{{6.3}{62}{Liste des algorithmes évalués\relax }{table.caption.31}{}}
59   -\@writefile{lot}{\contentsline {table}{\numberline {6.4}{\ignorespaces RMSE calculées sur les dix jeux de données sélectionnés obtenues après exécution des dix algorithmes de régression considérés\relax }}{62}{table.caption.32}\protected@file@percent }
60   -\newlabel{tabRes1}{{6.4}{62}{RMSE calculées sur les dix jeux de données sélectionnés obtenues après exécution des dix algorithmes de régression considérés\relax }{table.caption.32}{}}
  54 +\@writefile{lot}{\contentsline {table}{\numberline {6.3}{\ignorespaces Liste des algorithmes évalués\relax }}{61}{table.caption.31}\protected@file@percent }
  55 +\newlabel{tabAlgs}{{6.3}{61}{Liste des algorithmes évalués\relax }{table.caption.31}{}}
  56 +\@writefile{lot}{\contentsline {table}{\numberline {6.4}{\ignorespaces RMSE calculées sur les dix jeux de données sélectionnés obtenues après exécution des dix algorithmes de régression considérés\relax }}{61}{table.caption.32}\protected@file@percent }
  57 +\newlabel{tabRes1}{{6.4}{61}{RMSE calculées sur les dix jeux de données sélectionnés obtenues après exécution des dix algorithmes de régression considérés\relax }{table.caption.32}{}}
61 58 \@writefile{lot}{\contentsline {table}{\numberline {6.5}{\ignorespaces MAE calculées sur les dix jeux de données sélectionnés obtenues après exécution des dix algorithmes de régression considérés\relax }}{62}{table.caption.33}\protected@file@percent }
62 59 \newlabel{tabRes2}{{6.5}{62}{MAE calculées sur les dix jeux de données sélectionnés obtenues après exécution des dix algorithmes de régression considérés\relax }{table.caption.33}{}}
63 60 \@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}Discussion}{62}{subsection.6.2.3}\protected@file@percent }
64 61 \@writefile{lof}{\contentsline {figure}{\numberline {6.8}{\ignorespaces Résultats de la métrique MAE (\textit {Median Absolute Error}) pour les dix algorithmes et quatre bases de données représentatives\relax }}{63}{figure.caption.34}\protected@file@percent }
65 62 \newlabel{figBox}{{6.8}{63}{Résultats de la métrique MAE (\textit {Median Absolute Error}) pour les dix algorithmes et quatre bases de données représentatives\relax }{figure.caption.34}{}}
66   -\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.4}Conclusion}{64}{subsection.6.2.4}\protected@file@percent }
67   -\@writefile{toc}{\contentsline {section}{\numberline {6.3}ESCBR-SMA : Introduction des systèmes multi-agents dans ESCBR}{64}{section.6.3}\protected@file@percent }
  63 +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.4}Conclusion}{63}{subsection.6.2.4}\protected@file@percent }
  64 +\@writefile{toc}{\contentsline {section}{\numberline {6.3}ESCBR-SMA : Introduction des systèmes multi-agents dans ESCBR}{63}{section.6.3}\protected@file@percent }
68 65 \@writefile{toc}{\contentsline {subsection}{\numberline {6.3.1}Modèle Proposé}{64}{subsection.6.3.1}\protected@file@percent }
69   -\@writefile{lof}{\contentsline {figure}{\numberline {6.9}{\ignorespaces Deux cycles du système ESCBR-SMA proposé\relax }}{65}{figure.caption.35}\protected@file@percent }
70   -\newlabel{figNCBR}{{6.9}{65}{Deux cycles du système ESCBR-SMA proposé\relax }{figure.caption.35}{}}
  66 +\@writefile{lof}{\contentsline {figure}{\numberline {6.9}{\ignorespaces Deux cycles du système ESCBR-SMA proposé\relax }}{64}{figure.caption.35}\protected@file@percent }
  67 +\newlabel{figNCBR}{{6.9}{64}{Deux cycles du système ESCBR-SMA proposé\relax }{figure.caption.35}{}}
  68 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.1.1}Algorithmes}{65}{subsubsection.6.3.1.1}\protected@file@percent }
71 69 \@writefile{lof}{\contentsline {figure}{\numberline {6.10}{\ignorespaces Flux du \textit {Stacking} du RàPC (* est une tâche effectuée par chaque agent)\relax }}{66}{figure.caption.36}\protected@file@percent }
72 70 \newlabel{figFlowCBR}{{6.10}{66}{Flux du \textit {Stacking} du RàPC (* est une tâche effectuée par chaque agent)\relax }{figure.caption.36}{}}
  71 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.1.2}Structure des agents}{66}{subsubsection.6.3.1.2}\protected@file@percent }
73 72 \@writefile{lot}{\contentsline {table}{\numberline {6.6}{\ignorespaces Variables et paramètres du modèle proposé (Type: p - paramètre, v - variable, f - fonction)\relax }}{67}{table.caption.37}\protected@file@percent }
74 73 \newlabel{tabVarPar}{{6.6}{67}{Variables et paramètres du modèle proposé (Type: p - paramètre, v - variable, f - fonction)\relax }{table.caption.37}{}}
75   -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.1.1}Algorithmes}{67}{subsubsection.6.3.1.1}\protected@file@percent }
76   -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.1.2}Structure des agents}{67}{subsubsection.6.3.1.2}\protected@file@percent }
77   -\newlabel{eqOpt1}{{6.17}{68}{Structure des agents}{equation.6.3.17}{}}
78   -\newlabel{eqOpt2}{{6.18}{68}{Structure des agents}{equation.6.3.18}{}}
  74 +\newlabel{eqOpt1}{{6.13}{67}{Structure des agents}{equation.6.3.13}{}}
  75 +\newlabel{eqOpt2}{{6.14}{67}{Structure des agents}{equation.6.3.14}{}}
  76 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.1.3}Apprentissage des agents}{67}{subsubsection.6.3.1.3}\protected@file@percent }
79 77 \@writefile{lof}{\contentsline {figure}{\numberline {6.11}{\ignorespaces Structure interne des agents\relax }}{68}{figure.caption.38}\protected@file@percent }
80 78 \newlabel{figAgent}{{6.11}{68}{Structure interne des agents\relax }{figure.caption.38}{}}
81   -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.1.3}Apprentissage des agents}{68}{subsubsection.6.3.1.3}\protected@file@percent }
  79 +\newlabel{eqBay}{{6.15}{68}{Apprentissage des agents}{equation.6.3.15}{}}
  80 +\newlabel{eqRta}{{6.16}{68}{Apprentissage des agents}{equation.6.3.16}{}}
82 81 \@writefile{lof}{\contentsline {figure}{\numberline {6.12}{\ignorespaces Exemple d'évolution Bayésienne des vecteurs pour un agent. a) Initialisation des probabilités $P(B|A)$ vecteurs pour Retrieve et Reuse, b) Probabilités après quelques itérations $P(A|B)$ vecteurs pour Retrieve et Reuse\relax }}{69}{figure.caption.39}\protected@file@percent }
83 82 \newlabel{fig:bayev}{{6.12}{69}{Exemple d'évolution Bayésienne des vecteurs pour un agent. a) Initialisation des probabilités $P(B|A)$ vecteurs pour Retrieve et Reuse, b) Probabilités après quelques itérations $P(A|B)$ vecteurs pour Retrieve et Reuse\relax }{figure.caption.39}{}}
84   -\newlabel{eqBay}{{6.19}{69}{Apprentissage des agents}{equation.6.3.19}{}}
85   -\newlabel{eqRta}{{6.20}{69}{Apprentissage des agents}{equation.6.3.20}{}}
86   -\newlabel{eqRsa}{{6.21}{69}{Apprentissage des agents}{equation.6.3.21}{}}
87   -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.1.4}Échanges entre les agents}{70}{subsubsection.6.3.1.4}\protected@file@percent }
88   -\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.2}Résultats}{70}{subsection.6.3.2}\protected@file@percent }
  83 +\newlabel{eqRsa}{{6.17}{69}{Apprentissage des agents}{equation.6.3.17}{}}
  84 +\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.1.4}Échanges entre les agents}{69}{subsubsection.6.3.1.4}\protected@file@percent }
  85 +\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.2}Résultats}{69}{subsection.6.3.2}\protected@file@percent }
89 86 \@writefile{lot}{\contentsline {table}{\numberline {6.7}{\ignorespaces Description des jeux de données évalués. (* après codification comme \textit {String})\relax }}{70}{table.caption.40}\protected@file@percent }
90 87 \newlabel{tabBases}{{6.7}{70}{Description des jeux de données évalués. (* après codification comme \textit {String})\relax }{table.caption.40}{}}
91   -\@writefile{lot}{\contentsline {table}{\numberline {6.8}{\ignorespaces Paramètres de tous les algorithmes comparés\relax }}{71}{table.caption.41}\protected@file@percent }
92   -\newlabel{AlgsPar}{{6.8}{71}{Paramètres de tous les algorithmes comparés\relax }{table.caption.41}{}}
  88 +\@writefile{lot}{\contentsline {table}{\numberline {6.8}{\ignorespaces Paramètres de tous les algorithmes comparés\relax }}{70}{table.caption.41}\protected@file@percent }
  89 +\newlabel{AlgsPar}{{6.8}{70}{Paramètres de tous les algorithmes comparés\relax }{table.caption.41}{}}
93 90 \@writefile{lot}{\contentsline {table}{\numberline {6.9}{\ignorespaces Résultat selon la métrique RMSE (Root Mean Squared Error) pour les jeux de données évalués avec les différents algorithmes de régression considérés.\relax }}{71}{table.caption.42}\protected@file@percent }
94 91 \newlabel{tabRes1}{{6.9}{71}{Résultat selon la métrique RMSE (Root Mean Squared Error) pour les jeux de données évalués avec les différents algorithmes de régression considérés.\relax }{table.caption.42}{}}
95   -\@writefile{lot}{\contentsline {table}{\numberline {6.10}{\ignorespaces Comparaison des résultats MAE (Median Absolute Error) pour les bases de données évaluées avec des algorithmes de régression\relax }}{72}{table.caption.43}\protected@file@percent }
96   -\newlabel{tabRes2}{{6.10}{72}{Comparaison des résultats MAE (Median Absolute Error) pour les bases de données évaluées avec des algorithmes de régression\relax }{table.caption.43}{}}
  92 +\@writefile{lot}{\contentsline {table}{\numberline {6.10}{\ignorespaces Comparaison des résultats MAE (Median Absolute Error) pour les bases de données évaluées avec des algorithmes de régression\relax }}{71}{table.caption.43}\protected@file@percent }
  93 +\newlabel{tabRes2}{{6.10}{71}{Comparaison des résultats MAE (Median Absolute Error) pour les bases de données évaluées avec des algorithmes de régression\relax }{table.caption.43}{}}
  94 +\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.3}Conclusion}{71}{subsection.6.3.3}\protected@file@percent }
97 95 \@writefile{lof}{\contentsline {figure}{\numberline {6.13}{\ignorespaces Résultats selon la métrique MAE (Median Absolute Error) pour les dix algorithmes testés\relax }}{72}{figure.caption.44}\protected@file@percent }
98 96 \newlabel{figBox}{{6.13}{72}{Résultats selon la métrique MAE (Median Absolute Error) pour les dix algorithmes testés\relax }{figure.caption.44}{}}
99   -\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.3}Conclusion}{72}{subsection.6.3.3}\protected@file@percent }
100 97 \@setckpt{./chapters/ESCBR}{
101 98 \setcounter{page}{73}
102   -\setcounter{equation}{21}
  99 +\setcounter{equation}{17}
103 100 \setcounter{enumi}{0}
104 101 \setcounter{enumii}{0}
105 102 \setcounter{enumiii}{0}
chapters/ESCBR.tex View file @ e86ea45
... ... @@ -8,15 +8,15 @@
8 8  
9 9 Avant de présenter nos propositions, rappelons quelques caractéristiques importantes des outils combinés dans notre approche.
10 10  
11   -Le système de raisonnement à partir de cas ne nécessite pas d'entrainement, et peut fonctionner avec des données dynamiques au moment de l'exécution. Les solutions proposées par notre système de RàPC sont générées à l'aide d'algorithmes stochastiques guidant l'exploration de l'espace des solutions. L'évaluation des solutions possibles est effectuée en transformant le problème de régression en un problème d'optimisation avec une fonction objectif associée, la fonction objectif calcule un rapport de la distance entre la solution générée et les solutions connues avec les problèmes à résoudre et les problèmes connus, la définition formelle se trouve dans la section 6.2.1.3.
  11 +Le système de raisonnement à partir de cas ne nécessite pas d'entrainement, et peut fonctionner avec des données dynamiques au moment de l'exécution. Les solutions proposées par notre système de RàPC sont générées à l'aide d'algorithmes stochastiques guidant l'exploration de l'espace des solutions. L'évaluation des solutions possibles est effectuée en transformant le problème de régression en un problème d'optimisation avec une fonction objectif associée. La fonction objectif calcule un rapport de la distance entre la solution générée et les solutions connues avec les problèmes à résoudre et les problèmes connus. La définition formelle se trouve dans la section 6.2.1.3.
12 12 %\colorbox{yellow}{Il faut expliquer en quelques mots ce que fait cette fonction objectif}\\
13   -Les prédictions de ce nouvel algorithme ont été comparées à celles de neuf algorithmes de régression classiques sur dix jeux de données pour la régression extraits du site de l'UCI \cite{UCI}. En évaluant les résultats obtenus avec la métrique RMSE, ce nouvel algorithme se classe parmi les six meilleurs. Avec la métrique MAE il est le troisième meilleur algorithme des dix évalués, ce qui suggère que les résultats produits par ESCBR sont raisonnablement saitsfaisants.
  13 +Les prédictions de ce nouvel algorithme ont été comparées à celles de neuf algorithmes de régression classiques sur dix jeux de données pour la régression extraits du site de l'UCI \cite{UCI}. En évaluant les résultats obtenus selon la métrique RMSE (Erreur quadratique moyenne - \textit{Root Mean Squared Error}), ce nouvel algorithme se classe parmi les six meilleurs. Selon la métrique MAE (Erreur moyenne absolue - \textit{Mean Absolute Error}) il est le troisième meilleur algorithme des dix évalués, ce qui suggère que les résultats produits par ESCBR sont raisonnablement saitsfaisants.
14 14  
15 15 Les méthodes d'ensemble permettent de résoudre des problèmes de classification et de régression en combinant les résultats de plusieurs modèles exécutés indépendamment. Certaines de ces méthodes utilisent des modèles différents et des ensembles de données différents tandis que d'autres utilisent les mêmes modèles avec des paramètres différents. La combinaison des résultats provenant de multiples modèles peut être réalisée selon différentes stratégies comme l'application de règles simples ou des approches plus complexes \cite{BAKUROV2021100913}. Plusieurs travaux de recherche explorent la possibilité d'utiliser cette méthode d'ensemble en la combinant à des outils d'apprentissage automatique.
16 16  
17   -Les méthodes d'apprentissage automatique appliquées à la régression permettent quant à elles de prédire des valeurs pour différents types de problèmes en construisant, évaluant et formant des modèles linéaires et non linéaires complexes. Mais s'il est possible d'en améliorer la précision en les associant. Les stratégies d'intégration les plus courantes utilisées pour l'apprentissage d'ensemble sont le \textit{Stacking} (empilement), le \textit{Boosting} et le \textit{Bagging} \cite{Liang}. Le \textit{Stacking} est un type de méta-modèle d'apprentissage profond d'ensemble dont l'objectif est d'utiliser diverses techniques d'apprentissage automatique pour surmonter les limites des modèles individuels. Plusieurs études démontrent que l'association de ces techniques permet d'améliorer la précision des résultats \cite{cmc.2023.033417}. Dans ces méthodes d'empilement, les algorithmes de base sont appelés \textit{niveau-0}. Il s'agit généralement de modèles ou d'algorithmes d'apprentissage automatique hétérogènes qui travaillent tous avec les mêmes données. Le méta-algorithme (appelé \textit{niveau-1}) qui unifie les résultats peut être une autre technique d'apprentissage automatique ou un ensemble de règles qui reçoit en entrée les résultats des algorithmes de \textit{niveau-0} \cite{10.3389/fgene.2021.600040}.
  17 +Les méthodes d'apprentissage automatique appliquées à la régression permettent quant à elles de prédire des valeurs pour différents types de problèmes en construisant, évaluant et formant des modèles linéaires et non linéaires complexes. Mais il est possible d'en améliorer la précision en les associant. Les stratégies d'intégration les plus courantes utilisées pour l'apprentissage d'ensemble sont le \textit{Stacking} (empilement), le \textit{Boosting} (stimulation) et le \textit{Bagging} (ensachage) \cite{Liang}. Le \textit{Stacking} est un type de méta-modèle d'apprentissage profond d'ensemble dont l'objectif est d'utiliser diverses techniques d'apprentissage automatique pour surmonter les limites des modèles individuels. Plusieurs études démontrent que l'association de ces techniques permet d'améliorer la précision des résultats \cite{cmc.2023.033417}. Dans ces méthodes d'empilement, les algorithmes de base sont appelés \textit{niveau-0}. Il s'agit généralement de modèles ou d'algorithmes d'apprentissage automatique hétérogènes qui travaillent tous avec les mêmes données. Le méta-algorithme (appelé \textit{niveau-1}) qui unifie les résultats peut être une autre technique d'apprentissage automatique ou un ensemble de règles qui reçoit en entrée les résultats des algorithmes de \textit{niveau-0} \cite{10.3389/fgene.2021.600040}.
18 18  
19   -La modélisation de systèmes implémentant différentes techniques d'apprentissage nous amène tout naturellement à considérer les avantages et inconvénients proposés par un système multi-agents. Un SMA est système décentralisé composé de plusieurs entités appelées agents qui ont la capacité d'effectuer des actions spécifiques et de réagir à l'environnement en fonction des informations partielles à leur disposition. Ils peuvent également collaborer les uns avec les autres et coopérer pour atteindre un objectif spécifique. À partir des informations qu'ils perçoivent et échangent, les agents peuvent apprendre de manière autonome et atteindre leurs objectifs efficacement \cite{KAMALI2023110242}. Les actions d'un système multi-agents peuvent être exécutées en parallèle grâce à l'indépendance des agents. Ils sont également robustes aux problèmes présentant une incertitude \cite{DIDDEN2023338}.
  19 +La modélisation de systèmes implémentant différentes techniques d'apprentissage nous amène tout naturellement à considérer les avantages et inconvénients proposés par un système multi-agents. Un SMA est un système décentralisé composé de plusieurs entités appelées agents qui ont la capacité d'effectuer des actions spécifiques et de réagir à l'environnement en fonction des informations partielles à leur disposition. Ils peuvent également collaborer les uns avec les autres et coopérer pour atteindre un objectif spécifique. À partir des informations qu'ils perçoivent et échangent, les agents peuvent apprendre de manière autonome et atteindre leurs objectifs efficacement \cite{KAMALI2023110242}. Les actions d'un système multi-agents peuvent être exécutées en parallèle grâce à l'indépendance des agents. Ils sont également robustes aux problèmes présentant une incertitude \cite{DIDDEN2023338}.
20 20  
21 21 Le raisonnement Bayésien clos ce premier tour d'horizon des techniques implémentées dans l'approche présentée dans ce chapitre. Celui-ci est fondé sur l'observation du raisonnement humain et la relation de l'humain avec l'environnement. Son principe repose sur le postulat que les expériences passées permettent de déduire les états futurs, guidant ainsi ses actions et ses décisions \cite{HIPOLITO2023103510}. Avec le raisonnement Bayésien certaines informations peuvent également être déduites à partir d'informations incomplètes \cite{ZHANG2023110564}.
22 22  
... ... @@ -108,7 +108,8 @@
108 108 \label{figAuto}
109 109 \end{figure}
110 110  
111   -La moyenne pondérée avec probabilité permet de construire une solution en utilisant comme valeurs de pondération pour chaque solution connue les distances normalisées entre le cas cible et les $nl$ cas plus proches comme indique l'équation \ref{gen00}, ainsi la solution globale est construite à partir des solutions proposées par les $nl$ algorithmes selon l'équation \ref{gen01}. Cet algorithme permet de donner plus de poids aux solutions associées aux cas les plus proches du cas cible pour construire une réponse plus appropriée d'accord avec l'information historique de la base de données.
  111 +La moyenne pondérée avec probabilité est construite en considérant les $nl$ cas les plus proches du cas cible. Ces $nl$ cas sont les cas sélectionnés par le premier empilement. Pour chacun de ces $nl$ cas, un ratio $\alpha_j$ est calculé en considérant la distance entre celui-ci et le cas cible, selon l'équation \ref{gen00}.
  112 +Nous considérons alors l'ensemble de ces ratios comme une distribution de probabilité discrète. Chacune des composantes du vecteur solution sont ensuite calculés selon l'équation \ref{gen01}. Cet algorithme permet de donner plus de poids aux solutions des cas les plus proches du cas cible.
112 113  
113 114 \begin{equation}
114 115 \alpha_j=1-\left(\frac{d(p_j^n,p_w^n)}{\sum_{i=0}^{nl} d(p_i^n,p_w^n)}\right)
115 116  
... ... @@ -120,17 +121,14 @@
120 121 \label{gen01}
121 122 \end{equation}
122 123  
123   -La moyenne sans probabilité génère la nouvelle solution en donnant la valeur de chaque dimension
124   -%\colorbox{yellow}{copie ?}
125   -selon la moyenne calculée avec la distribution de probabilité uniforme, en attribuant la même probabilité à toutes les dimensions de toutes les solutions associées aux cas les plus proches du cas cible. Formellement la génération de la solution est calculée selon l'équation \ref{gen2}, où chaque dimension $j$ de la nouvelle solution est calculée de façon similaire.
  124 +La moyenne sans probabilité génère la nouvelle solution où la valeur de chaque dimension est la moyenne calculée avec une distribution de probabilité uniforme (attribuant la même probabilité à toutes les dimensions de toutes les solutions associées aux cas les plus proches du cas cible). Formellement la génération de la solution est calculée selon l'équation \ref{gen2}.
126 125  
127 126 \begin{equation}
128 127 s^m_{w,j}= \frac{1}{nl} \sum_{i=0}^{nl} s_{i,j}
129 128 \label{gen2}
130 129 \end{equation}
131 130  
132   -La génération par valeurs médianes (équation \ref{eqgen3}) construit la solution en utilisant la valeur médiane de toutes les solutions pour chaque j-ème dimension. $X_j$ représente l'ensemble des valeurs ordonnées de toutes les solutions $S$ dans la dimension $j$.
133   -%\colorbox{yellow}{position ?}.
  131 +La génération par valeurs médianes (équation \ref{eqgen3}) construit la solution en utilisant la valeur médiane de toutes les solutions pour chaque dimension $j$. $X_j$ représente l'ensemble des valeurs ordonnées des $j$-ièmes composantes de toutes solutions $S$.
134 132  
135 133 \begin{equation}
136 134 s_{j,w}^m=
137 135  
... ... @@ -141,16 +139,14 @@
141 139 \label{eqgen3}
142 140 \end{equation}
143 141  
144   -La sélection aléatoire avec probabilité (équation \ref{eqgen4}) génère une solution en copiant aléatoirement l'information des solutions dans chaque j-ème dimension. la solution pour copier l'information dans une dimension $j$ est choisie aléatoirement selon l'inverse normalisé de la distance du cas associé au cas cible.
145   -%\colorbox{yellow}{Il est difficile à comprendre à quel moment intervient l'aléatoire dans ce processus}\\
146   -%\colorbox{yellow}{À ce stade, les équations ne sont plus citées.}
  142 +La sélection aléatoire avec probabilité (équation \ref{eqgen4}) génère une solution en copiant la $j$-ième composante de l'une des solutions tirée au sort. Le tirage au sort suit une loi donnée par une distribution de probabilité discrète. Cette distribution de probabilité est identique à celle de la moyenne pondérée avec probabilité.
147 143  
148 144 \begin{equation}
149 145 s_{j,w}^m=s_{j,k}^m; k \sim \left(1-\left(\frac{d(p_k,p_w)}{\sum_{i=1}^nl(p_k,p_i)} \right)\right)
150 146 \label{eqgen4}
151 147 \end{equation}
152 148  
153   -"Copie/changement" copie les informations d'une solution aléatoire et en remplace une partie par celles d'une autre solution sélectionnée aléatoirement comme le montre formellement l'équation \ref{eqgen5}.
  149 +"Copie/changement" copie les informations d'une solution aléatoire et en remplace une partie par celles d'une autre solution sélectionnée aléatoirement selon l'équation \ref{eqgen5}.
154 150  
155 151 \begin{equation}
156 152 s_{j,w}^m=s_{j,k}^m; k \sim \left(\frac{1}{nl} \right)
157 153  
158 154  
159 155  
... ... @@ -164,48 +160,18 @@
164 160 \label{eqgen6}
165 161 \end{equation}
166 162  
167   -L'interpolation construit une distribution de probabilité continue pour chaque j-ème dimension, en utilisant une fonction d'interpolation linéaire 1D calculée selon l'information des solution connues dans la j-ème dimension correspondant comme est décrit dans de l'équation \ref{eqgen7}.
168   -%\\ \colorbox{yellow}{Pourquoi aléatoire ? Une interpolation ne rend pas un résultat aléatoire}
  163 +L'interpolation construit une distribution de probabilité continue pour chaque composante $j$. Chaque probabilité de ces distributions est le résultat d'une fonction d'interpolation linéaire à une dimension. La valeur de la $j$-ième composante de la solution est calculée selon l'équation \ref{eqgen7}.
169 164  
170 165 \begin{equation}
171 166 s_{w,j}^m \sim \left( \left( \frac{y_i-y_{i+1}}{x_i-x_{i+1}} \right) (x-x_i)+y_i \right), \forall i \; 0 \le i < nl
172 167 \label{eqgen7}
173 168 \end{equation}
174 169  
175   -Dans l'analyse en composantes principales (PCA), si la dimension de l'espace des solutions $m$ est plus petit que la dimension de l'espace des problèmes $n$, c'est-à-dire $m<n$, alors la description du problème est transposée dans l'espace de description des solutions pour établir une relation entre le problème et sa solution. Le problème et la solution étant ainsi dans le même espace, la moyenne de la distance entre tous les paires problème-solution est calculée. En utilisant la description transposée du nouveau problème et la valeur moyenne de distance précédemment calculée, une solution est générée. %\textcolor{red}{à vérifier} \colorbox{yellow}{Idem, je n'ai pas compris la fin de la dernière phrase.}
  170 +L'analyse en composantes principales (PCA) consiste à établir une transformation de la description du problème en description de la solution associée. La moyenne de la distance entre tous les paires problème-solution est calculée et permet de générer une solution par transposition.
176 171  
177   -Pour le calcul de l'analyse en composantes principales est nécessaire calculer la moyenne centrée comme dans l'équation \ref{eqmoyenne1}, après, est calculée la matrice de covariance (équation \ref{covmat}).
  172 +La PCA permet donc de générer une matrice de transformation $\mathcal{M}$ d'un vecteur de l'espace des problème en vecteur de l'espace des solutions. Pour chaque cas source, la distance entre le vecteur solution obtenu et le vecteur solution stocké est calculée. Une moyenne de ces distances $md$ est ensuite considérée.
178 173  
179   -\colorbox{yellow}{À quoi correspond le processus ci-dessous ?}
180   -
181   -\begin{equation}
182   -X_c=X-\frac{1}{N} \sum_{i=1}^N X_i
183   -\label{eqmoyenne1}
184   -\end{equation}
185   -
186   -\begin{equation}
187   -C_x=\frac{1}{n-1}XX^T=\frac{1}{n-1} \left(
188   -\begin{matrix}
189   -x_1x_1^T&x_1x_2^T&...&x_1x_m^T\\
190   -x_2x_1^T&x_2x_2^T&...&x_2x_m^T\\
191   -\vdots&\vdots&\ddots&\vdots\\
192   -x_mx_1^T&x_mx_2^T&...&x_mx_m^T\\
193   -\end{matrix}
194   -\right) \in \mathbb{R}^{mxm}
195   -\label{covmat}
196   -\end{equation}
197   -
198   -\begin{equation}
199   -C_x v = \lambda v
200   -\end{equation}
201   -
202   -Choisir les $k$ premier composantes principales
203   -$W_k=\{v_1, v_2,...v_k\}$, faire la projection des $k$ composantes $Z=XW_k$, pour finalement calculer les distances entre les problèmes transposés et les solutions associées $d_j^m=distance(Z_j,s_j)$ et les utiliser pour calculer la nouvelle solution comme spécifié dans l'équation \ref{eqPCA}.
204   -
205   -\begin{equation}
206   - s_{w,j}^m=Z_{w,j}^m+\frac{1}{m}\sum_{i=1}^m d_{i,j}
207   - \label{eqPCA}
208   -\end{equation}
  174 +L'application de $\mathcal{M}$ au vecteur problème du cas cible donne donc dans un premier temps un vecteur solution. La solution cible est alors le vecteur $md \times \mathcal{M}$.
209 175  
210 176 La marche aléatoire consiste à choisir une solution et changer ses valeurs dans une dimension aléatoire avec un pas aléatoire. Le pas est une valeur aléatoire générée avec une distribution de probabilité normal de moyenne 0 et variance 1.
211 177 \\
chapters/ESCBR0.tex View file @ e86ea45
... ... @@ -3,36 +3,41 @@
3 3  
4 4 \section{Introduction}
5 5  
6   -Ce chapitre est divisé en deux parties. La première partie présente un modèle fondé sur le raisonnement à partir de cas et les méthodes d'ensemble avec un double empilement \textcolor{red}{empilement?}itératif en deux étapes pour trouver des solutions approximatives à des problèmes de régression unidimensionnels et multidimensionnels. Une partie de cette proposition est publiée dans \textit{et al.} \cite{10.1007/978-3-031-63646-2_11}. La seconde partie montre la conception et l'implémentation de SMA intégré à celui du ESCBR(explicité dans la première partie). L'objectif étant d'améliorer la performance et les résultats en appliquant et en testant des problèmes de régression\textcolor{red}{revoir cette phrase que j'ai modifiée}.
7   -\textcolor{red}{revoir cette phrase en la coupant}Nous proposons dans la seconde partie un modèle qui intègre un algorithme de raisonnement à partir de cas avec des systèmes multi-agents cognitifs qui utilisent le raisonnement Bayésien afin d'améliorer les processus de recherche de voisins et de génération de solutions en utilisant l'échange d'informations inter-agents et l'apprentissage par renforcement, obtenant ainsi des effets émergents dans le comportement global de l'algorithme, ce qui peut conduire à l'amélioration des prédictions de l'algorithme ESCBR \cite{10.1007/978-3-031-63646-2_11}.\\\\
  6 +Ce chapitre est divisé en deux parties. La première partie présente un modèle fondé sur le raisonnement à partir de cas et les méthodes d'ensemble avec un double empilement itératif. Nous l'avons baptisé \textit{ESCBR} (\textit{Ensemble Stacking Case Based Reasoning}). Ce processus se fait en deux étapes pour trouver des solutions approximatives à des problèmes de régression unidimensionnels et multidimensionnels. Une partie de cette proposition est publiée dans \cite{10.1007/978-3-031-63646-2_11}. La seconde partie montre la conception et l'implémentation d'un SMA intégré à l'ESCBR présenté dans la première partie. Nous considérons dans ce chapitre que le choix des exercices les plus adaptés revient à résoudre un problème de régression. C'est la raison pour laquelle nous testons notre approche sur des jeux de données classiques de régression.
  7 +Le modèle présenté dans cette seconde partie associe un raisonnement à partir de cas à des systèmes multi-agents cognitifs implémentant un raisonnement Bayésien. Cette association, combinant échange d'informations entre agents et apprentissage par renforcement, permet l'émergence de prédictions plus précises et améliore ainsi les performances d'ESCBR \cite{10.1007/978-3-031-63646-2_11}.\\
8 8  
9   -\textcolor{red}{attention la suite fait un peu catalogue}
10   -Le \textcolor{red}{Un modèle?}modèle fondé sur le raisonnement à partir de cas ne nécessite pas d'entrainement, et peut fonctionner avec des données dynamiques au moment de l'exécution. Les solutions sont générées à l'aide d'algorithmes stochastiques afin de permettre l'exploration de l'espace des solutions. L'évaluation est effectuée en transformant le problème de régression en un problème d'optimisation avec une fonction objectif associée \textcolor{red}{fonction objectif associée?}. L'algorithme a été testé par comparaison à neuf algorithmes de régression classiques sur dix bases de données de régression différentes extraites du site de l'UCI\textcolor{red}{ref?}. Les résultats montrent que l'algorithme proposé génère dans la plupart des cas des solutions assez proches des solutions réelles. \textcolor{red}{En utilisant la métrique ? RMSE?} selon le RMSE l'algorithme se trouve globalement parmi les six meilleurs algorithmes. \textcolor{red}{Avec la métrique MAE il est le ?} et avec MAE le troisième meilleur algorithme des dix évalués, ce qui suggère que les résultats sont raisonnablement bons.
  9 +Avant de présenter nos propositions, rappelons quelques caractéristiques importantes des outils combinés dans notre approche.
11 10  
12   -Les méthodes d'ensemble utilisent plusieurs modèles multiples exécutés indépendamment et leurs résultats sont combinés pour obtenir une prédiction globale finale. L'idée principale est d'améliorer les résultats ainsi que la capacité de généralisation des modèles individuels \textcolor{red}{vérifier la phrase précédente}. Certaines méthodes d'ensemble utilisent différents modèles avec différents ensembles de données, d'autres utilisent les mêmes modèles avec des paramètres différents. La combinaison des résultats des multiples modèles peut utiliser différentes stratégies comme des règles simples ou des approches plus complexes \cite{BAKUROV2021100913}. Les méthodes d'ensemble sont utiles dans \textcolor{red}{dans la résolution des problèmes?}les problèmes de classification et de régression.
  11 +Le système de raisonnement à partir de cas ne nécessite pas d'entrainement, et peut fonctionner avec des données dynamiques au moment de l'exécution. Les solutions proposées par notre système de RàPC sont générées à l'aide d'algorithmes stochastiques guidant l'exploration de l'espace des solutions. L'évaluation des solutions possibles est effectuée en transformant le problème de régression en un problème d'optimisation avec une fonction objectif associée, la fonction objectif calcule un rapport de la distance entre la solution générée et les solutions connues avec les problèmes à résoudre et les problèmes connus, la définition formelle se trouve dans la section 6.2.1.3.
  12 +%\colorbox{yellow}{Il faut expliquer en quelques mots ce que fait cette fonction objectif}\\
  13 +Les prédictions de ce nouvel algorithme ont été comparées à celles de neuf algorithmes de régression classiques sur dix jeux de données pour la régression extraits du site de l'UCI \cite{UCI}. En évaluant les résultats obtenus avec la métrique RMSE, ce nouvel algorithme se classe parmi les six meilleurs. Avec la métrique MAE il est le troisième meilleur algorithme des dix évalués, ce qui suggère que les résultats produits par ESCBR sont raisonnablement saitsfaisants.
13 14  
14   -Les méthodes d'apprentissage automatique appliquées à la régression permettent de prédire des valeurs pour différents types de problèmes en construisant, évaluant et formant des modèles linéaires et non linéaires complexes. Mais s'il est possible d'améliorer la précision en les intégrant, les stratégies d'intégration les plus courantes, utilisées pour l'apprentissage d'ensemble, sont les suivantes : Stacking, Boosting et Bagging \cite{Liang}. Le Stacking est un type de méta-modèle d'apprentissage profond d'ensemble dont l'objectif est d'utiliser diverses techniques d'apprentissage automatique pour surmonter les limites des modèles individuels, l'intégration \textcolor{red}{de ces techniques?}générant un résultat final avec une précision améliorée \cite{cmc.2023.033417}. Dans les méthodes d'empilage\textcolor{red}{empilement, choisir}, les algorithmes de base sont appelés niveau-0, il s'agit généralement de modèles ou d'algorithmes d'apprentissage automatique hétérogènes qui travaillent tous avec la même base de données. Le méta-algorithme qui unifie les résultats peut être une autre technique d'apprentissage automatique ou un ensemble de règles qui reçoit comme données d'entrée les résultats des algorithmes de niveau-0 est appelé niveau-1 \cite{10.3389/fgene.2021.600040}.
  15 +Les méthodes d'ensemble permettent de résoudre des problèmes de classification et de régression en combinant les résultats de plusieurs modèles exécutés indépendamment. Certaines de ces méthodes utilisent des modèles différents et des ensembles de données différents tandis que d'autres utilisent les mêmes modèles avec des paramètres différents. La combinaison des résultats provenant de multiples modèles peut être réalisée selon différentes stratégies comme l'application de règles simples ou des approches plus complexes \cite{BAKUROV2021100913}. Plusieurs travaux de recherche explorent la possibilité d'utiliser cette méthode d'ensemble en la combinant à des outils d'apprentissage automatique.
15 16  
16   -Un système multi-agents est un système décentralisé composé de plusieurs entités appelées agents qui ont la capacité d'effectuer des actions spécifiques et de réagir à l'environnement en fonction des informations partielles qu'ils peuvent obtenir. Ils peuvent également collaborer les uns avec les autres et coopérer pour atteindre un objectif spécifique. À partir des informations qu'ils perçoivent et échangent, les agents peuvent apprendre de manière autonome et atteindre leurs objectifs de manière efficace \cite{KAMALI2023110242}. Les systèmes multi-agents peuvent être exécutés en parallèle étant donné l'indépendance des agents. Ils sont également robustes aux problèmes qui présentent une incertitude \cite{DIDDEN2023338}.
  17 +Les méthodes d'apprentissage automatique appliquées à la régression permettent quant à elles de prédire des valeurs pour différents types de problèmes en construisant, évaluant et formant des modèles linéaires et non linéaires complexes. Mais s'il est possible d'en améliorer la précision en les associant. Les stratégies d'intégration les plus courantes utilisées pour l'apprentissage d'ensemble sont le \textit{Stacking} (empilement), le \textit{Boosting} et le \textit{Bagging} \cite{Liang}. Le \textit{Stacking} est un type de méta-modèle d'apprentissage profond d'ensemble dont l'objectif est d'utiliser diverses techniques d'apprentissage automatique pour surmonter les limites des modèles individuels. Plusieurs études démontrent que l'association de ces techniques permet d'améliorer la précision des résultats \cite{cmc.2023.033417}. Dans ces méthodes d'empilement, les algorithmes de base sont appelés \textit{niveau-0}. Il s'agit généralement de modèles ou d'algorithmes d'apprentissage automatique hétérogènes qui travaillent tous avec les mêmes données. Le méta-algorithme (appelé \textit{niveau-1}) qui unifie les résultats peut être une autre technique d'apprentissage automatique ou un ensemble de règles qui reçoit en entrée les résultats des algorithmes de \textit{niveau-0} \cite{10.3389/fgene.2021.600040}.
17 18  
18   -Le raisonnement Bayésien est une hypothèse sur le fonctionnement du cerveau humain et sa relation avec l'environnement. Le principe est que les expériences passées permettent de déduire les états futurs, ce qui permet d'agir et de prendre des décisions \cite{HIPOLITO2023103510}. Des informations peuvent également être déduites et d'apprendre \textcolor{red}{qui peut apprendre?}à partir d'informations incomplètes \cite{ZHANG2023110564}.
  19 +La modélisation de systèmes implémentant différentes techniques d'apprentissage nous amène tout naturellement à considérer les avantages et inconvénients proposés par un système multi-agents. Un SMA est système décentralisé composé de plusieurs entités appelées agents qui ont la capacité d'effectuer des actions spécifiques et de réagir à l'environnement en fonction des informations partielles à leur disposition. Ils peuvent également collaborer les uns avec les autres et coopérer pour atteindre un objectif spécifique. À partir des informations qu'ils perçoivent et échangent, les agents peuvent apprendre de manière autonome et atteindre leurs objectifs efficacement \cite{KAMALI2023110242}. Les actions d'un système multi-agents peuvent être exécutées en parallèle grâce à l'indépendance des agents. Ils sont également robustes aux problèmes présentant une incertitude \cite{DIDDEN2023338}.
19 20  
  21 +Le raisonnement Bayésien clos ce premier tour d'horizon des techniques implémentées dans l'approche présentée dans ce chapitre. Celui-ci est fondé sur l'observation du raisonnement humain et la relation de l'humain avec l'environnement. Son principe repose sur le postulat que les expériences passées permettent de déduire les états futurs, guidant ainsi ses actions et ses décisions \cite{HIPOLITO2023103510}. Avec le raisonnement Bayésien certaines informations peuvent également être déduites à partir d'informations incomplètes \cite{ZHANG2023110564}.
20 22  
  23 +\section{Apprentissage par empilement et raisonnement à partir de cas}
21 24  
22   -\section{PREMIÈRE PARTIE}
  25 +Cette section présente la première version de l'algorithme que nous avons conçu pour résoudre des problèmes de régression. Celui-ci est fondé sur le raisonnement à partir de cas et l'empilement.
23 26  
24 27 \subsection{Modèle Proposé}
25 28  
26   -L'algorithme proposé ESCBR (Ensemble Stacking Case-Based Reasoning) est fondé sur le paradigme générique CBR avec plusieurs algorithmes de recherche de voisins et de génération de solutions. Ces algorithmes ont été intégrés selon une variation du modèle de stacking en deux étapes itératives. Cette intégration donne à l'algorithme la capacité de s'adapter à différents types de problèmes, d'éviter les biais et le surentraînement. Les résultats de l'exécution des niveaux de stacking stockent dans la mémoire des conteneurs CBR des informations qui non seulement aident à l'apprentissage de l'algorithme au fil des itérations, mais aussi facilitent la génération de solutions à divers problèmes sur différentes bases de données sans avoir besoin d'une phase d'entraînement \textcolor{red}{vérifier la phrase précédent que j'ai modifiée}. La conception itérative en deux cycles améliore la capacité du CBR à travailler et à s'adapter à des problèmes dynamiques en cours d'exécution, comme le montre la figure \ref{figNCBR}.
  29 +L'algorithme proposé, ESCBR (\textit{Ensemble Stacking Case-Based Reasoning}), est fondé sur le paradigme générique du RàPC combiné à plusieurs algorithmes de recherche de voisins et de génération de solutions. Ces algorithmes ont été intégrés selon une variation du modèle d'empilement en deux étapes itératives. Cette intégration donne à l'algorithme la capacité de s'adapter à différents types de problèmes, d'éviter les biais et le surentraînement. Les résultats de l'exécution des niveaux d'empilement stockent dans la mémoire des conteneurs de connaissances du système de RàPC des informations qui aident non seulement à l'apprentissage de l'algorithme au fil des itérations, mais facilitent également la génération de solutions à divers problèmes sur différents ensembles de données sans nécessité d'entraînement préalable. La conception itérative en deux cycles améliore la capacité du système de RàPC à travailler et à s'adapter à des problèmes dynamiques en cours d'exécution, comme le montre la figure \ref{figNCBR1}.
27 30  
28 31 \begin{figure}[!ht]
29 32 \centering
30 33 \includegraphics[width=\textwidth]{./Figures/NCBR0.png}
31 34 \caption{Les deux cycles proposés pour le RàPC}
32   -\label{figNCBR}
  35 +\label{figNCBR1}
33 36 \end{figure}
  37 +%\colorbox{yellow}{Attention, cette figure apparaît deux fois dans ce chapitre.}\\
  38 +%\colorbox{yellow}{J'ai l'impression que ce n'est pas la seule.}
34 39  
35   -L'étape de récupération utilise les algorithmes de recherche et la base de données de cas (conteneurs C1 et C3) pour trouver les voisins les plus proches d'un nouveau problème donné. L'étape de réutilisation utilise les algorithmes de génération de solutions (conteneur C2). L'étape de révision évalue les solutions générées et permet de générer de nouvelles solutions itérativement en fonction des paramètres stockés dans le conteneur C4 et en invoquant l'étape de reconfiguration, avec une solution sélectionnée. Puis l'étape de renouvellement met à jour les paramètres et les données du conteneur. Enfin, dans l'étape de conservation, la base de cas est mise à jour avec le nouveau cas et la solution générée. Le flux complet de l'algorithme proposé est présenté dans la figure \ref{figFlowCBR}. Les variables et paramètres complets de l'algorithme proposé sont indiqués dans le tableau~\ref{tabVarPar}.
  40 +L'étape de récupération utilise les algorithmes de recherche et la base de données de cas (conteneurs $C1$ et $C3$ de la figure \ref{figNCBR1}) pour trouver les voisins les plus proches d'un problème cible. Puis l'étape de réutilisation utilise les algorithmes de génération de solutions (conteneur $C2$). L'étape de révision évalue ensuite les solutions générées et permet d'en générer de nouvelles itérativement en fonction des paramètres stockés dans le conteneur $C4$. Vient ensuite l'étape de révision prenant en considération la solution sélectionnée. Faisant suite à cette révision, l'étape de renouvellement met à jour les paramètres et les données du conteneur. Enfin, dans l'étape de capitalisation, la base de cas est mise à jour avec l'intégration du nouveau cas. Les flux d'information de l'algorithme proposé sont présentés sur la figure~\ref{figFlowCBR}, tandis que le tableau~\ref{tabVarPar} présente l'ensemble des variables et paramètres de l'algorithme proposé.
36 41  
37 42 \begin{figure}[!ht]
38 43 \centering
... ... @@ -71,7 +76,7 @@
71 76 \end{table}
72 77  
73 78 \subsubsection{Rechercher}
74   -La première étape de l'algorithme consiste à trouver les cas les plus similaires à un nouveau cas éventuel\textcolor{red}{supprimer éventuel?}, pour cela un premier modèle de stacking avec différents processus est utilisé comme le montre la figure \ref{figSta1}. Au niveau-0 chaque processus sélectionne et exécute un algorithme de recherche de voisins différent choisi parmi $r_a$ modèles dans le conteneur C3, avec un nombre de voisins $nl_i$ choisi aléatoirement dans l'intervalle $[0,nl]$. Puis au niveau-1 les résultats sont unifiés en construisant un ensemble global de cas similaires. Cinq algorithmes pour le niveau 0 ont été mis en œuvre pour l'étape de récupération : KNN (K Nearest Neighbors), KMeans, GMM (Gaussian Mixture Model), FuzzyC et KNN Ponderation.
  79 +La première étape de l'algorithme consiste à trouver les cas les plus similaires à un nouveau cas (appelé \textit{cas cible}). Pour ce faire, le modèle d'empilement de différents processus présenté sur la figure \ref{figSta1} est utilisé. Au niveau-0, chaque processus sélectionne et exécute un algorithme de recherche de voisins différents choisi parmi $r_a$ modèles dans le conteneur $C3$, avec un nombre de voisins $nl_i$ choisi aléatoirement dans l'intervalle $[0,nl]$. Puis au niveau-1, les résultats sont unifiés en construisant un ensemble global de cas similaires. Cinq algorithmes pour le niveau-0 ont été mis en œuvre pour l'étape de récupération : KNN (\textit{K Nearest Neighbors} - K plus proches voisins), KMeans, GMM (\textit{Gaussian Mixture Model}), FuzzyC et KNN Ponderation.
75 80  
76 81 \begin{figure}
77 82 \centering
78 83  
79 84  
80 85  
81 86  
82 87  
83 88  
84 89  
... ... @@ -80,39 +85,52 @@
80 85 \label{figSta1}
81 86 \end{figure}
82 87  
83   -Formellement, le premier modèle de stacking proposé fonctionne avec deux paramètres : \textcolor{red}{quels sont les 2 paramètres?}une base de données de $z$ cas, un cas est composé de la description du problème et de la description de la solution ${(p^n,s^m)}^{z}$ et un nouveau cas sans solution $p_w^n$. Le but de tous les algorithmes de niveau 0 est de générer une liste locale de cas similaires au nouveau cas en utilisant les informations de la description du problème. C'est-à-dire, pour chaque $j$ modèle effectué, l'ensemble $X_j=\{x_1,x_2,. ..,x_z \; | \; x_i=MP_i((p^n)^z, p_w^n,nl_i) \}$ est généré. Au niveau 1, un ensemble global est créé à l'aide de tous les ensembles locaux $j$ $X_g=\cup_{n=1}^{ng} min \ ; ((\cup_{j=1}^{np} X_j)-X_g)$, puis le résultat du premier modèle d'empilement est l'ensemble $X_g$ avec les $ng$ voisins les plus proches.
  88 +Formellement, le premier modèle d'empilement proposé fonctionne avec deux paramètres : %\textcolor{red}{quels sont les 2 paramètres?}
  89 +une base de données de $z$ cas où un cas est composé de la description du problème et de la description de la solution ${(p^n,s^m)}^{z}$ et un nouveau cas sans solution $p_w^n$. Le but de tous les algorithmes de niveau-0 est de générer une liste locale de cas similaires au cas cible. Ainsi, pour chaque algorithme $j$ exécuté, l'ensemble $X_j=\{x_1,x_2,. ..,x_z \; | \; x_i=MP_i((p^n)^z, p_w^n,nl_i) \}$ est généré. Au niveau-1, un ensemble global est créé à l'aide de tous les ensembles locaux $j$ $X_g=\cup_{n=1}^{ng} min \ ; ((\cup_{j=1}^{np} X_j)-X_g)$. Le résultat du premier modèle d'empilement est l'ensemble $X_g$ avec les $ng$ voisins les plus proches.
84 90  
85 91 \subsubsection{Réutiliser}
86 92  
87   -Une fois la liste globale des cas similaires établie, les informations correspondant aux solutions de chacun de ces cas sont extraites et utilisées pour générer une nouvelle solution qui s'adapte au nouveau cas, comme le montre la figure \ref{figAuto}. La génération est effectuée avec un deuxième modèle de stacking avec différents processus comme le montre la figure \ref{figSta2}. Au niveau 0 chaque processus sélectionne et exécute un algorithme de génération différent à partir des modèles $r_b$ dans le conteneur C2. Au niveau 1 toutes les différentes solutions générées sont stockées dans une mémoire globale. Étant donné que la représentation des solutions est comme un tableau unidimensionnel de multiples cases, alors neuf algorithmes ont été mis en œuvre pour l'étape de réutilisation au niveau 0 : moyenne avec probabilité, moyenne sans probabilité, valeurs médianes, sélection aléatoire avec probabilité, copie et changement, vote, interpolation, ACP (analyse en composantes principales) et marche aléatoire. Tous les algorithmes proposés pour générer une nouvelle solution combinent et modifient l'ensemble de solutions construit dans l'étape de récupération.
  93 +Une fois la liste globale des cas similaires établie, les informations correspondant aux solutions de chacun de ces cas sont extraites et utilisées pour générer une nouvelle solution qui s'adapte au cas cible, en suivant le processus et les flux d'informations représentés sur la figure \ref{figAuto}. La génération est effectuée avec un deuxième modèle d'empilement de différents processus. Ce modèle d'empilement est représenté sur la figure \ref{figSta2}. Au niveau-0, chaque processus sélectionne et exécute un algorithme de génération différent à partir des modèles $r_b$ dans le conteneur $C2$. Au niveau-1, toutes les solutions générées sont stockées dans une mémoire globale. Toutes les solutions connues et générées sont représentées avec la même structure comme le montre la figure \ref{figSolRep}.
88 94  
89 95 \begin{figure}[!ht]
  96 + \centering
  97 + \includegraphics[scale=1]{./Figures/SolRep.png}
  98 + \caption{Représentation des solutions connues et générées}
  99 + \label{figSolRep}
  100 +\end{figure}
  101 +
  102 +Neuf algorithmes ont été mis en œuvre pour l'étape de réutilisation au niveau-0 : moyenne avec probabilité, moyenne sans probabilité, valeurs médianes, sélection aléatoire avec probabilité, copie et changement, vote, interpolation, ACP (analyse en composantes principales) et marche aléatoire. Tous les algorithmes proposés pour générer une nouvelle solution combinent et modifient l'ensemble de solutions construit dans l'étape de récupération.
  103 +
  104 +\begin{figure}[!ht]
90 105 \centering
91 106 \includegraphics[width=\textwidth]{./Figures/AutomaticS.png}
92 107 \caption{Génération et vérification automatique des solutions}
93 108 \label{figAuto}
94 109 \end{figure}
95 110  
96   -La moyenne pondérée avec probabilité permet de construire une solution selon le calcul de la moyenne avec le poids de chaque solution en fonction de sa proximité au nouveau problème. L'équation \ref{gen00} définit le calcul de la probabilité en fonction de la distance entre les problèmes et l'équation \ref{gen01} construit la solution en calculant chaque case $j$.
  111 +La moyenne pondérée avec probabilité permet de construire une solution en utilisant comme valeurs de pondération pour chaque solution connue les distances normalisées entre le cas cible et les $nl$ cas plus proches comme indique l'équation \ref{gen00}, ainsi la solution globale est construite à partir des solutions proposées par les $nl$ algorithmes selon l'équation \ref{gen01}. Cet algorithme permet de donner plus de poids aux solutions associées aux cas les plus proches du cas cible pour construire une réponse plus appropriée d'accord avec l'information historique de la base de données.
97 112  
98 113 \begin{equation}
99   - \alpha_j=\frac{d(p_j^n,p_w^n)}{\sum_{i=0}^{nl} d(p_i^n,p_w^n)}
  114 + \alpha_j=1-\left(\frac{d(p_j^n,p_w^n)}{\sum_{i=0}^{nl} d(p_i^n,p_w^n)}\right)
100 115 \label{gen00}
101 116 \end{equation}
102 117  
103 118 \begin{equation}
104   - s^m_{j,w}= \frac{1}{nl} \sum_{i=0}^{nl} \alpha_j s_{i,j}
  119 + s^m_{j,w}=\frac{1}{nl} \sum_{i=0}^{nl} \alpha_j s_{i,j}
105 120 \label{gen01}
106 121 \end{equation}
107 122  
108   -La moyenne sans probabilité copie aléatoirement les informations des solutions selon la distribution uniforme en donnant la même probabilité à tous les éléments de toutes les solutions proches. Formellement la génération de la solution est écrite comme l'équation \ref{gen2}, où chaque position $j$ est calculée de la même façon.
  123 +La moyenne sans probabilité génère la nouvelle solution en donnant la valeur de chaque dimension
  124 +%\colorbox{yellow}{copie ?}
  125 +selon la moyenne calculée avec la distribution de probabilité uniforme, en attribuant la même probabilité à toutes les dimensions de toutes les solutions associées aux cas les plus proches du cas cible. Formellement la génération de la solution est calculée selon l'équation \ref{gen2}, où chaque dimension $j$ de la nouvelle solution est calculée de façon similaire.
109 126  
110 127 \begin{equation}
111 128 s^m_{w,j}= \frac{1}{nl} \sum_{i=0}^{nl} s_{i,j}
112 129 \label{gen2}
113 130 \end{equation}
114 131  
115   -La génération de la solution par valeurs médianes construit la solution en utilisant la valeur médiane de toutes les solutions pour chaque dimension ou $X_j$ représente l'ensemble des valeurs ordonnées de toutes les solutions $S$ dans la position $j$
  132 +La génération par valeurs médianes (équation \ref{eqgen3}) construit la solution en utilisant la valeur médiane de toutes les solutions pour chaque j-ème dimension. $X_j$ représente l'ensemble des valeurs ordonnées de toutes les solutions $S$ dans la dimension $j$.
  133 +%\colorbox{yellow}{position ?}.
116 134  
117 135 \begin{equation}
118 136 s_{j,w}^m=
119 137  
120 138  
121 139  
122 140  
123 141  
124 142  
125 143  
126 144  
127 145  
128 146  
129 147  
130 148  
... ... @@ -120,39 +138,51 @@
120 138 x_{j,\frac{m+1}{2}}, \; si \; m \in \{{2k+1 : k \in \mathbb{Z}}\}\\
121 139 \frac{x_{j,\frac{m}{2}}+x_{j,\frac{m}{2}+1}}{2}, \; sinon\\
122 140 \end{cases}
  141 + \label{eqgen3}
123 142 \end{equation}
124 143  
125   -La sélection aléatoire avec probabilité génère une solution en copiant aléatoirement l'information des solutions dans chaque position ayant une plus grande probabilité vers le cas de problème associé le plus proche.
  144 +La sélection aléatoire avec probabilité (équation \ref{eqgen4}) génère une solution en copiant aléatoirement l'information des solutions dans chaque j-ème dimension. la solution pour copier l'information dans une dimension $j$ est choisie aléatoirement selon l'inverse normalisé de la distance du cas associé au cas cible.
  145 +%\colorbox{yellow}{Il est difficile à comprendre à quel moment intervient l'aléatoire dans ce processus}\\
  146 +%\colorbox{yellow}{À ce stade, les équations ne sont plus citées.}
126 147  
127 148 \begin{equation}
128   -s_{j,w}^m=s_{j,k}^m; k \sim \left(\frac{d(p_k,p_w)}{\sum_{i=1}^nl(p_k,p_i)} \right)
  149 +s_{j,w}^m=s_{j,k}^m; k \sim \left(1-\left(\frac{d(p_k,p_w)}{\sum_{i=1}^nl(p_k,p_i)} \right)\right)
  150 +\label{eqgen4}
129 151 \end{equation}
130 152  
131   -Copie/changement, copie les informations d'une solution aléatoire et change une partie avec les informations d'une autre solution sélectionnée aléatoirement.
  153 +"Copie/changement" copie les informations d'une solution aléatoire et en remplace une partie par celles d'une autre solution sélectionnée aléatoirement comme le montre formellement l'équation \ref{eqgen5}.
132 154  
133 155 \begin{equation}
134 156 s_{j,w}^m=s_{j,k}^m; k \sim \left(\frac{1}{nl} \right)
  157 +\label{eqgen5}
135 158 \end{equation}
136 159  
137   -Le vote permet de copier l'information qui se présente avec plus de fréquence entre toutes les solutions.
  160 +Le vote permet de copier l'information la plus fréquente de toutes \ref{eqgen6}.
138 161  
139 162 \begin{equation}
140 163 s_{j,w}^m=s_{j,k}^m; k=argmax_i \; \mathbb{P}(X=s_{j,i}^m), 1\le i \le nl
  164 +\label{eqgen6}
141 165 \end{equation}
142 166  
143   -L'interpolation utilise des informations aléatoires à partir d'une fonction d'interpolation lineaire 1D calculée.
  167 +L'interpolation construit une distribution de probabilité continue pour chaque j-ème dimension, en utilisant une fonction d'interpolation linéaire 1D calculée selon l'information des solution connues dans la j-ème dimension correspondant comme est décrit dans de l'équation \ref{eqgen7}.
  168 +%\\ \colorbox{yellow}{Pourquoi aléatoire ? Une interpolation ne rend pas un résultat aléatoire}
144 169  
145 170 \begin{equation}
146 171 s_{w,j}^m \sim \left( \left( \frac{y_i-y_{i+1}}{x_i-x_{i+1}} \right) (x-x_i)+y_i \right), \forall i \; 0 \le i < nl
  172 + \label{eqgen7}
147 173 \end{equation}
148 174  
149   -Avec ACP (PCA - Principal Component Analysis), si la dimension de l'espace des solutions $m$ est plus petit que la dimension de l'espace des problèmes $n$ ($m<n$), alors la description du problème est transformée dans l'espace de description des solutions pour établir une relation entre le problème et sa solution. Avec le problème et la solution dans le même espace, la moyenne de la distance entre tous les paires problème-solution est calculée en utilisant la description du nouveau problème et la valeur moyenne de distance une solution est générée. \textcolor{red}{à vérifier}
  175 +Dans l'analyse en composantes principales (PCA), si la dimension de l'espace des solutions $m$ est plus petit que la dimension de l'espace des problèmes $n$, c'est-à-dire $m<n$, alors la description du problème est transposée dans l'espace de description des solutions pour établir une relation entre le problème et sa solution. Le problème et la solution étant ainsi dans le même espace, la moyenne de la distance entre tous les paires problème-solution est calculée. En utilisant la description transposée du nouveau problème et la valeur moyenne de distance précédemment calculée, une solution est générée. %\textcolor{red}{à vérifier} \colorbox{yellow}{Idem, je n'ai pas compris la fin de la dernière phrase.}
150 176  
  177 +Pour le calcul de l'analyse en composantes principales est nécessaire calculer la moyenne centrée comme dans l'équation \ref{eqmoyenne1}, après, est calculée la matrice de covariance (équation \ref{covmat}).
  178 +
  179 +\colorbox{yellow}{À quoi correspond le processus ci-dessous ?}
  180 +
151 181 \begin{equation}
152 182 X_c=X-\frac{1}{N} \sum_{i=1}^N X_i
  183 +\label{eqmoyenne1}
153 184 \end{equation}
154 185  
155   -Matrice de covariance :
156 186 \begin{equation}
157 187 C_x=\frac{1}{n-1}XX^T=\frac{1}{n-1} \left(
158 188 \begin{matrix}
... ... @@ -162,6 +192,7 @@
162 192 x_mx_1^T&x_mx_2^T&...&x_mx_m^T\\
163 193 \end{matrix}
164 194 \right) \in \mathbb{R}^{mxm}
  195 +\label{covmat}
165 196 \end{equation}
166 197  
167 198 \begin{equation}
168 199  
169 200  
170 201  
171 202  
... ... @@ -169,25 +200,17 @@
169 200 \end{equation}
170 201  
171 202 Choisir les $k$ premier composantes principales
172   -\begin{equation}
173   -W_k=\{v_1, v_2,...v_k\}
174   -\end{equation}
  203 +$W_k=\{v_1, v_2,...v_k\}$, faire la projection des $k$ composantes $Z=XW_k$, pour finalement calculer les distances entre les problèmes transposés et les solutions associées $d_j^m=distance(Z_j,s_j)$ et les utiliser pour calculer la nouvelle solution comme spécifié dans l'équation \ref{eqPCA}.
175 204  
176   -Faire la projection des $k$ composantes
177 205 \begin{equation}
178   -Z=XW_k
179   -\end{equation}
180   -
181   -Calculer les distances entre les problèmes projetés et les solutions associées
182   -\begin{equation}
183   -d_j^m=distance(Z_j,s_j)
184   -\end{equation}
185   -
186   -\begin{equation}
187 206 s_{w,j}^m=Z_{w,j}^m+\frac{1}{m}\sum_{i=1}^m d_{i,j}
  207 + \label{eqPCA}
188 208 \end{equation}
189 209  
190   -Marche aléatoire choisit une solution et change les valeurs dans une dimension aléatoirement avec un petit pas. Le petit pas est une valeur aléatoire générée avec une distribution de probabilité normal.
  210 +La marche aléatoire consiste à choisir une solution et changer ses valeurs dans une dimension aléatoire avec un pas aléatoire. Le pas est une valeur aléatoire générée avec une distribution de probabilité normal de moyenne 0 et variance 1.
  211 +\\
  212 +\colorbox{yellow}{Je ne comprends pas ce qui est aléatoire. Le choix de la dimension ? Le pas ?}\\
  213 +\colorbox{yellow}{Éviter les petits et grands, si nécessaire, donner plutôt un ordre de grandeur ou un intervalle.}
191 214  
192 215 \begin{equation}
193 216 k \sim \left(\frac{1}{nl}\right)
194 217  
195 218  
... ... @@ -207,13 +230,15 @@
207 230 \label{figSta2}
208 231 \end{figure}
209 232  
210   -Le deuxième modèle de stacking fonctionne avec la description des solutions $s$ comme paramètre, avec l'ensemble $(s^m)^{ng}$, chaque modèle de réutilisation exécuté peut générer une solution candidate $s_{i,c}=MS_i((s^m)^{ng})$ \textcolor{red}{je en comprends pas cette phrase}. Le niveau 1 est la construction de l'ensemble d'unification de toutes les solutions candidates $Y_g= \cup_{i=1}^{np} s_{i,c}$. Cet ensemble est évalué à l'aide d'une fonction permettant de déterminer la qualité de la solution.
  233 +La description des solutions $s$ et l'ensemble $(s^m)^{ng}$ sont les paramètres du deuxième modèle d'empilement. Chaque modèle décrit ci-dessus génère une solution candidate $s_{i,c}=MS_i((s^m)^{ng})$. Vient ensuite la construction de l'ensemble d'unification de toutes les solutions candidates $Y_g= \cup_{i=1}^{np} s_{i,c}$ (niveau-1). Cet ensemble est évalué à l'aide d'une fonction permettant de déterminer la qualité de la solution.
  234 +\colorbox{yellow}{J'ai ré-écrit le paragraphe ci-dessus selon ma compréhension. Est-ce exact ?}
211 235  
212 236 \subsubsection{Révision}
213 237  
214   -Dans cette phase, le problème de l'évaluation automatique d'une solution candidate est transformé en un problème d'optimisation, où la fonction objective est \ref{eqOpt}. Ce problème est similaire au problème trouver la moyenne géométrique ou problème de "Fermat-Weber". Dans le cas d'un espace multidimensionnel, le problème est connu comme moyenne spatiale \cite{doi:10.1137/23M1592420}. La figure \ref{fig:FW} montre un exemple de la formulation du problème en deux dimensions, où le point rouge représente une posible solution qui minimise la somme des distances avec tous les points définis dans l'espace.
  238 +Dans cette phase, le problème de l'évaluation automatique d'une solution candidate est transformé en un problème d'optimisation, où la fonction objectif est \ref{eqOpt}. Ce problème revient à calculer la moyenne géométrique ou encore à résoudre le problème de "Fermat-Weber". Dans le cas d'un espace multidimensionnel, résoudre ce problème revient à calculer la moyenne spatiale \cite{doi:10.1137/23M1592420}. La figure \ref{fig:FW} montre un exemple de la formulation du problème en deux dimensions. Sur cette figure, le point rouge représente une solution possible minimisant la somme des distances entre ce point et tous les autres points définis dans l'espace.
215 239  
216   -La fonction objectif \ref{eqOpt} établit un rapport entre la distance de la solution générée $s^m_w$ et les $x$ solutions connues $s^m_x$ avec un facteur aléatoire de \textit{drift} ainsi que la distance du problème nouveau $p^n_w$ et les $x$ problèmes connus $p^n_w$. Ici, la complexité de trouver le point optimal se trouve dans le fait que tous les points dans l'espace ne sont pas valides comme solution du nouveau problème. C'est la raison pour laquelle le point doit être généré en utilisant l'information des solutions connues. L'objectif est d'utiliser l'information disponible qui décrit un problème et sa solution pour valider et générer l'ensemble de solutions proposées.
  240 +La fonction objectif \ref{eqOpt} établit un rapport entre la distance de la solution générée $s^m_w$ et les $x$ solutions connues $s^m_x$ avec un facteur aléatoire de \textit{drift} d'une part, et la distance entre le problème cible $p^n_w$ et les $x$ problèmes connus $p^n_x$ d'autre part. Ici, la difficulté à trouver le point optimal réside dans le fait que les points de l'espace ne peuvent pas tous convenir en tant que solution cible. La solution cible finale dépend donc des informations des solutions connues. L'objectif est d'utiliser les informations disponibles de chaque cas (problème et solution) pour valider et générer l'ensemble de solutions proposées.\\
  241 +%\colorbox{yellow}{J'ai beaucoup modifié le paragraphe ci-dessus. Il faudrait vérifier.}
217 242  
218 243 \begin{equation}
219 244 \lambda_x(p_w, s_w) = \left( \frac{d(s_w^m,(s_x^m+rn(0,d(p_w^n, p_i^n))))}{d(p_w^n,p_x^n)^2} \right)
220 245  
221 246  
... ... @@ -232,15 +257,16 @@
232 257 \label{fig:FW}
233 258 \end{figure}
234 259  
235   -Le cycle d'optimisation peut \textcolor{red}{permet? ou éxecute} exécuter les phases de récupération et de réutilisation en fonction de l'action aléatoire sélectionnée parmi $[0,at]$ à chaque itération $it$, en sauvegardant dans une mémoire globale à chaque itération la solution qui obtient la valeur minimale dans l'évaluation de la fonction objective.
  260 +Le cycle d'optimisation permet d'exécuter les phases de récupération et de réutilisation en fonction de l'action sélectionnée aléatoirement parmi $[0,at]$ à chaque itération $it$. À chaque itération, la valeur minimale évaluée par la fonction objectif est sauvegardée.
236 261  
237 262 \subsubsection{Mémorisation}
238 263  
239   -L'étape de rétention consiste simplement à prendre la meilleure solution proposée et à déterminer s'il s'agit d'une solution nouvelle ou existante et, si elle est nouvelle, à l'enregistrer dans la base de données.
  264 +L'étape de mémorisation consiste simplement à prendre la meilleure solution proposée et à déterminer s'il s'agit d'une solution nouvelle ou existante. S'il s'agit d'une nouvelle solution, elle est enregistrée dans la base de connaissances.
240 265  
241 266 \subsection{Résultats}
242 267  
243   -Afin de comparer les performances de prédiction et le comportement de l'algorithme proposé, dix bases de données de régression présentant des caractéristiques différentes ont été sélectionnées. Les bases de données et leurs caractéristiques sont indiquées dans le tableau \ref{tabBases}. Les valeurs des paramètres de l'algorithme sont les suivantes : $it=100$, $np=50$, $nl=10$ et $ng=10$.
  268 +Les performances de prédiction de l'algorithme proposé ont été comparées à celles de neuf autres algorithmes sur dix jeux de données classiquement utilisés pour évaluer des méthodes de régression. Ces jeux de données présentent des caractéristiques différentes. Les jeux de données et leurs caractéristiques sont consignées dans le tableau \ref{tabBases}. Les valeurs des paramètres de l'algorithme sont les suivantes : $it=100$, $np=50$, $nl=10$ et $ng=10$.
  269 +%\colorbox{yellow}{À quoi correspondent ces valeurs ? Unités ?}
244 270  
245 271 \begin{table}[!ht]
246 272 \tiny
... ... @@ -263,7 +289,7 @@
263 289 \label{tabBases}
264 290 \end{table}
265 291  
266   -L'algorithme proposé est comparé à neuf algorithmes de régression bien connus et largement utilisés dans divers travaux de recherche et problèmes appliqués. La liste des algorithmes est présentée dans le tableau \ref{tabAlgs}. Tous les algorithmes ont été exécutés 100 fois, et les algorithmes qui nécessitent un entraînement et des validations croisées sont exécutés avec $k=10$.
  292 +L'algorithme proposé est comparé à neuf algorithmes de régression largement utilisés dans divers travaux de recherche et problèmes appliqués. La liste des algorithmes est présentée dans le tableau \ref{tabAlgs}. Tous les algorithmes ont été exécutés 100 fois, et les algorithmes qui nécessitent un entraînement et des validations croisées sont exécutés avec 10 blocs, c'est-à-dire $k=10$. %\colorbox{yellow}{À quoi correspond ce k ? Unité ?}
267 293  
268 294 \begin{table}[!ht]
269 295 \centering
... ... @@ -281,7 +307,7 @@
281 307 \label{tabAlgs}
282 308 \end{table}
283 309  
284   -Le tableau \ref{tabRes1} présente le classement moyen de toutes les bases de données en fonction de l'erreur quadratique moyenne (RMSE). Les résultats détaillés des mêmes algorithmes et des mêmes bases de données, mais comparés avec la métrique MAE (Median Absolute Error), sont présentés dans le tableau \ref{tabRes2}.
  310 +Le tableau \ref{tabRes1} présente l'erreur quadratique moyenne (RMSE) obtenue par chaque algorithme pour chaque jeu de données. Le tableau \ref{tabRes2} présente l'erreur absolue médiane (MAE) obtenue par chaque algorithme pour chaque jeu de données.
285 311  
286 312 \begin{table}[!ht]
287 313 \footnotesize
... ... @@ -302,7 +328,7 @@
302 328 \hline
303 329 Avg. Rank&5.7&6.3&7.2&2.1&6.6&5.6&5.5&8.6&1.8&5.6\\
304 330 \end{tabular}
305   -\caption{Résultats de la métrique RMSE (Root Mean Squared Error) pour les bases de données évaluées avec des algorithmes de régression}
  331 +\caption{RMSE calculées sur les dix jeux de données sélectionnés obtenues après exécution des dix algorithmes de régression considérés}
306 332 \label{tabRes1}
307 333 \end{table}
308 334  
309 335  
... ... @@ -325,11 +351,13 @@
325 351 \hline
326 352 Avg. Rank&6.45&6.4&4.35&2.3&7.35&6.55&6.6&7.9&2.4&4.7\\
327 353 \end{tabular}
328   -\caption{Résultat de la métrique MAE (Median Absolute Error) pour les bases de données évaluées avec des algorithmes de régression}
  354 +\caption{MAE calculées sur les dix jeux de données sélectionnés obtenues après exécution des dix algorithmes de régression considérés}
329 355 \label{tabRes2}
330 356 \end{table}
331 357  
332   -La dispersion globale, la médiane et les valeurs aberrantes pour quatre bases de données représentatives sont présentées dans la figure \ref{figBox}. Nous pouvons voir que l'algorithme proposé génère plus de valeurs aberrantes que les autres algorithmes\textcolor{red}{pourquoi?}, mais la variance est faible et la convergence est proche de la valeur réelle, meilleure que la plupart des algorithmes comparés.
  358 +La dispersion globale, la médiane et les valeurs aberrantes pour quatre jeux de données représentatifs sont présentées sur la figure \ref{figBox}. Nous pouvons voir que l'algorithme proposé génère plus de valeurs aberrantes que les autres algorithmes, parce que les algorithmes exécutés peuvent avoir tendance à privilégier l'exploration de l'espace des solutions en cherchant à générer des solutions novatrices
  359 +%\textcolor{red}{pourquoi?}
  360 +, mais la variance est faible et la convergence est proche de la valeur réelle, meilleure que la plupart des algorithmes comparés.
333 361  
334 362 \begin{figure}
335 363 \includegraphics[width=\textwidth]{./Figures/boxplot.png}
336 364  
337 365  
338 366  
339 367  
340 368  
341 369  
342 370  
343 371  
... ... @@ -339,25 +367,31 @@
339 367  
340 368 \subsection{Discussion}
341 369  
342   -L'algorithme proposé révèle une performance compétitive par rapport à certains des algorithmes les plus populaires, les plus utilisés et les plus récents pour la prédiction dans les problèmes de régression. En particulier, dans ce travail, nous avons effectué les tests sur dix bases de données avec différentes caractéristiques, telles que : le nombre d'instances, le nombre de caractéristiques, le domaine des variables d'entrée, les dimensions de la variable de sortie et le domaine d'application. Cela démontre la polyvalence de l'algorithme proposé et son applicabilité à différentes configurations. Étant donné la nature exploratoire et stochastique de l'algorithme proposé, il présente une grande diversité de solutions générant plusieurs valeurs aberrantes. Malgré cela, dans la plupart des cas, il est possible d'atteindre une solution approximative qui converge vers la solution réelle, c'est la raison pour laquelle, dans certains cas, les valeurs de la moyenne sont élevées, mais celles de la médiane restent faibles\textcolor{red}{ce qui veut dire?}.
  370 +De par ses performances, ESCBR se révèle compétitif par rapport à certains des neuf autres algorithmes testés pour la prédiction dans les problèmes de régression. En particulier, dans ce travail, nous avons effectué les tests sur dix jeux de données aux caractéristiques variées, telles que le nombre d'instances, le nombre de caractéristiques, le domaine des variables d'entrée, les dimensions de la variable de sortie et le domaine d'application. Cela démontre la polyvalence de l'algorithme proposé et son applicabilité à différentes configurations. Étant donné la nature exploratoire et stochastique d'ESCBR, il présente une grande diversité de solutions générant plusieurs valeurs aberrantes. Malgré cela, dans la plupart des cas, il est possible d'atteindre une solution approximative convergeant vers la solution optimale. Pour cette raison, les valeurs de la moyenne sont parfois élevées, mais celles de la médiane restent faibles, la médiane atténuant les disparités.
343 371  
344   -On constate également que l'intégration des algorithmes de recherche produit de meilleurs résultats que les algorithmes simples, comme dans le cas de l'algorithme proposé par rapport au KNN ou par rapport à la régression linéaire, \textcolor{red}{revoir la suite}bien que pour l'algorithme proposé, l'impact du premier et du deuxième empilement sur les résultats finaux obtenus n'ait pas été déterminé avec précision.
  372 +On constate également que l'intégration des algorithmes de recherche produit de meilleurs résultats que les algorithmes simples (tels que le KNN ou la régression linéaire).
345 373  
346   -Globalement, pour le RMSE, les algorithmes de boosting sont plus performants que les algorithmes classiques, même si les performances sont variables. L'algorithme proposé obtient des valeurs acceptables dans toutes les bases de données. D'après la moyenne des positions de classement, pour le RMSE, il est placé à la sixième place. Pour le MAE, l'algorithme obtient la meilleure valeur dans trois des dix bases de données et il est placé globalement à la troisième place.
  374 +Globalement, si l'on observe les RMSE obtenues, les algorithmes d'ensemble (Random forest et Gradient Boosting) %\colorbox{yellow}{rappeler ici entre parenthèses les noms de ces algorithmes de boosting}
  375 +sont globalement plus performants que les algorithmes classiques, même si les performances sont variables. Les performances calculées selon la RMSE classent notre algorithme ESCBR à la sixième place. En revanche, en considérant les performances mesurées selon la MAE, ESCBR est classé en première place pour trois des dix jeux de données et il se classe globalement à la troisième place.
347 376  
348   -Un aspect important de l'algorithme proposé est la fonction objective, qui peut être évaluée et modifiée dynamiquement en fonction des caractéristiques du problème évalué, étant donné que dans la présente étude les tests ont été effectués avec la fonction intuitive qui fournit une plus grande probabilité de sélection et d'évolution à la solution associée aux voisins les plus proches, mais il est possible de compléter l'évaluation avec d'autres termes pertinents et d'améliorer ainsi les résultats.\textcolor{red}{je ne comprends pas}
  377 +Un aspect important de l'algorithme proposé est la fonction objectif, qui peut être modifiée dynamiquement en fonction des caractéristiques du problème évalué. Les tests ont été effectués avec la fonction intuitive qui fournit une plus grande probabilité de sélection et d'évolution à la solution associée aux voisins les plus proches, mais il est possible de compléter l'évaluation avec d'autres termes pertinents et d'améliorer ainsi les résultats.\textcolor{red}{je ne comprends pas} \colorbox{yellow}{Idem}
349 378  
350   -Outre les résultats, l'algorithme proposé présente plusieurs avantages par rapport aux algorithmes avec lesquels il a été comparé, parmi lesquels : il ne nécessite pas d'entraînement, il peut intégrer des algorithmes et des règles dans chaque pile \textcolor{red}{sûr?}et, grâce à la conception en deux cycles, il peut travailler avec des problèmes dynamiques en cours d'exécution et enfin la variance est faible dans les résultats produits\textcolor{red}{variance faible =?}.
  379 +De plus, ESCBR peut intégrer des algorithmes différents et des règles spécifiques à certaines problèmes dans chaque pile
  380 +%\textcolor{red}{sûr?}
  381 +et, grâce à la conception en deux cycles, il peut travailler avec des problèmes dynamiques en cours d'exécution. Par ailleurs, la variance faible obtenue lors des tests sur les dix jeux de données montrent qu'ESCBR fournit des résultats stables, une variance faible peut suggérer que l'algorithme tend à converger vers les solutions
  382 + %\colorbox{yellow}{C'est bien ça ?} \textcolor{red}{variance faible =?}.
351 383  
352 384 \subsection{Conclusion}
353 385  
354   -Ce chapitre propose une technique de régression générique utilisant le raisonnement à partir de cas et le modèle d'empilement. Les principales caractéristiques de ce modèle sont qu'il ne nécessite pas de formation \textcolor{red}{entrainement?} et que, grâce au cycle itératif interne, il peut s'adapter à des problèmes dynamiques en temps réel. Les résultats numériques obtenus lors des tests effectués montrent le potentiel de l'algorithme avec des données variées et des bases de données de différentes tailles ainsi que la compétitivité avec d'autres algorithmes standard et robustes couramment utilisés dans les problèmes de régression.\\
  386 +Ce chapitre propose une technique de régression générique utilisant le raisonnement à partir de cas et le modèle d'empilement que nous avons baptisé ESCBR. Ce modèle ne nécessite pas d'entrainement préalable et grâce au cycle itératif interne, il peut s'adapter à des problèmes dynamiques en temps réel. Les résultats numériques obtenus lors des tests effectués montrent le potentiel de l'algorithme avec des données variées et des jeux de données de différentes tailles. Les tests effectués dans cette première partie de chapitre montrent ainsi la compétitivité d'ESCBR avec d'autres algorithmes standards et robustes couramment utilisés pour résoudre des problèmes de régression.\\
355 387  
356   -\section{SECONDE PARTIE}
  388 +\section{ESCBR-SMA : Introduction des systèmes multi-agents dans ESCBR}
357 389  
  390 +La méthode ESCBR que nous avons proposée dans la section précédente est fondée sur une technique d'apprentissage d'ensemble par empilement. Cette technique mettant en oeuvre plusieurs solutions proposées par des processus intelligents et concurrents pour en générer une, nous nous sommes tout naturellement tourné vers la possibilité d'inclure des agents dans le processus de décision. L'une des ambitions des systèmes multi-agents consiste en effet à faire émerger une intelligence collective capable de fournir une solution. Cette section présente donc l'évolution d'ESCBR en ESCBR-SMA.
  391 +
358 392 \subsection{Modèle Proposé}
359 393  
360   -L'algorithme ESCBR-SMA est fondé sur le paradigme RàPC générique et incorpore divers algorithmes de recherche de voisins et de génération de solutions. Ceux-ci sont intégrés à l'aide d'une variante du modèle d'empilement en deux étapes itératives, exécutées par des agents qui exploitent indépendamment les algorithmes définis dans les conteneurs de révision et de réutilisation. Les agents possèdent une mémoire locale qui leur permet d'ajuster et de développer leur recherche de voisins, en générant des solutions à chaque itération. Chaque agent individuel a un comportement correspondant qui permet l'échange d'informations entre les autres agents. Le processus de décision et les étapes des agents au sein du système élargi sont décrits dans la figure \ref{figNCBR}.
  394 +L'algorithme ESCBR-SMA est fondé sur le paradigme du RàPC et incorpore divers algorithmes de recherche de voisins et de génération de solutions. Ceux-ci sont intégrés à l'aide d'une variante du modèle d'empilement en deux étapes itératives, exécutées par des agents qui exploitent indépendamment les algorithmes définis dans les conteneurs de connaissances de la révision et de la réutilisation du cycle classique du RàPC. Les agents possèdent une mémoire locale qui leur permet d'ajuster et de développer leur recherche de voisins, en générant des solutions à chaque itération. Chaque agent a un comportement individuel autorisant l'échange d'informations avec les autres agents. La figure \ref{figNCBR} décrit le processus de décision et les comportements des agents au sein du système élargi.
361 395  
362 396 \begin{figure}[!ht]
363 397 \centering
364 398  
365 399  
366 400  
... ... @@ -366,13 +400,28 @@
366 400 \label{figNCBR}
367 401 \end{figure}
368 402  
369   -ESCBR-SMA correspond aux deux étapes de l'ESCBR (Ensemble Stacking Case-Based Reasoning) %\cite{}
370   -intégrées à un système multi-agents. Chaque agent effectue un algorithme de recherche des voisins du problème au cours de la première étape et, au cours de la seconde, génère une solution en se référant à la liste des solutions obtenues au cours de la première étape. À chaque itération, les agents peuvent choisir parmi trois comportements programmés : la recherche de problèmes voisins, la génération de solutions ou l'échange d'informations avec un autre agent. L'exécution asynchrone est employée pour ces comportements, tandis que la création et la sélection de la liste des voisins se font de manière synchrone pour unifier l'algorithme global. La création et la sélection des voisins se font de manière synchrone pour unifier l'algorithme global.
  403 +Dans ESCBR-SMA, chaque agent effectue un algorithme de recherche des voisins du problème au cours de la première étape puis, au cours de la seconde, génère une solution en se référant à la liste des solutions obtenues au cours de la première étape. À chaque itération, les agents peuvent choisir parmi trois comportements programmés : la recherche de problèmes voisins, la génération de solutions ou l'échange d'informations avec un autre agent. L'exécution de ces trois comportements programmés est asynchrone. En revanche, la création et la sélection de la liste des voisins se font de manière synchronisée.
371 404  
372   -Les étapes d'extraction, de réutilisation, de révision et de conservation restent conformes au modèle RàPC conventionnel. L'algorithme proposé comprend désormais trois nouvelles étapes. Dans la phase de reconfiguration, les agents mettent à jour les valeurs de leurs paramètres locaux afin d'améliorer la qualité de la solution proposée lors de l'itération suivante. Dans la phase d'échange, les agents échangent des informations pour améliorer leurs processus internes de recherche et de génération. L'étape de rénovation met à jour les valeurs des paramètres globaux de l'algorithme. Le flux complet de l'algorithme proposé est présenté dans la figure \ref{figFlowCBR}, où l'on peut voir que l'algorithme commence par la création de n agents. Lors de l'initialisation, les agents sélectionnent au hasard un algorithme de récupération et un algorithme de réutilisation, et initialisent également les vecteurs bayésiens correspondants. Tous les agents travaillent avec le même ensemble de données. En parallèle, les agents exécutent l'algorithme de récupération sélectionné, à partir des problèmes similaires trouvés, chaque agent extrait les solutions et exécute l'algorithme spécifique de génération d'une nouvelle solution. Toutes les solutions proposées par les agents sont évaluées à l'aide d'une fonction objective de minimisation, c'est-à-dire que la solution qui minimise la fonction objective est la meilleure solution possible. Au cours de l'étape suivante, les agents sélectionnent au hasard un algorithme de récupération et un algorithme de réutilisation, puis mettent à jour les vecteurs bayésiens en fonction des résultats obtenus avec la fonction objective. Lors de l'itération suivante, chaque agent peut choisir l'une des trois actions possibles : changer les algorithmes de récupération et de réutilisation, ne changer que l'algorithme de réutilisation ou échanger des informations avec un autre agent choisi au hasard. Le choix aléatoire d'une action différente permet à l'agent de construire et d'améliorer une solution candidate.
  405 +Les étapes d'extraction, de réutilisation, de révision et de conservation restent conformes au modèle RàPC conventionnel. En revanche, ESCBR-SMA comprend trois nouvelles étapes :
  406 +\begin{itemize}
  407 + \item durant la phase de reconfiguration, les agents mettent à jour les valeurs de leurs paramètres locaux afin d'améliorer la qualité de la solution proposée lors de l'itération suivante,
  408 + \item durant la phase d'échange, les agents échangent des informations pour améliorer leurs processus internes de recherche et de génération,
  409 + \item enfin, l'étape de révision met à jour les valeurs des paramètres globaux de l'algorithme.
  410 +\end{itemize}
373 411  
374   -Les variables et paramètres complets de l'algorithme proposé sont présentés dans le tableau \ref{tabVarPar}. Le système multi-agents est composé d'un nombre variable d'agents, tous homogènes mais dotés de processus cognitifs internes indépendants et stochastiques.
  412 +Le flux complet de l'algorithme proposé est décrit sur la figure \ref{figFlowCBR}.
375 413  
  414 +En premier lieu, ESCBR-SMA crée $n$ agents. Lors de l'initialisation, les agents sélectionnent au hasard un algorithme de récupération et un algorithme de réutilisation, et initialisent également les vecteurs bayésiens correspondants. Tous les agents travaillent avec le même ensemble de données.
  415 +
  416 +Les agents exécutent en parallèle l'algorithme de récupération sélectionné, à partir des problèmes similaires trouvés ; chaque agent extrait les solutions et exécute l'algorithme spécifique de génération d'une nouvelle solution.
  417 +Toutes les solutions proposées par les agents sont évaluées à l'aide d'une fonction objectif : la solution qui minimise la fonction objectif est la meilleure solution trouvée à ce stade.
  418 +
  419 +Au cours de l'étape suivante, les agents sélectionnent au hasard un algorithme de récupération et un algorithme de réutilisation, puis ils mettent à jour les vecteurs bayésiens en fonction des résultats obtenus avec la fonction objectif.
  420 +
  421 +Lors de l'itération suivante, chaque agent peut choisir l'une des trois actions possibles : changer les algorithmes de récupération et de réutilisation, ne changer que l'algorithme de réutilisation ou échanger des informations avec un autre agent choisi au hasard. De plus, l'agent choisit aléatoirement une action pour tenter d'améliorer la solution candidate.
  422 +
  423 +L'ensemble des variables et paramètres d'ESCBR-SMA sont consignés dans le tableau \ref{tabVarPar}. Le système multi-agents est composé d'un nombre variable d'agents, tous homogènes mais dotés de processus cognitifs internes indépendants et stochastiques.
  424 +
376 425 \begin{figure}[!ht]
377 426 \centering
378 427 \includegraphics[scale=0.6]{Figures/FlowCBR.png}
379 428  
380 429  
381 430  
382 431  
383 432  
384 433  
... ... @@ -417,18 +466,36 @@
417 466 \end{table}
418 467  
419 468 \subsubsection{Algorithmes}
420   -Lors de la première étape de l'empilage\textcolor{red}{empilement?}, chaque agent peut sélectionner l'un des algorithmes mis en œuvre pour rechercher des problèmes similaires au nouveau problème posé. Les algorithmes sont les suivants : KNN (K-Nearest Neighbor), KMeans, GMM (Gaussian Mixture Model), FuzzyC et KNN pondéré.
421 469  
422   -Lors de la deuxième étape de l'empilage\textcolor{red}{idem}, les agents peuvent choisir un algorithme parmi les suivants : pondération avec probabilité, pondération sans probabilité, valeurs médianes, Copier/Changer, vote, interpolation, PCA (analyse en composantes principales) et pas aléatoire\textcolor{red}{et pas aléatoire?}.
  470 +Cette section présente de manière plus détaillée les comportements des agents d'ESCBR-SMA.
423 471  
424   -La sélection aléatoire pondérée avec l'algorithme de probabilité construit une solution en copiant aléatoirement les informations des solutions ayant une probabilité plus élevée vers le cas de problème associé le plus proche. En revanche, la sélection aléatoire pondérée sans algorithme de probabilité copie aléatoirement les informations des solutions selon la distribution uniforme. Les valeurs médianes utilisent la valeur médiane de toutes les solutions pour chaque dimension. L'algorithme fondé sur la copie/le changement copie les informations d'une solution aléatoire et en modifie une partie avec les informations d'une autre solution sélectionnée de manière aléatoire. L'algorithme fondé sur le vote copie l'information la plus fréquente entre les solutions. L'algorithme fondé sur l'interpolation utilise des informations aléatoires à partir d'une fonction d'interpolation calculée. Le générateur avec PCA transforme la description du problème en un espace de description de solutions afin d'établir une relation entre le problème et sa solution. Enfin, l'algorithme de pas aléatoire sélectionne une solution et modifie les valeurs dans une seule dimension de manière aléatoire avec un petit pas dans l'espace des solutions.
  472 +Lors de la première étape de l'empilement, chaque agent peut sélectionner l'un des algorithmes à mettre en œuvre pour rechercher des problèmes similaires au nouveau problème posé. Les algorithmes possibles sont les suivants : KNN (K-Nearest Neighbor), KMeans, GMM (Gaussian Mixture Model), FuzzyC et KNN pondéré.
425 473  
  474 +Lors de la deuxième étape de l'empilement, les agents peuvent choisir un algorithme parmi les suivants : pondération avec probabilité, pondération sans probabilité, valeurs médianes, Copier/Changer, vote, interpolation, PCA (analyse en composantes principales) et non aléatoire. Les algorithmes ont été explicités dans la section 6.2.1.2.
  475 +
426 476 \subsubsection{Structure des agents}
427 477  
428   -La structure des agents est similaire pour tous, mais chaque agent effectue un processus cognitif individuel qui lui permet d'obtenir un comportement indépendant et différent de tous les autres. La figure \ref{figAgent} montre les actions et les variables nécessaires à l'exécution de l'ensemble du processus.
  478 +Tous les agents ont une structure similaire, mais chaque agent suit un processus cognitif individuel qui lui permet d'obtenir un comportement indépendant et différent de tous les autres. La figure \ref{figAgent} montre les actions et les variables nécessaires à l'exécution de l'ensemble du processus.
429 479  
430   -Il y a trois actions possibles à exécuter (« Récupérer et réutiliser », « Réutiliser » et « Échanger ») et huit variables : \textcolor{red}{faire une liste}le nombre de voisins qui définit le nombre de problèmes similaires au nouveau problème posé que l'agent doit rechercher dans la base de données, la liste des voisins les plus proches établit la liste des agents voisins avec lesquels des informations peuvent être échangées, l'algorithme de récupération est l'identifiant de l'algorithme que l'agent va exécuter pour trouver les problèmes similaires au nouveau problème, l'algorithme de réutilisation est l'identifiant de l'algorithme que l'agent va exécuter pour générer une solution candidate au nouveau problème, solution est la description de la solution générée, évaluation de la solution est la valeur numérique décrivant la qualité de la solution générée selon une fonction d'optimisation (eq \ref{eqOpt1} et eq \ref{eqOpt2}), vecteur bayésien pour les algorithmes de récupération contenant les valeurs de probabilité pour chacun des algorithmes de récupération et vecteur bayésien pour les algorithmes de réutilisation contenant les valeurs de probabilité pour chacun des algorithmes de réutilisation.
  480 +Chaque agent peut exécuter trois actions différentes :
  481 +\begin{itemize}
  482 + \item « Récupérer et réutiliser »,
  483 + \item « Réutiliser » et
  484 + \item « Échanger ».
  485 +\end{itemize}
431 486  
  487 +Chaque agent accède aux valeurs de huit variables qui lui sont propres :
  488 +\begin{itemize}
  489 + \item le nombre de voisins définissant le nombre de problèmes similaires au nouveau problème posé que l'agent doit rechercher dans la base de connaissancesÒ,
  490 + \item la liste des voisins les plus proches établit la liste des agents avec lesquels des informations peuvent être échangées,
  491 + \item l'identifiant de l'algorithme de récupération que l'agent exécutera pour trouver les problèmes similaires au nouveau problème,
  492 + \item l'identifiant de l'algorithme de réutilisation que l'agent exécutera pour générer une solution candidate au cas cible,
  493 + \item la description de la solution générée,
  494 + \item l'évaluation de la solution renseignant sur la qualité de la solution générée et calculée selon une fonction d'optimisation (eq \ref{eqOpt1} et eq \ref{eqOpt2}),
  495 + \item le vecteur bayésien nécessaire aux algorithmes de récupération contenant les valeurs de probabilité, et
  496 + \item le vecteur bayésien nécessaire aux algorithmes de réutilisation contenant les valeurs de probabilité.
  497 +\end{itemize}
  498 +
432 499 \begin{equation}
433 500 min \; \left( f_s(p_w^n, s_w^m) \right) = min \left( \sum_{i=1}^{ng} \frac{d(s_w^m,s_i^t)}{d(p_w^n,p_i^n)^2} \right)
434 501 \label{eqOpt1}
435 502  
... ... @@ -448,9 +515,9 @@
448 515  
449 516 \subsubsection{Apprentissage des agents}
450 517  
451   -Tous les agents contiennent un vecteur bayésien de probabilité pour la phase de récupération (conteneur C3) et un vecteur bayésien de probabilité pour la phase de réutilisation (conteneur C2). Initialement, ces vecteurs sont configurés avec une probabilité uniforme pour tous les algorithmes de récupération et de réutilisation. Il s'agit de la distribution de probabilité \textit{a priori}, mais pour chaque itération, les vecteurs sont mis à jour avec l'équation bayésienne en utilisant les meilleurs résultats du même agent comme paramètre de vraisemblance. Le choix suivant d'algorithmes pour la récupération et la réutilisation calcule la probabilité avec les vecteurs. L'agent apprend ainsi de son expérience et sélectionne les algorithmes les plus susceptibles de fournir les meilleures réponses au regard de l'objectif défini.
  518 +Tous les agents considèrent un vecteur bayésien de probabilité pour la phase de récupération (conteneur $C3$) et un vecteur bayésien de probabilité pour la phase de réutilisation (conteneur $C2$). Initialement, ces vecteurs sont configurés avec une probabilité uniforme pour tous les algorithmes de récupération et de réutilisation (probabilité \textit{a priori}). À chaque itération, les vecteurs sont mis à jour selon l'équation Bayésienne (équation \ref{eqBay}) en utilisant les meilleurs résultats du même agent comme paramètre de vraisemblance. L'agent apprend ainsi de son expérience et sélectionne les algorithmes les plus aptes à fournir les meilleures réponses au regard de l'objectif défini.
452 519  
453   -L'apprentissage est fondé sur un raisonnement bayésien où les vecteurs de récupération et de réutilisation sont initialisés avec une probabilité uniforme pour tous les algorithmes, comme le montre la figure \ref{fig:bayev}. Au cours d'une itération, si un algorithme a contribué à la construction de la meilleure solution, il reçoit un point pour chaque agent qui l'a utilisé. Ces informations sont stockées dans un vecteur normalisé qui est ensuite utilisé comme vecteur de vraisemblance $P(A)$ pour calculer les nouvelles probabilités dans l'équation bayésienne \ref{eqBay}, $P(B)$ est le terme de normalisation global.
  520 +Par conséquent, d'un point plus global au niveau du SMA, l'apprentissage est fondé sur un raisonnement bayésien où les vecteurs de récupération et de réutilisation évoluent. Un exemple d'évolution est présenté sur la figure \ref{fig:bayev}. Au cours d'une itération, si un algorithme a contribué à la construction de la meilleure solution, il reçoit un point pour chaque agent qui l'a utilisé. Ces informations sont stockées dans un vecteur normalisé qui est ensuite utilisé comme vecteur de vraisemblance $P(A)$ pour calculer les nouvelles probabilités dans l'équation bayésienne \ref{eqBay} (dans cette équation, $P(B)$ est le terme de normalisation global).
454 521  
455 522 \begin{figure}
456 523 \centering
457 524  
458 525  
459 526  
460 527  
461 528  
... ... @@ -464,66 +531,38 @@
464 531 \label{eqBay}
465 532 \end{equation}
466 533  
467   -La sélection d'un algorithme de recherche $a_{rt}$ se fait au moyen d'une valeur aléatoire tirée du vecteur de distribution de recherche discrète obtenu par raisonnement bayésien, comme le montre l'équation \ref{eqRta}.
  534 +La sélection d'un algorithme de recherche $a_{rt}$ se fait au moyen d'une valeur aléatoire
  535 +\\ \colorbox{yellow}{La valeur est aléatoire ? Ou le choix de la valeur est aléatoire ?} \\
  536 +tirée du vecteur de distribution de recherche discrète obtenu par raisonnement bayésien et calculé selon l'équation \ref{eqRta}.
468 537  
469 538 \begin{equation}
470 539 a_{rt}=rnp(n_{rt},P(A|B)_{rt})
471 540 \label{eqRta}
472 541 \end{equation}
473 542  
474   -La sélection d'un algorithme de réutilisation $a_{rs}$ se fait au moyen d'une valeur aléatoire tirée du vecteur de distribution de réutilisation discrète obtenu par raisonnement bayésien, comme le montre l'équation \ref{eqRsa}.
  543 +La sélection d'un algorithme de réutilisation $a_{rs}$ se fait au moyen d'une valeur aléatoire
  544 +\\ \colorbox{yellow}{La valeur est aléatoire ? Ou le choix de la valeur est aléatoire ?} \\
  545 +tirée du vecteur de distribution de réutilisation discrète obtenu par raisonnement bayésien et calculé selon l'équation \ref{eqRsa}.
475 546  
476 547 \begin{equation}
477 548 a_{rs}=rnp(n_{rs},P(A|B)_{rs})
478 549 \label{eqRsa}
479 550 \end{equation}
480 551  
481   -Le processus d'apprentissage est réalisé individuellement par chaque agent, mais comporte un aspect collaboratif puisque les agents communiquent les informations qu'ils ont trouvées, les optimisations locales qu'ils ont réalisées, ainsi que les algorithmes et les paramètres.
  552 +Le processus d'apprentissage est réalisé individuellement par chaque agent, mais comporte un aspect collaboratif puisque les agents échangent les informations qu'ils ont calculées, les optimisations locales qu'ils ont réalisées, ainsi que les algorithmes et les paramètres qu'ils ont utilisés.
482 553  
483 554 \subsubsection{Échanges entre les agents}
484 555  
485   -Les agents peuvent modifier leurs informations au cours d'une itération en choisissant au hasard un voisin dans leur liste de voisins les plus proches. Les changements permettent d'obtenir une grande probabilité de propager les paramètres des agents qui ont obtenu les meilleurs résultats et d'obtenir des effets de rétroaction. Le type d'information qu'ils peuvent modifier est choisi au hasard, il peut s'agir du nombre de voisins, de la liste des voisins les plus proches, de l'algorithme de récupération, de l'algorithme de réutilisation ou même des vecteurs bayésiens. Si un agent décide de modifier ses informations avec un voisin, les informations qu'il possédait à l'origine sont remplacées par une copie des informations obtenues auprès de l'agent sélectionné.
  556 +Un agent peut modifier ses informations et leur affecter les valeurs de celles d'un voisin au cours de chaque itération en choisissant au hasard un voisin dans sa liste de voisins les plus proches. L'ensemble de ces changements permettent de propager les paramètres menant aux meilleurs résultats et d'effectuer des actions rétrospectivement. Les informations modifables sont choisies aléatoirement : il peut s'agir du nombre de voisins, de la liste des voisins les plus proches, de l'algorithme de récupération, de l'algorithme de réutilisation ou même des vecteurs bayésiens.
486 557  
487 558 \subsection{Résultats}
488 559  
489   -Afin de comparer la prédiction des performances et le comportement de l'algorithme proposé, onze bases de données de régression présentant des caractéristiques différentes ont été sélectionnées. Les bases de données et leurs caractéristiques sont indiquées dans le tableau \ref{tabBases}. Les valeurs des paramètres de l'algorithme sont les suivantes $it=100$, $np=50$, $nl=10$ et $ng=10$. Les paramètres de tous les autres algorithmes sont présentés dans le tableau \ref{AlgsPar}.
  560 +Des expérimentations sur onze jeux de données relatifs à des problèmes de régression et présentant des caractéristiques différentes ont été réalisées. Les jeux de données et leurs caractéristiques sont consignés dans le tableau \ref{tabBases}. Les valeurs des paramètres de l'algorithme sont les suivantes $it=100$, $np=50$, $nl=10$ et $ng=10$.
  561 +\\ \colorbox{yellow}{Quel algorithme ?}
  562 +\\ \colorbox{yellow}{À quoi correspondent ces paramètres ? Quelles sont les unités ?}\\
  563 +Le tableau \ref{AlgsPar} présente les valeurs des paramètres de tous les autres algorithmes.
490 564  
491 565 \begin{table}[!ht]
492   -\footnotesize
493   -\centering
494   -\begin{tabular}{c|ccccccccccc}
495   -&A1&A2&A3&A4&A5&A6&A7&A8&A9&A10\\
496   -\hline
497   -%DS1&9.081&12.301&1.228&1.066&7.763&9.081&9.078&9.764&0.750&8.263&8.225\\
498   -DS1&9.081&12.301&1.228&1.066&7.763&9.081&9.078&9.764&0.750&8.225\\
499   -%DS2&0.022&0.025&0.019&0.013&0.017&0.022&0.022&0.037&0.011&0.016&0.016\\
500   -DS2&0.022&0.025&0.019&0.013&0.017&0.022&0.022&0.037&0.011&0.016\\%DS3&8.756&8.465&9.656&7.665&8.716&8.756&9.005&9.177&7.369&8.148&7.991\\
501   -DS3&8.756&8.465&9.656&7.665&8.716&8.756&9.005&9.177&7.369&7.991\\
502   -%DS4&0.647&0.752&0.794&0.602&0.688&0.647&0.646&0.798&0.616&0.628&0.607\\
503   -DS4&0.647&0.752&0.794&0.602&0.688&0.647&0.646&0.798&0.616&0.607\\
504   -%DS5&0.767&0.824&0.877&0.66&0.826&0.767&0.775&0.87&0.703&0.690&0.662\\
505   -DS5&0.767&0.824&0.877&0.66&0.826&0.767&0.775&0.87&0.703&0.662\\
506   -%DS6&10.525&9.174&6.93&5.372&6.662&10.525&10.525&10.527&5.131&9.413&9.070\\
507   -DS6&10.525&9.174&6.93&5.372&6.662&10.525&10.525&10.527&5.131&9.070\\
508   -%DS7&2.961&2.451&0.589&0.528&3.955&2.961&3.009&4.083&0.490&3.031&2.941\\
509   -DS7&2.961&2.451&0.589&0.528&3.955&2.961&3.009&4.083&0.490&2.941\\
510   -%DS8&1.298&1.125&1.360&1.197&1.486&1.298&1.298&1.306&1.128&2.752&2.553\\
511   -DS8&1.298&1.125&1.360&1.197&1.486&1.298&1.298&1.306&1.128&2.553\\
512   -%DS9&2.256&2.565&3.174&2.377&2.817&2.256&2.255&2.468&2.293&2.747&2.468\\
513   -DS9&2.256&2.565&3.174&2.377&2.817&2.256&2.255&2.468&2.293&2.468\\
514   -%DS10&3.136&3.415&4.173&3.165&3.710&3.136&3.135&3.161&3.108&3.897&3.621\\
515   -DS10&3.136&3.415&4.173&3.165&3.710&3.136&3.135&3.161&3.108&3.621\\
516   -DS11&0.625&0.565&0.741&0.56&0.606&0.626&0.626&0.681&
517   -0.541&0.54\\
518   -\hline
519   -%Avg. Rank&5.8&6.5&7.2&2.3&6.7&5.7&5.6&8.65&1.9&4.65\\
520   -Avg. Rank&6.4&6.9&8.2&2.6&7.2&6.45&6.35&9.55&2.1&4.75\\
521   -\end{tabular}
522   -\caption{Résultat de la métrique RMSE (Root Mean Squared Error) pour les bases de données évaluées avec des algorithmes de régression}
523   -\label{tabRes1}
524   -\end{table}
525   -
526   -\begin{table}[!ht]
527 566 \scriptsize
528 567 \centering
529 568 \begin{tabular}{llccp{1.4cm}p{1.2cm}p{1.2cm}}
... ... @@ -541,7 +580,7 @@
541 580 DS10&Student Performance Math&30&395&3&$\mathbb{N*}$&$\mathbb{N}$\\
542 581 DS11&Generated Student Performance&5&1000&1&$\mathbb{R}_+$&$\mathbb{R}_+$\\
543 582 \end{tabular}
544   -\caption{Description des bases de données évaluées. (* après codification comme
  583 +\caption{Description des jeux de données évalués. (* après codification comme
545 584 \textit{String})}
546 585 \label{tabBases}
547 586 \end{table}
548 587  
... ... @@ -579,11 +618,44 @@
579 618 &beta2&0.999\\
580 619 &epsilon&1e-8\\
581 620 \end{tabular}
582   -\caption{Paramètres pour tous les algorithmes comparés}
  621 +\caption{Paramètres de tous les algorithmes comparés}
583 622 \label{AlgsPar}
584 623 \end{table}
585 624  
586   -Le classement moyen de toutes les bases de données en fonction de la mesure RMSE (Root Mean Square Error) est indiqué dans le tableau \ref{tabRes1}. Les résultats détaillés des mêmes algorithmes et des mêmes bases de données, mais comparés avec la métrique MAE (Median Absolute Error), sont présentés dans le tableau \ref{tabRes2}.
  625 +\begin{table}[!ht]
  626 +\footnotesize
  627 +\centering
  628 +\begin{tabular}{c|ccccccccccc}
  629 +&A1&A2&A3&A4&A5&A6&A7&A8&A9&A10\\
  630 +\hline
  631 +%DS1&9.081&12.301&1.228&1.066&7.763&9.081&9.078&9.764&0.750&8.263&8.225\\
  632 +DS1&9.081&12.301&1.228&1.066&7.763&9.081&9.078&9.764&0.750&8.225\\
  633 +%DS2&0.022&0.025&0.019&0.013&0.017&0.022&0.022&0.037&0.011&0.016&0.016\\
  634 +DS2&0.022&0.025&0.019&0.013&0.017&0.022&0.022&0.037&0.011&0.016\\%DS3&8.756&8.465&9.656&7.665&8.716&8.756&9.005&9.177&7.369&8.148&7.991\\
  635 +DS3&8.756&8.465&9.656&7.665&8.716&8.756&9.005&9.177&7.369&7.991\\
  636 +%DS4&0.647&0.752&0.794&0.602&0.688&0.647&0.646&0.798&0.616&0.628&0.607\\
  637 +DS4&0.647&0.752&0.794&0.602&0.688&0.647&0.646&0.798&0.616&0.607\\
  638 +%DS5&0.767&0.824&0.877&0.66&0.826&0.767&0.775&0.87&0.703&0.690&0.662\\
  639 +DS5&0.767&0.824&0.877&0.66&0.826&0.767&0.775&0.87&0.703&0.662\\
  640 +%DS6&10.525&9.174&6.93&5.372&6.662&10.525&10.525&10.527&5.131&9.413&9.070\\
  641 +DS6&10.525&9.174&6.93&5.372&6.662&10.525&10.525&10.527&5.131&9.070\\
  642 +%DS7&2.961&2.451&0.589&0.528&3.955&2.961&3.009&4.083&0.490&3.031&2.941\\
  643 +DS7&2.961&2.451&0.589&0.528&3.955&2.961&3.009&4.083&0.490&2.941\\
  644 +%DS8&1.298&1.125&1.360&1.197&1.486&1.298&1.298&1.306&1.128&2.752&2.553\\
  645 +DS8&1.298&1.125&1.360&1.197&1.486&1.298&1.298&1.306&1.128&2.553\\
  646 +%DS9&2.256&2.565&3.174&2.377&2.817&2.256&2.255&2.468&2.293&2.747&2.468\\
  647 +DS9&2.256&2.565&3.174&2.377&2.817&2.256&2.255&2.468&2.293&2.468\\
  648 +%DS10&3.136&3.415&4.173&3.165&3.710&3.136&3.135&3.161&3.108&3.897&3.621\\
  649 +DS10&3.136&3.415&4.173&3.165&3.710&3.136&3.135&3.161&3.108&3.621\\
  650 +DS11&0.625&0.565&0.741&0.56&0.606&0.626&0.626&0.681&
  651 +0.541&0.54\\
  652 +\hline
  653 +%Avg. Rank&5.8&6.5&7.2&2.3&6.7&5.7&5.6&8.65&1.9&4.65\\
  654 +Avg. Rank&6.4&6.9&8.2&2.6&7.2&6.45&6.35&9.55&2.1&4.75\\
  655 +\end{tabular}
  656 +\caption{Résultat selon la métrique RMSE (Root Mean Squared Error) pour les jeux de données évalués avec les différents algorithmes de régression considérés.}
  657 +\label{tabRes1}
  658 +\end{table}
587 659  
588 660 \begin{table}[!ht]
589 661 \footnotesize
590 662  
591 663  
592 664  
593 665  
594 666  
... ... @@ -622,18 +694,20 @@
622 694 \label{tabRes2}
623 695 \end{table}
624 696  
625   -La dispersion globale, la médiane et les valeurs aberrantes pour toutes les bases données évaluées sont présentées dans la figure \ref{figBox}, où l'on peut voir que l'algorithme proposé génère dans certains cas plus de valeurs aberrantes que d'autres algorithmes, mais la variance est très faible et la convergence est proche de la valeur réelle, meilleure que la plupart des algorithmes comparés. Les valeurs aberrantes sont plus élevées que les valeurs réelles.\textcolor{red}{plus élevées??, pourquoi?}
  697 +Les tableaux \ref{tabRes1} et \ref{tabRes2} présentent respectivement les RMSE et les MAE obtenues pour chaque jeu de données et chaque algorithme testé.
626 698  
  699 +La figure \ref{figBox} représente graphiquement la dispersion globale, la médiane et les valeurs aberrantes obtenues durant ces tests. Cette figure montre qu'ESCBR-SMA génère parfois plus de valeurs aberrantes que d'autres algorithmes. Toutefois, la variance est très faible. De plus, la convergence est proche de la valeur réelle et même meilleure que celle de la plupart des autres algorithmes testés. Il est également possible de remarquer que les valeurs aberrantes sont plus élevées que les valeurs réelles.\textcolor{red}{plus élevées??, pourquoi?}
  700 +
627 701 \begin{figure}[!ht]
628 702 \includegraphics[width=\textwidth]{Figures/boxplot2.png}
629   -\caption{Résultats de la métrique MAE (Median Absolute Error) pour dix algorithmes}
  703 +\caption{Résultats selon la métrique MAE (Median Absolute Error) pour les dix algorithmes testés}
630 704 \label{figBox}
631 705 \end{figure}
632 706  
633   -Les résultats montrent que l'algorithme est compétitif dans la plupart des bases de données sélectionnées, obtenant les meilleurs résultats dans les bases DS2, DS4, DS5 et DS9. Globalement, d'après le classement moyen, l'algorithme est placé en troisième position, à proximité d'autres algorithmes d'ensemble. Par rapport à l'ESCBR, une amélioration des résultats et une réduction de la variance ont été obtenues, ce qui montre que les systèmes multi-agents et le raisonnement stochastique bayésien contribuent à l'apprentissage et à la convergence de l'algorithme vers des solutions plus proches de la solution réelle.
  707 +Les résultats montrent que l'algorithme ESCBR-SMA est compétitif pour la plupart des jeux de données considérés dans cette étude. Il obtient en effet les meilleurs résultats sur $DS2$, $DS4$, $DS5$ et $DS9$. Globalement, ESCBR-SMA est le troisième meilleur algorithme. Il se classe donc à proximité d'autres algorithmes d'ensemble. Par rapport à l'ESCBR, une amélioration des résultats et une réduction de la variance ont été obtenues, démontrant ainsi que les systèmes multi-agents et le raisonnement stochastique bayésien contribuent à l'apprentissage et à la convergence vers des solutions plus proches de la solution réelle.
634 708  
635 709 \subsection{Conclusion}
636   -L'ECBR proposé avec SMA tente d'utiliser les avantages des systèmes multi-agents pour améliorer la qualité des solutions proposées ainsi que pour améliorer le processus d'apprentissage global \textcolor{red}{revoir fin de al phrase}afin d'augmenter la performance de l'algorithme à chaque nouvelle exécution et ce même sur des données différentes. Il utilise également le raisonnement bayésien qui permet d'obtenir de bonnes approximations et un apprentissage optimal avec peu de données.
  710 +L'ECBR intégrant un SMA propose d'utiliser les avantages des systèmes multi-agents pour améliorer la qualité des solutions proposées et également le processus d'apprentissage global en couvrant un plus large spectre de possibilités et en le couvrant de manière intelligente à l'aide d'un raisonnement bayésien. ESCBR-SMA permet ainsi d'obtenir de bonnes approximations avec peu de données.
637 711  
638   -Ce travail a démontré la capacité du modèle à trouver des solutions proches de l'optimum global pour la majorité des ensembles de données analysés, y compris avec des ensembles de données divers, déséquilibrés et de tailles différentes. Les résultats montrent en effet une amélioration de l'ECBR de base, qui peut être due \textcolor{red}{grace à ?}à la combinaison du potentiel de l'ECBR et des caractéristiques des systèmes multi-agents tels que les effets de rétroaction, les effets émergents et le comportement de raisonnement bayésien cognitif mis en œuvre.
  712 +Ce travail a démontré la capacité d'ESCBR-SMA à trouver des solutions proches de l'optimum global pour la majorité des ensembles de données analysés. Ces jeux de données présentent une certaine diversité, ils peuvent être déséquilibrés et ils sont de tailles différentes. Grâce aux caractéristiques inhérentes aux systèmes multi-agents (possibilités de rétroactions, d'échanges d'informations, l'émergence d'une intelligence collective, utilisation d'un raisonnement cognitif), les performances d'ESCBR-SMA sont meilleures que celles d'ESCBR.
1   -This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023) (preloaded format=pdflatex 2023.5.31) 19 JUN 2025 16:53
  1 +This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023) (preloaded format=pdflatex 2023.5.31) 20 JUN 2025 14:52
2 2 entering extended mode
3 3 restricted \write18 enabled.
4 4 %&-line parsing enabled.
5 5  
6 6  
7 7  
8 8  
... ... @@ -1658,24 +1658,25 @@
1658 1658 Package pdftex.def Info: ./Figures/AutomaticS.png used on input line 106.
1659 1659 (pdftex.def) Requested size: 427.43153pt x 340.20406pt.
1660 1660 [56 <./Figures/Stacking1.png> <./Figures/SolRep.png>] [57 <./Figures/Automatic
1661   -S.png>] [58]
1662   -Overfull \hbox (26.8546pt too wide) in paragraph at lines 210--214
  1661 +S.png>]
  1662 +Overfull \hbox (26.8546pt too wide) in paragraph at lines 176--180
1663 1663 [][][][][][]
1664 1664 []
1665 1665  
1666   -<./Figures/Stacking2.png, id=1131, 743.77875pt x 414.54875pt>
  1666 +[58]
  1667 +<./Figures/Stacking2.png, id=1127, 743.77875pt x 414.54875pt>
1667 1668 File: ./Figures/Stacking2.png Graphic file (type png)
1668 1669 <use ./Figures/Stacking2.png>
1669   -Package pdftex.def Info: ./Figures/Stacking2.png used on input line 228.
  1670 +Package pdftex.def Info: ./Figures/Stacking2.png used on input line 194.
1670 1671 (pdftex.def) Requested size: 427.43153pt x 238.23717pt.
1671 1672  
1672   -Underfull \hbox (badness 1168) in paragraph at lines 233--235
  1673 +Underfull \hbox (badness 1168) in paragraph at lines 199--201
1673 1674 \T1/phv/m/n/10.95 mo-dèle d'em-pi-le-ment. Chaque mo-dèle dé-crit ci-dessus gé-
1674 1675 nère une so-lu-tion can-
1675 1676 []
1676 1677  
1677 1678  
1678   -Underfull \hbox (badness 1776) in paragraph at lines 233--235
  1679 +Underfull \hbox (badness 1776) in paragraph at lines 199--201
1679 1680 \T1/phv/m/n/10.95 di-date $\OML/txmi/m/it/10.95 s[] \OT1/txr/m/n/10.95 = \OML/t
1680 1681 xmi/m/it/10.95 MS[]\OT1/txr/m/n/10.95 ((\OML/txmi/m/it/10.95 s[]\OT1/txr/m/n/10
1681 1682 .95 )[])$\T1/phv/m/n/10.95 . Vient en-suite la construc-tion de l'en-semble d'u
1682 1683  
1683 1684  
1684 1685  
1685 1686  
1686 1687  
1687 1688  
1688 1689  
1689 1690  
1690 1691  
1691 1692  
1692 1693  
1693 1694  
1694 1695  
1695 1696  
1696 1697  
1697 1698  
1698 1699  
1699 1700  
1700 1701  
1701 1702  
1702 1703  
1703 1704  
1704 1705  
1705 1706  
1706 1707  
... ... @@ -1683,116 +1684,118 @@
1683 1684 []
1684 1685  
1685 1686  
1686   -Underfull \hbox (badness 10000) in paragraph at lines 240--242
  1687 +Underfull \hbox (badness 10000) in paragraph at lines 206--208
1687 1688  
1688 1689 []
1689 1690  
1690   -[59]
1691   -<Figures/FW.png, id=1148, 456.70625pt x 342.27875pt>
  1691 +[59 <./Figures/Stacking2.png>]
  1692 +<Figures/FW.png, id=1142, 456.70625pt x 342.27875pt>
1692 1693 File: Figures/FW.png Graphic file (type png)
1693 1694 <use Figures/FW.png>
1694   -Package pdftex.def Info: Figures/FW.png used on input line 255.
  1695 +Package pdftex.def Info: Figures/FW.png used on input line 221.
1695 1696 (pdftex.def) Requested size: 427.43153pt x 320.34758pt.
1696   - [60 <./Figures/Stacking2.png>] [61 <./Figures/FW.png>]
1697   -<./Figures/boxplot.png, id=1171, 1994.45125pt x 959.585pt>
  1697 + [60 <./Figures/FW.png>] [61]
  1698 +<./Figures/boxplot.png, id=1166, 1994.45125pt x 959.585pt>
1698 1699 File: ./Figures/boxplot.png Graphic file (type png)
1699 1700 <use ./Figures/boxplot.png>
1700   -Package pdftex.def Info: ./Figures/boxplot.png used on input line 363.
  1701 +Package pdftex.def Info: ./Figures/boxplot.png used on input line 329.
1701 1702 (pdftex.def) Requested size: 427.43153pt x 205.64786pt.
1702 1703 [62]
1703   -Underfull \vbox (badness 6173) has occurred while \output is active []
  1704 +Underfull \hbox (badness 10000) in paragraph at lines 351--352
1704 1705  
1705   - [63 <./Figures/boxplot.png>]
1706   -Underfull \hbox (badness 10000) in paragraph at lines 385--386
1707   -
1708 1706 []
1709 1707  
1710 1708  
1711   -Underfull \hbox (badness 10000) in paragraph at lines 385--386
  1709 +Underfull \hbox (badness 10000) in paragraph at lines 351--352
1712 1710  
1713 1711 []
1714 1712  
1715 1713  
1716   -Underfull \hbox (badness 2564) in paragraph at lines 387--387
  1714 +Underfull \hbox (badness 2564) in paragraph at lines 353--353
1717 1715 [][]\T1/phv/m/sc/14.4 ESCBR-SMA : In-tro-duc-tion des sys-tèmes multi-
1718 1716 []
1719 1717  
1720   -<Figures/NCBR.png, id=1187, 653.44125pt x 445.665pt>
1721   -File: Figures/NCBR.png Graphic file (type png)
1722   -<use Figures/NCBR.png>
1723   -Package pdftex.def Info: Figures/NCBR.png used on input line 397.
1724   -(pdftex.def) Requested size: 427.43153pt x 291.5149pt.
1725   -[64]
  1718 +
1726 1719 Overfull \hbox (5.60397pt too wide) has occurred while \output is active
1727 1720 \T1/phv/m/sl/10.95 6.3. ESCBR-SMA : INTRODUCTION DES SYSTÈMES MULTI-AGENTS DAN
1728   -S ESCBR \T1/phv/m/n/10.95 65
  1721 +S ESCBR \T1/phv/m/n/10.95 63
1729 1722 []
1730 1723  
1731   -[65 <./Figures/NCBR.png>]
1732   -<Figures/FlowCBR.png, id=1201, 450.68375pt x 822.07124pt>
  1724 +[63 <./Figures/boxplot.png>]
  1725 +<Figures/NCBR.png, id=1181, 653.44125pt x 445.665pt>
  1726 +File: Figures/NCBR.png Graphic file (type png)
  1727 +<use Figures/NCBR.png>
  1728 +Package pdftex.def Info: Figures/NCBR.png used on input line 363.
  1729 +(pdftex.def) Requested size: 427.43153pt x 291.5149pt.
  1730 + [64 <./Figures/NCBR.png>]
  1731 +<Figures/FlowCBR.png, id=1190, 450.68375pt x 822.07124pt>
1733 1732 File: Figures/FlowCBR.png Graphic file (type png)
1734 1733 <use Figures/FlowCBR.png>
1735   -Package pdftex.def Info: Figures/FlowCBR.png used on input line 426.
  1734 +Package pdftex.def Info: Figures/FlowCBR.png used on input line 392.
1736 1735 (pdftex.def) Requested size: 270.41232pt x 493.24655pt.
1737 1736  
1738   -Underfull \hbox (badness 1107) in paragraph at lines 469--470
  1737 +Underfull \hbox (badness 1107) in paragraph at lines 435--436
1739 1738 []\T1/phv/m/n/10.95 Cette sec-tion pré-sente de ma-nière plus dé-taillée les co
1740 1739 m-por-te-ments des agents
1741 1740 []
1742 1741  
1743 1742  
1744   -Underfull \vbox (badness 7064) has occurred while \output is active []
  1743 +Overfull \hbox (5.60397pt too wide) has occurred while \output is active
  1744 +\T1/phv/m/sl/10.95 6.3. ESCBR-SMA : INTRODUCTION DES SYSTÈMES MULTI-AGENTS DAN
  1745 +S ESCBR \T1/phv/m/n/10.95 65
  1746 + []
1745 1747  
  1748 +[65]
  1749 +Underfull \vbox (badness 2111) has occurred while \output is active []
  1750 +
1746 1751 [66 <./Figures/FlowCBR.png>]
  1752 +<Figures/agent.png, id=1205, 352.31625pt x 402.50375pt>
  1753 +File: Figures/agent.png Graphic file (type png)
  1754 +<use Figures/agent.png>
  1755 +Package pdftex.def Info: Figures/agent.png used on input line 476.
  1756 +(pdftex.def) Requested size: 246.61969pt x 281.7507pt.
  1757 +
1747 1758 Overfull \hbox (5.60397pt too wide) has occurred while \output is active
1748 1759 \T1/phv/m/sl/10.95 6.3. ESCBR-SMA : INTRODUCTION DES SYSTÈMES MULTI-AGENTS DAN
1749 1760 S ESCBR \T1/phv/m/n/10.95 67
1750 1761 []
1751 1762  
1752 1763 [67]
1753   -<Figures/agent.png, id=1215, 352.31625pt x 402.50375pt>
1754   -File: Figures/agent.png Graphic file (type png)
1755   -<use Figures/agent.png>
1756   -Package pdftex.def Info: Figures/agent.png used on input line 510.
1757   -(pdftex.def) Requested size: 246.61969pt x 281.7507pt.
1758   - [68 <./Figures/agent.png>]
1759   -<Figures/BayesianEvolution.png, id=1226, 626.34pt x 402.50375pt>
  1764 +<Figures/BayesianEvolution.png, id=1217, 626.34pt x 402.50375pt>
1760 1765 File: Figures/BayesianEvolution.png Graphic file (type png)
1761 1766 <use Figures/BayesianEvolution.png>
1762   -Package pdftex.def Info: Figures/BayesianEvolution.png used on input line 523.
  1767 +Package pdftex.def Info: Figures/BayesianEvolution.png used on input line 489.
1763 1768  
1764 1769 (pdftex.def) Requested size: 313.16922pt x 201.25137pt.
1765   -
  1770 + [68 <./Figures/agent.png>]
1766 1771 Overfull \hbox (5.60397pt too wide) has occurred while \output is active
1767 1772 \T1/phv/m/sl/10.95 6.3. ESCBR-SMA : INTRODUCTION DES SYSTÈMES MULTI-AGENTS DAN
1768 1773 S ESCBR \T1/phv/m/n/10.95 69
1769 1774 []
1770 1775  
1771 1776 [69 <./Figures/BayesianEvolution.png>]
1772   -Underfull \hbox (badness 10000) in paragraph at lines 568--568
  1777 +Underfull \hbox (badness 10000) in paragraph at lines 534--534
1773 1778 []|\T1/phv/m/n/8 Input.
1774 1779 []
1775 1780  
1776 1781  
1777   -Underfull \hbox (badness 10000) in paragraph at lines 568--569
  1782 +Underfull \hbox (badness 10000) in paragraph at lines 534--535
1778 1783 []|\T1/phv/m/n/8 Output
1779 1784 []
1780 1785  
1781   -<Figures/boxplot2.png, id=1243, 1615.03375pt x 835.12pt>
  1786 +[70]
  1787 +<Figures/boxplot2.png, id=1246, 1615.03375pt x 835.12pt>
1782 1788 File: Figures/boxplot2.png Graphic file (type png)
1783 1789 <use Figures/boxplot2.png>
1784   -Package pdftex.def Info: Figures/boxplot2.png used on input line 701.
  1790 +Package pdftex.def Info: Figures/boxplot2.png used on input line 667.
1785 1791 (pdftex.def) Requested size: 427.43153pt x 221.01265pt.
1786   -[70]
1787   -Underfull \vbox (badness 4391) has occurred while \output is active []
1788   -
1789   -
  1792 +)
1790 1793 Overfull \hbox (5.60397pt too wide) has occurred while \output is active
1791 1794 \T1/phv/m/sl/10.95 6.3. ESCBR-SMA : INTRODUCTION DES SYSTÈMES MULTI-AGENTS DAN
1792 1795 S ESCBR \T1/phv/m/n/10.95 71
1793 1796 []
1794 1797  
1795   -[71]) [72 <./Figures/boxplot2.png>]
  1798 +[71] [72 <./Figures/boxplot2.png>]
1796 1799 \openout2 = `./chapters/TS.aux'.
1797 1800  
1798 1801 (./chapters/TS.tex
1799 1802  
1800 1803  
1801 1804  
... ... @@ -1824,23 +1827,23 @@
1824 1827 Package hyperref Info: bookmark level for unknown algorithm defaults to 0 on in
1825 1828 put line 131.
1826 1829 [76]
1827   -<./Figures/dataset.png, id=1309, 15.13687pt x 8.08058pt>
  1830 +<./Figures/dataset.png, id=1307, 15.13687pt x 8.08058pt>
1828 1831 File: ./Figures/dataset.png Graphic file (type png)
1829 1832 <use ./Figures/dataset.png>
1830 1833 Package pdftex.def Info: ./Figures/dataset.png used on input line 152.
1831 1834 (pdftex.def) Requested size: 427.43153pt x 228.35583pt.
1832 1835 [77 <./Figures/dataset.png>]
1833   -<./Figures/comp2.png, id=1320, 14.59627pt x 7.33133pt>
  1836 +<./Figures/comp2.png, id=1318, 14.59627pt x 7.33133pt>
1834 1837 File: ./Figures/comp2.png Graphic file (type png)
1835 1838 <use ./Figures/comp2.png>
1836 1839 Package pdftex.def Info: ./Figures/comp2.png used on input line 186.
1837 1840 (pdftex.def) Requested size: 427.43153pt x 214.72395pt.
1838   -<./Figures/comp3.png, id=1322, 14.59627pt x 7.33133pt>
  1841 +<./Figures/comp3.png, id=1320, 14.59627pt x 7.33133pt>
1839 1842 File: ./Figures/comp3.png Graphic file (type png)
1840 1843 <use ./Figures/comp3.png>
1841 1844 Package pdftex.def Info: ./Figures/comp3.png used on input line 194.
1842 1845 (pdftex.def) Requested size: 427.43153pt x 214.72395pt.
1843   -<./Figures/comp4.png, id=1324, 14.59627pt x 7.33133pt>
  1846 +<./Figures/comp4.png, id=1322, 14.59627pt x 7.33133pt>
1844 1847 File: ./Figures/comp4.png Graphic file (type png)
1845 1848 <use ./Figures/comp4.png>
1846 1849 Package pdftex.def Info: ./Figures/comp4.png used on input line 202.
... ... @@ -1854,7 +1857,7 @@
1854 1857 []
1855 1858  
1856 1859 [79 <./Figures/comp3.png>]
1857   -<./Figures/metric.png, id=1344, 16.95784pt x 7.68225pt>
  1860 +<./Figures/metric.png, id=1342, 16.95784pt x 7.68225pt>
1858 1861 File: ./Figures/metric.png Graphic file (type png)
1859 1862 <use ./Figures/metric.png>
1860 1863 Package pdftex.def Info: ./Figures/metric.png used on input line 243.
... ... @@ -1864,7 +1867,7 @@
1864 1867  
1865 1868 []
1866 1869  
1867   -<./Figures/metric2.png, id=1359, 16.48363pt x 7.66327pt>
  1870 +<./Figures/metric2.png, id=1357, 16.48363pt x 7.66327pt>
1868 1871 File: ./Figures/metric2.png Graphic file (type png)
1869 1872 <use ./Figures/metric2.png>
1870 1873 Package pdftex.def Info: ./Figures/metric2.png used on input line 302.
... ... @@ -1884,7 +1887,7 @@
1884 1887  
1885 1888 [83]
1886 1889 [84] [85] [86]
1887   -<Figures/Model.png, id=1445, 367.3725pt x 302.12875pt>
  1890 +<Figures/Model.png, id=1443, 367.3725pt x 302.12875pt>
1888 1891 File: Figures/Model.png Graphic file (type png)
1889 1892 <use Figures/Model.png>
1890 1893 Package pdftex.def Info: Figures/Model.png used on input line 502.
1891 1894  
1892 1895  
... ... @@ -1898,19 +1901,19 @@
1898 1901 Underfull \vbox (badness 10000) has occurred while \output is active []
1899 1902  
1900 1903 [90]
1901   -<Figures/kEvol_TS.jpg, id=1494, 742.775pt x 557.08125pt>
  1904 +<Figures/kEvol_TS.jpg, id=1492, 742.775pt x 557.08125pt>
1902 1905 File: Figures/kEvol_TS.jpg Graphic file (type jpg)
1903 1906 <use Figures/kEvol_TS.jpg>
1904 1907 Package pdftex.def Info: Figures/kEvol_TS.jpg used on input line 675.
1905 1908 (pdftex.def) Requested size: 427.43153pt x 320.58275pt.
1906   -<Figures/GradesEv.jpg, id=1498, 742.775pt x 557.08125pt>
  1909 +<Figures/GradesEv.jpg, id=1496, 742.775pt x 557.08125pt>
1907 1910 File: Figures/GradesEv.jpg Graphic file (type jpg)
1908 1911 <use Figures/GradesEv.jpg>
1909 1912 Package pdftex.def Info: Figures/GradesEv.jpg used on input line 688.
1910 1913 (pdftex.def) Requested size: 427.43153pt x 320.58275pt.
1911 1914  
1912 1915 [91]
1913   -<Figures/LevelsEv.jpg, id=1511, 742.775pt x 557.08125pt>
  1916 +<Figures/LevelsEv.jpg, id=1509, 742.775pt x 557.08125pt>
1914 1917 File: Figures/LevelsEv.jpg Graphic file (type jpg)
1915 1918 <use Figures/LevelsEv.jpg>
1916 1919 Package pdftex.def Info: Figures/LevelsEv.jpg used on input line 697.
... ... @@ -1929,7 +1932,7 @@
1929 1932 Underfull \vbox (badness 10000) has occurred while \output is active []
1930 1933  
1931 1934 [94 <./Figures/LevelsEv.jpg>]
1932   -<Figures/ModelHawkes.png, id=1531, 397.485pt x 382.42876pt>
  1935 +<Figures/ModelHawkes.png, id=1529, 397.485pt x 382.42876pt>
1933 1936 File: Figures/ModelHawkes.png Graphic file (type png)
1934 1937 <use Figures/ModelHawkes.png>
1935 1938 Package pdftex.def Info: Figures/ModelHawkes.png used on input line 756.
1936 1939  
... ... @@ -1941,13 +1944,13 @@
1941 1944 []
1942 1945  
1943 1946 [95 <./Figures/ModelHawkes.png>] [96]
1944   -<./Figures/stabilityBoxplot1.png, id=1558, 742.775pt x 520.94624pt>
  1947 +<./Figures/stabilityBoxplot1.png, id=1556, 742.775pt x 520.94624pt>
1945 1948 File: ./Figures/stabilityBoxplot1.png Graphic file (type png)
1946 1949 <use ./Figures/stabilityBoxplot1.png>
1947 1950 Package pdftex.def Info: ./Figures/stabilityBoxplot1.png used on input line 84
1948 1951 5.
1949 1952 (pdftex.def) Requested size: 427.43153pt x 299.78818pt.
1950   -<./Figures/stabilityBoxplot2.png, id=1559, 742.775pt x 520.94624pt>
  1953 +<./Figures/stabilityBoxplot2.png, id=1557, 742.775pt x 520.94624pt>
1951 1954 File: ./Figures/stabilityBoxplot2.png Graphic file (type png)
1952 1955 <use ./Figures/stabilityBoxplot2.png>
1953 1956 Package pdftex.def Info: ./Figures/stabilityBoxplot2.png used on input line 84
1954 1957  
... ... @@ -1963,12 +1966,12 @@
1963 1966  
1964 1967 [98 <./Figures/stabilityBoxplot1.png (PNG copy)> <./Figures/stabilityBoxplot2.p
1965 1968 ng (PNG copy)>]
1966   -<Figures/Var.png, id=1577, 1408.26125pt x 749.80125pt>
  1969 +<Figures/Var.png, id=1575, 1408.26125pt x 749.80125pt>
1967 1970 File: Figures/Var.png Graphic file (type png)
1968 1971 <use Figures/Var.png>
1969 1972 Package pdftex.def Info: Figures/Var.png used on input line 882.
1970 1973 (pdftex.def) Requested size: 427.43153pt x 227.57355pt.
1971   -<Figures/VarH.png, id=1578, 1408.26125pt x 749.80125pt>
  1974 +<Figures/VarH.png, id=1576, 1408.26125pt x 749.80125pt>
1972 1975 File: Figures/VarH.png Graphic file (type png)
1973 1976 <use Figures/VarH.png>
1974 1977 Package pdftex.def Info: Figures/VarH.png used on input line 888.
... ... @@ -2079,7 +2082,7 @@
2079 2082 ) [111
2080 2083  
2081 2084 ]
2082   -<spimufcphdthesis-backpage.pdf, id=1643, 597.432pt x 844.83629pt>
  2085 +<spimufcphdthesis-backpage.pdf, id=1641, 597.432pt x 844.83629pt>
2083 2086 File: spimufcphdthesis-backpage.pdf Graphic file (type pdf)
2084 2087 <use spimufcphdthesis-backpage.pdf>
2085 2088 Package pdftex.def Info: spimufcphdthesis-backpage.pdf used on input line 392.
... ... @@ -2101,9 +2104,9 @@
2101 2104 (rerunfilecheck) Checksum: DABF564812292D7B0491E94798B578EA;23881.
2102 2105 )
2103 2106 Here is how much of TeX's memory you used:
2104   - 21520 strings out of 476038
2105   - 369195 string characters out of 5790170
2106   - 1901785 words of memory out of 5000000
  2107 + 21521 strings out of 476038
  2108 + 369210 string characters out of 5790170
  2109 + 1902785 words of memory out of 5000000
2107 2110 40944 multiletter control sequences out of 15000+600000
2108 2111 619032 words of font info for 151 fonts, out of 8000000 for 9000
2109 2112 1141 hyphenation exceptions out of 8191
2110 2113  
... ... @@ -2113,10 +2116,30 @@
2113 2116 has been referenced but does not exist, replaced by a fixed one
2114 2117  
2115 2118  
  2119 +pdfTeX warning (dest): name{equation.6.3.21} has been referenced but does not e
  2120 +xist, replaced by a fixed one
  2121 +
  2122 +
  2123 +pdfTeX warning (dest): name{equation.6.3.20} has been referenced but does not e
  2124 +xist, replaced by a fixed one
  2125 +
  2126 +
  2127 +pdfTeX warning (dest): name{equation.6.3.19} has been referenced but does not e
  2128 +xist, replaced by a fixed one
  2129 +
  2130 +
  2131 +pdfTeX warning (dest): name{equation.6.3.18} has been referenced but does not e
  2132 +xist, replaced by a fixed one
  2133 +
  2134 +
2116 2135 pdfTeX warning (dest): name{cite.doi\\penalty\040\\@M\040\040:10.1137/23M159242
2117 2136 0} has been referenced but does not exist, replaced by a fixed one
2118 2137  
2119 2138  
  2139 +pdfTeX warning (dest): name{equation.6.2.16} has been referenced but does not e
  2140 +xist, replaced by a fixed one
  2141 +
  2142 +
2120 2143 pdfTeX warning (dest): name{cite.doi\\penalty\040\\@M\040\040:10.3233/AIC-1994-
2121 2144 7104} has been referenced but does not exist, replaced by a fixed one
2122 2145  
2123 2146  
... ... @@ -2135,10 +2158,10 @@
2135 2158 lvetic/uhvr8a.pfb></usr/local/texlive/2023/texmf-dist/fonts/type1/urw/helvetic/
2136 2159 uhvro8a.pfb></usr/local/texlive/2023/texmf-dist/fonts/type1/urw/times/utmr8a.pf
2137 2160 b></usr/local/texlive/2023/texmf-dist/fonts/type1/urw/times/utmri8a.pfb>
2138   -Output written on main.pdf (120 pages, 7646852 bytes).
  2161 +Output written on main.pdf (120 pages, 7645389 bytes).
2139 2162 PDF statistics:
2140   - 1813 PDF objects out of 2073 (max. 8388607)
2141   - 1559 compressed objects within 16 object streams
2142   - 460 named destinations out of 1000 (max. 500000)
  2163 + 1811 PDF objects out of 2073 (max. 8388607)
  2164 + 1557 compressed objects within 16 object streams
  2165 + 461 named destinations out of 1000 (max. 500000)
2143 2166 983 words of extra memory for PDF output out of 10000 (max. 10000000)

No preview for this file type

main.synctex.gz View file @ e86ea45

No preview for this file type

... ... @@ -54,17 +54,17 @@
54 54 \contentsline {subsubsection}{\numberline {6.2.1.2}Réutiliser}{55}{subsubsection.6.2.1.2}%
55 55 \contentsline {subsubsection}{\numberline {6.2.1.3}Révision}{59}{subsubsection.6.2.1.3}%
56 56 \contentsline {subsubsection}{\numberline {6.2.1.4}Mémorisation}{60}{subsubsection.6.2.1.4}%
57   -\contentsline {subsection}{\numberline {6.2.2}Résultats}{60}{subsection.6.2.2}%
  57 +\contentsline {subsection}{\numberline {6.2.2}Résultats}{61}{subsection.6.2.2}%
58 58 \contentsline {subsection}{\numberline {6.2.3}Discussion}{62}{subsection.6.2.3}%
59   -\contentsline {subsection}{\numberline {6.2.4}Conclusion}{64}{subsection.6.2.4}%
60   -\contentsline {section}{\numberline {6.3}ESCBR-SMA : Introduction des systèmes multi-agents dans ESCBR}{64}{section.6.3}%
  59 +\contentsline {subsection}{\numberline {6.2.4}Conclusion}{63}{subsection.6.2.4}%
  60 +\contentsline {section}{\numberline {6.3}ESCBR-SMA : Introduction des systèmes multi-agents dans ESCBR}{63}{section.6.3}%
61 61 \contentsline {subsection}{\numberline {6.3.1}Modèle Proposé}{64}{subsection.6.3.1}%
62   -\contentsline {subsubsection}{\numberline {6.3.1.1}Algorithmes}{67}{subsubsection.6.3.1.1}%
63   -\contentsline {subsubsection}{\numberline {6.3.1.2}Structure des agents}{67}{subsubsection.6.3.1.2}%
64   -\contentsline {subsubsection}{\numberline {6.3.1.3}Apprentissage des agents}{68}{subsubsection.6.3.1.3}%
65   -\contentsline {subsubsection}{\numberline {6.3.1.4}Échanges entre les agents}{70}{subsubsection.6.3.1.4}%
66   -\contentsline {subsection}{\numberline {6.3.2}Résultats}{70}{subsection.6.3.2}%
67   -\contentsline {subsection}{\numberline {6.3.3}Conclusion}{72}{subsection.6.3.3}%
  62 +\contentsline {subsubsection}{\numberline {6.3.1.1}Algorithmes}{65}{subsubsection.6.3.1.1}%
  63 +\contentsline {subsubsection}{\numberline {6.3.1.2}Structure des agents}{66}{subsubsection.6.3.1.2}%
  64 +\contentsline {subsubsection}{\numberline {6.3.1.3}Apprentissage des agents}{67}{subsubsection.6.3.1.3}%
  65 +\contentsline {subsubsection}{\numberline {6.3.1.4}Échanges entre les agents}{69}{subsubsection.6.3.1.4}%
  66 +\contentsline {subsection}{\numberline {6.3.2}Résultats}{69}{subsection.6.3.2}%
  67 +\contentsline {subsection}{\numberline {6.3.3}Conclusion}{71}{subsection.6.3.3}%
68 68 \contentsline {chapter}{\numberline {7}Système de Recommandation dans AI-VT}{73}{chapter.7}%
69 69 \contentsline {section}{\numberline {7.1}Introduction}{73}{section.7.1}%
70 70 \contentsline {section}{\numberline {7.2}Système de recommandation stochastique fondé sur l'échantillonnage de Thompson}{74}{section.7.2}%