main.tex
66.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
%% Use the standard UP-methodology class
%% with French language.
%%
%% You may specify the option 'twoside' or 'oneside' for
%% the document.
%%
%% See the documentation tex-upmethodology on
%% http://www.arakhne.org/tex-upmethodology/
%% for details about the macros that are provided by the class and
%% to obtain the list of the packages that are already included.
\documentclass[a4paper,french]{spimufcphdthesis}
\renewcommand{\familydefault}{\sfdefault} % Met tout le texte en 'sans serif'.
%%--------------------
%% The TeX code is entering with UTF8
%% character encoding (Linux and MacOS standards)
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{graphicx}
\usepackage[export]{adjustbox} % Pour aligner image à droite
\usepackage{url}
%\geometry{margin=1in}
%%-------------------
%% NATBIB is enabled by default.
%% If you would like to disable it, put the 'nonatbib' option to the class' options.
%%--------------------
%% Include the 'multibib' package to enable to
%% have different types of bibliographies in the
%% document (see at the end of this template for
%% an example with a personnal bibliography and
%% a general bibliography)
%%
%% Each bibliography defined with 'multibib'
%% adds a chapter with the corresponding
%% publications (in addition to the chapter for
%% the standard/general bibliography).
%% CAUTION:
%% There is no standard way to do include this type of
%% personnal bibliography.
%% We propose to use 'multibib' package to help you,
%% for example.
%\usepackage{multibib}
%% Define a "type" of bibliography, here the PERSONAL one,
%% that is supported by 'multibib'.
%\newcites{PERSO}{Liste de mes publications}
%% To cite one of your PERSONAL papers with the style
%% of the PERSONAL bibliography: \citePERSO{key}
%% To force to show one of your PERSONAL papers into
%% the PERSONAL bibliography, even if not cited in the
%% text: \nocitePERSO{key}
%% REMARK: When you are using 'multibib', you
%% must compile the PERSONAL bibliography by hand.
%% For example, the sequence of commands to run
%% when you had defined the bibliography PERSO is:
%% $ pdflatex my_document.tex
%% $ bibtex my_document.aux
%% $ bibtex PERSO.aux
%% $ pdflatex my_document.tex
%% $ pdflatex my_document.tex
%% $ pdflatex my_document.tex
%%--------------------
%% Add here any other packages that are needed for your document.
%\usepackage{eurosim}
\usepackage{amsmath}
\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{xcolor}
%%--------------------
%% Set the title, subtitle, defense date, and
%% the registration number of the PhD thesis.
%% The optional parameter is the subtitle of the PhD thesis.
%% The first mandatory parameter is the title of the PhD thesis.
%% The second mandatory parameter is the date of the PhD defense.
%% The third mandatory parameter is the location/city of the PhD defense.
%% The forth mandatory parameter is the reference number given by
%% the University Library after the PhD defense.
\declarethesis%[Sous-titre]
{Adaptation en temps réel d'une séance d'entraînement par intelligence artificielle}{17 septembre 2025}{Besançon}{XXX}
%%--------------------
%% Set the title in the secondary language
%% (it is in English if the PhD dissertation is written in French; it is French if the PhD dissertation is written in English)
%\declareminorthesistitle{Titre dans la langue secondaire}
%%--------------------
%% Add a member of the jury
%%
%% Two macros are provided: one without civility, one with civility.
%%
%% CAUTION 1: If a Jury member is not present during the defense,
%% she/he must be in the list of the Jury members.
%% Only the reviewers and the members who are present during the defense must
%% appear in the Jyry member list.
%% CAUTION 2: After your defense, you must assign the role "Pr\'esident" to
%% the Jury member who have been the President of the Jury.
%% CAUTION 3: The recommended order for the Jury members is:
%% President, Reviewer(s), Examiner(s), Director(s),
%% Other supervisor(s), Invited person(s).
%% \addjury{Firstname}{Lastname}{Role in the jury}{Position}
%%--------------------
%% Change style of the table of the jury
%% \Set{jurystyle}{put macros for the style}
%\Set{jurystyle}{\small}
%%--------------------
%% Set the English abstract
\thesisabstract[english]{This is the abstract in English.}
%%--------------------
%% Set the English keywords. They only appear if
%% there is an English abstract
\thesiskeywords[english]{Keyword 1, Keyword 2}
%%--------------------
%% Set the French abstract
\thesisabstract[french]{L'objectif de ce travail de thèse est la prise en compte en temps réel du travail d'un apprenant pour une meilleure personnalisation d'AI-VT (Artificial Intelligence Virtual Trainer).
%Cet objectif comprend à la fois une correction automatique pour que le système puisse modifier la feuille d'exercice en cours de séance mais aussi l'ajout de fonctionnalités d'aide liées au profil de l'apprenant (rappel de méthode, de cours, solutions).
}
%%--------------------
%% Set the French keywords. They only appear if
%% there is an French abstract
\thesiskeywords[french]{Mot-cl\'e 1, Mot-cl\'e 2}
%%--------------------
%% Change the layout and the style of the text of the "primary" abstract.
%% If your document is written in French, the primary abstract is in French,
%% otherwise it is in English.
%\Set{primaryabstractstyle}{\tiny}
%%--------------------
%% Change the layout and the style of the text of the "secondary" abstract.
%% If your document is written in French, the secondary abstract is in English,
%% otherwise it is in French.
%\Set{secondaryabstractstyle}{\tiny}
%%--------------------
%% Change the layout and the style of the text of the "primary" keywords.
%% If your document is written in French, the primary keywords are in French,
%% otherwise they are in English.
%\Set{primarykeywordstyle}{\tiny}
%%--------------------
%% Change the layout and the style of the text of the "secondary" keywords.
%% If your document is written in French, the secondary keywords are in English,
%% otherwise they are in French.
%\Set{secondarykeywordstyle}{\tiny}
%%--------------------
%% Change the speciality of the PhD thesis
%\Set{speciality}{Informatique}
%%--------------------
%% Change the institution
%\Set{universityname}{Universit\'e de Technologie de Belfort-Montb\'eliard}
%%--------------------
%% Clear the list of the laboratories
\resetlaboratories
%%--------------------
%% Add the laboratory where the thesis was made
\addlaboratory{Laboratoire Connaissance et Intelligence Artificielle Distribu\'ees}
%%--------------------
%% The name of the university that is jointly delivering the Doctoral degree with UBFC
%\Set{jointuniversity}{Universit\'e de Ngaound\'er\'e au Cameroun}
%%--------------------
%% Clear the list of the partner/sponsor logos
%\resetpartners
%%--------------------
%% Add the logos of the partners or the sponsors on the front page
%%
%% CAUTION 1: At least, the logo of the University should appear (UFC)
%%
%\addpartner[image options]{image name}
%\addpartner{ufc}
%%--------------------
%% Change the header and the foot of the pages.
%% You must include the package "fancyhdr" to
%% have access to these macros.
%% Left header
%\lhead{}
%% Center header
%\chead{}
%% Right header
%\rhead{}
%% Left footer
%\lfoot{}
%% Center footer
%\cfoot{}
%% Right footer
%\rfoot{}
%%--------------------
% Declare several theorems
%\declareupmtheorem{mytheorem}{My Theorem}{List of my Theorems}
%%--------------------
%% Change the message on the backcover.
%\Set{backcovermessage}{%
% Some text
%}
\usepackage{layout} % Add this to view current margins
\usepackage[pass]{geometry}
\begin{document}
\newgeometry{left=6cm, bottom=0.1cm}
\begin{titlepage} % Supprime headers et footers de la page
\begin{figure}[t]
\includegraphics[width=0.4\textwidth]{images_logos/image1_logoUBFC_grand.png}\hfill\includegraphics[width=0.4\textwidth]{images_logos/logo_UFC_2018_transparence.png}
\end{figure}
\begin{center}
\vspace*{1.0cm}
\footnotesize{\textsf{\textbf{THESE DE DOCTORAT DE L’ETABLISSEMENT UNIVERSITE BOURGOGNE FRANCHE-COMTE\\~\\
PREPAREE A l'UNIVERSITE DE FRANCHE-COMTE}}}
\vspace{1.0cm}
Ecole doctorale n\textsuperscript{o} <numéro de l'Ecole doctorale>\\~\\
<Nom de l'Ecole doctorale>
\vspace{1.0cm}
Doctorat de <nom de la spécialité>
\vspace{1.5cm}
Par\\~\\<Civilité> <Nom> <Prénom>
\vspace{1.5cm}
<Titre de la thèse>
\vspace{0.12cm}
<Sous-titre ou deuxième ligne du titre de la thèse>
\begin{flushleft}
\vspace{1.0cm}
Thèse présentée et soutenue à <Ville>, le <date>
\vspace{1.0cm}
Composition du Jury~:
\begin{tabbing} %Tabulations avec'\>', positions indiquées par '\='.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\=~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\=\\ % Définit les positions des tabulations
<Civilité><Nom><Prénom> \> <Fonction et établissement d’exercice> \> Président\\
<Civilité><Nom><Prénom> \> <Fonction et établissement d’exercice> \> Rapporteur\\
<Civilité><Nom><Prénom> \> <Fonction et établissement d’exercice> \> Rapporteur\\
<Civilité><Nom><Prénom> \> <Fonction et établissement d’exercice> \> Examinateur\\
<Civilité><Nom><Prénom> \> <Fonction et établissement d’exercice> \> Examinatrice\\
<Civilité><Nom><Prénom> \> <Fonction et établissement d’exercice> \> Directeur de thèse\\
<Civilité><Nom><Prénom> \> <Fonction et établissement d’exercice> \> Codirecteur de thèse\\
<Civilité><Nom><Prénom> \> <Fonction et établissement d’exercice> \> Invité
\end{tabbing}
\end{flushleft}
\end{center}
\end{titlepage} % Fin de page de titre
\restoregeometry
%%--------------------
%% The following line does nothing until
%% the class option 'nofrontmatter' is given.
%\frontmatter
%%--------------------
%% The following line permits to add a chapter for "acknowledgements"
%% at the beginning of the document. This chapter has not a chapter
%% number (using the "star-ed" version of \chapter) to prevent it to
%% be in the table of contents
\chapter*{Remerciements}
\newpage
\hfill\begin{minipage}{0.32\linewidth}
\end{minipage}
\newpage
%%--------------------
%% Include a general table of contents
\tableofcontents
%%--------------------
%% The content of the PhD thesis
\mainmatter
\part{Contexte et Problématiques}
\chapter{Introduction}
\chapterintro
Ce chapitre introductif vise à expliquer les termes du sujet et à introduire la thématique principale abordée. Il présente la problématique de cette thèse, introduit les différentes contributions proposées et annonce le plan du manuscrit.\\
Comme l'indique \cite{Nkambou}, les environnements informatiques pour l'apprentissage humain (EIAH) sont des outils proposant des services devant permettre aux apprenants d'acquérir des connaissances et de développer des compétences dans un domaine spécifique. Pour fournir des services efficaces, le système doit intégrer une représentation des connaissances du domaine et des mécanismes pour utiliser ces connaissances. Il doit également être en mesure de raisonner et de résoudre des problèmes.
%% JH : j'ai supprimé ce qui suit car je n'ai pas compris le sens : "ainsi que un module expert spécifique pour faciliter l'acquisition aux apprenants".\\
Le système \textit{Artificial Intelligence - Virtual Trainer} (AI-VT) est un EIAH générique dévéloppé au département d'informatique des systèmes complexes (DISC) de l'institut de recherche FEMTO-ST. Cet outil informatique propose un ensemble d'exercices aux apprenants dans le cadre de séances d'entrainement. AI-VT intègre le fait qu'une séance d'entraînement se situe dans un cycle de plusieurs séances. Les réponses apportées par l'apprenant à chaque exercice sont évaluées numériquement sur une échelle prédéfinie, ce qui permet d'estimer les progrès de l'apprenant et de déduire les sous-domaines dans lesquels il peut avoir des difficultés. Une séance est générée par un système multi-agents associé à un système de raisonnement à partir de cas (RàPC) \cite{doi:10.1177/1754337116651013}. Un apprenant choisit le domaine dans lequel il souhaite s'entraîner et AI-VT lui propose un test préliminaire. Les résultats obtenus permettent de placer l'apprenant dans le niveau de maîtrise adéquate. Le système génère ensuite une séance adaptée veillant à l'équilibre entre l'entraînement, l'apprentissage et la découverte de nouvelles connaissances. L'actualisation du niveau de l'apprenant est effectuée à la fin de chaque séance. De cette façon l'apprenant peut avancer dans l'acquisition des connaissances ou s'entraîner sur des connaissances déjà apprises.\\
Un certain nombre d'EIAH utilisent des algorithmes d'intelligence artificielle (IA) pour détecter les faiblesses et aussi pour s'adapter à chaque apprenant. Les algorithmes et modèles de certains de ces systèmes seront analysés dans les chapitres \colorbox{yellow}{3 et 4}. Ces chapitres présenteront leurs propriétés, leurs avantages et leurs limites.\\
Le système AI-VT initial était capable d'ajuster les paramètres de personnalisation d'une séance à l'autre, mais il ne pouvait pas modifier une séance en cours même si certains exercices de celle-ci était trop simples ou trop complexes. Chaque séance était figée et devait être déroulée jusqu'à son terme avant de pouvoir identifier des acquis et des lacunes. Les travaux de cette thèse ont eu pour objectif de pallier ce manque.
\begin{emphbox}
La problématique principale de cette thèse est
la personnalisation en temps réel du parcours d’apprentissage des apprenants dans le système AI-VT (\textit{Artificial Intelligence - Virtual Trainer})\\
\end{emphbox}
Ici \textit{le temps réel} est considéré comme étant le moment où se déroule la séance que l'apprenant est en train de suivre.
Par conséquent, l'objectif est de rendre AI-VT plus dynamique pour l'identification des difficultés et l'adaptation du contenu personnalisé en fonction des connaissances démontrées.
La partie suivante présente une liste des principales contributions apportées par cette thèse à la problématique générale énoncée plus haut.
Ce travail de thèse a été éffectué au sein l'Université de Franche-Comté (UFC) devenue depuis le 1er janvier 2025 l'Université Marie et Louis Pasteur (UMLP). Ces recherches ont été menées au sein de l'équipe DEODIS du département d'informatique des systèmes complexes de l'institut de recherche FEMTO-ST, unité mixte de recherche (UMR) 6174 du centre national de la recherche scientifique (CNRS).\\
\section{Contributions Principales}
La problématique principale de ces travaux de recherche a été déclinée en plusieurs sous-parties. Ces dernières sont présentées ci-dessous sous la forme de questions. Pour chacune d'elles, une ou plusieurs propositions ont été faites. Voici les questions de recherche abordées et les contributions apportées :
\begin{enumerate}
\item \textbf{Comment permettre au système AI-VT d'évoluer et d'intégrer de multiples outils ?} Pour répondre à cette question, une architecture modulaire autour du moteur initial d'AI-VT a été conçue et implémentée (ce moteur initial étant le système de raisonnement à partir de cas (RàPC) développé avant le démarrage de ces travaux de thèse).
\item \textbf{Comment déceler qu'un exercice est plus ou moins adapté aux besoins de l'apprenant ?} Choisir les exercices les plus adaptés nécessite d'associer une valeur liée à son utilité pour cet apprenant. Les modèles de régression permettent d'interpoler une telle valeur. Pour répondre à cette question, nous avons proposé de nouveaux modèles de régression fondés sur le paradigme du raisonnement à partir de cas et celui des systèmes multi-agents.
\item \textbf{Quel modèle et quel type d'algorithmes peuvent être utilisés pour recommander un parcours personnalisé aux apprenants ?} Pour apporter une réponse à cette question, un système de recommandation fondé sur l'apprentissage par renforcement a été conçu. L'objectif de ces travaux est de proposer un module permettant de recommander des exercices aux apprenants en fonction des connaissances demontrées et en se fondant sur les réponses apportées aux exercices précédents de la séance en cours. Ce module de révision de la séance en cours du modèle de RàPC est fondé sur un modèle Bayésien.
\item \textbf{Comment consolider les acquis de manière automatique ?} Une séance doit non seulement intégrer des exercices de niveaux variés mais également permettre à l'apprenant de renforcer ses connaissances. Dans cette optique, notre modèle Bayésien a été enrichi d'un processus de Hawkes incluant une fonction d'oubli.
\end{enumerate}
\section{Plan de la thèse}
Ce manuscrit est scindé en deux grandes parties. La première partie contient trois chapitres et la seconde en contient quatre. Le premier chapitre de la première partie (chapitre 2) vise à introduire le sujet, les concepts, les algorithmes associés, présenter le contexte général et l'application AI-VT initiale. Le deuxième chapitre de cette partie présente différents travaux emblématiques menés dans le domaine des environnements informatiques pour l'apprentissage humain. Le chapitre suivant conclut cette première partie en présentant le raisonnement à partir de cas.
Dans la seconde partie du manuscrit, le chapitre 5 explicite l'architecture proposée pour integrer les modules développés autour du système AI-VT initial et élargir ses fonctionalités. Le chapitre 6 propose deux outils originaux fondés sur le raisonnement à partir de cas et les systèmes multi-agents pour résoudre des problèmes de régression de façon générique. Le chapitre 7 présente l'application de ces nouveaux outils de régression dans un système de recommandation intégré à AI-VT utilisant un modèle Bayésien. Ce chapitre montre de quelle manière il permet de réviser une séance d'entraînement en cours. Le chapitre 8 montre l'utilisation du processus de Hawkes pour renforcer l'apprentissage.
Enfin, une conclusion générale incluant des perspectives de recherche termine ce manuscrit.\\
\chapter{Contexte}
\section{Notions et Algorithmes}
Dans ce chapitre sont décrits plus en détails les concepts et algorithmes utilisés dans le développement des modules. CEs modules font partie des contributions de cette thèse à l'environnement informatique pour l'apprentissage humain (EIAH) appelé AI-VT (\textit{Artificial Intelligence - Artificial Trainer}).
\subsection{Environnements Informatiques pour l'Apprentissage Humain (EIAH)}
Les EIAH sont des outils pour aider les apprenants dans le processus d'apprentissage et d'acquisition de la connaissance. Ces outils sont conçus pour fonctionner avec des stratégies d'apprentissage online et mixtes. Fondamentalement, l'architecture de ces systèmes est divisé en quatre composants comme le montre la figure \figref{figEIAH} :\\
\begin{itemize}
\item Le domaine, qui contient les concepts, les règles et les stratégies pour résoudre des problèmes dans un domaine spécifique. Ce module peut détecter et corriger les erreurs des apprenants. L'information, généralement, est organisée selon des séquences pédagogiques.
\item L'apprenant, ce module est le noyau du système car il contient toute l'information cognitive possible de l'apprenant ainsi que son évolution. Ce module doit avoir les informations implicites et explicites pour pouvoir créer une représentation de la connaissance et le processus d'apprentissage. C'est également important parce que cette information doit permettre de générer un diagnostic de l'état de la connaissance de l'apprenant, à partir duquel le système peut prédire les résultats dans certains domaines et choisir la stratégie optimale pour présenter les nouveaux contenus.
\item L'enseignant, reçoit l'information des modules précédents grâce à laquelle il peut prendre des décisions sur le changement de parcours ou sur la stratégie d'apprentissage. Il peut également interagir avec l'apprenant.
\item L'interface, est le module qui gère les configurations et les interactions entre les modules par différents moyens interactifs.\\
\end{itemize}
\mfigure[!ht]{scale=0.5}{./Figures/EIAH.png}{L'architecture générale des EIAH, les composantes et leurs interactions (\cite{Nkambou})}{figEIAH}
Le développement et la configuration de ce type de systèmes sont multidisciplinaires et impliquent plusieurs domaines de recherche comme: l'intelligence artificielle, la pédagogie, la psychologie, les sciences cognitives et l'éducation.
\subsection{Stratégies d'Apprentissage}
Dans \cite{LALITHA2020583}, l'apprentissage est défini comme une fonction du cerveau humain acquise grâce au changement permanent dans l'obtention de connaissances et de compétences par le biais d'un processus de transformation du comportement lié à l'expérience ou à la pratique. L'apprentissage implique réflexion, compréhension, raisonnement et mise en oeuvre. Un individu peut utiliser différentes stratégies pour acquérir la connaissance. Comme le montre la figure \figref{figStra}, les stratégies peuvent être classées entre mode traditionnel et mode online.
\mfigure[!ht]{scale=0.4}{./Figures/TLearning.png}{Stratégies d'apprentissage (\cite{LALITHA2020583})}{figStra}
%\begin{figure}[!ht]
%\centering
%\includegraphics[scale=0.4]{./Figures/TLearning.png}
%\caption{Stratégies d'apprentissage (\cite{LALITHA2020583})}
%\label{figStra}
%\end{figure}
L'apprentissage traditionnel se réfère au type d'apprentissage en classe, centré sur l'enseignant où la présence physique dans le temps et l'espace est fondamentale. Ici, l'enseignement est direct de l'enseignant à l'élève, et les ressources sont généralement des documents imprimés. L'apprentissage et la participation doivent être actifs, la rétroaction est instantanée et des interactions sociales sont présentes. Par contre, il y a un manque de flexibilité en fonction du temps \colorbox{yellow}{MLB:à revoir}.\\
L'autre stratégie globale est l'apprentissage online, qui est basé sur les ressources et l'information disponible sur le web. Cette stratégie incite activement les apprenants à acquérir de nouvelles connaissances indépendamment \colorbox{yellow}{MLB:indépendantes ou indépendemment à qq chose} grâce aux vastes ressources disponibles en ligne. Les points positifs de cette stratégie sont par exemple: la rentabilité, la mise à niveau continue des compétences et des connaissances ou une plus grande opportunité d'accéder au contenu du monde entier. Pour l'apprenant, l'auto-motivation et l'interaction peuvent être des défis à surmonter. Pour l'enseignant, il est parfois difficile d'évaluer l'évolution du processus d'apprentissage de l'individu. L'apprentissage online fait aussi référence à l'utilisation de dispositifs électroniques pour apprendre (e-learning) où les apprenants peuvent être guidés par l'enseignant à travers des liens, du matériel spécifique d'apprentissage, des activités ou exercices.\\
Il existe aussi certaines stratégies mixtes qui combinent des caractéristiques des deux stratégies fondamentales, comme un cours online mais avec quelques séances en présentiel pour des activités spécifiques ou des cours traditionnels avec du matériel d'apprentissage complémentaire online.
%\subsection{Traitement du langage naturel (NLP)}
%
%Le traitement du langage naturel est un domaine de recherche interdisciplinaire qui essaie à travers de multiples méthodes analyser et faire comprendre aux machines le langage et la communication humaine. Ce domaine est catégorisé comme une branche de l'intelligence artificielle \cite{kedia2020hands}.\\
%
%Comme on peut lire dans \cite{ghosh2019natural}, le NLP est constitué de plusieurs tâches standardisées, entre elles, la tokenisation qui est la procédure qui consiste à diviser une phrase en ses mots constitutifs, par exemple le résultat de tokeniser la phrase "Je lis un livre", est "Je", "lis", "un", "livre"; avec cet exemple on a tokenisée la phrase en utilisant uni-grams, c'est-à-dire des tokens de taille un, mais on peut extraire des ensembles de tokens, si on divise la phrase en paires de tokens alors on parle de bi-grams: "Je lis", "un livre"; en général on parle de n-grams où "n" est le nombre de tokens.\\
%
%Une autre tâche fondamentale du NLP est le "PoS Tagging" qui ajoute des identificateurs à chacun des tokens d'une phrase avec le propos de faciliter l'analyse et le filtrage du contenu des phrases. Ainsi "Le ciel est bleu", est [("Le", "AR"), ("ciel", "NN"), ("est", "VBZ"), ("bleu", "JJ")], où AR: article, NN: nom, VBZ: verbe troisième personne, JJ: adjectif. Ainsi, il est possible de connaître et de filtrer les phrases par la catégorisation de leur contenu.\\
%
%La tokenisation et le "PoS Tagging" fonctionnent avec les caractères qui font partie de l'alphabet, mais les phrases communément écrites contient aussi des caractères symboliques qui représentent des aspects complémentaires du langage et qui ne sont pas considérés dans les analyses, car ils n'apportent pas d'information significative. La tâche d'effacer les symboles jugés inutiles s'appelle "cleaning text", usuellement ces symboles sont les signes de ponctuation et parfois les articles définis / indéfinis et les mots qui servent de lien comme par exemple en français: "le", "la", "les", "est", "et", etc. Il y a d'autres tâches qui sont utilisées aussi dans NLP, mais elles sont plus spécifiques comme: normalisation, correction, "stemming", "lemmatization", "NER", etc. Elles peuvent être consultées plus en détail et avec exemples de code dans \cite{ghosh2019natural}.\\
%
%L'exécution des tâches précitées est appelée prétraitement du texte, l'idée est de donner au texte un format pour l'envoyer comme donnée d'entré à un modèle chargé de l'analyser selon un certain objectif prédétermine. Les modèles de NLP se basent en algorithmes d'apprentissage automatique qui fonctionnent avec données numériques, alors les modèles doivent convertir le texte vers une représentation numérique, cette transformation s'appelle "vectorization" ou "vector embeddings". L'une des méthodes les plus simples et les plus élémentaires est le "BoW (Bag of Words) Model" qui génère un vecteur avec les fréquences de chaque mot d'un alphabet dans une phrase, comme le montre la figure \figref{figBOW}, les limitations principales du "BoW Model" sont d'abord que les vecteurs de représentation générés sont creuses, et aussi il n'y a pas de préservation de l'ordre des mots, alors on perdre contexte et signification des phrases et du texte. Une autre modèle est TF-IDF qui normalise les fréquences d'apparition et essaie d'associer une importance aux mots, ce qui évite d'analyser la pertinence de chaque mot seulement par sa fréquence d'apparition dans le texte. Autres modèles de vectorisation plus sophistiqués comme les réseaux de neurones (Word2vec, Doc2Vec, fastText) peuvent être consultés dans \cite{kedia2020hands}.\\
%
%\mfigure[!ht]{scale=0.7}{./Figures/BoW.png}{Bag of words pour une phrase}{figBOW}
%
%%\begin{figure}
%%\centering
%%\includegraphics[scale=0.7]{./Figures/BoW.png}
%%\caption{Bag of words pour une phrase.}
%%\label{figBOW}
%%\end{figure}
\subsection{Raisonnement à partir de cas (RàPC)}
Le raisonnement à partir de cas est un type de modèle de raisonnement qui essaie d'imiter le comportement humain pour résoudre de nouveaux problèmes, en se souvenant des expériences passées. Le principe de base est que les problèmes similaires ont des solutions similaires. Si un nouveau problème arrive et que le modèle connait déjà la solution d'un problème similaire, alors la solution au nouveau problème peut être inférée des solutions déjà trouvées \colorbox{yellow}{MLB: suppr la fin de la phrase, redondant ?ou connues pour les problèmes similaires} \cite{ROLDANREYES20151}.\\
Un cas est défini comme la représentation de la description d'un problème et la description de sa solution. Dans le raisonnement à partir de cas il existe une base de cas qui permet la création de nouvelles solutions en cherchant les problèmes similaires, en utilisant les données de la description du problème et leurs solutions associées.\\
Formellement, le modèle nécessite les ensembles $P$ qui correspond à l'espace des problèmes et $S$ l'espace des solutions, alors un problème $x$ et sa solution $y$ appartiennent à ces espaces $x \in P$ et $y \in S$. Si $y$ est solution de $x$ alors, un cas dans le modèle est représenté par le couple $(x,y) \in P \times S$. Le RàPC a besoin d'une base de $n$ problèmes et de leurs solutions associées $(x^n, y^n)$, cette base est appelée base de cas. L'objectif du RàPC est, étant donné un nouveau problème $x^z$ de trouver sa solution $y^z$ en utilisant la base de cas \cite{10.1007/978-3-030-58342-2_20}.\\
\mfigure[!ht]{scale=30}{./Figures/cycle.png}{Cycle fondamental du raisonnement à partir de cas (\cite{min8100434})}{figCycle}
%\begin{figure}
%\centering
%\includegraphics[scale=30]{./Figures/cycle.png}
%\caption{Cycle fondamental du raisonnement à partir de cas %(\cite{min8100434})}
%\label{figCycle}
%\end{figure}
Le processus du RàPC est divisé en quatre étapes qui forment un cycle, la figure \figref{figCycle} montre le cycle et le flux d'informations ainsi que les associations de chacune des étapes \cite{min8100434}: rechercher, adapter, réviser et stocker. Chacune des étapes est décrite dans \cite{Richter2013}.
\subsubsection{Rechercher}
L'objectif de cette étape est de rechercher dans la base de cas, les cas similaires à un nouveau cas donné. Cette similarité n'est pas un concept général, mais dépend du contexte, de l'objectif et du type de données. La question fondamentale qui se pose dans cette étape est: quel est le cas le plus approprié dans la base de cas qui me permet de réutiliser sa solution pour résoudre le nouveau problème donné?\\
Pour évaluer le nouveau cas avec les cas de la base de données, il est nécessaire de les comparer et ainsi trouver la similitude entre eux. La comparaison entre les cas est différente selon la représentation du cas, c'est-à-dire la structure qui contient la description du problème. Généralement, il est \colorbox{yellow}{MLB:Je ne comprends pas} employé la représentation par attributs, qui décrit le cas (problème) comme un ensemble d'attributs avec des valeurs spécifiques, cette représentation est connue comme la représentation attribut-valeur. La similitude entre deux cas attribut-valeur $c_1={a_{1,1}, a_{1,1}, ..., a_{1,n}}$ et $c_2={a_{2,1}, a_{2,1}, ..., a_{2,n}}$ mesure la somme de la distance entre les attributs individuellement avec une valeur de pondération qui détermine l'importance de chaque attribut dans le mesure global comme le montre l'équation\colorbox{yellow}{MLB:A revoir} \ref{eqSim}. Dans cette étape, il est possible aussi de sélectionner $k$ différents cas similaires au nouveau cas donné.
\
\begin{equation}
\sum_{i=1}^n \omega_i \; sim (a_{1,i}, a_{2,i})
\label{eqSim}
\end{equation}
\subsubsection{Adapter (Réutiliser)}
L'idée du RàPC est d'utiliser l'expérience pour essayer de résoudre de nouveaux cas (problèmes). La figure \figref{figReut} montre le principe de réutilisation où est utilisée la solution d'un cas (problème) ancien pour l'adapter et servir comme solution d'un nouveau cas.\\
Il existe des situations pour lesquelles le nouveau cas et un ancien cas sont très similaires alors la solution au cas ancien est aussi valide pour le nouveau cas. Cependant, le plus souvent il est nécessaire d'adapter l'ancienne solution pour arriver à une solution satisfaisante du nouveau cas. De la même manière que pour la phase 'rechercher', il existe beaucoup de stratégies d'adaptation qui dépendent de la représentation, du contexte et des algorithmes utilisés. Une des stratégies les plus utilisées est la définition d'un ensemble de règles qui permettent la transformation de la solution \colorbox{yellow}{MLB:ne comprends pas}
ou les solutions trouvées. L'objectif ici est d'inférer une nouvelle solution $y_z$ du cas $x_z$ à partir des $k$ cas retrouvés dans la première étape.\\
\mfigure[!ht]{scale=20}{./Figures/Reuse.png}{Principe de réutilisation dans le RàPC (\cite{Richter2013})}{figReut}
%\begin{figure}
%\centering
%\includegraphics[scale=20]{./Figures/Reuse.png}
%\caption{Principe de réutilisation dans le RàPC (\cite{Richter2013})}
%\label{figReut}
%\end{figure}
\subsubsection{Réviser et Réparer}
Une fois que le système propose une solution au nouveau cas, cette solution doit être évaluée et révisée qu'elle soit correcte selon certains critères de validation. L'étape de révision est chargée d'évaluer l'applicabilité de la solution obtenue dans l'étape 'adaptation', cette évaluation peut être réalisée dans le monde réel ou dans une simulation.\\
Alors dans cette phase, la tâche est de valider si le couple $(x_z, y_z)$ est correct, c'est-à-dire si la solution trouvée $y_z$ résout le problème $x_z$ et satisfait les règles de validité et d'applicabilité. Si la solution n'est pas bonne en termes de qualité de la réponse, alors une nouvelle solution doit être générée en revenant à l'étape précédente. Si la solution est bonne, mais qu'elle ne satisfait pas les critères d'acceptation alors la solution doit être réparée pour corriger ses failles.\\
Le processus d'évaluation, de révision et de réparation entraine parfois un processus d'apprentissage qui permet d'améliorer la détection et la correction des failles des futures solutions générées. L'apprentissage est possible, car les modèles d'évaluation/réparation utilisent souvent des paramètres pour donner des résultats et sur ces paramètres il est possible d'appliquer des algorithmes qui vont aider à mesurer et changer les solutions selon les cas particuliers.\\
L'évaluation peut se faire soit par un expert humain qui a la capacité d'évaluer la solution selon le contexte et la pertinence, soit par un système qui fonctionne dans le monde réel renvoyant le résultat de l'application de la solution ou soit par un modèle qui utilise des simulations numériques ou données et des tests statistiques. La correction des solutions peut être automatique, mais dépend du domaine et de l'information disponible pour le faire, usuellement le conteneur du vocabulaire a un ensemble de règles qui sont appliquées aux solutions qui ont été identifiées comme non valides.
\subsubsection{Stocker (Retenir)}
Si un nouveau cas résolu est jugé pertinent, alors celui-ci peut être stocké dans la base de cas pour qu'il aide dans la résolution de futures nouveaux cas. Dans le RàPC c'est considéré comme un processus d'apprentissage, car tous les cas résolus ne sont pas retenus, seulement certains d'entre eux, ceux qui remplissent des critères prédéfinis. Cette étape a deux rôles différents, le premier est d'aider le système à améliorer sa capacité à sélectionner des cas, évaluer et corriger les solutions générées; et le second est d'optimiser la taille de la base de cas pour éviter de gaspiller l'espace de stockage et ralentir le système au moment de trouver les cas similaires.
\subsubsection{Conteneurs de Connaissance}
Pour pouvoir exécuter le cycle complet, le RàPC dépend de quatre sources différentes d'information, ces sources sont appelées les conteneurs. Les conteneurs sont: le conteneur de cas, le conteneur d'adaptation, le conteneur du vocabulaire et le conteneur de similarité \cite{RICHTER20093}:
\begin{itemize}
\item Conteneur de cas: il contient les expériences passées que le système peut utiliser pour résoudre les nouveaux problèmes. L'information est structurée comme un couple $(p, s)$, où $p$ est la description d'un problème et $s$ est la description de sa solution.
\item Conteneur d'adaptation: il stocke le ou les stratégies d'adaptation ainsi que les règles et paramètres nécessaires pour les exécuter.
\item Conteneur du vocabulaire: il contient l'information de la représentation.\colorbox{yellow}{MLB:c'est-à-dire ?les éléments... les fonctions?} Les éléments comme les entités, les attributs, les fonctionnes ou les relations entre les entités. Généralement dans le RàPC est utilisée la représentation des cas avec la structure clé-valeur.
\item Conteneur de similarité: il stoke les paramètres et la mesure de similarité $sim(p_1, p_2)$ entre les cas $p_1$ et $p_2$. \colorbox{yellow}{MLB:ne comprends pas la phrase} De plus, il est nécessaire de définir la fonction comme si le résultat est grande, alors la similitude entre $p_1$ et $p_2$ est importante ou au contraire.\\
\end{itemize}
La figure \figref{figCycle} montre les liens entre les étapes du RàPC et les conteneurs, les flèches montrent le flux de l'information, les lignes continues suivent le parcours du cycle du RàPC, les lignes discontinues sont les liens entre les étapes et les conteneurs. L'étape "Retain" peut elle interagir avec les conteneurs 2, 3 et 4 comme dans le travail de Marie \cite{Marie}.\\
\mfigure[!ht]{scale=2.5}{./Figures/CycleCBR.png}{Cycle du RàPC, les étapes, les conteneurs et leurs liens}{figCycle}
%\begin{figure}
%\centering
%\includegraphics[scale=2.5]{./Figures/CycleCBR.png}
%\caption{Cycle du RàPC, les étapes, les conteneurs et leurs liens}
%\label{figCycle}
%\end{figure}
\subsection{Systèmes Multi-Agents}
Les systèmes multi-agents sont des systèmes conçus pour résoudre des problèmes en combinant l'intelligence artificielle et le calcul distribué. Ces systèmes sont composés de multiples entités autonomes appelées agents, qui ont la capacité de communiquer entre elles et également de coordonner leurs comportements \cite{hajduk2019cognitive}.\\
Les agents ont comme propriétés:
\begin{itemize}
\item Autonomie: les agents fonctionnent sans intervention externe des êtres humains ou d'autres entités, ils ont un mécanisme interne qui leur permet de contrôler leurs états.
\item Réactivité: les agents ont la capacité de percevoir l'environnement dans lequel ils sont et peuvent réagir aux changements qui se produisent.
\item Pro-activité: les changements et réactions peuvent se produire aussi comme l'effet du processus cognitif interne, non seulement à cause des changements dans l'environnement \colorbox{yellow}{MLB:phrase à revoir}.
\item Coopération: étant donné que les agents peuvent communiquer les uns avec les autres, ils échangent de l'information qui les aide à se coordonner et à résoudre un même problème.
\item Apprentissage: il est nécessaire qu'un agent soit capable de réagir dans un environnement dynamique et inconnu, il doit donc avoir la capacité d'apprendre de ses interactions et ainsi améliorer la qualité de ses réactions et comportements.\\
\end{itemize}
Il existe quatre types d'agent en fonction des capacités et des approches:
\begin{itemize}
\item Réactif: c'est l'agent qui perçoit constamment l'environnement et agit en fonction de ses objectifs.
\item Basé sur les réflexes: c'est l'agent qui considère les options pour atteindre ses objectifs et développe un plan à suivre.
\item Hybride agent: il combine les deux modèles antérieurs en utilisant chacun d'eux en fonction de la situation et de l'objectif.
\item Basé sur le comportement: l'agent contient un ensemble de modèles de comportement pour réaliser certaines tâches spécifiques, chaque comportement se déclenche selon des règles prédéfinies ou des conditions d'activation. Le comportement de l'agent peut être modélisé avec différentes stratégies cognitives de pensée ou de raisonnement.
\end{itemize}
\subsection{Pensée Bayesienne}
D'après les travaux de certains mathématiciens et neuroscientifiques, toute forme de cognition peut être modélisée dans le cadre de la formule de Bayes (equation \ref{eqBayes}), car elle permet de tester différentes hypothèses et donner plus de crédibilité à celle qui est confirmée par les observations. Étant donné que ce type de modèle cognitif permet l'apprentissage optimal, la prédiction sur les événements passés, l'échantillonnage représentatif et l'inférence d'information manquante; il est appliqué dans quelques algorithmes de machine learning et d'intelligence artificielle \cite{Hoang}.
\begin{equation}
P(A|B)=\frac{P(B|A)P(A)}{P(B)}
\label{eqBayes}
\end{equation}
La formule de Bayes calcule la probabilité a posteriori $P(A|B)$ de la plausibilité de la théorie $A$ compte tenu des données $B$, et requiert trois termes: (1) une probabilité a priori $P(A)$ de la plausibilité de l'hypothèse $A$, (2) le terme $P(B|A)$ qui mesure la capacité de l'hypothèse $A$ à expliquer les données observées $B$ et (3) la fonction de partition $P(B)$ qui met en compétition toutes les hypothèses qui ont pu générer les données observées $B$. À chaque nouvelle évaluation de la formule, la valeur du terme a priori $P(A)$ est actualisée par la valeur du terme a posteriori $P(A|B)$. Ainsi, à chaque évaluation, le degré de plausibilité de chaque hypothèse est ajusté \cite{Hoang}.\\
Par la suite, nous explicitons quelques algorithmes, intègrés généralement dans l'étape "Rechercher" du RàPC, pour la recherche des cas les plus proches d'un nouveau cas.
\subsection{Méthode des k plus proches voisins (K-Nearest Neighborhood - KNN)}
Comme est défini dans \cite{10.1145/3459665}, la méthode des 'k' plus proches voisins est une méthode pour classifier des données dans des classes spécifiques. Pour faire cela, il est nécessaire de disposer d'une base de données avec des exemples déjà identifiés. Pour classer de nouveaux exemples, la méthode attribue la même classe que celle de leurs voisins les plus proches. Généralement, l'algorithme compare les caractéristiques d'une entité avec plusieurs possibles voisins pour essayer d'btenir des résultats plus précis. 'k' représente le nombre de voisins, puisque l'algorithme peut être exécuté à chaque fois avec un nombre différent de voisins.\\
Étant donné un jeu de données $D$ constitue de $(x_i)_{i \in [1,n]}$ données (où $n = |D|$). Chacune des données est décrite par $F$ caractéristiques qui sont des valeurs numériques normalisées $[0,1]$, et par une classe de labellisation $y_j \in Y$. Le but est de classifier une donnée inconnue $q$. Pour chaque $x_i \in D$, il est possible de calculer la distance entre $q$ et $x_i$ comme l'équation \ref{eqDist}.
\begin{equation}
d(q,x_i)=\sum_{f \in F} w_f \delta(q_f, x_{if})
\label{eqDist}
\end{equation}
C'est une somme de \colorbox{yellow}{MLB:à vérifier de} toutes les caractéristiques $F$ avec $w_f$ le poids pour chaque caractéristique. \colorbox{yellow}{MLB:vérifier la suite}La fonction de distance $\delta$ peut être une métrique générique. Pour des valeurs numériques discrètes il est possible d'utiliser la définition \ref{eqMet1},
\begin{equation}
\delta(q_f, x_{if})=
\begin{cases}
0&q_f=x_{if}\\
1&q_f \neq x_{if}
\end{cases}
\label{eqMet1}
\end{equation}
et si les valeurs sont continues l'équation \ref{eqMet2}.
\begin{equation}
\delta(q_f, x_{if})= \lvert q_f-x_{if} \rvert
\label{eqMet2}
\end{equation}
\colorbox{yellow}{MLB:paragraphe A vérifier, dernière phrase incomprise}Souvent, pour décider de la classe d'une donnée inconnue, on attribue un poids plus important aux voisins les plus proches. Une technique assez générale pour y parvenir est le vote pondéré en fonction de la distance. Les voisins peuvent voter sur une certaine classe pour attribuer à la donnée inconnue avec des votes pondérés par l'inverse de leur distance (équation \ref{eqV1}).
\begin{equation}
N(a,b)= \begin{cases} 1 & a=b \\ 0 & a \neq b \end{cases}
\label{eqV1}
\end{equation}
L'équation de vote peut être comme l'équation \ref{eqV2}.
\begin{equation}
vote(y_i)=\sum_{c=1}^{k} \frac{1}{d(q, x_c)^p}N(y_j, y_c)
\label{eqV2}
\end{equation}
une autre alternative est basée sur le travail de Shepard, équation \ref{eqV3}.
\begin{equation}
vote(y_i)=\sum_{c=1}^{k} e^{d(q, x_c)}N(y_j, y_c)
\label{eqV3}
\end{equation}
La fonction de distance peut être n'importe quelle mesure d'affinité entre deux objets, mais cette fonction doit répondre à quatre critères (équations \ref{eqCond}).
\begin{equation}
\begin{array}{l}
d(x,y) \ge 0\\
d(x,y) = 0, \; seulement \; si \; x=y\\
d(x,y)=d(y,x)\\
d(x,z) \ge d(x,y) + d(y,z)\\
\end{array}
\label{eqCond}
\end{equation}
\subsection{K-Moyennes}
Selon \cite{9072123}, K-Moyennes est un algorithme d'apprentissage utilisé pour partitionner et grouper des données. \colorbox{yellow}{MLB:il faur un verbe dans la phrase}Étant donné $X = \{x_1, . . . , x_n\}$ un ensemble dans un espace Euclidien $\mathbb{R}^d$. Et $A = \{a_1, . . . , a_c\}$ avec $c$ comme nombre de groupes. Ainsi que $z = [z_{ik} ]_{n \times c}$, où $z_{ik}$ est une variable binaire (i.e. $z_{ik} \in \{0, 1\}$) qui indique si une donnée $x_i$ appartient au k-ème groupe, $k = 1, · · · , c$. L'équation \ref{eqKM} montre la fonction objective k-moyenne.
\begin{equation}
J (z, A) = \sum_{i=1}^n \sum_{k=1}^c z_{ik} \parallel x_i - a_k \parallel ^2
\label{eqKM}
\end{equation}
\colorbox{yellow}{MLB:a discuter}L'algorithme des k moyennes est itéré à travers les conditions nécessaires pour minimiser la fonction objectif des k moyennes $J (z, A)$ avec la mise à jour des équations pour les centres du groupe (équation \ref{eqCentres}) et les appartenances (\ref{eqApp}), respectivement.
\begin{equation}
a_k=\frac{\sum_{i=1}^n z_{ik}x_{ij}}{\sum_{i=1}^n z_{ik}}
\label{eqCentres}
\end{equation}
\begin{equation}
z_{ik}=\begin{cases}1 & if \parallel x_i - a_k \parallel ^2=min_{1 \le k \le c} \parallel x_i - a_k \parallel ^2\\ 0,&otherwise\end{cases}
\label{eqApp}
\end{equation}
\subsection{Modèle de Mélange Gaussien GMM (\textit{Gaussian Mixture Model})}
Comme décrit dans \cite{WANG2021331}, le modèle de mélange gaussien (GMM) est un modèle probabiliste composé de plusieurs modèles gaussiens simples. Considérant une variable multidimensionnelle $x=\{x_1, x_2, ..., x_d\}$ en tant qu'entrée, GMM multivarié est défini comme dans l'équation \ref{eqGMM}.
\begin{equation}
p(x \lvert \theta)=\sum_{k=1}^K \alpha_k g(x \lvert \theta_k)
\label{eqGMM}
\end{equation}
Dans cette équation, $K$ est le nombre de modèles gaussiens uniques dans GMM, également appelés composants; \colorbox{yellow}{MLB:pas compris}$\alpha_k$ est la probabilité de mélange de la k-ème composante du modèle de mélange sujette à la condition que montre l'équation \ref{eqK}.
\begin{equation}
\sum_{k=1}^K \alpha_k=1
\label{eqK}
\end{equation}
$\theta_k$ représente la valeur moyenne et la matrice de covariance de chaque modèle gaussien unique: $\theta_k=\lbrace \mu_k, \Sigma_k \rbrace$. Pour un seul modèle gaussien multivarié, nous avons la fonction de densité de probabilité $g(x)$ (équation \ref{eqdProb}).
\begin{equation}
g(x; \mu, \Sigma)=\frac{1}{(2\pi)^{n/2} \lvert \Sigma \rvert ^{1/2}} exp \left( - \frac{1}{2} (x-\mu)^T \Sigma ^{-1} (x-\mu) \right )
\label{eqdProb}
\end{equation}
La tâche principale est d'obtenir les paramètres $\alpha_k, \theta_k$ pour tout $k$ défini dans GMM en utilisant un ensemble de données avec $N$ échantillons d'entrainement. Une solution classique et disponible pour l'estimation des paramètres requis utilise l'algorithme de maximisation des attentes (Expectation-Maximization EM), qui vise à maximiser la vraisemblance de l'ensemble de données. Il s'agit d'une approche itérative, et les paramètres sont continuellement mis à jour jusqu'à ce qu'ils répondent au critère terminal: \colorbox{yellow}{MLB:la suite est bien l'expression du critère?}lorsque la valeur delta log-vraisemblance entre deux itérations est inférieure à un seuil donné. Les paramètres du modèle de mélange peuvent enfin être obtenus après des itérations répétées, qui présentent une estimation de la distribution de l'ensemble des données et qui \colorbox{yellow}{MLB:ok qui?}sont utilisés pour une opération de génération ultérieure.
\subsection{Fuzzy-C}
Fuzzy C-Means Clustering (FCM) est un algorithme de clustering flou non supervisé largement utilisé \cite{9627973}. Le FCM utilise comme mesure de distance la mesure euclidienne. Supposons d'abord que l'ensemble d'échantillons à regrouper est $X=\{x_1,x_2,...,x_n\}$, où $x_j \in R^d(1 \le j \le n)$ dans le d-dimensionnel espace Euclidien, et $c$ est le nombre de clusters. L'équation \ref{eqFuzzy} montre la fonction objectif de FCM.
\begin{equation}
J(U,V)=\sum_{i=1}^c \sum_{j=1}^n u_{ij}^m (x_j - v_i)^T A(x_j-v_i)
\label{eqFuzzy}
\end{equation}
où $A$ est la matrice métrique, $m$ est un nombre quelconque ($m > 1$) qui dénote le degré de flou, $u_{ij}$ est le degré d'appartenance du j-ème échantillon $x_j$ qui appartient au i-ème cluster, dont le centre est $v_i$. $U=(u_{ij})$, $V=[v_1,v_2,...,v_c], 1 \le i \le c, 1 \le j \le n, 2 \le c < n$, et $u_{ij}$ satisfait les conditions de l'équation \ref{eqFCond}.
\begin{equation}
\sum_{i=1}^c u_{ij} = 1, u_{ij} \ge 0
\label{eqFCond}
\end{equation}
Pour compléter le modèle, les équations de mise à jour pour le centre du cluster $v_i$ (équation \ref{eqFV}) et des degrés d'appartenance $u_{ij}$ (équation \ref{eqFU}) sont définies.
\begin{equation}
v_i=\frac{\sum_{j=1}^n u_{ij}^m x_j}{\sum_{j=1}^n u_{ij}^m}
\label{eqFV}
\end{equation}
\begin{equation}
u_{ij}=\frac{((x_j-v_i)^TA(x_j-v_i))^{\frac{2}{m-1}}}{\left( \sum_{h=1}^c (x_j-v_h)^TA(x_j-v_h) \right)^{\frac{2}{m-1}}}
\label{eqFU}
\end{equation}
Les algorithmes qui se trouvent dans la suite de cette section sont des algorithmes qui font partie de l'intelligence artificielle et sont utilisés dans certains EIAH pour améliorer les recommandations, essayer de corriger et de détecter les faiblesses des apprenants de façon automatique.
\subsection{Bandit Manchot MAB (\textit{Multi-Armed Bandits})}
Dans \cite{9434422} MAB est décrit comme un problème qui appartient au domaine de l'apprentissage par renforcement, celui-ci représente un processus de prise de décision séquentielle dans des instants $t$ de temps, où un utilisateur doit sélectionner une action $k_t \in K$ à réaliser dans un ensemble $K$ fini de possibles actions et chacune d'elles donne une récompense qui est inconnue pour l'utilisateur. L'objectif est de maximiser la récompense cumulée globale dans le temps. La clé pour trouver une solution au problème est de trouver l'équilibre optimal entre l'exploration (exécuter des actions inconnues pour collecter de l'information complémentaire) et l'exploitation (continuer à exécuter les actions déjà connues pour cumuler plus de gains). L'un des algorithmes utilisés pour résoudre ce problème c'est l'échantillonnage de Thompson.
\subsection{Échantillonnage de Thompson TS (\textit{Thompson Sampling})}
Comme indiqué dans \cite{9870279}, l'algorithme d'échantillonnage de Thompson est un algorithme de type probabiliste utilisé généralement pour résoudre le problème MAB.\colorbox{yellow}{MLB:ne comprends pas la suite} Il est basé sur le principe Bayesien où il y a une distribution de probabilité a priori et avec les données obtenues est génèrée une distribution de probabilité a posteriori utilisée pour essayer de maximiser l'estimation de la valeur espérée, la distribution de base utilisée est la distribution Beta qui est définie sur $[0, 1]$ et paramétrée par deux valeurs $\alpha$ et $\beta$, c'est un cas particulier de la loi de Dirichlet comme le montre la figure \figref{figBeta}. L'équation \ref{eqBeta} décrit formellement la famille des courbes générées par la distribution Beta.\\
Chaque action de MAB a une distribution Beta dont les paramètres sont initialisés en 1. Ces valeurs changent et sont calculées à partir des récompenses obtenues : si au moment d'exécuter une action spécifique le résultat est un succès, alors la valeur du paramètre $\alpha$ de sa distribution Beta doit augmenter mais si le résultat est un échec alors la valeur du paramètre $\beta$ de sa distribution Beta doit augmenter. De ce façon, la distribution pour chacune des possibles actions est ajustée en privilégiant les actions qui génèrent le plus de récompenses sur les autres actions. A chaque nouvelle itération, toutes les distributions sont plus précises sur la valeur espérée des actions.\\
\mfigure[!ht]{scale=0.5}{./Figures/beta-distribution.png}{Comportement de la distribution Beta avec différents valeurs dans ses paramètres}{figBeta}
%\begin{figure}
%\centering
%\includegraphics[scale=0.5]{./Figures/beta-distribution.png}
%\caption{Comportement de la distribution Beta avec différentes valeurs dans ses paramètres}
%\label{figBeta}
%\end{figure}
\begin{equation}
B(x, \alpha, \beta) =
\begin{cases}
\frac{x^{\alpha-1}(1-x)^{\beta - 1}}{\int_0^1 u^{\alpha - 1}(1-u)^{\beta - 1}du} & pour x \in [0, 1] \\
0&sinon
\end{cases}
\label{eqBeta}
\end{equation}
Dans les deux chapitres suivants nous présentons les travaux récents, en rapport avec le sujet de thèse, qui utilisent les concepts et algorithmes explicités dans ce chapitre.\\
\part{État de l'art}
\chapter{Environnements Informatiques d'Apprentissage Humain}
\markboth{CHAPITRE 3. \'ETAT DE L'ART (EIAH)}{}
Dans ce chapitre sont mentionnés des travaux qui sont en rapport avec le travail de la thèse spécifiquement sur les EIAH, mais ils utilisent des approches différents, alors ici est faite une classification de ces travaux mais selon le thème principal qu'ils abordent.
\section{L'Intelligence Artificielle}
L'intelligence artificielle a été appliquée avec succès au domaine de l'éducation dans plusieurs écoles de différents pays et pour l'apprentissage de l'informatique, les langues étrangères et les sciences comme le montre le travail de \cite{ZHANG2021100025} qui analyse des articles dans la période de 1993-2020, où il est importante de voir aussi que il n'y a pas une distinction en age, ni en niveau culturel, ni en niveau éducatif. En plus, avec les différentes techniques d'intelligence artificielle qui sont appliquées il est possible d'adapter la stratégie d'apprentissage pour n'importe qui et maximiser le rendement et acquisition des connaissances. Une caractéristique assez notable est que les représentations et algorithmes peuvent changer et évoluer. Aujourd'hui il y a encore beaucoup de potentiel pour développer encore les capacités de calcul et d'adaptation.\\
Un travail plus analytique de l'utilisation de l'intelligence artificielle dans l'éducation est \cite{CHIU2023100118} qui présente une révision des travaux d'intelligence artificielle appliquée à l'éducation extraits des bases de données bibliographiques ERIC, WOS et Scopus dont la date de publication est dans la période 2012-2021, ce travail est focalisé sur les tendances et les outils employées pour aider dans le processus d'apprentissage. Après l'analyse de 92 travaux, une classification des contributions de l'IA est crée : apprentissage, enseignement, évaluation et administration. Dans l'apprentissage, est utilisée généralement l'IA pour attribuer des tâches en fonction des compétences individuelles, fournir des conversations homme-machine, analyser le travail des étudiants pour obtenir des commentaires et accroître l'adaptabilité et l'interactivité dans les environnements numériques. Dans l'enseignement, peuvent être appliquées des stratégies d'enseignement adaptatives, améliorer la capacité des enseignants à enseigner et soutenir le développement professionnel des enseignants. Dans le domaine de l'évaluation, l'IA peut fournir une notation automatique et prédire les performances des élèves. L'IA aide dans le domaine de l'administration à améliorer la performance des plateformes de gestion, à soutenir la prise de décision pédagogique et à fournir des services personnalisés. Quelques-unes des lacunes identifiées de l'IA dans le domaine de l'éducation sont : les ressources recommandées par les plateformes d'apprentissage personnalisées sont trop homogènes, les données nécessaires pour les modèles d'IA sont très spécifiques, le lien entre les technologies et l'enseignement n'est pas bien clair, la plupart des travaux sont conçus pour un domaine ou un objectif très spécifique (peu de généralité), l'inégalité éducative car les technologies ne motivent pas tous les types d'élèves et parfois il y a des attitudes négatives envers l'IA, parce qu'elle est difficile à maîtriser et a intégrer dans les cours.\\
Les techniques d'IA peuvent aussi aider à prendre des décisions stratégiques qui visent des objectifs à long échéance comme le montre le travail de \cite{Robertson2014ARO} qui analyse plusieurs publications réalisées dans le domaine de l'utilisation de l'IA en jeux stratégiques. Les jeux stratégiques sont un très bon terrain d'entrainement parce que ils contient plusieurs règles, environnements pleins de contraintes, actions et réactions en temps réel, caractère aléatoire et informations cachées. Les techniques principales identifiées sont: l'apprentissage par renforcement, les modèles Bayésiens, la recherche en arbre, le raisonnement à partir de cas, les réseaux de neurones et les algorithmes évolutifs. Ici est notable aussi comme la combinaison de ces techniques permet dans certains cas d'améliorer le comportement global des algorithmes et d'obtenir meilleures réponses.
\section{Systèmes de Recommandation dans les EIAH}
Les systèmes de recommandation dans les environnements d'apprentissage considèrent les exigences, les nécessites, le profil, les talents, les intérêts et l'évolution de l'apprenant pour s'adapter et recommander des ressources ou des exercices avec le but d'améliorer l'acquisition et maîtrise de concepts et des connaissances en général. L'adaptation de ces systèmes peut être de deux types, l'adaptation de la présentation qui montre aux apprenants les ressources en concordance avec leurs faiblesses et l'adaptation de la navigation qui change la structure du cours en fonction du niveau et style d'apprentissage de chaque apprenant \cite{MUANGPRATHUB2020e05227}. Ces systèmes montrent des effets positifs pour les apprenants comme le révèle le travail de \cite{HUANG2023104684}, qui applique l'intelligence artificielle pour personnaliser des recommandations de ressources en vidéo et ainsi aider et motiver les apprenants, les effets ont été validés avec la différence entre des test préliminaires et des test après la finalisation du cours ainsi que un groupe de contrôle qui a suivi le même cours sans le système de recommandation. La figure \ref{figArch} montre l'architecture du système où l'intelligence artificielle est utilisée dans différents étapes du processus avec les données de l'apprenant et la supervision et contrôle du professeur.\\
\begin{figure}
\centering
\includegraphics[scale=0.5]{./Figures/architecture.png}
\caption{Architecture du système de recommandation proposé dans \cite{HUANG2023104684}}
\label{figArch}
\end{figure}
Le travail de \cite{pmlr-v108-seznec20a} propose un modèle générique de recommandation qui peut être utilisé dans les systèmes de recommandation de produits ou les systèmes d'apprentissage. Ce modèle est basé sur l'algorithme par renforcement UCB (Upper Confidence Bound) qui permet de trouver une solution approchée à une variante du problème bandit manchot non stationnaire (MAB), où les recompenses de chaque action diminuent chaque fois que elle est utilisée. Pour valider le modèle une comparaison avec trois autres algorithmes sur une base de données réelle a été réalisée, les métriques employées sont la moyenne accumulée du régret et la moyenne de la récompense accumulée. Avec les deux métriques, le modèle proposé est très performant.\\
Aussi \cite{INGKAVARA2022100086}, met en évidence que les technologies et les systèmes de recommandation peuvent s'adapter à différents besoins et aspirations ainsi que favoriser l'apprentissage auto-régulé. Ce type d'apprentissage aide aux apprenants à acquérir les habilités pour améliorer leur vitesse et performance; parce que y trouvent des objectifs variables, un environnement structuré, des temps d'apprentissage variable et des ressources de support et de renforcement.\\
Comme vu précédemment, les techniques de l'intelligence artificielle sont largement utilisées dans l'apprentissage et l'enseignement; l'apprentissage adaptatif pour suggérer des ressources d'étude est l'objectif du travail de \cite{LALITHA2020583} où est proposé un système avec un module de personnalisation qui collecte l'information de l'apprenant et ses exigences, un module de classification qui compare l'information avec d'autres profiles en utilisant l'algorithme KNN et un module de recommandation chargé de identifier les ressources communs entre les profiles et d'extraire information complémentaire d'Internet avec Random Forest pour améliorer le processus d'apprentissage du nouveau apprenant. Les techniques et les stratégies sont très variées mais l'objectif est de s'adapter aux apprenants et leurs besoins; Dans \cite{ZHAO2023118535} les données des apprenants sont collectés et classifiés dans groupes avec des caractéristiques similaires, puis pour déterminer la performance de chaque apprenant est utilisée la méthode d'analyse par enveloppement des données (DEA) qui permet d'identifier les besoins spécifiques de chaque groupe et ainsi proposer un parcours d'apprentissage personnalisé.\\
Un aspect pertinent des systèmes de recommandation qu'il faut bien considérer est la représentation des données des enseignants, des apprenants et l'environnement; parce que les multiples types de structures qu'on peut utiliser et son contenu peuvent conduire vers des résultats différents et changements dans la performance des algorithmes ou techniques employées. La proposition de \cite{SU2022109547} est de stocker les données des apprenants dans deux graphes évolutifs qui contient les relations entre les questions et les réponses correctes ainsi que les réponses données par les apprenants, pour construire un graphe global de chaque apprenant avec son état cognitif et avec lequel est analysé et prédit la performance dans un contexte spécifique et ainsi pouvoir proposer un parcours personnalisé. Dans \cite{MUANGPRATHUB2020e05227} sont représentés les concepts comme trois ensembles: les objets (G), les attributs (M) et les relations entre G et M ; avec l'idée de les analyser avec l'approche FCA (Formal Context Analysis), Ce type de représentation permet de mettre en rapport les ressources, les questions et les sujets, ainsi si un apprenant étudie un sujet $S_1$ et il y a une règle qui relie $S_1$ avec le sujet $S_4$ ou la question $Q_34$, alors le système peut suggérer l'étude de ces ressources, l'algorithme complet explore la structure prédéfinie du cours pour recommander un parcours exhaustif d'apprentissage.\\
La recommandation personnalisé d'exercices est aussi une autre approche des systèmes de recommandation comme le fait \cite{Zhou2021} de forme spécifique pour l'apprentissage de l'anglais, le système contient un module principal qui représente les apprenants comme des vecteurs selon le modèle DINA où sont stockes les points de connaissance acquise, le vecteur est n-dimensionnel $K=\{k_1, k_2, ..., k_n\}$ et chaque dimension correspond à un point de connaissance, ainsi si $k_1=1$ alors l'apprenant maîtrise le point de connaissance $k_1$, et si $k_2=0$ alors l'apprenant doit étudier le point de connaissance $k_2$ car il n'a pas acquise la maîtrise dans ce point-là. Sur ce type de représentation est basé la recommandation des questions proposées par le système, il y a aussi une librairie de ressources associes à chacune des possibles questions, avec lesquelles l'apprenant peut renforcer son apprentissage et avancer dans le programme du cours.\\
Certains travaux de recommandation et personnalisation considèrent des variables complémentaires aux notes comme dans \cite{EZALDEEN2022100700}, qui lie l'analyse du comportement de l'apprenant et l'analyse sémantique. La première étape consiste en collecter les données nécessaires pour créer un profile de l'apprenant, avec le profile complet, sont associés l'apprenant et un groupe de catégories prédéfinies d'apprentissage selon ses préférences et les données historiques, puis en ayant une valeur pour chaque catégorie sont cherchés les concepts associés pour les catégories et ainsi est générée une guide pour obtenir des ressources qu'on peut recommander sur le web. Le système est divisé en quatre niveaux comme montre la figure \figref{figLevels} où chacun des niveaux est chargé de une tache spécifique dont les résultats sont envoyés au niveau suivant jusqu'à arriver aux recommandations personnalisés pour l'apprenant.\\
\mfigure[!ht]{scale=0.5}{./Figures/ELearningLevels.png}{Niveaux du système de recommandation dans \cite{EZALDEEN2022100700}}{figLevels}
%\begin{figure}[!ht]
%\centering
%\includegraphics[scale=0.5]{./Figures/ELearningLevels.png}
%\caption{Niveaux du système de recommandation dans le travail \cite{EZALDEEN2022100700}}
%\label{figLevels}
%\end{figure}
Une limitation générale qui presentent les algorithmes d'IA dans les EIAH est que ce type d'algorithmes ne permettent pas d'oublier l'information avec laquelle ils ont été entrainés, une propiété nécessaire pour les EIAH dans certaines situations où peut se produire un disfonctionnement du système, la réévaluation d'un apprenant ou la reestructuration d'un cours.\\
Le tableau \ref{tabArts} montre un récapitulatif des articles analysés dans l'état de l'art des EIAH.\\
\begin{table}
\footnotesize
\begin{tabular}{p{4.2cm}p{10cm}}
Référence&Limites et faiblesses\\
\hline
\cite{ZHANG2021100025}&Niveau global d'application de EIAH. Analyse des effets de l'IA\\
\cite{CHIU2023100118}&Aspects non cognitifs en IA. Motivation des apprenants\\
\cite{Robertson2014ARO}&Peu de test. Pas de standard d'évaluation\\
\cite{HUANG2023104684}&Recommandation en fonction de la motivation seulement. N'est pas général pour tous les apprenants\\
\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\\
\cite{INGKAVARA2022100086}&Modèle très complexe. Définition de constantes subjectif et beaucoup de variables.\\
\cite{LALITHA2020583}&A besoin de beaucoup de données pour entrainement. Ne marche pas dans le cas 'cold-start', nést pas totalement automatisé\\
\cite{SU2022109547}&Estimation de la connaissance de façon subjective. Il est nécessaire une étape d'entrenaiment\\
\cite{MUANGPRATHUB2020e05227}&Structure des règles complexe. Définition de la connaissance de base complexe\\
\cite{Zhou2021}&Utilisation d'un filtre collaboratif sans stratification. Utilisation d'une seule metrique de distance\\
\cite{EZALDEEN2022100700}&Il n y a pas de comparaison avec d'autres modèles différents de CNN. Beaucoup de variables à valeurs subjectives\\
\end{tabular}
\caption{Tableau de synthèse des articles analysés dans l'état de l'art des EIAH}
\label{tabArts}
\end{table}
%\bibliographystyle{spimphdthesis}
\bibliographystyle{apalike}
%% Link the GENERAL bibliogaphy to a BibTeX file.
\bibliography{main.bib}
\end{document}