Ce manuscrit de thèse est le fruit d'un long travail de recherche qui a été riche en enseignements. Durant ces années, j'ai beaucoup appris tant du point de vue professionnel que personnel, plus que je n'aurais imaginé avant de commencer cette thèse. Pour tout cela, je souhaite remercier les personnes qui m'ont entouré durant cette période. Je tiens tout d'abord à particulièrement remercier ma directrice Anne Boyer et mon codirecteur Sylvain Castagnos avec qui j'ai eu la chance de pouvoir travailler durant toute cette thèse. Anne m'a apporté son expérience et son recul dans le domaine de la recherche et Sylvain m'a guidé et soutenu dans chacune des étapes de ce travail. J'ai beaucoup apprécié travailler avec vous et je vous remercie encore une fois ici pour vos conseils avisés, votre patience, votre bonne humeur et pour tout ce que j'ai pu apprendre à vos côtés. Je remercie Sylvie Calabretto et Laurent Vercouter qui ont rapporté ma thèse et qui ont accepté de faire partie du jury de thèse. Leurs remarques pertinentes m'ont donné un recul et une conance nouvelle en mon travail. Je remercie Laurent Vigneron qui a apporté un regard extérieur et bienveillant sur mon travail pendant ces années de thèse et qui a également accepté de faire partie du jury comme examinateur. Je remercie aussi l'équipe KIWI dans son ensemble. De nombreuses idées de ce travail sont le fruit de discussions avec les membres de l'équipe, dont certains sont devenus pour moi des amis proches. Je remercie enn ma famille et mes amis, leur soutien m'a donné la motivation de terminer ce travail dans cette période dicile de pandémie et d'isolation sociale. Tout particulièrement, je remercie Rose et Ragnar pour leur douce présence quotidienne. i 4.10 Exemple de détection de sessions dans la base de données. L'heure à laquelle est lancée chaque musique (ici en bas dans le schéma) ainsi que sa durée sont enregistrées. Si l'utilisateur ne relance pas de musique pendant 15 minutes après la n de sa dernière écoute, alors la session en cours est terminée et une nouvelle session est commencée à la prochaine musique lancée. . . . . . . . . . .

 [START_REF] Quadrana | Sequence-aware recommender systems[END_REF]). . . . . . . . . . . . . . . . . . . . . .

2.3

Schéma représentant l'interaction entre un agent et l'environnement dans lequel il évolue [START_REF] Russell | Articial intelligence : a modern approach[END_REF]. . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4

Simulation de boids où l'on peut voir les agents se déplaçant dans la même direction à une certaine distance les uns des autres dans un environnement simulé [Reynolds, 1987]

2.7

Illustration de l'expérience des ponts binaires par Jean-Louis Deneubourg (a).

Après un certain temps, les fourmis choisissent majoritairement une des deux voies possibles (b) [START_REF] Deneubourg | The self-organizing exploratory pattern of the argentine ant[END_REF]. . . . . . . . . . . . . . . . . . . . . .

2.8

Schéma du dispositif expérimental utilisé pour vérier si les fourmis sont bien capables d'emprunter rapidement la voie la plus courte lorsque leur sont présentés des choix qualitativement diérents [START_REF] Goss | Selforganized shortcuts in the argentine ant[END_REF]]. . . . . . . . . . . . . . . .

2.9

Front de Pareto d'un problème de minimisation de deux variables f 1 et f 2. Toutes les solutions sur cette frontière sont optimales (source Wikipedia). . . . . . . . . .

3.1

Graphe représentant l'évolution exponentielle du nombre d'arêtes selon le nombre de sommets existants dans un graphe complet. . . . . . . . . . . . . . . . . . . .

3.2

Graphe représentant l'évolution linéaire du nombre d'arêtes selon le nombre de sommets voulus dans un graphe créé avec diérentes valeurs de d. . . . . . . . . .

4.1

Diagramme de ux représentant le déroulement de l'algorithme ACS, proposé par [Schlunz, 2011]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.2

Deux exemples de congurations expérimentales diérentes permettant chacune de tester la capacité des fourmis à trouver le plus court chemin dans un evironnement [START_REF] Goss | Selforganized shortcuts in the argentine ant[END_REF]]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.3

Illustration de l'expérience des ponts binaires par Jean-Louis Deneubourg (a).

Après un certain temps, les fourmis choisissent majoritairement une des deux voies possibles (b) [START_REF] Deneubourg | The self-organizing exploratory pattern of the argentine ant[END_REF] Les systèmes de recommandation existent depuis maintenant plus de deux décennies [START_REF] Resnick | Grouplens : an open architecture for collaborative ltering of netnews[END_REF] et ont pris leur essor avec la démocratisation d'Internet et de l'accès à l'information. Le but d'un système de recommandation est, comme son nom l'indique, de recommander des ressources à l'utilisateur pour l'aiguiller parmi la masse d'informations disponibles. Le terme de ressource peut faire référence à un produit, une information, un lm, une musique, etc.

Ces ressources doivent correspondre à ce qu'attend l'utilisateur pour répondre à ses attentes.

Là où d'autres méthodes d'aide à l'utilisateur, comme les moteurs de recherche, proposeront une liste de sites Internet relatifs à une question générale (ex. : la requête lms super-héros résultera en une liste des lms de super-héros les plus connus et/ou récents) ; un système de recommandation proposera quant à lui une réponse plus spécique à un besoin plus précis (ex. :

un système recommandera à un utilisateur de voir le dernier lm de super-héros du studio Marvel car ce dernier a apprécié tous les lms réalisés par ce studio spécique ces dernières années). Une autre spécicité majeure des systèmes de recommandation réside dans le fait que ces derniers répondent à un besoin de l'utilisateur qui n'aura pas forcément été exprimé en amont par ce dernier. Contrairement aux moteurs de recherche qui se contentent de répondre à une requête de l'utilisateur, les systèmes de recommandation proposent quant à eux des informations de manière pro-active au moment le plus opportun. Un des dés majeurs des systèmes de recommandation, en plus de proposer des recommandations au bon moment, est de réussir à modéliser ce que l'utilisateur souhaite réellement alors que les seules données disponibles proviennent des traces laissées par les utilisateurs lors des précédentes interactions avec le système (consultation de pages, achat de produits, visionnage de lms, etc.). Les systèmes de recommandation apportent une réelle plus-value par rapport à d'autres méthodes (comme les moteurs de recherche) car l'aide proposée se veut très personnalisée selon les préférences de chaque utilisateur. Cet objectif de personnalisation entraîne cependant une complexication du problème, car il est nécessaire de dénir et de prendre en compte les facteurs humains sous-jacents à la satisfaction de l'utilisateur lors de la recherche d'information. Nous allons maintenant nous intéresser plus particulièrement aux diérentes techniques employées par les systèmes de recommandation.

Les systèmes de recommandation existent depuis plus de deux décennies et, même si les techniques ont évolué, le principe fondamental reste le même : identier les besoins et les préférences d'un utilisateur pour lui proposer des ressources adaptées. Pour ce faire, la première étape est de récolter des informations à propos de l'utilisateur dans le but d'identier ses préférences.

Les informations récoltées sont dépendantes du domaine dans lequel est déployé le système de recommandation. Sur un site d'e-commerce, le système pourra par exemple utiliser les produits consultés par l'utilisateur ainsi que les éventuelles notes sur les produits qu'il a acheté. Un site d'écoute de musique exploitera quant à lui les titres écoutés par l'utilisateur ainsi que son comportement durant l'écoute (est-ce qu'il a écouté le titre jusqu'au bout ? etc.).

Durant ces deux décennies d'existence, les systèmes de recommandation ont changé pour accompagner l'évolution des usages d'Internet. Les premières générations de systèmes étaient naturellement adaptées aux ressources, peu nombreuses et complexes, typiques du début de l'ère d'Internet. C'est à cette époque que les deux grandes catégories de systèmes de recommandation se sont diérenciées, à savoir le ltrage collaboratif [START_REF] Resnick | Grouplens : an open architecture for collaborative ltering of netnews[END_REF] et le ltrage par contenu [START_REF] Belkin | Information ltering and information retrieval : two sides of the same coin[END_REF]. Dans le ltrage collaboratif, les préférences des utilisateurs du système sont utilisées (e.g. pour un site de recommandation de lms : les notes données par les utilisateurs du site sur les lms qu'ils ont vu). Ainsi, le système proposera à l'utilisateur souhaitant des recommandations les ressources appréciées des autres utilisateurs qui lui sont similaires, suivant l'hypothèse selon laquelle les préférences d'un ensemble d'utilisateurs similaires sont cohérentes entre elles. Dans le ltrage par contenu, les caractéristiques des ressources sont utilisées (e.g.

pour un site de recommandation de lms : genre, acteurs, année de sortie,. . . ). Ainsi, le système proposera à l'utilisateur les ressources similaires à celles qu'il a appréciées précédemment. Pendant longtemps, ces deux techniques ont été évaluées sur la mesure de précision. Pour calculer cette mesure, les prédictions du système de recommandation sont directement confrontées aux données réelles recueillies avec de vrais utilisateurs. Par exemple, un système calcule qu'un utilisateur pourrait donner à un lm une note de 4 sur 5, indiquant qu'il pourrait eectivement apprécier ce lm et qu'il serait intéressant de lui recommander. Cette note calculée de 4/5 est ensuite comparée avec la note réelle que cet utilisateur a donné à ce lm spécique, note qui avait auparavant été cachée au système de recommandation pendant les calculs. Plus la note prédite et la note réelle sont proches et plus le système va être jugé précis [START_REF] Konstan | Recommender systems : A grouplens perspective[END_REF]].

Cette précision peut se mesurer via diérentes métriques, comme par exemple l'erreur moyenne absolue, qui calcule la déviation entre ce qu'a prédit le système et les préférences réelles de l'utilisateur [START_REF] Sammut | [END_REF]. Cette méthode, bien qu'intuitive, a tendance à enfermer les utilisateurs dans leurs préférences déjà établies puisque c'est précisément de cette manière que les performances du système sont jugées. Ainsi, dans le cas du ltrage par contenu, si l'utilisateur avait apprécié par le passé un type de ressources particulier, le système tendait à lui recommander plus de ressources de ce type.

Un autre problème provenant de l'évolution des usages peut être soulevé ici. À l'origine, les systèmes de recommandation se concentraient dans quelques domaines particuliers, comme par exemple les lms ou les produits de sites commerciaux. Les recommandations étaient alors présentées à l'utilisateur sous forme de ressources uniques ou de liste de ressources similaires.

Cette manière de présenter les recommandations est encore très courante aujourd'hui alors que les usages ont évolué et que les systèmes de recommandation sont présents dans un nombre de plus en plus grand de domaines où recevoir une liste de ressources n'est pas forcément adapté.

Pour conclure sur cette partie, il est clair que les systèmes de recommandation ont évolué depuis leur création. Cependant, des problèmes demeurent quant à l'évaluation de leurs performances et la satisfaction de l'utilisateur nal, ainsi que pour la présentation des résultats à l'utilisateur nal.

Prenons maintenant deux exemples qui vont servir à illustrer ce propos dans le chapitre. Le premier exemple se concentre sur le problème de l'évaluation par la précision dans le domaine de 1.1. Introduction l'e-commerce. Considérons un utilisateur qui consulte depuis quelques temps des appareils photographiques sur un site de vente en ligne. Le système de recommandation détecte ce comportement et calcule les produits les plus similaires disponibles sur le site, à savoir d'autres appareils photographiques. Après s'être décidé, l'utilisateur achète son appareil et, satisfait, le reçoit chez lui quelques jours plus tard. Lors de ses prochaines connexions au site de vente en ligne, le système de recommandation proposera encore à l'utilisateur des appareils photographiques car ce sont eectivement toujours ces produits qui correspondent le plus à ses préférences, même si l'utilisateur n'en a maintenant plus besoin. Ce premier exemple montre le problème relatif à la sur-utilisation de la précision comme mesure de la performance. Si les premières recommandations basées sur la précision pouvaient être utiles pour l'utilisateur, on voit bien qu'une fois l'achat eectué cette mesure n'est plus adaptée. Des recommandations sur des nouveaux produits pourraient par exemple ici se révéler intéressantes pour l'utilisateur. Une autre amélioration possible pourrait être la prise en compte de la temporalité. Des recommandations d'appareils photographiques pourraient être utiles à l'utilisateur, mais peut-être dans plusieurs mois ou années et non pas directement après son achat.On voit bien ici que le système de recommandation ne peut pas se contenter de la seule mesure de précision et pourrait bénécier de l'utilisation d'autres mesures.

Prenons maintenant un deuxième exemple dans le domaine de l'e-education pour illustrer les problèmes que peut apporter la présentation des recommandations sous forme de liste à l'utilisateur nal. Un utilisateur s'est inscrit récemment sur un site proposant des cours en ligne car il souhaite apprendre la programmation en Java. Il consulte ainsi un cours sur les bases de la programmation en Java et le termine avec succès. Le système de recommandation du site calcule un certain nombre de ressources éducatives similaires au cours qu'il vient de suivre et les propose sous forme de liste. L'utilisateur se voit donc proposer en tête de liste d'autres cours pour débutants en Java ainsi que quelques cours pour débutants dans d'autres langages de programmation dans le reste de la liste. L'utilisateur aurait davantage proté d'une recommandation de plusieurs ressources éducatives s'adaptant à son niveau et proposant une augmentation de la diculté pour qu'il poursuive son apprentissage, illustrant l'intérêt de ne pas uniquement proposer des recommandations sous forme de liste. On remarque une nouvelle fois que la prise en compte d'autres mesures auraient amélioré la qualité des recommandations : temporalité, prise en compte du niveau de l'utilisateur, diversité des cours proposés, etc.

Ces deux exemples mettent en exergue la complexité du domaine de la recommandation, tant les besoins des utilisateurs peuvent être variés et complexes à satisfaire. La satisfaction de l'utilisateur nal est l'objectif central de tout système de recommandation, tout en étant un problème ouvert et complexe. En eet, la satisfaction d'un utilisateur n'est pas binaire mais continue (un utilisateur n'est pas soit satisfait soit non satisfait, mais sera plutôt satisfait de la recommandation à un certain degré). Nous proposons donc ici d'aborder ce problème sous un autre angle : comment améliorer la qualité des recommandations fournies à l'utilisateur dans le but d'obtenir de l'utilisateur nal une plus haute satisfaction ? Les deux exemples ci-dessus illustrent l'eet potentiellement néfaste de proposer des recommandations innapropriées, c'est-à-dire qui ne satisfont pas les besoins de l'utilisateur au moment où celui-ci les reçoit . En eet, un utilisateur à qui l'on propose de manière récurrente des recommandations innapropriées sera de plus en plus méant quant à la capacité du système de produire des recommandations adaptées à ses besoins au moment t. De la même manière, un mauvais système de recommandation ne sera pas utile à l'utilisateur pour satisfaire ses besoins. Il a été prouvé que ces deux notions de conance et d'utilité diminuent chez l'utilisateur face à un système de recommandation ne les satisfaisant pas [START_REF] Benbasat | Trust in and adoption of online recommendation agents[END_REF]. À terme, ce genre de recommandations peut amener l'utilisateur à ne plus utiliser le système s'il ne perçoit pas la valeur ajoutée de celui-ci. Les exemples précédents donnent aussi quelques pistes sur la manière d'améliorer la qualité des recommandations.

En eet, on peut remarquer que, même si les propositions étaient satisfaisantes du point de vue interne du système, elles ne l'étaient pas du point de vue externe de l'utilisateur. Cette contradiction peut s'expliquer par le fait que le système ne prend simplement pas assez en compte les facteurs déterminant les besoins de l'utilisateur. Un système réussissant à mieux modéliser un utilisateur et prenant en compte les facteurs les plus importants pour ce dernier dans le processus de recommandation permettrait de mieux satisfaire ses besoins. La problématique scientique principale de cette thèse peut donc se formuler ainsi : SP0 : Comment améliorer la qualité des recommandations faites aux utilisateurs ?

S'intéresser à la qualité des recommandations implique de s'intéresser à l'évaluation de ces dernières. Dans la prochaine section, nous détaillerons les dés et enjeux de cette problématique et son lien avec l'évaluation, puis nous dénirons plusieurs sous-problématiques permettant d'y apporter des réponses.

Préambule

L'amélioration de la qualité des recommandations des utilisateurs est un vaste sujet auquel il est possible de répondre de multiples façons. Il est d'abord nécessaire de se demander ce que signie améliorer la qualité dans cette question. Nous avons vu jusqu'à maintenant qu'un système de recommandation mesure classiquement la qualité de ses résultats selon une métrique, la précision. Cependant, la satisfaction de l'utilisateur n'est pas forcément en accord avec cette mesure comme cela a été illustré dans l'exemple des appareils photographiques où, malgré un score de précision potentiellement très haut, l'utilisateur peut ne pas être satisfait des propositions du système. La satisfaction de l'utilisateur nal peut être évaluée de deux manières diérentes.

Premièrement, elle peut être mesurée directement via un système d'évaluation des recommandations, où l'on demande par exemple à l'utilisateur de noter la recommandation qui vient de lui être proposée. Deuxièmement, elle peut être mesurée indirectement en observant le comportement de l'utilisateur après lui avoir fourni la recommandation [START_REF] Shani | Evaluating recommendation systems[END_REF].

Si ce dernier consulte ou consomme la ressource recommandée plutôt qu'une autre, il est raisonnable de faire l'hypothèse qu'il est satisfait par cette recommandation : c'est ce qu'on appelle le taux d'acception des recommandations d'un système par rapport à un utilisateur. Ces deux méthodes d'évaluation permettent d'avoir une idée de la corrélation entre les métriques internes du système et la satisfaction réelle de l'utilisateur. Il est plus simple de se baser sur des mesures internes pour évaluer un système, comme la précision, plutôt que sur des mesures externes, comme par exemple la satisfaction réelle de l'utilisateur, étant donné que celle-ci demande de mettre le système en ligne et de l'évaluer après un certain temps d'utilisation. L'évaluation sur les seules performances du système est appelée évaluation hors ligne tandis que l'évaluation en conditions réelles est appelée évaluation en ligne [START_REF] Shani | Evaluating recommendation systems[END_REF]. L'évaluation hors ligne, même si potentiellement moins apte à juger de la satisfaction de l'utilisateur, ore tout de même de nombreux avantages. Elle permet premièrement de réaliser des expériences rapidement et à bas coûts étant donné qu'il n'y a pas besoin d'attendre que les utilisateurs se servent du système. Elle permet ensuite d'utiliser des bases de données déjà créées, permettant aux chercheurs de se concentrer uniquement sur la conception du système de recommandation (comme par exemple la très connue base de données MovieLens qui rassemble un grand nombre 1.2. Préambule d'évaluations de lms par des utilisateurs sous la forme de notes [START_REF] Resnick | Grouplens : an open architecture for collaborative ltering of netnews[END_REF]). Enn, elle permet de comparer les performances de diérentes techniques de manière objective en les appliquant à un même jeu de données. Autrement dit, l'évaluation en ligne permet d'obtenir des résultats provenant directement d'utilisateurs dans un contexte réel, mais est très couteuse en temps et en ressource. L'évaluation hors ligne est quant à elle peu couteuse en temps et en ressources et permet de réaliser autant d'expérimentations que nécessaire. Dans le contexte de cette thèse où la question de la qualité des recommandations est centrale, ces deux méthodes d'évaluations possèdent chacune des avantages et des inconvénients et seront discutées dans le chapitre dédiée aux expérimentations du manuscrit.

L'amélioration de la qualité des recommandations est un point crucial de nos jours, tant les systèmes de recommandation sont omniprésents dans notre monde. Presque tous les grands sites commerciaux sont désormais dotés d'un système de ce genre dans le but de garder l'utilisateur plus longtemps sur leur site (Youtube 1 , Deezer 2 , Netix 3 ), de le satisfaire pour qu'il revienne à son prochain achat, voire même de susciter chez lui de nouvelles envies grâce à la caractéristique de ces systèmes d'être force de proposition (Amazon 4 ). Les entreprises commerciales ne sont pas les seules à exploiter le potentiel des systèmes de recommandations. Les écoles et universités commencent elles aussi à se doter de systèmes de recommandation permettant aux étudiants de s'auto-former en utilisant les vastes ressources éducatives mises à disposition par celles-ci [START_REF] Drachsler | Panorama of recommender systems to support learning[END_REF]] [Boyer et al., 2015]. De la même manière, le domaine de l'héritage culturel et du tourisme s'équipe petit à petit d'applications smartphone permettant aux touristes, perdus devant les possibilités oertes par certains lieux de culture, une aide automatisée et personnalisée [START_REF] Borràs | Intelligent tourism recommender systems : A survey[END_REF].

Devant l'explosion de la popularité des systèmes de recommandation, devant la complexité grandissante des ressources à recommander et devant l'augmentation du nombre d'utilisateurs de ces systèmes, un constat a été fait : proposer constamment des ressources similaires par rapport aux préférences de l'utilisateur n'est plus susant [START_REF] Mcnee | Being accurate is not enough : how accuracy metrics have hurt recommender systems[END_REF]. De nouvelles études et expérimentations ont montré que proposer des recommandations selon d'autres modalités que la précision pouvait être bénéque. Citons ici la mesure de diversité qui a été dénie par [START_REF] Smyth | Similarity vs. diversity[END_REF] comme étant l'inverse de la similarité entre deux ressources. Ainsi, plus deux ressources sont similaires entre elles et moins elles seront diverses, et vice versa. Proposer des recommandations plus diversiées permet d'éviter aux utilisateurs de recevoir toujours les mêmes recommandations similaires à leurs préférences, ou encore d'augmenter le nombre des ressources pouvant être recommandées à un utilisateur (cette proportion entre ressources existantes et ressources pouvant être recommandées est appelée la couverture d'un système). Citons aussi la mesure de nouveauté qui fait quant à elle référence à une ressource qui n'a jamais été vue par l'utilisateur [START_REF] Castells | Novelty and diversity in recommender systems[END_REF]. La nouveauté permet de remplir un des buts principaux d'un système de recommandation, à savoir faire découvrir à l'utilisateur des ressources qu'il n'aurait peut-être pas trouvées sans le système. Il est cependant important de préciser que l'apport de ces mesures dans les systèmes de recommandation est aussi discuté. Par exemple, [START_REF] Ekstrand | User perception of dierences in recommender algorithms[END_REF] ont montré que, si la diversité était corrélée positivement avec la satisfaction des utilisateurs, ce n'était pas le cas de la nouveauté. Les auteurs expliquent que cette corrélation négative pourrait être due au fait qu'un système proposant beaucoup de ressources nouvelles sans [START_REF] Castagnos | Eye-tracking product recommenders' usage[END_REF]. Après s'être décidé avec l'aide du système, l'utilisateur achète son appareil. Lors de ses prochaines connexions sur le site de vente en ligne, le système de recommandation ne proposera peu ou plus d'appareils photographiques. À la place, l'utilisateur se verra recommander du matériel photographique dont il pourrait maintenant avoir l'utilité, comme un étui de protection ou encore diérents objectifs.

Le système lui recommandera aussi de nouveaux produits qu'il n'a encore jamais consulté dans le but de lui faire découvrir la grande variété des produits vendus par le site, comme par exemple du matériel informatique.

Contributions

Dans cette thèse, une réponse à été apportée à chacune des problématiques scientiques énoncées ci-dessus. Ces contributions scientique ont fait l'objet de trois publications :

Workshop international SMAP 5 : Walk the line : Toward an ecient user model for recommendations in museums [START_REF] Osche | Walk the line : toward an ecient user model for recommendations in museums[END_REF] ; Conférence internationale ECIR 6 : AntRS : Recommending lists through a multiobjective ant colony system [Osche et al., 2019a] ;

Workshop international ALA 7 organisé avec la conférence internationale AAMAS 8 :

From Music to Museum : Applications of Multi-Objective Ant Colony Systems to Real World Problems [START_REF] Osche | From music to museum : Applications of multi-objective ant colony systems to real world problems[END_REF].

Dans la suite de cette section, un aperçu plus en détail des réponses apportées aux problématique scientique est donné. [START_REF] Ferber | Multi-agent systems : an introduction to distributed articial intelligence[END_REF]. Nous avons utilisé l'un de ces systèmes inspiré des colonies de fourmis pour répondre à notre problématique [START_REF] Dorigo | Ant system : optimization by a colony of cooperating agents[END_REF]] [Dorigo et al., 2006]. Dans la nature, il a été observé que les fourmis empruntaient la plupart du temps le plus court chemin possible entre leur fourmilière et une source de nourriture. Une fourmi prise séparément n'a pas des capacités cognitives très développées avec ses quelques centaines de milliers de neurones seulement. Cependant, l'interaction entre toutes les fourmis de la fourmilière produit ce qu'on appelle un eet d'émergence.

L'interaction d'animaux simples (ou d'agents si l'on parle d'un système informatique) provoque l'émergence d'une intelligence collective capable de résoudre des problèmes dont la complexité dépasse la somme des capacités des individus [START_REF] Bonabeau | Swarm intelligence : from natural to articial systems[END_REF] [START_REF] Belkin | [END_REF]Croft, 1992, Lops et al., 2011] et le ltrage collaboratif [START_REF] Resnick | Grouplens : an open architecture for collaborative ltering of netnews[END_REF]. La principale diérence entre ces deux approches repose sur l'exploitation de diérents types des données : le ltrage par contenu utilise les informations descriptives caractérisant les utilisateurs et les ressources du système tandis que le ltrage collaboratif exploite uniquement les interactions entre utilisateurs et ressources, comme les consultations ou les votes [Aggarwal et al., 2016]. Ces deux familles ont par la suite donné naissance a de nombreuses techniques que nous n'aborderons pas ici. Toutes peuvent cependant être rapportées à l'une ou l'autre de ces familles ou à une combinaison des deux. Dans la suite de cette section, nous reviendrons rapidement sur ces deux familles qui ont marqué les débuts des systèmes de recommandation et qui regroupent à elles seules un grand nombre d'articles de la littérature du domaine. Cette introduction aux systèmes de recommandation servira aussi à présenter quelques concepts-clés liés à ces systèmes.

Le ltrage par contenu

Le ltrage par contenu est une des deux approches majeures dans les systèmes de recommandation [START_REF] Belkin | [END_REF]Croft, 1992, Lops et al., 2011]. Le but d'un système de ltrage par contenu est de proposer des recommandations à l'utilisateur uniquement en fonction des caractéristiques des ressources appréciées. Ce genre de système va donc enregistrer les actions de l'utilisateur sur les ressources qu'il a consultées dans le but de trouver d'autres ressources qu'il pourrait apprécier.

Cette méthode de fonctionnement implique deux principes :

1. Le système doit pouvoir enregistrer les actions de l'utilisateur dans le système 9 2.1. Les systèmes de recommandation les méta-données an de décrire toutes les ressources de la même manière et, éventuellement, de pouvoir partager ou utiliser des bases de données utilisant les mêmes standards.

On peut par exemple citer le Learning Object Metadata, qui est un standard utilisé en e-éducation pour décrire des ressources éducatives [START_REF] Risk | Draft standard for learning object metadata[END_REF]. Des domaines comme le web sémantique ou les systèmes à base d'ontologie ont comme but de structurer ces données descriptives lorsqu'elles ne le sont initialement pas.

Le ltrage par contenu a l'avantage de pouvoir fournir des recommandations à un utilisateur même s'il est le seul à utiliser le système, tant que ce dernier possède des informations sur les ressources consultées. Cependant, la qualité des recommandations dépendra directement de la qualité de ces informations. Si les actions de l'utilisateur ou les descriptions de ressources sont insusantes, un système de ltrage par contenu ne sera pas capable de proposer de recommandations de grande qualité. Une autre limite majeure de ce genre de système réside dans le manque de nouveauté. En eet, après un certain temps, les recommandations proposées par le système ont un risque de sclérose provoqué par un manque de nouvelles informations dans le système.

Le ltrage collaboratif

La deuxième approche majeure des systèmes de recommandation est donc le ltrage collaboratif [START_REF] Resnick | Grouplens : an open architecture for collaborative ltering of netnews[END_REF]. Cette technique utilise les préférences des autres utilisateurs du système sur les ressources pour estimer les préférences de l'utilisateur. L'hypothèse sous-jacente a cette méthode est qu'il est possible de prédire les préférences d'un utilisateur en étudiant ce que d'autres utilisateurs similaires en termes de préférences ont aimé. Si beaucoup de ces utilisateurs similaires ont apprécié une ressource, alors il est probable que l'utilisateur apprécie aussi cette ressource. Cette méthode repose ici aussi sur deux principes :

1. Comme pour le ltrage par contenu, il faut d'abord pouvoir collecter les actions de nombreux utilisateurs sur les ressources du système an d'en déterminer leurs préférences.

2. Le système doit ensuite déterminer les utilisateurs les plus similaires à l'utilisateur en terme de préférences, avec pour but nal de lui recommander des ressources qu'il n'a pas encore consulté et qui sont appréciées par ces utilisateurs similaires.

Le ltrage collaboratif permet, par rapport au ltrage par contenu, de proposer des recommandations à l'utilisateur sans forcément connaître le contenu des ressources recommandées. En eet, le système ne manipule que des préférences générales, souvent représentées numériquement par une note associée à une ressource et à un utilisateur. En d'autres termes, le ltrage collaboratif s'intéresse à l'usage qui est fait des ressources, et non aux ressources en elles-mêmes.

Une fois ces préférences établies, ce genre de système peut donc s'adapter à des domaines où les ressources sont diérentes. Cependant, il est aussi nécessaire d'avoir à disposition un grand nombre d'utilisateurs ainsi que leurs préférences an de pouvoir utiliser ce genre de système correctement. et al., 1998] où les auteurs dénissent trois catégories permettant de grouper les actions de même importance ensemble (1/ consultation de la ressource, 2/ conservation de la ressource, 3/ partage de la ressource). On peut aussi citer [Castagnos, 2008] Plusieurs raisons peuvent expliquer pourquoi les systèmes de recommandations ont initialement emprunté des techniques venant de la recherche d'information et en voici trois parmi les plus évidentes. Premièrement, les systèmes de recommandation sont à la croisée de plusieurs disciplines parmi lesquelles, entre autres, la recherche d'information [START_REF] Adomavicius | Toward the next generation of recommender systems : A survey of the state-of-the-art and possible extensions[END_REF]. Ce domaine a beaucoup utilisé et utilise toujours les mesures de précision et de rappel [Salton, 1989], il est donc naturel que les premiers systèmes de recommandation aient utilisé ces mesures de performance. Deuxièmement, très tôt dans le domaine des systèmes de recommandation, des corpus de données ont été mis à disposition de tous, tel que, MovieLens 11 grâce à GroupLens [START_REF] Resnick | Grouplens : an open architecture for collaborative ltering of netnews[END_REF]. Ces corpus de données ont beaucoup aidé le domaine en permettant à tous les chercheurs de mesurer la performance de leurs algorithmes en les comparant avec les résultats obtenus par d'autres études de la littérature sur les mêmes données.

Les actions des utilisateurs

La similarité

Comme nous l'avons vu dans la section précédente, l'importance de la similarité dans les systèmes de recommandation est évidente tant ces derniers ont longtemps eu comme but principal de proposer des ressources proches, autrement dit similaires, de ce qu'appréciait déjà l'utilisateur.

Nous avons vu que la précision a beaucoup été utilisée pour évaluer ces systèmes, mais il était aussi nécessaire de déterminer à quel point des ressources et/ou des utilisateurs étaient proches les uns des autres. En eet, les approches les plus utilisées, comme le ltrage collaboratif ou le ltrage par contenu, nécessitent souvent de déterminer un ensemble d'utilisateurs ou un ensemble de ressources proches des goûts de l'utilisateur. Pour ce faire, ces systèmes vont utiliser des métriques permettant de juger la similarité de deux variables entre elles. On retrouve parmi ces métriques le coecient de corrélation de Pearson qui calcule la corrélation linéaire r entre deux variables à l'aide de leur covariance. Cette corrélation peut être appliquée à des prols utilisateurs [START_REF] Shardanand | Social information ltering : Algorithms for automating" word of mouth[END_REF] possédant des évaluations communes sur des ressources. L'Équation 2.1 décrit son calcul pour deux prols utilisateurs u x et u y .

r ux,uy = n 1 (u x i -u x ) × (u y i -u y ) n 1 (u x i -u x ) 2 × n 1 (u y i -u y ) 2 (2.1)
où n est le nombre de co-consultations des deux prols utilisateurs u x et u y , u x i est une note individuelle du prol de l'utilisateur u x et ūx est la moyenne des notes dans le prol u x . Classiquement, les évaluations des ressources co-consultées sont considérées pour calculer la corrélation de Pearson dont la valeur r ∈ [-1; 1] où une valeur proche de 1 signie une corrélation positive entre les utilisateurs (autrement dit une forte similarité entre les deux), -1 une corrélation négative (autrement dit une forte dissimilarité entre les deux utilisateurs), et 0 une absence de corrélation linéaire entre les deux prols 12 .

12. Une valeur de corrélation de Pearson r = 0 signie uniquement une absence de corrélation linéaire entre les deux variables étudiées. Il est cependant possible qu'une corrélation non linéaire existe entre ces deux variables.

On peut aussi citer la très utilisée similarité cosinus, permettant de calculer l'angle formé par deux vecteurs. Cette idée a d'abord été proposée dans le domaine de la recherche d'information an de comparer deux documents, représentés sous forme de vecteurs d'occurrences de mots [START_REF] Salton | Introduction to modern information retrieval[END_REF]. Cette mesure a ensuite été adaptée pour le ltrage collaboratif en remplacant les documents par les utilisateurs, les mots par les ressources et les occurrences par les votes [START_REF] Breese | Empirical analysis of predictive algorithms for collaborative ltering[END_REF] 13 . Le calcul de la similarité cosinus est présenté dans l'Équation 2.2.

Cosine_Similarity(u 1 , u 2 ) = u 1 u 2 u 2 1 u 2
ILS(u) = i j ∈L i k ∈L,i j =i k sim(i j , i k ) 2 (2.3)
où ILS u est la similarité intra-liste d'un utilisateur u, i j et i k sont deux ressources de la liste recommandée L et sim(i j , i k ) est la similarité des deux items i j et i k , similarité pouvant être calculée diéremment selon la méthode utilisée (similarité cosinus, similarité de Jaccard, etc.). Cette manière de procéder est intéressante car, premièrement, elle dénote avec les mesures classiques et permet de proposer une liste plus homogène plaisante pour l'utilisateur, et non plus uniquement sur les performances pures des systèmes. Deuxièmement, le fait de considérer la liste de recommandations comme un tout, et non plus uniquement comme des ressources alignées les unes à la suite des autres, permet de se rapprocher de la notion de séquence dont nous allons parler dans la suite de cette section. Enn, l'article de [McNee et al., 2006] et al., 2006]. Dans cet article, les auteurs expliquent que, jusqu'alors, la majorité des recherches s'étaient étroitement concentrées sur l'amélioration de la précision des systèmes. Ils soutiennent cependant que cet état de fait a nui au domaine en n'encourageant pas les recherches allant dans d'autres directions, et a aussi nui aux utilisateurs car les recommandations les plus précises ne sont pas forcément les meilleures pour ces derniers. Même si ce constat a été fait il y a plus d'une décennie, la précision est toujours très utilisée dans le domaine des recommandations.

Par conséquent, il n'est pas rare de trouver des études très récentes se démarquant encore en prônant l'utilisation d'autres mesures [START_REF] Gan | Enhancing recommendation diversity using determinantal point processes on knowledge graphs[END_REF].

La diversité et la similarité sont deux mesures extrêmement liées et ont souvent été décrites ensemble. La similarité intra-liste, présentée dans la section précédente, est un exemple de ce lien puisque cette mesure permet de faire varier le taux de similarité, ou inversement de diversité, d'une liste de ressources. Dans [START_REF] Smyth | Similarity vs. diversity[END_REF], les auteurs soutiennent l'idée que lorsque plusieurs ressources sont proposées, il est important de mesurer à la fois la similarité de chacune de ces ressources par rapport à la cible (pouvant être par exemple un modèle utilisateur), mais aussi la diversité de chacune de ces ressources entre elles. Le dé revient alors à améliorer la diversité des ressources entre elles sans compromettre leur similarité par rapport à la cible. Les auteurs dénissent ainsi la diversité d'un ensemble de ressources (i 1 , . . . , i n ) comme la dissimilarité moyenne entre toutes les paires de ressources, illustré dans l'Équation 2.4, où la dissimilarité est dénie comme étant l'inverse de la similarité.

Diversity(i 1 , . . . , i n ) = i=1..n j=1..n (1 -Similarity(i i , i j )) n 2 * (n -1) (2.4)
Il existe plusieurs interprétations et dénitions de la diversité dans les systèmes de recommandation, mais nous n'utiliserons ici que la plus répandue vue ci-dessus : la diversité s'applique à un ensemble de ressources et correspond à la mesure moyenne de la dissimilarité par rapport à chacune d'entre elles. Pour complémenter cette dénition qui permet d'introduire une valeur générale de diversité pour une liste de ressources, nous pouvons présenter ici la notion de diversité 17. Être précis n'est pas susant : comment les mesures de précision ont nui aux systèmes de recommandation.

relative RD 18 qui consiste à calculer l'apport en diversité de chaque ressource i à un ensemble de ressources C 19 [START_REF] Smyth | Similarity vs. diversity[END_REF]. La RD permet d'observer les changements dans la diversité de la liste au moment même de sa construction à chaque fois que le système ajoute une nouvelle ressource à la liste déjà existante. La manière de la calculer est expliquée dans l'Équation 2.5.

RD(i, C) =    0 si C = {}, i=1..m (1 -Similarity(i, c j )) m
, sinon.

(2.5)

La diversité est aujourd'hui reconnue comme une mesure importante à prendre en compte dans les systèmes de recommandation car permettant d'améliorer la satisfaction de l'utilisateur [Jones, 2010] à chaque recommandation sous peine de nuire à l'ecacité du système [START_REF] Castagnos | Utilité et perception de la diversité dans les systèmes de recommandation[END_REF].

De la même manière, on peut rappeler les travaux de [START_REF] Castagnos | Eye-tracking product recommenders' usage[END_REF] prouvant qu'il est bénéque pour l'utilisateur de se voir proposer des recommandations diverses juste avant un achat sur un site d'e-commerce.

La nouveauté

La nouveauté est un facteur humain qui, sous la même impulsion que la diversité, est apparue comme une réponse possible au problème de la sur-utilisation de la précision. Même si les deux mesures de diversité et de nouveauté sont liées, il convient de ne pas les confondre.

La nouveauté d'une ressource se dénit généralement par rapport aux autres ressources déjà consultées par l'utilisateur. La notion de diversité s'applique, quant à elle, à un ensemble de ressources en déterminant si elles sont diverses les unes par rapport aux autres [START_REF] Castells | Novelty and diversity in recommender systems[END_REF]. La nouveauté répond de plus à un besoin bien spécique de l'utilisateur. En eet, et comme l'expliquent [START_REF] Vargas | Rank and relevance in novelty and diversity metrics for recommender systems[END_REF] N ovelty(i, u) = p(i|unknown, u) • dis(i, pref u ) • p(i|like, u)

(2.6) où p(i|unknown, u) est la probabilité que l'utilisateur u ne connaisse pas la ressource i, dis(i, pref u ) est la dissimilarité entre i et l'ensemble des ressources consultées par l'utilisateur et p(i|like, u) est la probabilité que u apprécie i. On retrouve ainsi dans cette manière de mesurer la nouveauté les 3 caractéristiques mises en avant par [Zhang, 2013] : pour que le score de nouveauté d'une ressource soit haut, elle doit être pour l'utilisateur à la fois inconnue, satisfaisante et dissimilaire avec ce qu'il a l'habitude de voir.

De récentes études ont exploré plus avant le lien entre nouveauté et satisfaction de l'utilisateur.

Nous pouvons citer ici [START_REF] Schnabel | Short-term satisfaction and long-term coverage : Understanding how users tolerate algorithmic exploration[END_REF] où les auteurs ont testé l'impact de nouvelles recommandations par rapport à l'exploitation des préférences déjà connues des utilisateurs. Ils en concluent qu'une petite dose de nouveauté permet d'améliorer la satisfaction de l'utilisateur mais que trop de ressources nouvelles nuisent fortement à sa satisfaction.

Discussion

Au travers de ces quelques exemples, un changement de vision dans le domaine de la recommandation a été illustré. D'un domaine où la majeure partie des études était initialement concentrée sur la maximisation d'une seule métrique, la précision [START_REF] Ricci | Recommender Systems Handbook[END_REF], nous avons vu que de plus en plus de travaux s'intéressaient à d'autres manières de proposer des recommandations. Ainsi, on peut désormais trouver pléthore d'études tentant de trouver des compromis entre plusieurs des facteurs discutés ci-dessus, comme la précision et la diversité [START_REF] Ziegler | Improving recommendation lists through topic diversication[END_REF][START_REF] Huillier | Understanding usages by modeling diversity over time[END_REF], ou encore entre la précision, la sérendipité 21 et la nouveauté [Ka- minskas and Bridge, 2016]. Ces nouvelles manières de procéder ont pour but d'identier les facteurs explicatifs de la satisfaction des utilisateurs an de les prendre en compte dans des modèles plus complexes et plus généraux.

Il est cependant important de noter que, outre ceux cités dans les sections précédentes, de nombreux autres facteurs humains ont été étudiés dans la littérature pour répondre au problème 21. La notion de sérendipité fait référence à l'heureuse découverte, soit le fait de découvrir par hasard quelque chose d'intéressant qui n'aurait potentiellement pas été découvert sans aide [START_REF] Iaquinta | Introducing serendipity in a content-based recommender system[END_REF].

de la satisfaction utilisateur et de la sur-utilisation de la précision. On peut citer la sérendipité, la couverture, le contexte, la personnalité de l'utilisateur... Nous avons fait le choix de nous baser sur 4 facteurs couramment dans la littérature an de tester la problématique de cette thèse sur la recommandation multi-objectifs. La multitude de facteurs humains étudiés ces dernières années pour enrichir les recommandations soulignent à quel point il est important de nos jours de penser des modèles génériques capables d'intégrer de nouveaux facteurs humains à la demande.

Cette première grande section de l'état de l'art a montré que le domaine de la recommandation est passé d'un problème d'optimisation mono-objectif à un problème d'optimisation multiobjectifs. Un système de recommandation à l'heure actuelle se doit de prendre en compte les facteurs humains tels que ceux présentés dans les sections précédentes an d'être performant et capable de satisfaire le plus grand nombre de type d'utilisateurs dans le maximum de situations possibles. C'est dans ce contexte multi-objectif que cette thèse se positionne. Dans la deuxième et dernière grande section de cet état de l'art, nous allons présenter et comparer diérentes manières de proposer des recommandations à l'utilisateur : la recommandation unitaire, la recommandation en liste et la recommandation en séquences. Nous allons notamment nous attarder sur les listes et les séquences car elles sont les plus à mêmes de fournir des recommandations complexes intégrant de multiples objectifs.

2.3

La recommandation en séquence

Dénition et généralités sur les séquences

Pour comprendre l'intérêt des séquences, il est nécessaire de s'attarder sur les listes. En eet, dès les premiers systèmes de recommandation, les utilisateurs se sont la plupart du temps vu proposer soit des ressources uniques soit des listes de ressources. On peut dénir une liste ainsi :

Dans le domaine de la recommandation, une liste est un ensemble de ressources ordonnées selon un ou plusieurs critères, orant à l'utilisateur le choix de consulter ces ressources indépendamment les unes des autres.

Présenter une liste de recommandations a ainsi pour but de proposer les ressources ayant obtenu le score le plus haut selon un ou plusieurs critères choisis par le système pour produire des recommandations. Comme nous l'avons vu dans la section précédente, un des critères les plus utilisés était originellement la précision. L'autre spécicité d'une liste est d'orir à un utilisateur plusieurs ressources adaptées à ses préférences à un temps t. Ainsi, le but n'est pas moins de satisfaire l'objectif à moyen/long terme de l'utilisateur que de simplement lui proposer une liste de ressources alternatives adaptées à son prochain choix. Autrement dit, le but d'une liste de recommandations est de satisfaire les besoins d'un utilisateur au temps t + 1 (soit à sa prochaine action). Le format des listes a donc souvent été utilisé car il permet à la fois de maximiser les chances de satisfaire l'utilisateur tout en tirant parti des mécanismes internes de production de recommandations générant la plupart du temps des listes de ressources, de la plus précise à la moins précise pour chaque utilisateur. Ce mode de représentation, de par sa capacité à proposer des alternatives, se rapproche déjà un peu plus du cadre de notre travail d'optimisation multi-critères contrairement aux recommandations unitaires. Il n'est donc pas question ici de remettre en cause l'intérêt d'utiliser des listes de ressources comme format de recommandations, ces dernières étant adaptées à de nombreux domaines d'application. De très populaires sites l'évaluation des systèmes de recommandation de [START_REF] Herlocker | Evaluating collaborative ltering recommender systems[END_REF] 23. Même si quelques modèles utilisant à la fois des séquences et des méthodes de factorisation de matrices ont été proposés ces dernières années [START_REF] Yu | A sequential recommendation approach for interactive personalized story generation[END_REF], Zhao et al., 2014, Twardowski, 2016, Chen and Li, 2019].

Domaines d'application des modèles séquentiels

Comme nous l'avons expliqué auparavant, il est évident que certains domaines d'applications sont adaptés aux systèmes de recommandation sensibles aux séquences, comme par exemple la musique ou le tourisme [START_REF] Nurbakova | Recommandation de séquences d'activités lors d'évènements distribués[END_REF]. Inversement, certains domaines semblent moins bénécier de tels systèmes. Le domaine de l'e-commerce est un cas particulier dans le sens où il a vu un grand nombre de ces systèmes y être testés, quand bien même il semble à première vue être moins adaptés aux séquences. Deux raisons peuvent expliquer cet état de fait. Premièrement, il a statistiquement été prouvé que la très grande majorité des clients consultant un site d'e-commerce ne le font en réalité que dans le but de trouver un seul produit spécique avant de quitter le site [START_REF] Qiu | Predicting customer purchase behavior in the e-commerce context[END_REF]. Deuxièmement, le domaine de l'e-commerce est généralement très représenté dans les systèmes de recommandation [START_REF] Quadrana | Sequence-aware recommender systems[END_REF], potentiellement dû aux forts intérêts nanciers et à l'ancienneté de l'utilisation de ce domaine d'application. Dans la suite de cette section, nous allons nous intéresser à quelques exemples de systèmes sensibles aux séquences dans les domaines de la musique et du tourisme an d'illustrer l'état du domaine ainsi que les directions potentielles pour de futurs travaux. gérer le grand nombre de musiques des catalogues en ligne, problèmes qui ont par la suite été résolus avec la production de nouveaux systèmes et l'augmentation de la puissance de calcul des machines [START_REF] Aucouturier | Scaling up music playlist generation[END_REF]. On peut cependant aussi trouver des études dont le but était d'exploiter les caractéristiques spéciques du domaine musical pour proposer des adaptations des techniques classiques de recommandation utilisées dans l'e-commerce [Logan, 2002].

Dans le domaine musical

Plus récemment, le domaine des recommandations musicales a beaucoup gagné en popularité, comme l'illustre le célèbre ACM RecSys Challenge dont l'édition 2018, en partenariat avec Spotify 24 , s'est portée sur la musique avec comme challenge de créer un système capable de prolonger des playlists déjà existantes 25 . Au total, plus de 100 équipes ont participé à ce dé et plus de 15 articles ont été publiés. Voici un court résumé des 4 approches ayant été les plus performantes : [START_REF] Volkovs | Two-stage model for automatic playlist continuation at scale[END_REF] ont proposé un modèle en deux étapes basé sur des méthodes de ltrage collaboratif utilisant la factorisation de matrice (Weighted Regularized Matrix Factorization [START_REF] Hu | Collaborative ltering for implicit feedback datasets[END_REF]) et de renforcement de gradient (gradient boosting ). La première étape est optimisée pour récupérer rapidement une liste de musiques candidates tandis que le deuxième stage réordonne ces musiques en maximisant la précision au début de la liste ainsi créée. [START_REF] Rubtsov | A hybrid two-stage recommender system for automatic playlist continuation[END_REF] ont proposé une approche relativement similaire avec un modèle possédant aussi deux étapes, la première utilisant des techniques de l-d'informations an de satisfaire au mieux l'utilisateur (caractéristiques des musiques, précision, diversité, contexte de la playlist initiale, utilisation de la session d'écoute en cours...), validant ainsi l'approche développée depuis le début de ce manuscrit qui consiste à prendre en compte un maximum d'objectifs associés à des facteurs humains dans la recommandation. Cette constatation se retrouve aussi chez [START_REF] Jannach | Biases in automated music playlist generation : A comparison of next-track recommending techniques[END_REF] Pour renforcer encore cette dernière constatation, nous allons nous intéresser dans la prochaine sous-section aux systèmes de recommandation touristiques.

Dans le domaine touristique

Le domaine du tourisme a lui aussi vu sa popularité croître dans la littérature grâce à l'explosion des téléphones portables et tablettes orant un nouveau support pour les recommandations.

De la même manière que pour le domaine de la musique, le tourisme a vu ses premières applications de recommandation apparaître au début des années 2000. Dans [START_REF] Cheverst | Developing a context-aware electronic tourist guide : some issues and experiences[END_REF] par exemple, les auteurs ont développé un guide mobile permettant d'aider les visiteurs de la ville de Lancaster en leur fournissant des informations contextuelles (localisation, date, heure de la journée, ouvertures et fermetures d'attractions, heures de visites, etc.) ainsi qu'en proposant au visiteur plusieurs services, comme avoir plus d'informations sur un monument ou générer un parcours prenant en compte ces informations contextuelles. Cette étude a permis de proposer un standard dans la recommandation touristique, comme la prise en compte du contexte, et était très complète pour son époque, même si l'on peut critiquer l'absence d'un modèle utilisateur ne permettant pas de prendre en compte les besoins spéciques de chaque visiteur. Toujours au début des années 2000, nous pouvons aussi citer [START_REF] Chou | Semantic web technologies for context-aware museum tour guide applications[END_REF] dont les auteurs ont modélisé, recommandation de points d'intérêts physiques nécessite une attention toute particulière à un certain nombre de caractéristiques quant à la modélisation de l'utilisateur, parmi lesquelles on peut citer [START_REF] Osche | Walk the line : toward an ecient user model for recommendations in museums[END_REF] :

Le style de visite : représente le style de visite de l'utilisateur, en rapport avec les deux études citées ci-dessus [START_REF] Véron | [END_REF]Levasseur, 1989, Yoshimura et al., 2014] ;

Le niveau de fatigue : représente à quel point l'utilisateur est mentalement et/ou physiquement fatigué ;

Les préférences implicites : représente les préférences sur les ressources déduites du comportement de l'utilisateur ;

La tolérance à la distance : représente à quel point l'utilisateur souhaite se déplacer ; La tolérance à la foule : représente à quel point l'utilisateur est dérangé par les autres visiteurs autour de lui ;

La tolérance à la précision : représente le souhait de l'utilisateur concernant la balance entre recommandations précises et recommandations diverses ;

La tolérance à l'intrusion technologique : représente à quelle fréquence l'utilisateur souhaite recevoir des recommandations du système ;

Le niveau de contrôle : représente le niveau de choix que l'utilisateur attend, c'est-àdire le nombre d'alternatives proposées.

Outre ces points relatifs à la modélisation de l'utilisateur, il est aussi important de prendre en compte l'environnement dans lequel il se trouve, comme par exemple la géographie du lieu et ses contraintes, les distances physiques entre les points d'intérêts, les données météorologiques, les horaires d'ouvertures et de fermetures s'il y en a, etc.

Même si à première vue le domaine touristique semble diérent du domaine musical, de nombreux points communs peuvent être trouvés, comme par exemple la gestion de la distance (distance physique entre deux points d'intérêts ou distance mathématiques entre deux ressources, les préférences implicites, les divers niveaux de tolérances, etc.). Dans la prochaine section nous allons discuter des points communs entre ces diérents domaines et des caractéristiques qu'un modèle se voulant générique et multi-domaines se doit de posséder.

Discussion

Cette section a eu pour but de présenter un certain nombre de travaux liés de près ou de loin à la notion de séquence. Nous avons vu que, dans le domaine des recommandations musicales, la création ou la continuation de playlists sont des objectifs de plus en plus considérés par les chercheurs. Ce domaine s'y prête en eet très bien car la majorité des utilisateurs écoutent plusieurs musiques les unes à la suite des autres, permettant d'exploiter l'information contenue dans ces séquences déjà existantes et de tenter d'en créer de nouvelles. De la même manière, le rapide tour d'horizon du domaine des recommandations touristiques a permis de mettre en exergue, même s'il existe des diérences notables avec le domaine musical dont il faut tenir compte, un objectif principal commun : considérer le maximum de données pertinentes disponibles (comportements précédents des utilisateurs, informations sur les ressources, caractéristiques personnelles de chaque utilisateur, etc.) dans le but de produire des séquences adaptées à chaque utilisateur.

Les études de ces domaines ont permis de faire ressortir 5 directions majeures dans la conception d'un tel système de recommandation :

1. Les approches les plus performantes actuellement semblent généralement composées de deux parties distinctes. La première partie consiste en une pré-sélection avec pour but de diminuer l'espace de recherche en sélectionnant une liste de candidats potentiels, tandis que dans la deuxième partie, une séquence est produite en utilisant les meilleurs candidats pré-sélectionnés dans l'étape 1.

2. Ces approches ne se limitent plus uniquement à l'utilisation de techniques provenant des systèmes de recommandation classiques mais mêlent désormais diérentes techniques provenant de divers domaines de la recherche en informatique.

3. Les séquences déjà créées en amont par les utilisateurs peuvent être utilisées an d'exploiter les informations qu'elles contiennent et produire en aval des séquences plus conformes à ce qu'un être humain ferait.

4. Le mouvement général des études produites ces dernières années va dans le sens d'une prise en compte conjointe et toujours plus importante de facteurs et caractéristiques humains.

5. Un système générique permettant de produire des séquences personnalisées quelque soit le domaine reste possible, mais ce dernier devra être susamment modulable pour s'adapter aux diérences bien réelles entre tous les domaines concernés.

Dans la suite de cette section, nous allons nous concentrer sur un domaine de l'informatique dont les méthodes s'accordent avec l'ensemble des points évoqués ci-dessus : les systèmes multiagents, et plus particulièrement les algorithmes de colonies de fourmis. C'est dans le cadre de ce paradigme que nous répondrons aux problématiques de cette thèse.

2.4

Les systèmes multi-agents

Dénition

Les systèmes multi-agents désignent l'ensemble des systèmes où de nombreux agents coopèrent dans le but de résoudre un problème trop complexe pour un agent seul [Ferber andWeiss, 1999, Weiss, 2013]. Un agent, dans sa dénition la plus large, représente toute entité pouvant percevoir son environnement à travers ses senseurs et pouvant agir dans cet environnement avec ses actuateurs [START_REF] Russell | Articial intelligence : a modern approach[END_REF], comme le présente la alors résoudre des problèmes qualiés de complexes [START_REF] Ferber | Multi-agent systems : an introduction to distributed articial intelligence[END_REF]. [Brooks, 1991] :

Les comportements intelligents peuvent être générés sans l'aide de systèmes de raisonnement explicites.

L'intelligence est une propriété émergente de certains systèmes complexes, apparaissant parfois sans qu'elle n'ait de raison spécique d'apparaître.

Une première implication de la simplicité des agents réactifs est qu'il est nécessaire de faire interagir un certain nombre de ces agents pour pouvoir solutionner des problèmes. Là où un agent cognitif peut potentiellement être très complexe et capable de solutionner des problèmes principalement par lui-même (en déléguant ou coopérant parfois avec d'autres agents), un agent réactif seul n'en sera pas capable de par sa simplicité. Cependant, cette simplicité ore aussi des avantages dans le sens où il est aisé de comprendre, de programmer ou de modier ces agents. Après cette partie théorique, nous allons voir dans la sous-section suivante deux modèles multi-agents an d'illustrer la manière dont ils fonctionnent réellement. Ces deux systèmes nous permettrons par la suite de tirer quelques conclusions sur leur utilité dans le cadre de cette thèse. et a été nommé stigmergie [Grassé, 1959] implantées dans chaque agent, données ici par ordre de priorité [Reynolds, 1987] :

Présentation de deux systèmes multi-agents réactifs

28. Le terme boid provient de la contraction de l'expression bird-oid object et signiant objet ressemblant à un oiseau.

1. Évitement des collisions : éviter les collisions avec les agents se trouvant à proximité.

Si un agent est trop proche, s'éloigner dans une autre direction ; An de comprendre les mécanismes permettant l'émergence de ce comportement intelligent, des expérimentations ont été menées en laboratoire avec de petites colonies de fourmis dans un environnement contrôlé [START_REF] Goss | Selforganized shortcuts in the argentine ant[END_REF]. Voici donc le principe de fonctionnement de la création de chemins optimisés chez les fourmis :

1. Des fourmis se déplacent aléatoirement autour de la colonie à la recherche de nourriture ; Le problème du voyageur de commerce [START_REF] Dorigo | Ant colonies for the travelling salesman problem[END_REF] ;

Le problème des tournées de véhicules [START_REF] Bell | Ant colony optimization techniques for the vehicle routing problem[END_REF] ;

Le problème de gestion de projet à contraintes de ressources [START_REF] Merkle | Ant colony optimization for resource-constrained project scheduling[END_REF].

Dans la prochaine section, nous allons nous intéresser plus particulièrement à l'un des modèles de la famille ACO nommé Ant Colony System (ACS). Nous allons voir son fonctionnement détaillé et expliquer les spécicités qui le rendent particulièrement intéressant dans le cadre de cette thèse.

Ant Colony System

Le modèle ACS possède plusieurs modications majeures par rapport au modèle initial AS, notamment par rapport aux mécanismes liés aux phéromones et à la prise de décision des agents [START_REF] Dorigo | Ant colony optimization[END_REF] Règle de transition d'état -la règle de transition (state transition rule ) d'état utilise la règle proportionnelle pseudo-aléatoire (pseudo-random proportional rule ) où une variable aléatoire q ∈ [0; 1] est comparée à une métavariable q 0 an de décider si l'agent courant va explorer le graphe ou s'il va exploiter la connaissance produite par les autres agents avant lui. En d'autres termes, il est possible d'équilibrer avec cette variable l'importance des phéromones et de la distance lors du choix des arêtes. q 0 = 0 entraîne l'exploration du graphe en tenant uniquement compte de la distance associée aux arêtes tandis que q 0 = 1 correspond à un comportement de renforcement pur via les phéromones sans aucune exploration. L'Équation 2.7 permet de choisir entre l'exploitation de la connaissance ou l'exploration du graphe, donnant plus de latitude au modèle ACS par rapport à AS.

Exploitation (Equation 2.8) si q ≤ q 0 Exploration biaisée (Equation 2.9) si q ≥ q 0 (2.7) L'Équation 2.8 représente l'exploitation directe du graphe où la meilleure arête est toujours choisie arg max

l∈V i {τ α il • η β il }, (2.8)
où V i est l'ensemble des sommets accessibles depuis le sommet i, τ il ∈ [0; 1] est la quantité de phéromones déposée sur l'arête (i, l) par les agents précédents, η il est l'information heuristique de l'arête (i, l), α et β sont deux métavariables représentant respectivement le poids des phéromones et celui de l'heuristique dans le calcul. L'heuristique η il représente classiquement l'information relative à la distance séparant les sommets i et l et sera décrite après.

Il est à noter qu'on ne parle pas ici de pure exploration mais d'exploration biaisée, dans le sens où les meilleures arêtes ont une probabilité plus élevée d'être sélectionnées. L'expression meilleure arête est ici dénie comme le produit de l'heuristique avec la quantité de phéromones associées à cette arête. L'Équation 2.9 correspond à l'exploration biaisée du graphe.

p ij =          τ α ij • η β ij l∈V i τ α il • η β il , si j ∈ V i , 0, sinon (2.9)
Mise à jour globale des phéromones -Après chaque itération, c'est-à-dire après que tous les agents aient terminé leur chemin, seul l'agent qui a trouvé le meilleur chemin est autorisé à mettre à jour le niveau de phéromones τ ij sur chaque arête (i, j) qu'il a emprunté :

τ ij = (1 -ρ) • τ ij + ρ • ∆τ ij si (i,
τ ij = (1 -ρ) • τ ij + ρ • τ 0 , (2.11)
où τ 0 est le niveau de phéromones placé sur chaque arête du graphe à l'initialisation du modèle.

Information heuristique -l'information heuristique η ij représente l'information que la fourmi possède a priori sur une arête (i, j). Dans l'algorithme ACS, l'information heuristique est calculée en se basant sur la distance entre les deux sommets i et j de l'arête (i, j) : plus les deux sommets sont éloignés l'un de l'autre et plus la valeur de η ij sera basse, indiquant à un agent situé sur le sommet i qu'il n'est a priori pas intéressant pour lui d'emprunter l'arête (i, j). L'Équation 2.12 décrit comment obtenir la valeur de l'information heuristique η ij de l'arête (i, j).

η ij = 1 d ij ,
(2.12) où d ij est la distance entre les sommets i et j.

Discussion sur le modèle ACS

Dans cette sous-section, nous allons revenir sur un des principes de l'algorithme ACS : la règle proportionnelle pseudo-aléatoire et son importance danc le fonctionnement du modèle.

Cette règle, comme détaillée ci-dessus, permet de gérer l'équilibre dans l'exploration et l'exploitation de manière semi-aléatoire (i.e. avec une variable aléatoire servant à xer le seuil de basculement d'un comportement vers l'autre). Cette dualité exploration/exploitation est bien connue des systèmes de recherche et de création de connaissances [START_REF] March | Exploration and exploitation in organizational learning[END_REF] Ces deux expériences sont intéressantes et illustrent chacune des capacités fondamentales des fourmis dans la nature quant à leur déplacement et à leur survie. Jean-Louis Deneubourg [START_REF] Deneubourg | The self-organizing exploratory pattern of the argentine ant[END_REF] et Marco Dorigo [Dorigo, 2001] L'idée de modier le modèle ACO pour prendre en compte plusieurs types d'utilisateurs a aussi été exploitée dans une autre étude en e-éducation par [START_REF] Kardan | A new personalized learning path generation method : Aco-map[END_REF]. Cette étude a le même but que la précédente, à savoir recommander des séquences personnalisées éducatives avec ACO, mais les auteurs proposent une autre solution tout aussi intéressante. Ils se basent ainsi sur la théorie de David Ausubel, selon laquelle l'apprentissage est facilité lorsque l'apprenant peut mettre en relation les nouveaux concepts qu'il est en train de découvrir avec ce qu'il connaît déjà [Ausubel, 1963]. Les auteurs proposent un algorithme en deux parties :

f (a) = H(ω 1 W + ω 2 S - ω 3 F ) où ω 1 , ω 2 et ω 3 sont
1. Les apprenants sont d'abord évalués avec des items de tests correspondant chacun à un ou plusieurs concepts devant être appris. An de déterminer le degré de familiarité à un concept par un apprenant, le score qu'il a obtenu à chaque item de test est utilisé en combinaison avec le degré de lien entre les concepts et chaque item pour créer une matrice learners × concepts. L'algorithme des k-means est ensuite utilisé an de diviser les apprenants en groupes ayant les mêmes familiarités avec les concepts.

2. l'algorithme ACO est appliqué avec autant de groupes d'agents spéciques qu'il y a de groupes d'apprenants découverts précédemment avec les k-means. Ainsi, un chemin optimal est trouvé pour chaque groupe, permettant de naviguer parmi tous les concepts dans un ordre précis et spécique au degrés de familiarité de chaque groupe. Autrement dit, le système recommande pour chaque groupe d'apprenants une séquence éducative personnalisée en fonction de ses connaissances initiales.

33. Activist, Theorist, Pragmatist, Reector.

On retrouve donc ici l'idée de créer diérents types d'agents pour résoudre diérents problèmes. Cette constatation n'est pas étonnante dans le sens où, lorsqu'il s'agit d'optimisation, un seul groupe d'agents peut sure à optimiser une variable unique, comme par exemple la distance. En revanche, dans le domaine des systèmes de recommandation, il n'est pas envisageable de proposer la même recommandation à tous les utilisateurs. Au contraire, l'approche à privilégier est de pouvoir s'adapter au cas par cas à chaque utilisateur et de prendre en compte ses préférences pour lui proposer une solution adaptée. On peut d'ailleurs émettre deux critiques de cette étude à la lumière de cette analyse. Premièrement, même si le modèle propose un certain degré de personnalisation, sa granularité n'est encore pas assez ne puisqu'il traite des groupes d'individus et non un individu unique. Ensuite, il n'y a encore une fois pas de moyen pour un apprenant de changer dynamiquement de groupe étant donné que ces derniers doivent être créés en amont du processus de recommandation.

Toujours dans la famille des algorithmes ACO, nous pouvons également citer le modèle Attribute-based Ant Colony System qui est similaire aux derniers modèles décrits ci-dessus tout en proposant un degrés de personnalisation plus n [START_REF] Yang | An attribute-based ant colony system for adaptive learning object recommendation[END_REF]. Les auteurs utilisent le modèle d'apprentissage de Kolb [START_REF] Kolb | Toward an applied theory of experiential learning[END_REF] an d'assigner à chaque ressource éducative et à chaque apprenant deux attributs les décrivant (type d'apprentissage de la ressource/de l'apprenant et niveau de compétence de la ressource/de l'apprenant). Les agents possèdent aussi ces attributs puisqu'ils correspondent aux apprenants. Les auteurs calculent ensuite un niveau de correspondance entre l'apprenant et la ressource éducative, permettant de juger de la qualité du chemin trouvé. Finalement, la séquence, dont les ressources éducatives la composant correspondent le plus aux caractéristiques de l'agent, est recommandée à l'apprenant. Ce travail est intéressant car il pousse encore un peu plus la personnalisation des recommandations. Cependant, on commence à remarquer ici que la nécessité de personnaliser toujours plus les recommandations commence à complexier de manière importante les systèmes proposés. Nous discuterons plus en détail de ce point dans la conclusion de cette section.

Prenons enn une dernière étude dans le domaine de l'e-éducation qui s'est particulièrement intéressée à la notion de séquence et d'objectif à atteindre pour l'apprenant [ Van den Berg et al., 2005]. En eet, les auteurs expliquent que les plateformes d'éducation en ligne proposent de plus en plus d'atteindre des objectifs pédagogiques de haut niveau (e.g. acquérir une compétence spécique, posséder un certain niveau de connaissance dans un domaine,. . . ) tout en laissant les apprenants libres de suivre les modules qu'ils souhaitent. Cependant, cette exibilité de fonctionnement complexie les programmes de ces plateformes et peut amener à l'abandon des apprenants. Pour remédier à ce problème, les auteurs proposent un système de guidage des apprenants utilisant ACO basé sur la spécication au préalable de plusieurs concepts pour chaque apprenant :

Le but de l'apprenant : c'est la description du niveau de compétence que l'apprenant veut atteindre) ; Le parcours : le plan pour atteindre le but de l'apprenant, décrit comme une série de séquences de ressources éducatives. Les plateformes d'apprentissage en ligne proposent souvent elles-mêmes des parcours via lesquels les apprenants peuvent atteindre leur but ; La position de l'apprenant : représente l'ensemble des ressources éducatives ayant été complétées par l'apprenant.

Autrement dit, an de pouvoir satisfaire un apprenant, il est nécessaire de savoir quel est le but qu'il souhaite atteindre, la manière dont il veut l'atteindre et sa position actuelle. Ces trois informations sont primordiales pour comprendre la trajectoire d'un utilisateur et pour être capable de lui recommander une séquence adaptée à ses besoins.

Nous avons vu dans cette section le potentiel des algorithmes de colonies de fourmis pour la recommandation. Néanmoins, la première partie de l'état de l'art a montré à quel point il était important pour les systèmes actuels de pouvoir prendre en compte plusieurs facteurs humains an de satisfaire au mieux les utilisateurs. Dans la section suivante, nous allons nous intéresser à la manière dont les algorithmes de colonies de fourmis sont capables de minimiser non plus un seul objectif (la distance), mais bien plusieurs objectifs pouvant être opposés les uns aux autres.

Les algorithmes de colonies de fourmis multi-objectifs

En parallèle du développement des algorithmes de colonies de fourmis mono-objectif dans la littérature, une partie de la communauté scientique s'est intéressée aux algorithmes de colonies de fourmis multi-objectifs dans le but de résoudre de nouvelles classes de problèmes. En eet, les algorithmes ACO ont à l'origine été conçus pour minimiser une valeur, souvent représentée par la notion de distance. Cependant, de nombreux problèmes nécessitent la minimisation de multiples valeurs en parallèle an d'obtenir une solution. On peut par exemple citer les variantes multi-objectifs de problèmes vus dans la section précédente : Le dernier point ci-dessus est également évoqué dans [START_REF] Dorigo | Ant colony optimization[END_REF] où les auteurs expliquent que deux manières de résoudre les problèmes multi-objectifs existent dans la littérature : soit il est possible de classer les objectifs par ordre d'importance, ou éventuellement de combiner tous les objectifs en un seul grâce à une somme pondérée ; soit les préférences ou les poids a priori ne sont pas connus et, dans ce cas, il est intéressant de déterminer un ensemble de solutions Pareto optimales. Dans le cadre d'un système de recommandation, et comme nous l'avons illustré dans la Section 2.2, il est possible d'estimer les besoins des utilisateurs dans chacune des dimensions évaluées (diversité, nouveauté, précision, ...) et donc de moduler leur importance en amont de la recommandation (e.g. en leur attribuant des poids par exemple).

2.6

Discussion générale 1. Les séquences de ressources déjà consultées par le passé contiennent des informations sur le comportement des utilisateurs qui peuvent être exploitées pour la topologie du graphe ; 2. Les séquences de ressources déjà consultées par les utilisateurs auparavant ne sont pas toujours les meilleures possibles et auraient pu être améliorées avec des recommandations pertinentes.

La première hypothèse H1 se justie par le fait que l'utilisateur est le premier à connaître ses envies, ses besoins et les ressources qui le satisferaient le plus à un moment t [Jones, 2010].

Il est donc nécessaire de considérer ces séquences de consultations passées an de comprendre vaste, manque d'information, etc.), il est préférable de se diriger vers des solutions satisfaisantes plutôt qu'optimales [Simon, 1997]. En réponse à ce problème, les utilisateurs procèdent donc par essais-erreurs pour répondre à leurs besoins de manière empirique [START_REF] Jameson | Human decision making and recommender systems[END_REF]. Les séquences d'interactions créées par les utilisateurs durant ces processus contiennent donc beaucoup d'informations exploitables par un système de recommandation, mais aussi beaucoup de bruits et d'approximations [Kuhlthau, 1991, Castagnos et al., 2010]. La philosophie de notre modèle est les réponses que nous apportons aux problèmes ci-dessus sont inspirées par cette théorie.

An de prendre en compte ces deux hypothèses, nous proposons dans la suite de cette section une méthode permettant de créer un graphe orienté en se basant à la fois sur les séquences passées des utilisateurs ainsi que sur la création de nouvelles arêtes.

Objectifs

Une fois le graphe créé, le modèle peut être appliqué sur ce dernier an de produire des recom- et al., 1999] ou encore avec le multi-objective travelling salesman problem [Angus, 2007]. Devant la complexité et les dimensions toujours croissantes des problèmes à résoudre en informatique, les approches multi-dimensionnelles des algorithmes ACO se sont multipliées ces dernières années [START_REF] Doerner | Pareto ant colony optimization : A metaheuristic approach to multiobjective portfolio selection[END_REF], Alaya et al., 2007, Angus and Woodward, 2009, Dorigo and Stützle, 2019].

Même si chacune de ces approches a pour but de résoudre un problème multi-objectif, la manière ). Nous n'avons pas modié le calcul de η ij , mais nous avons modié le sens de la distance d qui le compose. Au lieu de représenter la distance physique entre deux sommets, d représente dans notre modèle une distance calculée entre deux ressources, sa valeur étant directement dépendante de l'objectif de la colonie. Prenons un exemple pour illustrer la manière dont cette distance peut varier entre deux sommets pour diérentes colonies.

Similarité

C'est l'un des facteurs humains les plus importants des systèmes de recommandation, et il est pris en compte par l'immense majorité de ces systèmes. En eet, un des objectifs majeurs d'un système de recommandation est de proposer des ressources similaires à celles que l'utilisateur a aimé auparavant, ou proche des ressources qu'il consultait récemment. La similarité est une caractéristique bien connue et largement utilisée dans la littérature . Nous adhérons au principe selon lequel un système de recommandation ne peut pas la négliger et doit l'inclure pour produire des recommandations satisfaisantes. Cependant, la similarité ne devrait pas non plus être la pierre angulaire de chaque système de recommandation comme elle l'a été par le passé. Le but de cette colonie est donc de trouver une liste avec des éléments aussi proches que possible de ce que l'utilisateur apprécie ou est en train de consulter. Il existe de nombreuses méthodes pour calculer la similarité entre deux ressources. D'une manière générale, les ressources d'un domaine sont décrites par des métadonnées numériques, textuelles, binaires, etc. Le format de ces métadonnées est entièrement dépendant de chaque domaine applicatif. Nous avons décidé de généraliser ce problème et de le considérer comme une comparaison entre deux vecteurs.

Nous avons ensuite décidé d'utiliser la mesure de la similarité cosinus entre ces deux vecteurs de par sa popularité dans la littérature scientique et sa pertinence quand aux données dont nous disposons [START_REF] Su | A survey of collaborative ltering techniques[END_REF]. La manière d'implémenter cette similarité d'un point de vue applicatif dépend des métadonnées disponibles. Dans le cas de données non numériques, il est possible d'obtenir des valeurs numériques de similarité à partir de listes ou de valeurs qualitatives [l [START_REF] Huillier ; Huillier | Modéliser la diversité au cours du temps pour comprendre le contexte de l'utilisateur dans les systèmes de recommandation[END_REF]. De même, d'autres manière de calculer la similarité peuvent être utilisées en fonction de leur pertinence par rapport au domaine applicatif. Dans notre contexte généraliste, et an de déterminer la valeur de la distance d associée à chaque arête du graphe, nous avons tout d'abord calculé la similarité cosinus entre les deux ressources représentées par les sommets.

Plus formellement, pour une arête (i, j), la similarité de ses deux ressources s ij est calculée avec la similarité cosinus entre les deux vecteurs des caractéristiques descriptives C des ressources i et j, comme montré dans l'Équation 3.2. s . Ainsi, et à l'instar du modèle initial de Dorigo, une distance proche de 1 associée à une arête (i, j) signie que les deux ressources i et j sont similaires.

s ij = 1 sim(C i , C j ) (3.

Diversité

Ce facteur est souvent présenté en même temps que la similarité étant donné qu'ils sont tous deux liés à la distance, ou à la corrélation, entre les ressources consultées par l'utilisateur et ses recommandations. Mais, contrairement à la similarité, la diversité illustre à quel point deux éléments sont dissemblables l'un par rapport à l'autre. La similarité et la diversité se complètent dans la mesure où elles sont toutes deux nécessaires pour adapter le système de recommandation aux besoins des diérents utilisateurs [Jones, 2010]. Nous avons choisi d'utiliser l'interprétation classique consistant à considérer la diversité comme l'inverse de la similarité. La diversité div ij entre deux ressources i et j est donc obtenue en calculant l'inverse de la similarité entre i et j, comme indiqué dans Équation 3.3. De la même manière que pour la similarité, nous avons ensuite utilisé l'inverse multiplicatif de la diversité pour obtenir une distance d ∈ [1; +∞].

div ij = 1 1 -sim(C i , C j ) (3.3)
Toutefois, cette seule mesure ne capture pas l'ensemble de la diversité d'une séquence. Des travaux de la littérature ont été menés sur les séquences et les diérentes manières de les caractériser. On peut citer la diversité relative (RD : Relative Diversity ) qui permet de mesurer l'apport de chaque ressource ajoutée à une séquence existante en cours de construction, ou encore la similarité intra-liste (ILS : Intra-List Similarity ), qui est la moyenne des similarités cosinus de toutes les ressources composant une séquence [START_REF] Ziegler | Improving recommendation lists through topic diversication[END_REF]. Nous n'avons pas utilisé ces deux mesures à ce stade de notre modèle, mais nous les exploiteront an de mesurer les performances de notre modèle.

Nouveauté

Ce facteur humain représente les ressources encore non connues de l'utilisateur. Il peut s'agir de nouvelles ressources récemment ajoutées au système ou de ressources plus anciennes mais moins populaires, que l'utilisateur n'a pas consultées. Selon le domaine d'application et/ou selon l'ancienneté de l'utilisateur, les ressources non consultées peuvent ne constituer qu'une faible partie des ressources totales (e.g. dans un petit musée ne possédant que quelques dizaines d'÷uvres) comme elles peuvent aussi représenter l'immense majorité des ressources totales (e.g. sur des sites d'écoute de musiques en ligne qui ont souvent des catalogues de plusieurs centaines de milliers de musiques disponibles). La nouveauté ne doit cependant pas être confondue avec la diversité, car les ressources considérées comme nouvelles peuvent être soit similaires soit diérentes de celles que l'utilisateur aime habituellement. La nouveauté est une caractéristique importante dans un système de recommandation car elle permet d'éviter un désintérêt potentiel des utilisateurs anciens. En eet, après un certain temps passé à produire des recommandations, un système peut avoir tendance à enfermer l'utilisateur dans les mêmes recommandations, à l'instar d'un algorithme d'apprentissage automatique trop bien entraîné 38 . Ce problème dans les systèmes de recommandation résulte en une trop grande prévisibilité des ressources recommandées [START_REF] Vargas | Rank and relevance in novelty and diversity metrics for recommender systems[END_REF]. L'introduction de la nouveauté permet, entre autres, de mitiger ce problème et de produire des recommandations inattendues à l'utilisateur.

An de déterminer si une ressource est nouvelle ou pas pour un utilisateur en particulier, nous avons utilisé le travail de Zhang [Zhang, 2013]

N ovelty(i, u) = p(i|unknown, u) • dis(i, pref u ) • p(i|like, u) (3.4)
où p(i|unknown, u) est la probabilité que l'utilisateur u ne connaisse pas la ressource i, dis(i, pref u ) est la dissimilarité entre i et les ressources consultées par l'utilisateur, et p(i|like, u) est la probabilité que l'utilisateur u apprécie la ressource i. Cette équation est intéressante mais, dans le contexte de ce travail, les notions de satisfaction et de dissimilarité de l'utilisateur envers la ressource i sont proches des autres objectifs de notre modèle, à savoir respectivement pour la satisfaction par l'objectif de diversité et pour la dissimilarité par les deux objectifs de similarité et de préférences. Nous avons donc décidé de réduire l'Équation 3. ressources, etc. On peut toutefois considérer que cette valeur sera généralement numérique.

Il est important ici de préciser un point de diérence important avec les deux autres objectifs qui ont été vu jusqu'à présent. Dans les équations ci-dessus, on peut en eet remarquer que le calcul de la distance se fait non plus en considérant deux ressources mais uniquement avec une ressource et le prol de l'utilisateur. Ainsi, une arête du graphe ne représente plus la distance entre les deux sommets la composant mais la distance nécessaire pour atteindre le sommet selon chaque utilisateur. Autrement dit, là où jusqu'à maintenant la distance associée à l'arête (A, B) représentait la distance entre le sommet A et le sommet B (la similarité ou la diversité entre A et B), cette distance représente maintenant la distance de l'utilisateur avec ce sommet B.

Le sommet d'origine ne rentre plus en compte dans le calcul de la distance d'une arête mais uniquement son sommet de destination. Par conséquent, toutes les arêtes arrivant à un sommet unique posséderont la même valuation. Les calculs de valuation des arêtes du graphe sont donc moins nombreux, mais en contrepartie il est nécessaire de recalculer ces valuations pour chaque utilisateur étant donné qu'elles dépendent maintenant du prol de ce dernier.

Préférences

Le facteur que nous avons appelé préférences correspond aux ressources que l'utilisateur a particulièrement appréciées dans le passé. Cet objectif, bien qu'assez proche de la similarité au premier abord, exprime un autre aspect d'une recommandation satisfaisante que nous pensons important. En eet, le but n'est pas ici de recommander des ressources proches et potentiellement nouvelles de ce que l'utilisateur connaît déjà comme la similarité, mais bien de lui reproposer des ressources qu'il a déjà consultées et aimées par le passé. Autrement dit, cet objectif cherche à recommander à l'utilisateur les ressources les plus en accord avec ses préférences (ses ressources préférées), sans essayer de faire des prédictions. Par conséquent, le but de l'objectif de similarité est de proposer à l'utilisateur des ressources proches de ce que l'utilisateur a consulté ou consulte, mais il n'est pas possible de savoir si ce dernier va réellement apprécier ces recommandations. Il est par exemple commun d'apprécier une musique particulière d'un artiste et de ne pas aimer les autres musiques appartenant pourtant au même album. Toutes les musiques de cet album sont très similaires les unes aux autres (même artiste, même date de sortie, même album, probablement même genre), elles auraient donc de très hautes valeurs de similarité entre elles, mais l'utilisateur qui se verrait proposer le reste de l'album jugerait ces recommandations non satisfaisantes. L'objectif de préférences favorisera quant à lui les ressources connues et aimées par l'utilisateur et pourrait donc recommander dans cette situation uniquement la musique que l'utilisateur apprécie.

Le but des agents de la colonie préférences est donc de trouver un chemin où les ressources sont connues et aimées de l'utilisateur. On peut d'ores et déjà lister deux conséquences à ce fait. Tout d'abord, nous nous retrouvons dans le même cas de gure que pour l'objectif de nouveauté où une arête du graphe ne représente plus la distance entre ses deux sommets mais la distance nécessaire pour atteindre le sommet d'arrivée. Ensuite, il est nécessaire de dénir des moyens de calculer les préférences des utilisateurs envers les ressources mises à leur disposition.

Comme nous l'avons vu dans l'état de l'art, il y a deux grandes manières de calculer l'intérêt d'un utilisateur envers une ressource : avec des retours explicites (e.g. notes sur les ressources, bouton j'aime et je n'aime pas,...), avec des retours implicites (e.g. temps passé à consulter les ressources, nombre de consultations,...) 39 . La nature des retours va donc énormément varier [START_REF] Castagnos | [END_REF] et décrite dans l'Équation 3.6.

presumed interest u,i = v min + c∈C (w(c) • c (u,i) ) c∈C w(c) • (v max -v min ) c max (3.6)
où c(u, i) correspond aux valeurs normalisées données à la ressource i par l'utilisateur u à chaque type d'interaction c, w(c) est le poids, ou l'importance, de chaque type d'interaction c, v min et v max sont les valeurs minimales et maximales attendues pour l'intérêt présumé et c max est la valeur maximale que c(u, i) peut prendre, peu importe le critère c considéré.

L'intérêt de cette colonie peut être discuté selon les domaines d'applications auquel le modèle est appliqué. L'exemple précédant portant sur la musique illustre bien l'intérêt d'intégrer un tel facteur humain dans un système de recommandations. En eet, il est rare de n'écouter qu'une seule fois une musique que l'on apprécie. Comme l'ont montré divers travaux, il est beaucoup plus courant d'écouter plusieurs fois ses musiques préférées, parfois de suite, parfois à diérents moments de la journée, parfois sur plusieurs semaines, mois ou années, etc. [l [START_REF] Huillier ; Huillier | Modéliser la diversité au cours du temps pour comprendre le contexte de l'utilisateur dans les systèmes de recommandation[END_REF]][Jones, 2010]. L'idée d'avoir une colonie dédiée à la revisite de ressources déjà consultées peut être étendue à d'autres domaines a priori moins évidents que la musique. Cet objectif de préférences peut par exemple être intéressant dans le domaine de l'e-éducation, où une ressource éducative peut avoir été consultée par un utilisateur sans pour avoir été comprise (après avoir passé une évaluation sur les thèmes de cette ressource par exemple). Dans ce cas, il peut être intéressant de recommander une nouvelle fois à l'utilisateur cette ressource an qu'il puisse mieux la comprendre. En conclusion, l'objectif de préférences est certes plus spécique à certains domaines que les autres objectifs plus généralistes présentés jusqu'à maintenant, mais nous pensons néanmoins qu'il a sa place dans le modèle, notamment pour les possibilités qu'il apporte dans ces domaines d'application spéciques.

Progressivité

Le concept de la progressivité fait partie intégrante du but de notre modèle qui est de trouver et de recommander une bonne séquence de ressources. Contrairement à la majorité des systèmes il est bénéque de les prendre tous les deux en comptes pour estimer l'intérêt de l'utilisateur.

de recommandation actuels, nous ne souhaitons pas proposer qu'une simple liste à l'utilisateur nal mais bien une séquence construite dans un but, possédant un début, une n et une progression entre ses divers éléments. An de bien faire la diérence entre une liste et une séquence de recommandation, voici 3 exemples dans 3 domaines d'applications diérents : Listes 1. Musique : Les musiques les plus similaires aux dernières écoutes, voire à la toute dernière écoute, de l'utilisateur sans ordre particulier.

2. Musée : Des ÷uvres d'art correspondant à ce que l'utilisateur vient de voir. Si le critère principal de la création de liste est la similarité, les ressources de celles-ci ne seront pas forcément adaptées à la topologie du musée, ou à sa scénographie.

3. E-éducation : Des ressources éducatives sans ordre particulier (cours, vidéos explicatives, exercices) tous proches de ce que l'utilisateur était en train de consulter. Séquences 1. Musique : Une playlist de musiques proposant par exemple les titres d'un même artiste selon leur date de sortie, ou bien possédant un tempo de plus en plus rythmé, ou encore proposant une transition douce d'un style de musical à un autre.

2. Musée : Un chemin composé de plusieurs ÷uvres d'art, prenant compte de la distance physique entre chaque ÷uvre an d'avoir un parcours adapté au musée, et en intégrant une progression dans les ÷uvres proposées (par date, styles, auteurs, etc.).

3. E-éducation : Une séquence composée de ressources éducatives adaptées au niveau actuel de l'utilisateur et à son objectif, intégrant des cours et des exercices proposant une progression mesurée (ni trop rapide ni trop lente) entre chaque ressources éducatives de la séquences.

Comme le montrent ces exemples, l'idée générale derrière la recommandation de séquences est de proposer une suite de ressources étant toutes en lien les unes avec les autres et possédant une progression sur un ou plusieurs critères. Cette progression se manifeste alors par de légères transitions entre chaque ressource an de faire avancer petit à petit la séquence vers un but. Le but est donc ici de parvenir à construire une séquence dont la progression n'est ni trop lente, ni trop rapide, mais adaptée à l'utilisateur et à son but. Nous donnons à cet objectif le nom de progressivité optimale o. Cette métrique est utilisée an de s'assurer que les agents de la colonie de progressivité trouvent un chemin dans le graphe où chaque sommet sélectionné ore une bonne progressivité par rapport à son prédécesseur et à son successeur. Pour ce faire, nous avons calculé la valeur de o en prenant en compte une ressource de départ et une ressource d'arrivée, représentée dans le graphe par deux sommets spéciques.

Colonie de progressivité

Le concept de progressivité est lié à notre objectif de construire une bonne séquence de

o n = c zn -c an s (3.7)
où o n est la valeur de progressivité optimale de la n-ième caractéristique d'une séquence spécique, c zn est la n-ième caractéristique de la dernière ressource z de la séquence, c zn est identique pour la première ressource de la séquence et s est le nombre de ressources de la séquence. L'Équation 3.7 sera appliquée pour les caractéristiques de la ressource m, ce qui donne un vecteur de taille m de valeurs de progressivité optimales (o 1 , o 2 , • • • , o m ) pour la séquence spécique. Ce vecteur sera ensuite utilisé dans le calcul de la distance d'un bord (i, j) pour la colonie de progressivité. Cette méthode implique de disposer de caractéristiques numériques pour appliquer l'équation, comme par exemple le tempo d'une piste musicale ou la date d'une ÷uvre d'art.

La valeur optimale o de la progressivité est alors utilisée pour calculer la distance d entre deux n÷uds du graphe dans l'Équation 3.8 :

d ij = m n w on • c jn -c in on m n w on (3.8)
où m est le nombre de caractéristiques de la ressource considérée, o n est la valeur de progressivité optimale de la n-ième caractéristiques de la ressource, w on est le poids de la n-ième caractéristique pour l'utilisateur dépendant de ses préférences et c jn est la valeur de la n-ième caractéristique de la ressource j.

d ij ∈    [-∞; 0], alors d ij = |d ij | [0; 1], alors d ij = 1 d ij (3.9)
Intégration complémentaire de la progressivité dans le calcul de la distance parcourue des agents Avec cette équation modiée du calcul de la distance totale d'un chemin, nous pénalisons les grandes diérences de distance entre des arêtes successives tout en continuant de favoriser les chemins les plus courts. En d'autres termes, l'objectif des agents est maintenant de trouver des chemins à la fois courts et progressifs les uns par rapport aux autres.

3.5

Tactiques de fusion 3.5. Tactiques de fusion que nous allons présenter. Cette méthode permet d'obtenir l'importance relative de chacun des objectifs dans l'historique de consultations récent de l'utilisateur. En faisant varier n, il est aussi possible de faire varier la taille de l'historique pris en compte. Ainsi, une valeur de n faible concernera uniquement les dernières interactions de l'utilisateur avec le système tandis qu'une valeur de n élevée prendra en compte à la fois l'historique récent et plus ancien. La variation de la fenêtre d'historique peut ainsi apporter un comportement diérent du modèle pour diérents types d'utilisateurs (utilisateur récent ou ancien, peu actif ou très actif, etc.).

Colonie de fusion

Fusion de séquences

Nous avons souhaité implémenter une deuxième tactique de fusion an d'avoir un point de comparaison avec la colonie de fusion. Dans cette deuxième tactique, nous avons également calculé le poids w(col) de chaque objectif sur l'historique n de l'utilisateur, de la même manière que dans l'Équation 3.11. Ces poids ont ensuite été utilisés dans la construction d'une séquence nale ressource par ressource. Pour ce faire, nous avons réunis toutes les ressources composant les séquences des colonies spécialisées dans un ensemble, à la manière d'un sac de mots. Puis, à chaque itération, l'apport de chacune des ressources restantes à la séquence nale a été mesuré et la meilleure ressource a été ajoutée. Les itérations sont stoppées lorsqu'il n'est plus possible d'améliorer la séquence nale. De la même manière que pour la tactique précédente, l'apport de chaque ressource à la séquence de recommandation peut être mesuré de multiple manières.

De la même manière que dans l'Équation 3.11, nous avons choisi de calculer l'importance de chaque objectif de la séquence nale en construction, puis de choisir les ressources permettant de s'approcher des poids correspondant à l'historique n de l'utilisateur.

Conclusion

Dans ce chapitre, nous avons présenté le fonctionnement de notre modèle de recommandation multi-objectifs AntRS. Notre modèle s'inspire de l'algorithme multi-agents ACS de Marco Chapitre 4

Introduction

Dans la section précédente, nous avons détaillé le modèle AntRS que nous avons développé pour répondre aux problématiques de cette thèse. Comme nous l'avons expliqué, AntRS se base sur le travail de [START_REF] Dorigo | Ant colony optimization[END_REF]] qui a modélisé le comportement de fourragement des fourmis dans la nature. Son modèle, et le notre par extension, ont donc au c÷ur de leur fonctionnement le même mécanisme permettant à des agents téléonomiques de suivre et de déposer des phéromones sur un graphe. An de mettre en exergue le c÷ur de ces modèles qui sera par la suite enrichi, nous avons en premier lieu développé les modèle Ant Colony System de Marco Dorigo [START_REF] Dorigo | Ant colony optimization[END_REF] en Java avec une interface visuelle. Cela nous a permis de tester son fonctionnement dans diverses conditions expérimentales contrôlées, ainsi que de tester ses limites. Nous avons ensuite implémenté l'ensemble de notre modèle AntRS en utilisant la base déjà développée précédemment puis nous avons réalisé les expérimentations principales de cette thèse à l'aide d'une base de données décrivant les habitudes de personnes écoutant de la musique.

Ce chapitre est constitué de deux sections principales. Dans la première section, nous allons 1. La connaissance avancée de ce langage ;

2. les bibliothèques 40 disponibles correspondant aux besoins de la thèse ;

40. Ensemble de ressources (fonctions, algorithmes spéciques, documentation) permettant la création accélérée de programmes.

3. Le fait que Java soit un langage de programmation orienté objet, qui est un paradigme de programmation particulièrement adapté pour l'implémentation d'agents (chaque agent peut être représenté par un objet Java).

Pour rappel, l'algorithme général des Ant Colony Optimization servant de base pour toutes les diérentes versions proposées par Dorigo (Ant System, Ant Colony System, Ant-q, ...) est synthétisé dans l'Algorithme 3 ci-dessous. Cet algorithme ACS peut aussi être décrit sous la forme d'un diagramme de ux, comme l'a proposé [Schlunz, 2011] L'intérêt de mettre en place les expérimentations des ponts binaires est donc double :

1. Vérier le comportement du modèle ACS implémenté en Java sur des expérimentations connues ; 2. Observer l'impact des 7 métavariables listées ci-dessus sur le comportement et les résultats du modèle, dans le but de mieux appréhender les expérimentations principales de cette thèse qui seront présentées dans la suite de cette section. L'Expérimentation 1.1 se déroule donc ainsi : 100 agents se déplaceront à chaque fois et chercheront un chemin du n÷ud 0 au n÷ud 9 durant 30 itérations. La Figure 4.5 présente les résultats de cette expérimentation. À gauche, la fenêtre graphique montre l'état du graphe à la n des 30 itérations, on peut voir le chemin sélectionné par les agents passant par les n÷uds < 0, 1, 9 >. À droite, le graphique présentant l'évolution du pourcentage d'agents prenant soit le chemin 1 (< 0, 1, 9 >) ou le chemin 2 (< 0, 2, 9 >). L'évolution des pourcentages est similaire aux résultats trouvés par Deneubourg avec de vraies fourmis (Figure 4.3). Une fois qu'un chemin est privilégié par rapport à un autre, entre 80 et 95% des agents y passent. Cet écart s'accentue de plus en plus au l des itérations. Il est toutefois important de noter qu'il subsiste un faible pourcentage d'agents décidant quand même de prendre le chemin 2, permettant au système de s'adapter à un potentiel changement d'environnement. On voit ici l'intérêt de la métavariable Q 0 , qui équilibre l'exploitation du chemin 1 en majorité mais qui autorise aussi quelques agents à explorer d'autres chemins du graphe. Notre modèle AntRS ayant la capacité de s'adapter à de nombreux domaines applicatifs, nous avons pu nous diriger vers une base de données existante an de commencer les expérimentations.

Amaury L'Huillier, ancien doctorant de l'équipe KIWI, a récupéré et exploité durant sa thèse une base de données musicale provenant de Deezer [l [START_REF] Huillier ; Huillier | Modéliser la diversité au cours du temps pour comprendre le contexte de l'utilisateur dans les systèmes de recommandation[END_REF]. Dans la section suivante, nous allons décrire les caractéristiques de cette base de données.

45. Bien que des solutions soient en cours d'études [START_REF] Mokatren | Exploring the potential of a mobile eye tracker as an intuitive indoor pointing device : A case study in cultural heritage[END_REF]. id : identiant unique de la musique ; title : titre de la musique ; album : nom de l'album auquel appartient la musique ; artist : nom de l'artiste (ou du groupe) qui a créé la musique ; artistGenre : genre musical de l'artiste.

Ensuite, les API de descriptions de métadonnées musicales disposent d'un ensemble de valeurs numériques correspondant aux caractéristiques de chaque musique : Algorithmes classiques mono-objectifs :

1. UserKNN [START_REF] Breese | Empirical analysis of predictive algorithms for collaborative ltering[END_REF] : algorithme classique de ltrage collaboratif où les k plus proches voisins de l'utilisateur actif basés sur la similarité des préférences sont sélectionnés an de participer au processus de recommandation ;

2. TrustMF [START_REF] Yang | Social collaborative ltering by trust[END_REF] : dans cette méthode plus récente de ltrage collaboratif, les auteurs proposent des améliorations du modèle classique de factorisation de matrices an d'adresser les problèmes de démarrage à froid et de manque de données. Même s'ils utilisent la méthode classique de la factorisation de matrice, ils se démarquent en utilisant la conance qu'ont les utilisateurs les uns envers les autres an de reéter leur inuence réciproque sur leurs opinions ;

3. SVD++ [Koren, 2008] Les résultats montrent que notre modèle AntRS a obtenu de meilleurs résultats que les autres algorithmes de comparaison. Cependant, un autre objectif de cette expérimentation était de comparer les deux versions de la deuxième phase de notre modèle : la fusion de séquences et la colonie de fusion. Ces deux tactiques, permettant d'obtenir une séquence de recommandationnale multi-objectifs à partir de plusieurs séquences mono-objectif, représentent deux philosophies diérentes de construction de séquences et il est intéressant de pouvoir observer leurs diérences de performance. D'après les résultats obtenus, ces deux méthodes sont relativement proches l'une de l'autre avec l'exception majeure de la précision qui est plus élevée pour la fusion de séquences (0, 344) que pour la colonie de fusion (0, 288). On peut noter aussi une légère diérence au niveau de la diversité relative (respectivement 0, 069 contre 0, 082) et de la nouveauté (0, 741 contre 0, 702). L'importance de la précision dans la littérature et la diérence entre les deux tactiques concernant cette métrique nous permettent de dire que la fusion de séquence est la meilleure des deux tactiques pour cette expérimentation.

Nous allons maintenant nous intéresser à la troisième ligne du tableau de résultats représentant l'exécution de la 2ème partie de notre modèle seule. Pour rappel, l'hypothèse de cette troisième version de notre modèle est de vérier si la première étape de notre modèle permet bien d'améliorer la qualité des résultats en pré-sélectionnant les ressources correspondant le mieux aux quater objectifs à maximiser. On peut observer en eet avec les résultats que l'exécution directe de la colonie de fusion sans la première étape du modèle dégrade bien la qualité des solutions nales trouvées. Nous observons une nette diminution de la précision, du rappel, de la F-mesure, ainsi que de la diversité, de la nouveauté et de préférences. Ces résultats nous permettent donc de conrmer que la première étape de notre modèle, où les 4 colonies travaillent simultanément à obtenir des séquences spécialisées dans leur objectif, améliore bien la qualité nale des recommandations d'une manière signicative. Autrement dit, les deux tactiques de fusion que nous avons développées (fusion de séquences et colonie de fusion) permettent de trouver un compromis entre tous les objectifs de manière plus ecace quand elles se basent sur les résultats de la première étape de notre modèle.

Expérimentation alternative : techniques de validation croisée et de création de graphe alternative Dans la suite de la section, nous allons réaliser la même expérimentation que précédemment avec ces deux modications (le changement du processus de validation croisée et le graphe construit à partir de n plus proches utilisateurs en termes de similarité.), puis nous allons pré- [START_REF] Deb | A fast and elitist multiobjective genetic algorithm : Nsga-ii[END_REF].

Pour les mêmes raisons que pour l'implémentation des algorithmes de comparaison utilisés dans cette section, nous avons utilisé une librairie Java nommée jMetal 53 [START_REF] Durillo | jmetal : A java framework for multi-objective optimization[END_REF]. Cette librairie est spécialisée dans l'implémentation et la mise à disposition d'une vingtaine 51. MOEA : Multi-objective evolutionary algorithms 52. NSGA-II : Non-dominated Sorting Genetic Algorithm 2. 53. jMetal : Metaheuristic Algorithms in Java. Code de signicativité statistique : 0 '***' 0,001 '**' 0,01 '*' 0,05 '.' 0,1 ' ' 1 de MOEA, permettant de les adapter à tous types de problèmes multi-objectifs.

Résultats

La version du modèle AntRS utilisée est la même que présentée dans le Chapitre 3 et dans l'expérimentation 4.3.3. L'algorithme d'optimisation NSGA-II a, quant à lui, été lancé sur un serveur de calculs dédié de l'équipe KIWI et arrêté à partir du moment où 10 générations de suite n'amélioraient plus les résultats obtenus. Les valeurs obtenues pour les 5 métavariables ont ensuite été utilisées dans une exécution complète de AntRS an de mesurer l'impact de l'optimisation.

L'algorithme de comparaison PEH [START_REF] Ribeiro | Multiobjective pareto-ecient approaches for recommender systems[END_REF] inclut déjà dans son fonctionnement un MOEA nommé SPEA2 54 [START_REF] Zitzler | Spea2 : Improving the strength pareto evolutionary algorithm[END_REF]

  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5 Illustration d'un chemin créé par des fourmis appartenant à l'espèce des fourmis légionnaires (crédit photo : Mehmet Karatay). . . . . . . . . . . . . . . . . . . . . 2.6 Exemple de descente de gradient où l'on peut voir l'exploration au début avec un déplacement rapide puis l'exploitation ensuite vers la solution trouvée. ( crédit image : Joris Gillis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 . 2

 22 Les facteurs humains à prendre en compte dans la recommandation Comme nous l'avons vu dans la section précédente, la performance des premiers systèmes de recommandation a été mesurée avec les outils du domaine de la recherche d'information. Parmi ceux-ci on peut citer la précision et le rappel qui sont deux mesures permettant de jauger la pertinence des ressources sélectionnées en les comparant avec l'ensemble des ressources disponibles. La Figure 2.1 présente bien la manière dont ces deux mesures sont calculées 10 .

Figure 2 . 1

 21 Figure 2.1 Présentation schématisée du calcul de la précision et du rappel en fonction des ressources trouvées par rapport à l'ensemble des ressources disponibles (crédit image : Datamok / User:Walber).

  , une liste des tâches usuelles que doivent réaliser ces systèmes. Dans cette liste se trouve entre autres une réexion des auteurs sur la recommandation de séquences dans le cadre de l'utilisation d'un site d'écoute de musiques en ligne : [...] Cependant, le dé que représente le fait de passer d'une recommandation d'une seule musique à une recommandation d'une séquence de musiques satisfaisante dans son ensemble nous a intrigué. Cette même tâche peut s'appliquer à la recommandation d'articles de recherche an d'appréhender un domaine (lire cette introduction, puis lire cette étude, ...). Alors que le domaine de la recherche d'information a exploré le timing et les séquences d'achat de produits, nous n'avons connaissance d'aucun système de recommandation ou de recherche s'attelant directement à la résolution de cette tâche (i.e. la recommandation en séquences).des actions a de l'importance. Ces systèmes de recommandation portant une attention particulière aux séquences sont regroupés sous le terme de systèmes de recommandation sensibles aux séquences (sequence-aware recommender system )[START_REF] Quadrana | Sequence-aware recommender systems[END_REF]. Dans leur tour d'horizon du domaine, les auteurs proposent une vue d'ensemble de la manière dont un système de recommandation sensible aux séquences fonctionne à l'aide d'un schéma en 3 parties, présenté par la Figure 2.2.

Figure 2 . 2

 22 Figure 2.2 Vue d'ensemble du fonctionnement d'un système de recommandation sensible aux séquences (source :[START_REF] Quadrana | Sequence-aware recommender systems[END_REF]).

3.

  Les sorties : les auteurs distinguent ici deux types de sorties possibles. Le premier type de sortie concerne d'abord les listes ordonnées de ressources que nous avons déjà explicitées auparavant dans ce manuscrit. Une liste aura pour but de proposer à l'utilisateur un ensemble de ressources ordonnées de la meilleure à la moins bonne selon une ou plusieurs métriques spéciques. Une liste propose dans les faits un ensemble d'alternatives, de choix possibles, que le système met à disposition de l'utilisateur an que ce dernier puisse choisir une (ou éventuellement plusieurs) ressource(s) parmi toutes celles proposées. Ce premier type de sortie est donc identique aux systèmes de recommandation classiques. Le deuxième type de sortie concerne les séquences de ressources. Contrairement aux listes consistant en un ensemble d'alternatives, les ressources d'une séquence ont pour but d'être toutes consultées dans l'ordre donné par le système. Là où pour les listes, une recommandation consiste en une ressource, pour les séquences une recommandation consiste en une suite de ressources à consulter dans l'ordre proposé. Ainsi, une séquence peut être considérée comme une unique recommandation, de la même manière que dans une liste chaque ressource est une recommandation unique.

  Le domaine de la musique est un débouché naturel des systèmes de recommandation s'intéressant aux séquences, autant quand il s'agit d'exploiter les séquences créées par les utilisateurs que lorsqu'il s'agit d'en produire en sortie d'un système. Cet état de fait s'explique par la spécicité du domaine musical où les utilisateurs écoutent très souvent plusieurs musiques les unes à la suite des autres. Ces utilisateurs produisent des séquences signicatives de par leurs écoutes et peuvent être demandeurs de séquences de musiques, ou playlists, adaptées à leurs préférences. Il n'est donc pas étonnant de trouver dès le début des années 2000 dans la littérature des travaux portant sur ce sujet. Les travaux de l'époque souraient cependant d'un certain nombre de problèmes, comme un manque de personnalisation et d'expressivité ou encore des dicultés pour

  où les auteurs expliquent que le but des systèmes de recommandation dans le domaine de la musique est d'acquérir et d'exploiter des informations supplémentaires à propos des musiques an de comprendre le thème sous-jacent des playlists créées par les utilisateurs[...]. Le but ultime serait ainsi de concevoir de nouvelles approches algorithmiques qui seraient explicitement conçues pour créer des playlists correspondant à une ou plusieurs caractéristiques signicatives pour l'utilisateur . En dehors des facteurs humains déjà développés au début de cette section (similarité, diversité, nouveauté), les auteurs explicitent ces caractéristiques signicatives comme pouvant aussi être l'homogénéité de la playlist dans son ensemble ou encore les transitions entre chacune des musiques d'une playlist. Le but serait donc ici de réussir à créer des playlists semblables à ce qu'un être humain pourrait faire tout en tenant compte au maximum des besoins en similarité diversité et nouveauté.[START_REF] Quadrana | Sequence-aware recommender systems[END_REF] développent aussi cette idée en expliquant qu'un système de recommandation musical peut soit proposer des musiques correspondant d'une manière générale au thème de la playlist, soit proposer une playlist avec un ordre spécique permettant de garantir des transitions douces entre chaque musique, comme par exemple une augmentation graduelle du tempo. Les notions de progression et de transitions douces dans une playlist correspondent à la dénition d'une séquence donnée plus haut dans le manuscrit et sont donc particulièrement intéressantes dans le cadre de cette thèse. Il est cependant à noter que, dans le domaine des recommandations musicales, un débat est récemment apparu sur l'importance de l'ordre des musiques dans les recommandations de playlist. En eet, une étude exploratoire récente a montré que, si les utilisateurs jugent positivement un système recommandant des musiques diverses et nouvelles, ces derniers ne portaient que peu d'intérêt à l'ordre dans lequel les musiques étaient proposées (voire dans certains cas ne percevaient même pas d'ordre spécique dans les recommandations)[START_REF] Tintarev | Sequences of diverse song recommendations : An exploratory study in a commercial system[END_REF].Même si cette étude n'a porté que sur 20 participants, les résultats obtenus sont intéressants et soulignent à quel point chaque domaine à des particularités propres dont il est nécessaire de tenir compte pour la conception d'un système de recommandation sensible aux séquences.

  Figure 2.3. Selon cette dénition, l'immense majorité des êtres vivants, robots, machines et programmes informatiques peuvent être considérés comme des agents. Nous allons aner petit à petit cette dénition an de rentrer dans le cadre spécique des systèmes multi-agents. Un premier élément pouvant être ajouté est la notion de rationalité. Un agent rationnel est un agent dont le comportement est le bon, étant donné un environnement spécique dans lequel il évolue. Avoir le bon comportement, autrement dit eectuer une bonne séquence d'actions, implique de dénir un but précis, ainsi qu'une manière d'évaluer les séquences d'actions que l'agent eectue, comme par exemple la maximisation d'une fonction d'utilité. An de réaliser des actions dans son environnement, un agent a besoin de pouvoir prendre des décisions de lui-même. Il existe dans la littérature deux types d'agents, représentant deux conceptions diérentes pour la résolution d'un problème [Ferber, 1995] : Le premier type d'agent est appelé agent cognitif et fait référence à des agents possédant une représentation symbolique du monde avec laquelle ils peuvent appliquer des raisonnements. Ces agents possèdent donc une représentation interne de leur environnement et sont capables d'interagir entre eux de manière sophistiquée. Ce type d'agent

Figure 2 . 3

 23 Figure 2.3 Schéma représentant l'interaction entre un agent et l'environnement dans lequel il évolue [Russell and Norvig, 2016].

  Nous avons pour le moment seulement décrit le principe des modèles multi-agents et les agents pouvant les composer. Cependant, ces systèmes ne puisent pas leur origine uniquement dans l'informatique. Beaucoup de systèmes multi-agents s'inspirent à l'origine de comportements d'animaux ou d'insectes observés en milieu naturel par des éthologues. En eet, certaines espèces animales semblent agir en groupe de manière très intelligente sans qu'il n'y ait de meneur ou sans qu'un individu pris séparément ne soit spécialement intelligent. On parle alors d'auto-organisation et d'émergence de l'intelligence quand une masse d'individus peu intelligents se coordonne ainsi dans la nature. Ce phénomène a été étudié par le biologiste français Pierre-Paul Grassé en 1959

2 .

 2 Coordination de la vitesse : aller à la même vitesse que les agents se trouvant à proximité ; 3. Centrage : rester le plus proche possible des autres agents se trouvant à proximité, sans déclencher la règle d'évitement de collision. Ces trois règles sont donc exécutées par les agents en permanence, de la plus prioritaire à la moins prioritaire, et permettent d'obtenir virtuellement un comportement de murmuration où tous les agents restent proches les uns des autres et changent de direction ensemble, comme montré dans la Figure 2.4. Ce modèle a par exemple été utilisé dans l'industrie du divertissement pour simuler des foules cohérentes dans des jeux vidéos ou des lms[START_REF] Silva | Boids that see : Using self-occlusion for simulating large groups on gpus[END_REF].

Figure 2 . 4

 24 Figure 2.4 Simulation de boids où l'on peut voir les agents se déplaçant dans la même direction à une certaine distance les uns des autres dans un environnement simulé[Reynolds, 1987].

Figure 2 . 5

 25 Figure 2.5 Illustration d'un chemin créé par des fourmis appartenant à l'espèce des fourmis légionnaires (crédit photo : Mehmet Karatay).

Figure 2 .

 2 Figure 2.6 Exemple de descente de gradient où l'on peut voir l'exploration au début avec un déplacement rapide puis l'exploitation ensuite vers la solution trouvée. ( crédit image : Joris Gillis

Figure 2 . 7

 27 Figure 2.7 Illustration de l'expérience des ponts binaires par Jean-Louis Deneubourg (a).Après un certain temps, les fourmis choisissent majoritairement une des deux voies possibles (b)[START_REF] Deneubourg | The self-organizing exploratory pattern of the argentine ant[END_REF].

Figure 2 . 8

 28 Figure 2.8 Schéma du dispositif expérimental utilisé pour vérier si les fourmis sont bien capables d'emprunter rapidement la voie la plus courte lorsque leur sont présentés des choix qualitativement diérents[START_REF] Goss | Selforganized shortcuts in the argentine ant[END_REF]].

  les poids permettant de moduler l'importance des 3 facteurs pris en compte. Plus la valeur de f (a) est haute et plus l'arc sera considéré attractif. Un arc sera donc attractif quand : son n÷ud d'arrivée n'a jamais été visité ou n'a pas été visité depuis longtemps (H → 1) ; il est plébiscité par les professeurs (W important) ; il y a une atmosphère de succès autour de cet arc (S important) ; peu d'échecs ont eu lieu près de cet arc (F faible). An de choisir le prochain arc pour l'étudiant, le système sélectionne aléatoirement un certain nombre d'arcs possibles et garde celui possédant la plus haute valeur f (a). La sélection d'un sous-ensemble d'arcs permet de varier un minimum les recommandations et d'éviter de proposer tout le temps les arcs les plus attractifs. Les auteurs proposent donc ici une adaptation complète des ACO pour un système de recommandation dans l'e-éducation tout en intégrant des principes pédagogiques importants. L'utilisation de plusieurs types de phéromones et de diérentes valuations sur les arêtes du graphe permettent d'entrevoir le potentiel et l'adaptabilité des algorithmes ACO. Quelques critiques peuvent cependant être proposées.Une première critique possible est qu'il n'existe pas de modèle utilisateur prenant en compte les caractéristiques personnelles de chaque étudiant (notes, niveau, style d'apprentissage...). Posséder et utiliser un modèle par étudiant pourrait permettre à l'algorithme de mieux s'adapter aux cas particuliers, nombreux dans le domaine des systèmes de recommandation[START_REF] Gras | Identifying grey sheep users in collaborative ltering : a distribution-based technique[END_REF]. Dans cet article, les auteurs montrent que les techniques classiques de ltrage collaboratif n'arrivent pas à bien détecter les utilisateurs atypiques 32 alors qu'il est possible de détecter et de satisfaire ces derniers avec des techniques spéciques.Une autre critique possible concerne le fait que les professeurs doivent au préalable évaluer les chemins possibles à partir de chaque sommet sous la forme du poids pédagogique W . Ce fait révèle que l'expérimentation n'a pas utilisé un grand nombre de ressources pédagogiques (ce qui est le cas car le graphe utilisé par les auteurs ne possédait que 20 n÷uds et 47 arêtes, soit 20 ressources pédagogiques). Dans la pratique, cette méthode n'est pas adaptée pour trois raisons majeures. Premièrement, il est dicilement concevable d'évaluer manuellement la probabilité de 32. Les utilisateurs atypiques (Grey Sheep Users) sont des utilisateurs possédant des préférences diérentes de la majorité des autres utilisateurs du système. passage de chaque arête dans des domaines dépassant les quelques dizaines de ressources. Deuxièmement, l'utilisation d'experts du domaine, comme les professeurs dans l'e-éducation, n'est pas forcément possible selon le domaine considéré. Qui peut par exemple juger de la qualité des transitions à partir d'une musique spécique ? Troisièmement, un tel modèle n'est que dicilement transférable en l'état d'un domaine applicatif à un autre pour les raisons évoquées ci-dessus.Intéressons-nous maintenant à une autre étude dans l'e-éducation qui propose une solution pour permettre une plus grande personnalisation des recommandations. Dans leur article,[START_REF] Kurilovas | Recommending suitable learning paths according to learners' preferences : Experimental research results[END_REF] utilisent eux aussi les ACO avec comme but de fournir des séquences composées de modules d'apprentissage aux étudiants en fonction de leur style d'apprentissage. Des recherches ont montré qu'il existait de grands styles d'apprentissage et que les apprenants possédaient des préférences pour certains styles plus que d'autres. Les auteurs utilisent ici la catégorisation en 4 grands styles proposée par[START_REF] Honey | The manual of learning styles[END_REF] 33 . Ainsi, les agents ne sont désormais plus tous identiques mais possèdent un ou plusieurs style(s) d'apprentissage préféré(s) et la mise à jour des phéromones est elle aussi modiée an de prendre en compte ces préférences. Ainsi, un agent préférera un chemin composé de modules d'apprentissage correspondant à son ou ses propre(s) style(s) d'apprentissage et déposera plus de phéromones le cas échéant. Ces changements reètent une volonté de personnalisation des recommandations s'inscrivant dans le récent changement de paradigme du domaine des systèmes de recommandation où les préférences des utilisateurs sont de plus en plus prises en compte. Il est néanmoins à noter pour cette étude qu'il est nécessaire de faire passer un long questionnaire pour dénir les styles d'apprentissage des apprenants avant de pouvoir utiliser le système. De plus, ces styles d'apprentissage sont xes et ne peuvent plus être modiés après le démarrage du système, empêchant potentiellement un apprenant d'évoluer dans sa manière d'apprendre.

  Le problème du voyageur de commerce multi-objectifs (multi-objective travelling salesman problem ) : où la distance à minimiser ainsi que le temps de voyage sont les deux objectifs à minimiser (avec l'introduction de contraintes de circulation rendant certains chemins plus ou moins longs à emprunter) ; Le problème de la tournée de véhicules avec fenêtre de temps (vehicle routing problem with time windows ) : où, en plus de minimiser le nombre de véhicules utilisés et le trajet total parcouru par ceux-ci, les clients doivent être livrés dans une certaine fenêtre de temps.Dans le cas de ces deux problèmes, ainsi que pour beaucoup de problèmes multi-objectifs traités dans la littérature scientique, les objectifs à minimiser sont souvent incompatibles entre eux, dans le sens où minimiser un objectif spécique tend à pénaliser un ou plusieurs des autres objectifs. Prenons comme exemple le problème du voyageur de commerce multi-objectifs. Le but est de trouver le plus court chemin d'un point A à un point B non seulement d'un point de vue de la distance parcourue mais aussi du temps nécessaire pour faire le chemin. Cependant, minimiser la distance parcourue impliquera potentiellement d'emprunter des chemins encombrés, rallongeant le temps de voyage. En d'autres termes, minimiser l'objectif de distance parcourue peut dégrader l'objectif de temps. Inversement, optimiser l'objectif de temps demanderait potentiellement d'utiliser des chemins moins empruntés mais plus longs, dégradant ainsi l'objectif de minimisation de la distance totale parcourue. Ces problèmes, où l'optimisation d'un objectif aecte les performances des autres objectifs, ne possèdent souvent pas de solution optimale. En eet, dans un problème mono-objectif, plus un algorithme réussira à minimiser cet objectif et meilleure sera la solution. Un problème mono-objectif possède donc une solution optimale où l'objectif à optimiser possède une valeur minimale et, corollairement, il est possible de classer les solutions trouvées en fonction de cette valeur. Autrement dit, pour deux solutions diérentes s 1 , s 2 devant minimiser la valeur v pour le même problème, si v s 1 < v s 2 alors s 1 est strictement une meilleure solution que s 2 . Pour les problèmes multi-objectifs, il n'est pas directement possible de déterminer si une solution est meilleure qu'une autre. L'exemple du voyageur de commerce multi-objectifs avec la distance d et le temps t illustre bien ce fait : comment déterminer si une solution s 1 = d = 13 km t = 23 mn est meilleure qu'une autre solution s 2 = d = 11 km t = 26 mn ? Devant la multitude de solutions possibles sans moyen direct de les classer, il est utile de considérer le concept d'optimum de Pareto. Le principe de Pareto a d'abord été inventé dans le domaine socio-économique pour décrire la distribution de pouvoir et de richesses au sein d'une population. Il a ensuite été étendu avec la notion d'optimum de Pareto, décrivant l'ensemble des solutions à un problème multi-objectifs où il n'est pas possible d'améliorer un des objectifs sans dégrader les autres 34 . Toutes les solutions Pareto-optimales à un problème sont donc équivalentes entre elles (même si elles sont bien toutes diérentes les unes des autres) et sont strictement meilleures que toutes les autres solutions non optimales à ce même problème (aussi appelées solutions dominées). La Figure 2.9 illustre l'espace des solutions sur un problème de minimisation de deux variables. On remarque la présence d'une frontière, aussi appelé front de Pareto, où toutes les solutions sont optimales.

Figure 2 . 9

 29 Figure 2.9 Front de Pareto d'un problème de minimisation de deux variables f 1 et f 2. Toutes les solutions sur cette frontière sont optimales (source Wikipedia).

Figure 3 . 1

 31 Figure 3.1 Graphe représentant l'évolution exponentielle du nombre d'arêtes selon le nombre de sommets existants dans un graphe complet.

  l'utilisation que font les utilisateurs des ressources du domaine. La deuxième hypothèse se justie quant à elle par le fait qu'un utilisateur ne peut pas, dans la majorité des cas, avoir une vue d'ensemble de toutes les ressources d'un domaine. Il est en eet courant pour un site de e-commerce ou d'écoute de musiques de posséder plusieurs dizaines de milliers de ressources. La deuxième hypothèse H2 se base donc sur le problème fondamental que les systèmes de recommandation essaient de résoudre, à savoir aider les utilisateurs à faire les meilleurs choix possibles dans des environnements toujours plus complexes et vastes. Cette discussion sur les dés amenés par ces deux hypothèses nous amène à considérer le travail d'Herbert Simon qui a été décoré d'un prix nobel d'économie et d'un prix Turing. Ce dernier a théorisé et nommé le problème de rationalité limitée : devant des contraintes altérant et limitant les capacités d'un individu (domaine trop

Figure 3 . 2

 32 Figure 3.2 Graphe représentant l'évolution linéaire du nombre d'arêtes selon le nombre de sommets voulus dans un graphe créé avec diérentes valeurs de d.

  Supposons un système de recommandation dans le domaine muséal dont le but est de proposer des parcours composés de diérentes peintures. Le musée possède, entre autres, deux tableaux de Vincent van Gogh appartenant à la série des Tournesols. Ces tableaux sont tous les deux des natures mortes représentant un vase et 15 tournesols ; ils ont tous les deux été peints en 1889 ; les palettes de couleurs et le style sont quasi similaires. Dans le graphe, les sommets A et B représentent ces deux tableaux et (A, B) représente l'arête les reliant. Pour toutes les raisons évoquées ci-dessus, on peut raisonnablement penser que ces deux ressources sont très similaires entre elles. La distance d similarit de la colonie axée sur la similarité sera donc faible, indiquant aux agents que les deux sommets sont eectivement proches l'un de l'autre et favorisant le passage par cette arête pour minimiser la distance totale de la solution. À l'inverse, la colonie relative à la diversité aura à traverser une plus longue distance d diversit entre les deux sommets comme ces derniers sont très similaires entre eux. À travers ces exemples sont illustrées les diérences possibles dans le calcul de la distance d en fonction de l'objectif considéré. La conséquence à cela est que, même si la topologie du graphe peut rester la même pour tous les objectifs, le calcul des distances et la valuation des arêtes seront quant à eux diérents selon l'objectif. Le reste de cette section propose une manière de calculer ces distances pour chaque objectif.

  2) où C i représentent les caractéristiques de la ressource i. Le terme de caractéristiques est générique et peut inclure toutes les métadonnées exploitables de domaine applicatif sur une ressource. Comme expliqué plus haut, ces caractéristiques sont donc dépendantes de chaque base de données et de chaque domaine d'application. Nous avons ici généralisé ces données avec la formalisation suivante : chaque ressource (ou item) i du domaine d'application est décrite par n caractéristiques c comme suit : C i = {c 1 , c 2 , . . . , c n }. Dans l'exemple donné plus haut avec les deux tableaux de van Gogh, nous avons expliqué que la distance séparant deux sommets sur le graphe représentait intuitivement leur éloignement selon l'objectif considéré. Ainsi pour la similarité, deux sommets représentant des ressources similaires verront l'arête les reliant posséder une faible distance, et inversement. Le but est ici d'être le plus proche possible du fonctionnement du modèle initial où une petite distance entre deux sommets représentent eectivement une petite distance physique entre ces deux points (par exemple deux points géographiques proches l'un de l'autre). La similarité cosinus produit cependant une valeur comprise entre [0; 1], ne correspondant pas à la valuation des arêtes dans le modèle initial. An de convertir cette similarité s ∈ [0; 1] en distance d ∈ [1; +∞], nous avons simplement utilisé l'inverse multiplicatif d = 1

  qui a déni la nouveauté comme une mesure composée de trois caractéristiques : 1. Unknown (notion d'inconnue) : représente si la ressource est connue ou non de l'utilisateur ; 2. Satisfactory (satisfaction) : représente si la ressource est aimée ou non par l'utilisateur ; 3. Dissimilarity (dissimilarité) : représente si la ressource est dissimilaire aux autres ressources connues par l'utilisateur. L'auteur a ensuite proposé d'évaluer formellement la nouveauté d'une ressource i pour l'utilisateur u en proposant l'Équation 3.4 :

  4 à l'Équation 3.5 an d'éviter une redondance entre les objectifs : p(i|unknown, u) = -log(1 -pop i ) (3.5) où pop i est la popularité de la ressource i. La notion de popularité est ici volontairement laissée générale car largement dépendante du domaine d'application et des ressources considérées. En eet, la popularité peut prendre la forme d'un nombre de vues, d'un nombre d'écoutes, d'une valeur calculée de manière interne par des sites, d'une comparaison entre les consultations des 38. C'est le problème statistique classique de l'overtting, ou du surentrainement, souvent rencontré dans le domaine de l'apprentissage automatique.

  39. Ces deux types de retours ne sont pas redondants mais plutôt complémentaires. Lorsque cela est possible, selon le domaine d'application, mais nous pouvons tout de même formaliser la manière dont ils sont considérés. Chaque information collectée par le système concernant le comportement d'un utilisateur doit être prise en compte. Plus précisément, chaque interaction, directe ou indirecte, qu'un utilisateur peut avoir avec une ressource doit être intégrée dans l'estimation de son intérêt sur cette ressource. Soit C u l'ensemble de tous les types d'interactions possibles qu'un utilisateur u peut avoir avec les ressources du système. c u,i représente alors la somme des interactions d'un même type c d'un utilisateur u sur une ressource i. Voici un rapide exemple toujours dans le domaine musical an d'illustrer ces derniers points : C u : écouter une musique, noter une musique, passer une musique avant la n, mettre une musique dans sa playlist, ... ; c u,i pourrait par exemple renseigner sur le fait que : l'utilisateur u à écouter la musique i 15 fois. An d'agréger tous les types d'interactions possibles dans une unique valeur d'intérêt d'un utilisateur envers une ressource, nous avons utilisé la formule proposée par Castagnos [Castagnos

  ressources. Contrairement à la majorité des systèmes de recommandation, nous ne souhaitons pas seulement recommander une liste de ressources, mais une séquence ayant un début, une n et un ordre spécique. Comme indiqué précédemment, dans un musée, une bonne séquence recommandée pourrait consister en des ÷uvres d'art liées d'une manière ou d'une autre (i.e. du même artiste ou de la même période) et situées à proximité les unes des autres. Une telle séquence pourrait ensuite progresser lentement vers un autre artiste ou une section diérente du musée. Notre objectif est donc de recommander une séquence qui ne progresse ni trop lentement ni trop rapidement : c'est ce que nous appelons la progressivité optimale o. Cette métrique est utilisée pour s'assurer que chaque ressource ore une bonne progressivité par rapport à ses prédécesseurs et successeurs. Pour ce faire, nous avons calculé o sur la base des premier et dernier éléments d'une séquence donnée pour un utilisateur spécique comme le montre l'Équation 3.7.

L

  'Équation 3.8 produit une valeur de distance d ij ∈ [-∞; +∞]. En fonction de l'intervalle de d, nous pouvons déduire que : d ij ∈ [-∞; 0] : les caractéristiques de la ressource j vont dans la direction inverse par rapport à la valeur de progressivité optimale o ; d ij ∈ [0; 1] : la progression est trop lente par rapport à la valeur o attendue ; d ij = 1 : la progression est idéale ; d ij ∈ [1; +∞] : la progression trop rapide. Dans un souci d'homogénéisation des distances entre toutes les colonies et pour respecter le modèle initial ACS où d représentait une distance physique, nous avons souhaité garder la distance d ∈ [1; +∞]. Pour ce faire, nous avons donc réalisé une opération de transformation lorsque d ij < 1, présentée dans l'Équation 3.9 : Si

  Dans la section précédente, nous avons décrit le fonctionnement d'une colonie dédiée à la progressivité. Cependant, nous soutenons le fait que la progressivité ne doit pas être l'apanage d'une seule colonie, mais doit être présente dans toutes les colonies. La progressivité doit avoir une place prépondérante dans les séquences que notre modèle construit, car c'est une notion fondamentale dans la diérence entre une liste de recommandation et une séquence de recommandation.An de renforcer la progressivité des séquences construites par toutes les colonies, nous proposons une version modiée de la mise à jour globale des phéromones décrite dans l'Équation 2.10. Dans l'algorithme initial ACS, L best est la longueur du plus court chemin trouvé par un agent. Cette valeur est une simple somme de la distance associée à chaque arête du meilleur chemin. Cette valeur est ensuite utilisée dans le calcul déterminant la quantité de phéromones à ajouter sur chaque arête du chemin. Ainsi, plus un chemin est court, plus les arêtes le composant sont récompensées par une plus grande quantité de phéromones. Ce mécanisme est au c÷ur du renforcement de bonnes solutions et de l'émergence de comportements intelligents. An de maximiser les séquences possédant une progression constante, nous avons modié le calcul de L best pour intégrer une notion de progressivité. Pour ce faire, nous n'utilisons plus simplement la distance d'une arête, mais aussi sa dérivée, comme montré dans l'Équation 3.10 : où E est l'ensemble des arêtes du meilleur chemin et d e est la distance associée à l'arête e.

  La première tactique pour fusionner les diérentes séquences produites précédemment a naturellement été d'utiliser le même modèle que pour la première étape, à savoir une colonie spécique dont les agents se déplacent sur un graphe pour trouver une solution. Cette colonie est cependant diérente des précédentes pour deux raisons principales.Premièrement, le graphe sur lequel cette colonie opère n'a aucun intérêt à contenir l'ensemble de toutes les ressources existantes du domaine. Nous considérons ici que la première étape du modèle eectue une sélection d'un certain nombre de ressources spéciques à chaque colonie. Ces ressources peuvent ensuite être utilisées pour créer un second graphe, possédant beaucoup moins de n÷uds, sur lequel la colonie de fusion pourra chercher une solution. Nous avons utilisé toutes les ressources sélectionnées dans la première étape en tant que n÷uds du nouveau graphe. Nous avons ensuite ajouté des arêtes à chaque paire consécutives de ressources dans les séquences de la première étape an de conserver les meilleurs chemins trouvés par les agents. Enn, nous avons ajouté des arêtes aléatoires en suivant la même méthode que décrite au début de ce chapitre dans la création du graphe principal en Équation 3.1. Le but de ces arêtes aléatoires est le même que précédemment, à savoir, permettre aux agents d'explorer de nouveaux chemins potentiels. Cette première tactique reprend donc les points principaux de la création du graphe principal. Deuxièmement, et contrairement à la première étape où toutes les colonies avaient un but précis, la colonie de fusion n'a pas pour vocation d'optimiser une caractéristique spécique. Au contraire, cette colonie a pour essence de regrouper au mieux dans une solution unique les résultats spéciques trouvés auparavant. Pour ce faire, la colonie de fusion utilise l'ensemble des facteurs humains présentés précédemment dans une somme pondérée an d'attribuer aux arêtes une distance d prenant en compte tous les objectifs. Le calcul de cette distance est présenté ci-dessous dans l'Équation 3.11. d ij = col∈colonies w(col) • d ij (col) (3.11) où w(col) est le poids représentant l'importance estimée de l'objectif de la colonie col dans la recommandation nale. Nous proposons ici de calculer les poids moyens de chaque objectif (similarité, diversité, nouveauté et préférences) sur les dernières n sessions d'activité de l'utilisateur. Par exemple, un utilisateur n'ayant écouté que l'album Wish you were here des Pink Floyd durant ses dernières sessions d'écoute se verra attribuer des poids forts pour la similarité et les préférences. Inversement, les poids des objectifs de diversité et de nouveauté seront faibles.

Dorigo.

  Au lieu de trouver le plus court chemin dans un graphe à l'aide d'une colonie d'agents fourmis, nous utilisons 4 colonies en parallèle qui, chacune, maximise un aspect de la recommandation nale. Comme nous l'avons montré dans l'état de l'art, il est désormais nécessaire que les recommandations prennent en compte de multiples facteurs comme la diversité, la similarité ou la nouveauté. Il est tout aussi important pour les systèmes de recommandation d'être modulaires et génériques an de s'adapter aux situations toujours plus complexes et aux domaines applicatifs toujours plus variés dans lesquels ils sont utilisés. Le choix de s'inspirer d'un modèle multi-agents est une réponse à ces dés de la recommandation moderne. Les systèmes multi-agents ont une faible complexité algorithmique et sont particulièrement adaptables par nature. Le modèle que nous avons proposé est de plus susamment générique pour s'adapter aux domaines applicatifs où il est possible de faire de la recommandation de séquences. Dans la suite de ce manuscrit, nous allons appliquer notre modèle AntRS a un domaine applicatif et réaliser des expérimentations avec des données d'utilisation concrète an d'étudier ses performances dans des conditions d'utilisation réelles.

  d'abord nous intéresser à l'implémentation et au fonctionnement expérimental du modèle ACS de Dorigo. Cette section mettra en exergue les points importants permettant le bon fonctionnement du modèle classique. À l'aide d'expérimentations simples, nous reprendrons et expliquerons d'un point du vue pratique les notions introduites de manière théorique dans l'état de l'art lors de la présentation du modèle ACS. Ces premières expérimentations permettront au lecteur de mieux appréhender la suite du chapitre dans laquelle les notions abordées seront ré-utilisées et étendues. Dans la deuxième section de ce chapitre, nous nous intéresserons aux expérimentations principales de cette thèse portant sur notre modèle AntRS. Nous décrirons d'abord la base de données que nous avons utilisé pour tester notre modèle, puis l'ensemble des expérimentations faites et enn les principaux résultats obtenus. et intérêts de ces premières expérimentations La première étape de ce travail expérimental a consisté dans l'implémentation du modèle initial proposé par Dorigo sans modication. Le but était à la fois de vérier si les résultats obtenus correspondaient à ce qui était attendu dans la littérature, et d'avoir par ailleurs un programme représentant une base fonctionnelle permettant de tester de nouveaux modèles plus complexes par la suite. Nous avons donc commencé par implémenter le modèle Ant Colony System décrit par Dorigo dans son article [Dorigo and Birattari, 2011]. Comme nous avons déjà décrit en détail ce modèle dans la Section 2.4.3 de l'état de l'art, nous ne reviendrons pas sur les équations régissant le fonctionnement d'ACS. Cependant, nous allons plutôt nous intéresser ici aux résultats obtenus lors d'expérimentations connues de la littérature scientique. Le choix du langage de programmation dans lequel a été réalisé l'implémentation et les expérimentations durant toute cette thèse a été Java. Ce choix se justie par 3 principales raisons :

  dans la Figure 4.1. Le format du diagramme de ux permet de bien visualiser le fonctionnement de l'algorithme et notamment ses boucles itératives imbriquées : tant qu'un critère de n n'a pas été trouvé ; tant qu'il reste des fourmis à déplacer ; et tant qu'il reste des n÷uds à explorer pour une fourmi. Après avoir implémenté en Java l'algorithme ACS décrit ci-dessus, nous avons voulu tester son fonctionnement. À cette n, nous avons repris les expériences des ponts binaires que nous avons présenté dans la section 2.4.4 de l'état de l'art. Pour rappel, ces types d'expérimentations consistent à placer des fourmis dans un dispositif comportant un point de départ (la fourmilière), un point d'arrivée (la nourriture) et deux chemins y menant. Ces chemins peuvent avoir la même distance ou des distances diérentes selon le type d'expérimentation. Le but est ensuite d'observer le comportement des fourmis sur quelques dizaines de minutes an de déterminer si un chemin est plus emprunté qu'un autre. La Figure 4.2 présente deux exemples de congurations possibles de cette expérience utilisée sur de vraies fourmis. Le but étant bien sûr d'observer le comportement de groupes de fourmis et leurs capacités à trouver le chemin le plus court vers

Figure 4 . 1

 41 Figure 4.1 Diagramme de ux représentant le déroulement de l'algorithme ACS, proposé par [Schlunz, 2011].

Figure 4 . 2

 42 Figure 4.2 Deux exemples de congurations expérimentales diérentes permettant chacune detester la capacité des fourmis à trouver le plus court chemin dans un evironnement[START_REF] Goss | Selforganized shortcuts in the argentine ant[END_REF]].

4. 2 . 2

 22 Expérimentations préliminaires sur le modèles ACS Expérimentation 1.1 : ponts binaires de même longueur La première expérimentation avait pour but de tester le graphe le plus simple possible, à l'image du dispositif de l'expérimentation de Deneubourg dont nous avons déjà parlé dans l'état de l'art et qui est rappelé avec la Figure 4.3 : un point de départ, un point d'arrivée et deux chemins possibles strictement équivalents en terme de distance à parcourir.

Figure 4 . 3

 43 Figure 4.3 Illustration de l'expérience des ponts binaires par Jean-Louis Deneubourg (a).Après un certain temps, les fourmis choisissent majoritairement une des deux voies possibles (b)[START_REF] Deneubourg | The self-organizing exploratory pattern of the argentine ant[END_REF].

Figure 4 . 4

 44 Figure 4.4 Représentation graphique de l'Expérimentation 1.1 menée sur le modèle ACS grâce à la bibliothèque Java GraphStream. Le n÷ud représenté par un carré rouge correspond au départ ; le n÷ud représenté par un carré bleu représente l'arrivée ; les n÷uds ronds noirs représentent des points de passage possible ; les nombres noirs accolés aux arêtes représentent la distance pour parcourir l'arête ; les nombres violets représentent le taux de phéromones déposées sur l'arête.

Figure 4 . 5

 45 Figure 4.5 Résultats obtenus après 30 itérations sur l'Expérimentation 1.1. À gauche, la conguration nale du graphe ; à droite, le pourcentage d'agents fourmis ayant empruntés les deux chemins.

Expérimentation 1. 2 :

 2 ponts binaires de même longueur et inuence des métavariables L'Expérimentation 1.2 illustre l'importance des métavariables sur le comportement du système. La même topologie du graphe est conservée mais certaines métavariables sont modiées : Q 0 et β. La première gère l'équilibre entre exploration et exploitation, tandis que la deuxième concerne l'importance de l'heuristique dans l'exploration. Contrairement à l'Expérimentation 1.1, Q 0 est ici biaisé pour privilégier l'exploration et β est augmenté an de donner plus d'importance à l'heuristique par rapport au phéromones lors de l'exploration. Les agents ont donc plus de probabilité d'explorer de nouvelles arêtes plutôt que d'emprunter des arêtes où beaucoup de phéromones sont déjà déposés. Dans cette conguration, l'exploration se base principalement sur l'heuristique qui est ici strictement identique quelle que soit l'arête puisque basée sur la distance.Les agents n'ont donc en théorie pas vraiment de direction claire quant au chemin à prendre. On peut voir le résultat de l'Expérimentation 1.2 sur la Figure4.6 : les agents oscillent d'un chemin à l'autre selon l'itération sans qu'aucun des deux ne soit vraiment privilégié. Quand bien même un chemin serait plus emprunté que l'autre pendant une itération, les phéromones supplémentaires déposées sur les arêtes n'ont que peu d'inuence sur la décision lors des prochaines itérations.

Figure 4 . 6

 46 Figure 4.6 Résultats obtenus après 30 itérations sur l'Expérimentation 1.2. Comme les agents se basent principalement sur l'heuristique qui est partout égale, ils oscillent entre les deux chemins sans en privilégier un.

Figure 4 .

 4 Figure 4.7 Résultats obtenus après 30 itérations sur l'Expérimentation 1.3. Les agents exploitent ici les arêtes ayant le plus de phéromones. Très rapidement, tous les agents utilisent le même chemin.

Figure 4 .

 4 Figure 4.8 Conguration nale du graphe pour l'Expérimentation 2 après 30 itérations. Les agents ont en majorité bien sélectionné le chemin le plus court < 0, 1, 3, 4, 9 >.

Figure 4 . 9

 49 Figure 4.9 Exemple de graphe de l'Expérimentation 3 à la n des 50 itérations. Ces graphes sont générés aléatoirement.

  46. https://www.deezer.com 47. https://www.spotify.com Description de la base de données La base de données que nous avons utilisé se base sur le comportement d'utilisateurs de Deezer pendant un mois, entre le 5 décembre 2016 et le 5 janvier 2017. Durant ce mois, ces données, nous avons calculé le nombre de sessions uniques durant ce mois. Une session est déterminée par un utilisateur se connectant sur le site, écoutant un certain nombre de musiques puis se déconnectant. Une session se poursuit tant que l'utilisateur écoute des musiques sans pause plus longues que 15 minutes. Nous avons ainsi pu identier 91.468 sessions uniques composées en moyenne de 18,3 morceaux de musique. Ces sessions seront la base de travail nous permettant de construire le graphe de notre modèle AntRS et de proposer des recommandations. La Figure 4.10 présente en schéma la détection de sessions dans la base de données.

Figure 4 .

 4 Figure 4.10 Exemple de détection de sessions dans la base de données. L'heure à laquelle est lancée chaque musique (ici en bas dans le schéma) ainsi que sa durée sont enregistrées. Si l'utilisateur ne relance pas de musique pendant 15 minutes après la n de sa dernière écoute, alors la session en cours est terminée et une nouvelle session est commencée à la prochaine musique lancée.

  Dans l'expérimentation précédente, nous avons décidé de séparer les 500 utilisateurs en 5 blocs de 100, où à tour de rôle 400 utilisateurs étaient utilisés pour la construction du graphe et 100 utilisateurs correspondaient à la base de test. Ainsi, le modèle avait pour tâche de produire des séquences de recommandations basées sur les sessions d'écoute de ces 100 utilisateurs. Une fois que le modèle avait produit sa séquence recommandée, la session d'écoute initiale sur laquelle était basée la recommandation était dévoilée au modèle et le graphe était reconstruit pour en tenir compte. Le but de ce fonctionnement était de simuler un fonctionnement réel d'un service d'écoute de musique. Cependant, un certain nombre d'études du domaine de la recommandation de la littérature scientique utilisent une méthode diérente lors de la séparation des informations des utilisateurs pour réaliser une validation croisée à 5 blocs. Cette méthode consiste à peupler les 5 blocs non plus à partir d'utilisateurs mais à partir de sessions d'écoute dans chaque utilisateur. Autrement dit, au lieu d'avoir une base d'apprentissage contenant 80% des utilisateurs et une base de test contenant les derniers 20% d'utilisateurs, la base d'apprentissage consiste en 80% des sessions d'écoute de chaque utilisateur et la base de test correspond aux 20% des sessions restantes. Le but du modèle est ici de recommander pour chaque utilisateur des séquences correspondant à la base de test. Par rapport à la première méthode, le graphe possède donc en permanence 80% des sessions de tous les utilisateurs. Cependant, le graphe ne contient pas les connaissances provenant de prols complets d'utilisateurs. Ces deux méthodes sont toutes les deux valides mais proposent deux approches diérentes concernant l'exploitation des données des utilisateurs et il est intéressant de les comparer. Par ailleurs, et comme nous l'avons expliqué dans le chapitre 3 décrivant notre modèle AntRS, la construction du graphe exploite les transitions trouvées dans les sessions d'écoute des utilisateurs pour créer un réseau de n÷uds et d'arêtes représentant l'ensemble des données de la base d'apprentissage. Aucune emphase n'est portée spéciquement sur l'utilisateur actif pour lequel le système est en train de construire des recommandations. Cependant, nous avons proposé dans le chapitre 3 une autre méthode de construction du graphe portant une emphase particulière sur l'utilisateur actif. À chaque nouvel utilisateur traité, nous calculons ses k plus proches voisins parmi les 499 utilisateurs restants. Pour faire cela, nous avons calculé la similarité cosine à partir des préférences existantes de ces utilisateurs. Autrement dit, pour chaque utilisateur actif, nous avons comparé ses 80% des sessions d'écoute de la base d'apprentissage avec les 80% des sessions d'écoute des 499 autres utilisateurs. Les k utilisateurs les plus similaires sont ensuite utilisés pour construire le graphe avec la même technique décrite dans le chapitre 3. L'avantage est ici de réduire la taille du graphe, d'accélérer la durée d'exécution et de potentiellement augmenter la qualité des recommandations nales, notamment en terme de similarité puisque c'est le critère de sélection ici. Cette variante de construction du graphe à partir des n plus proches voisins n'est possible qu'avec la technique de validation croisée décrite dans le paragraphe précédent, puisqu'il est nécessaire d'avoir accès aux sessions d'écoute des utilisateurs actifs, ce qui n'est pas le cas avec la première expérimentation de cette section.

4. 3 . 4

 34 Optimisation des métavariables de AntRS Inuence du nombre d'agents et d'itérations sur la précision des recommandations Comme tous les systèmes multi-agents, AntRS est dépendant du nombre d'agents utilisés et des itérations eectuées. Un nombre trop faible d'agents ou d'itérations peut empêcher l'émergence d'un comportement intelligent en raison d'un manque d'interaction entre les agents. Dans le même temps, il est également crucial de ne pas augmenter aveuglément ces paramètres car ils aectent linéairement le temps d'exécution de l'algorithme. Nous avons ainsi réalisé des expérimentations sur notre modèle AntRS an de déterminer un bon compromis entre performance et temps d'exécution. Dans la gure 4.11, la précision moyenne des recommandations obtenues est présentée en fonction du nombre d'agents et d'itérations par incrémentation de 50, allant de 50 à 300. On observe comme attendu une légère augmentation de la précision suivant l'accroissement des agents et des itérations, sans toutefois que celle-ci ne soit majeure. On remarque visuellement que la précision obtenue atteint rapidement un plateau à partir de 100 agents et itérations. Cette observation a été conrmée par un test de signicativité statistique avec le test de Wilcoxon. Dans un contexte de fonctionnement en ligne où les utilisateurs s'attendent à des recommandations quasi immédiates, l'augmentation importante du temps d'exécution liée à un nombre élevé d'agents et d'itérations pour un gain minime de précision n'est pas recommandable. Ce sont aussi ces valeurs de 100 agents et itérations qui ont été utilisées dans les expérimentations de ce chapitre.

Figure 4 .

 4 Figure 4.11 Inuence du nombre d'agents et d'itérations sur la précision moyenne obtenue par notre modèle.

  dont l'objectif est le même que NSGA-II : optimiser les recommandations en termes de similarité, diversité et nouveauté. Nous n'inclurons donc pas PEH dans les résultats de cette dernière expérimentation. Outre les métavariables, l'exécution de notre modèle s'est déroulée sous les mêmes conditions que pour les expérimentations précédentes. Le Tableau 4.5 présente les résultats obtenus. Les deux premières lignes du tableau sont reprises de l'expérimentation principale AntRS multi-objectifs Section 4.3.3 pour plus de clarté. Pour rappel, cette expérimentation avait utilisé les métavariables empiriques. Les deux dernières lignes du tableau correspondent à AntRS avec les métavariables optimisées via le NSGA-II. La signicativité statistique de la diérence des résultats obtenus a été mesurée entre chaque paire ayant la même tactique de fusion (i.e. AntRS métavariables empiriques (fusion de séquences) vs AntRS métavariables NSGA-II (fusion de séquences) ; et AntRS métavariables empiriques (colonie de fusion) vs AntRS métavariables NSGA-II (colonie de fusion)). Les valeurs en gras indiquent les diérences les plus notables entre les mêmes versions de AntRS sans et avec optimisation. Ces résultats mettent principalement en exergue un net gain en précision et rappel obtenu avec l'optimisation des métavariables. Les valeurs obtenues pour ces métriques sont similaires à l'expérimentation 4.4 où le modèle avait connaissance de 80% des séquences d'écoutes des utilisateurs. On note également des améliorations pour les métriques de nouveauté et de préférences, montrant que les séquences recommandées étaient à la fois plus proches des préférences de l'uti-54. SPEA2 : Strenght Pareto Evolutionary Algorithm 2.

4. 4 .

 4 Conclusionlisateur tout en introduisant parfois des musiques qu'il ne connaissait pas.Cependant, il est important de nuancer ces résultats. Les gains obtenus, même s'ils sont statistiquement signicatifs, restent relativement peu élevés par rapport au temps nécessaire demandé par l'algorithme d'optimisation. De plus, certaines métriques comme la similarité ou la diversité n'ont que peu été aectées par l'optimisation. En conclusion, cette expérimentation nous a montré qu'il était possible d'optimiser les métavariables de notre modèle an d'améliorer certains aspects des séquences recommandées, comme la précision, la nouveauté ou les préférences.Toutefois, le temps d'exécution d'un tel processus d'optimisation peut être prohibitif dans un contexte d'utilisation en ligne et en temps réel.4.4 ConclusionDans ce Chapitre, nous avons mis en pratique le modèle multi-agents et multi-objectifs An-tRS. Nous avons utilisé une base de données musicale provenant du site Deezer représentant un mois complet d'écoutes en ligne. Nous avons ensuite réalisé plusieurs expérimentations portant chacune sur un aspect théorique de AntRS. La première expérimentation présentée dans la Section 4.3.2 nous a permis de vérier que les colonies de notre modèle permettent bien d'obtenir des recommandations de séquences spécialisées dans les facteurs humains identiés dans les chapitres précédents. Dans le cadre de ce travail, nous avons testé de manière isolée 4 colonies correspondant à 4 facteurs humains spéciques : la similarité, la diversité, la nouveauté et les préférences. Les résultats obtenus ont permis de prouver qu'il était possible de lier des facteurs humains à la recherche de chemins dans un graphe par des agents téléonomiques. La deuxième expérimentation, présentée dans la Section 4.3.3, s'est appuyée sur ces conclusions pour tester le modèle AntRS dans son entièreté. Le but de cette expérimentation était triple : 1. Prouver que notre modèle est capable de produire une séquence unique possédant des aspects de chacun des 4 facteurs humains en utilisant les résultats des colonies spécialisées ; le potentiel d'évolution et d'adaptabilité de AntRS à des travaux futurs. Enn, nous nous sommes intéressés dans la Section 4.3.4 à l'optimisation automatique des métavariables de notre modèle. Comme nous l'avons illustré au début de ce chapitre avec les expérimentations préliminaires sur le modèle ACS, les métavariables jouent un rôle essentiel dans la qualité des résultats. Ces dernières gouvernent le comportement des agents, comme par exemple leurs tendances à explorer l'environnement, ou au contraire à exploiter des chemins déjà connus. An de maximiser le potentiel de notre modèle dans ce cadre applicatif, nous avons utilisé l'algorithme génétique d'optimisation de problèmes multi-objectifs NSGA-II sur 5 métavariables de AntRS. Le résultat de cette optimisation a permis d'améliorer de manière statistiquement signicative les performances de notre modèle en termes de précision, rappel, nouveauté et préférences. Cependant, la longueur du processus d'optimisation limite pour le moment son application dans le contexte d'une utilisation en temps réel du modèle. Le choix de la base de données musicale provenant de Deezer a permis de réaliser de nombreuses expérimentations et de tester diérentes facettes de notre modèle. Cependant, nous avons aussi rencontré beaucoup de problèmes quant à la notion de progressivité avec cette base de données, et les résultats obtenus n'ont pas été concluants concernant cette métrique. Nous discuterons de ce point et d'autres perspectives d'améliorations dans la conclusion générale de la recommandation est en plein essor depuis maintenant une vingtaine d'années. Durant cette période, la recommandation n'a cessé d'évoluer an de s'adapter à l'explosion du nombre d'utilisateurs et de la quantité de données disponibles. Nous pouvons distinguer trois aspects des recommandations modernes qui ont servi de l directeur dans cette thèse. Premièrement, il y a encore 10 ans seulement, la majorité de la recherche avait pour but de maximiser la métrique de précision des résultats des algorithmes, il est aujourd'hui admis qu'une bonne recommandation nécessite aussi de satisfaire d'autres métriques comme la diversité ou la nouveauté. Même si la précision reste centrale, il est important de considérer ces autres métriques car elles permettent de répondre à une plus grande diversité de situation chez les utilisateurs demandant des recommandations. Deuxièmement, la quantité de données disponibles sur Internet a explosé tandis que l'utilisation des systèmes de recommandation s'est très largement démocratisée. La diversité des domaines applicatifs utilisant des systèmes de recommandations est telle que l'hyper-spécialisation d'un système pour un seule domaine fait moins de sens qu'auparavant. Les systèmes de recommandations capables de s'adapter rapidement à de multiples domaines applicatifs sont donc aujourd'hui particulièrement intéressants. Troisièmement, la croissance et la complexication des données décrivant les ressources et les utilisateurs permettent de proposer à ces derniers des recommandations plus complexes qu'auparavant. Comme nous l'avons dit, d'autres aspects que la précision sont déjà exploités, mais il est aussi possible de complexier les recommandations en les proposant par séquences et non plus par ressource unique. En eet, la norme était avant de ne proposer à l'utilisateur qu'une seule recommandation, ou au mieux une liste de recommandations au même niveau les unes que les autres. Or de nombreux domaines, comme l'e-éducation, la musique ou encore le tourisme, peuvent bénécier de systèmes capables de recommander une séquence de ressources dans un ordre précis. L'utilisateur d'un tel système dispose donc d'une séquence de ressources, permettant d'atteindre potentiellement des objectifs qui ne seraient pas atteignables avec des recommandations simples ou en liste. Ces trois points évoqués ci-dessus constituent le c÷ur du travail de cette thèse et nous allons maintenant rappeler les apports de notre travail sur ces trois points : 1. Modèle multi-objectifs : En se basant sur l'architecture des colonies de fourmis, notre modèle AntRS permet d'intégrer autant de métriques que voulues dans le processus de génération de recommandations. Dans ce travail, nous en avons considéré 4 : la similarité, la diversité, la nouveauté et les préférences passées. Ces 4 métriques sont intégrées en

  AntRS multi-objectifs : expérimentations sur l'ensemble des colonies simultanément et sur les tactiques de fusion . . . . . . . . . . . . . . . . . . 4.3.4 Optimisation des métavariables de AntRS . . . . . . . . . . . . . . . . . . 4.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

	Sommaire
	Chapitre 1 Introduction 1.1 Chapitre 5 Conclusion et perspectives 5.1 Introduction . . 1.3.3 4.3.3 Bibliographie	Sommaire	1 105
	vi		v

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Préambule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.1 SP1 : les facteurs à prendre en compte pour satisfaire les utilisateurs . . . 1.3.2 SP2 : la conception de séquences de recommandations en accord avec les facteurs sélectionnés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  Walber). . . . . . . . . . . . . . . . . . . . . . . . . . . .

		Table des gures
	2.1	Présentation schématisée du calcul de la précision et du rappel en fonction des
		ressources trouvées par rapport à l'ensemble des ressources disponibles (crédit
	image : Datamok / User:2.2 Vue d'ensemble du fonctionnement d'un système de recommandation sensible aux
		séquences (source :

  Représentation graphique de l'Expérimentation 1.1 menée sur le modèle ACS grâce à la bibliothèque Java GraphStream. Le n÷ud représenté par un carré rouge correspond au départ ; le n÷ud représenté par un carré bleu représente l'arrivée ; les n÷uds ronds noirs représentent des points de passage possible ; les nombres noirs accolés aux arêtes représentent la distance pour parcourir l'arête ; les nombres violets représentent le taux de phéromones déposées sur l'arête. . . . . . . . . . . chemins. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6 Résultats obtenus après 30 itérations sur l'Expérimentation 1.2. Comme les agents se basent principalement sur l'heuristique qui est partout égale, ils oscillent entre les deux chemins sans en privilégier un. . . . . . . . . . . . . . . . . . . . . . . . .

	Table des gures
	4.4
	4.5	Résultats obtenus après 30 itérations sur l'Expérimentation 1.1. À gauche, la Chapitre 1
		conguration nale du graphe ; à droite, le pourcentage d'agents fourmis ayant
	Résultats obtenus après 30 itérations sur l'Expérimentation 1.3. Les agents ex-empruntés les deux 4.7 Introduction
	1.1	Introduction
			vii

. . . . . . . . . . . . . . . . . . . . . . ploitent ici les arêtes ayant le plus de phéromones. Très rapidement, tous les agents utilisent le même chemin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8 Conguration nale du graphe pour l'Expérimentation 2 après 30 itérations. Les agents ont en majorité bien sélectionné le chemin le plus court < 0, 1, 3, 4, 9 >. . . 4.9 Exemple de graphe de l'Expérimentation 3 à la n des 50 itérations. Ces graphes sont générés aléatoirement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  avec les préférences de l'utilisateur serait mal vu par ce dernier. Les auteurs suggèrent ainsi de ne pas intégrer de ressources issues de la métrique de nouveauté aux nouveaux utilisateurs pour leur laisser le temps d'avoir conance dans le système, avant éventuellement d'intégrer de la nouveauté dans les recommandations à mesure que l'utilisateur s'habitue au système. Il apparaît donc important d'inclure plusieurs critères dans le calcul les recommandations tout en équilibrant ces diérentes recommandations selon l'utilisateur. Cependant, cet équilibre est loin d'être évident à trouver alors que les informations disponibles sur les ressources et les utilisateurs sont souvent limitées et que certaines de ces métriques semblent opposées les unes aux autres, comme par exemple la similarité et la diversité. De plus, cet équilibre est non seulement amené à changer selon chaque utilisateur, mais il peut aussi varier selon les attentes d'un même utilisateur. Ce dernier souhaitera par exemple découvrir les ressources les plus populaires dans un premier temps après s'être inscrit sur un site. Après avoir consulté ces ressources, ce même utilisateur souhaitera peut-être découvrir des ressources moins populaires ou plus récentes. Il est donc important de pouvoir modier l'importance de chacun de ces facteurs à tout moment lors de la recommandation.

1. https ://www.youtube.com/ 2. https ://www.deezer.com/ 3. https ://www.netix.com/ 4. https ://www.amazon.com/ lien Reprenons maintenant le premier exemple de l'introduction sur les appareils photographiques en proposant cette fois-ci une solution grâce aux diérentes métriques explicitées ci-dessus. Un utilisateur arrive sur un site de vente en ligne et commence à consulter du matériel photographique. Le système n'étant pas encore certain du but de l'utilisateur, ses recommandations sont relativement diverses. Après un certain temps, l'utilisateur, qui a ané ses recherches sur des appareils photographiques, se voit proposer d'autres types d'appareils similaires à celui qu'il est en train de consulter dans le but de lui faire découvrir des alternatives possibles. Le système détecte nalement que l'utilisateur est sur le point de se décider. Il propose alors une liste de recommandations plus diverses, permettant à l'utilisateur d'eectuer un dernier tour d'horizon général avant l'achat et de conrmer son choix

  Comme nous l'avons évoqué précédemment, les systèmes de recommandation se sont grandement démocratisés et existent désormais dans la plupart des domaines où se trouvent de nombreuses ressources mises à disposition de nombreux utilisateurs, et ce, quelque soit le type de ces ressources. Classiquement, un système de recommandation va calculer par divers moyens les ressources que l'utilisateur pourraient le plus apprécier. Le résultat de cette opération est bien Connaissant les facteurs humains à prendre en compte (SP1), comment les combiner dans un même modèle permettant de faire varier leur importance les uns par rapport aux autres à tout moment ?Le domaine de la recommandation est en plein essor et, même si des problèmes subsistent encore actuellement, des solutions existent pour y répondre comme l'ont illustré les exemples cidessus. La compréhension des besoins des utilisateurs, la prise en considération de la dimension temporelle et d'objectifs multiples et parfois antagonistes dans le processus de recommandation sont désormais les objectifs principaux du domaine de la recommandation, et c'est au sein de ce mouvement que cette thèse s'inscrit. De plus, les nouveaux domaines applicatifs s'ouvrant à la recommandation (e.g. l'e-éducation, le tourisme,. . . ) sont à la fois une chance et un dé ; une chance car il devient possible d'assister l'utilisateur dans un panel de plus en plus grand de situations ; un dé dans le sens où les modèles doivent être assez génériques pour s'adapter à

	1.2. Préambule
	De cet exemple, la première problématique scientique permettant de répondre à la question
	générale posée à la n de l'introduction peut être dénie comme suit :
	SP1 : Quels sont les facteurs à prendre en compte pour satisfaire les uti-lisateurs et comment adapter leur importance au cas par cas pour chaque utilisateur ?
	Avec cet exemple, nous pouvons maintenant expliciter les deuxième et troisième probléma-
	tiques scientiques :

On peut voir ici l'intérêt d'intégrer de nouveaux facteurs comme la diversité dans la recommandation. La variation du niveau de diversité au cours du temps et en fonction du contexte permet, dans cet exemple, d'améliorer la qualité de la recommandation nale en s'adaptant plus nement aux besoins de l'utilisateur et en l'aidant à des moments clés, comme juste avant ou après son achat. L'ajout d'un facteur comme la diversité permet de plus d'éviter la sclérose des recommandations passé un certain temps, c'est-à-dire la recommandation des mêmes ressources en boucle à un utilisateur. Ce phénomène se produit inévitablement dans un système basé uniquement sur la précision où les ressources recommandées nissent toutes par être déjà connues de l'utilisateur ou trop similaires à ses goûts. Ce problème peut en fait être considéré comme du sur-apprentissage, dans le sens où le système est tellement spécialisé sur les préférences de l'utilisateur que quelques ressources obtiennent un très haut score de précision et sont recommandées en permanence. L'introduction de nouveaux facteurs permettant d'autres manières de calculer des recommandations, ainsi que des variations d'importance entre ces facteurs au cours du temps, peuvent réduire ce problème. souvent une valeur réelle d'utilité ou d'intérêt comprise dans l'intervalle [0; 1] associée à chaque ressource, où 1 correspond à la prédiction selon laquelle l'utilisateur devrait très fortement apprécier la ressource en question, et inversement. Ainsi, les n ressources ayant les plus hautes valeurs sont recommandées à l'utilisateur. Certains domaines, comme l'e-commerce, se satisfont très bien de recommandations proposées de cette manière sous forme de listes. Cependant, d'autres domaines comme l'e-éducation ou le tourisme bénécieraient de recommandations proposées aux utilisateurs sous la forme d'une séquence. Nous dénissons ici une séquence comme une suite ordonnée de ressources possédant un début, une n, un but et éventuellement une ou plusieurs contrainte(s) à respecter lors de sa création. Cette dénition implique, entre autres, de dénir ce que signie la notion d'ordre dans la séquence. Un ordre correspond à un agencement particulier de ressources permettant d'atteindre le but recherché de manière optimisée. Reprenons maintenant le deuxième exemple de l'introduction sur le site d'e-éducation en ajoutant cette fois-ci la notion de séquence an d'illustrer son intérêt. Un utilisateur s'est inscrit récemment sur un site proposant des cours en ligne car il souhaite apprendre la programmation en Java. Cependant et avant de commencer, le site lui propose de fournir quelques informations sur son objectif éducatif. Ainsi, l'utilisateur explicite l'objectif qu'il souhaite atteindre (apprendre les bases de Java) ainsi que le temps dont il dispose (exprimé par exemple ici sous la forme d'un nombre n de ressources éducatives voulues pour atteindre l'objectif ). Avec ces informations, le système de recommandation du site va calculer, parmi toutes les ressources éducatives disponibles, lesquelles correspondent aux besoins de l'utilisateur. Le niveau de diculté de ces ressources sélectionnées est ensuite calculé par le système grâce à leurs caractéristiques. Enn, le système construit une séquence de taille n où la place de chaque ressource éducative dépend de son niveau de diculté, de manière à ce que l'utilisateur débute avec la ressource la moins complexe puis progresse avec des ressources abordant des notions de plus en plus avancées. La séquence créée va donc lui permettre d'atteindre son objectif grâce à des cours à la diculté croissante, tout en respectant la contrainte de temps imposée. SP2 : Connaissant les facteurs humains à prendre en compte (SP1), comment passer d'une recommandation unitaire à une séquence de recommandations ? SP3 : cette grande variété de situations possibles. Une dernière problématique scientique est toutefois nécessaire dans le cadre de cette thèse pour compléter ce tour d'horizon. Il est en eet nécessaire de pouvoir quantier à quel point SP1 et SP2 améliorent la qualité des recommandations. Nous avons vu dans les exemples précédents que cette qualité n'était pas une notion simple à mesurer, mais il est pourtant nécessaire de s'atteler à ce problème pour quantier les performances d'un modèle. La 3ème et dernière problématique de cette thèse peut donc être exprimée ainsi : SP4 : Comment évaluer les séquences produites en SP2 et SP3 ? L'évaluation des recommandations est au c÷ur des nouveaux dés évoqués précédemment. Le domaine de la recommandation est intimement lié à l'être humain et il est important de ne plus uniquement se concentrer sur une seule mesure comme la précision. L'être humain est complexe dans ses besoins et l'évaluation des recommandations doit reéter cette complexité.

  SP1 : les facteurs à prendre en compte pour satisfaire les utilisateurs Pour répondre à la première problématique scientique SP1, nous avons sélectionné un ensemble de quatre critères d'évaluation représentant au mieux les besoins de l'utilisateur. Ces critères ont été choisis car ils apparaissent dans la littérature scientique comme étant liés à la satisfaction nale de l'utilisateur. Ils représentent un panel intéressant de facteurs humains importants pour les utilisateurs, mais il est important de noter que ce choix n'est pas exhaustif.Comme nous l'avons mentionné, le nombre de facteurs humains rentrant en compte dans la prise de décision est potentiellement inni et varie en fonction de l'utilisateur. Nous avons donc choisi ces quatre critères car ils sont les plus étudiés dans la littérature, mais le but de cette thèse est de pouvoir intégrer de nouveaux critères, de faire varier leur importance si nécessaire, et de les traiter comme un problème d'optimisation multi-critères. Ces quatre critères nous permettent de nous situer par rapport aux travaux existants de la littérature tout en établissant un modèle générique capable de s'adapter à de multiples besoins. Voici ces quatre critères :

	1.3. Contributions
	1.3.1 1.3.3 SP3 et SP4 : la création d'un modèle générique prenant en compte plusieurs métriques et produisant des séquences
	Après avoir déni les métriques à utiliser, la manière de les calculer et après avoir déni la
	notion de séquence et la manière de les construire, nous avons développé un modèle réunissant
	l'ensemble de ces caractéristiques. Pour cela, nous nous sommes inspirés de solutions développées
	pendant des millions d'années par la sélection naturelle pour résoudre des problèmes d'explora-

5. SMAP : International Workshop on Semantic Media Adaptation and Personalization 6. ECIR : European Conference on Information Retrieval : http ://ecir2019.org/ 7. ALA : Adaptive and Learning Agents 8. AAMAS : International Conference on Autonomous Agents and Multiagent Systems 1. La similarité : garantissant à l'utilisateur des recommandations similaires aux ressources qu'il apprécie déjà ; 2. La diversité : permettant d'orir de la variété dans les recommandations ; 3. La nouveauté : proposant à l'utilisateur des ressources qu'il ne connaît et qu'il n'aurait peut-être jamais trouvé lui-même ;

4. Les préférences : orant à l'utilisateur la possibilité de revoir les ressources qu'il a déjà aimé par le passé. 1.3.2 SP2 : la conception de séquences de recommandations en accord avec les facteurs sélectionnés La notion de séquence est centrale pour comprendre son intérêt dans le paysage actuel des systèmes de recommandation, ainsi que pour être capable d'en générer. Dans ce travail, nous avons proposé une méthode permettant de garantir des transitions optimales entre ressources au sein d'une séquence. Nous avons ensuite mis en pratique ces contributions dans un jeu de données existant provenant de Deezer, un site d'écoute de musique en ligne. Ce jeu de données correspond à un mois d'écoutes de titres par plusieurs milliers d'utilisateurs et possède des informations sur les titres ainsi que sur les utilisateurs. Grâce à ce jeu de données, nous avons pu extraire des séquences d'écoutes et nous avons utilisé ces séquences réelles comme évaluation pour notre système. Nous avons enn créé un modèle permettant de générer des séquences de la taille voulue, possédant un point de départ et d'arrivée dénis. tion et d'optimisation de chemins dans la nature. Il existe en eet tout un domaine de recherche dédié à la modélisation informatique de systèmes vivants complexes et à l'application de ces modèles à des problèmes complexes humains : les Systèmes Multi-Agents

  . C'est bien ce phénomène qui est à l'÷uvre lors de l'optimisation de la distance d'un chemin par toutes les fourmis d'une fourmilière. Nous reviendrons plus en détail sur l'ensemble des mécanismes permettant l'émergence de cette intelligence collective dans ce manuscrit. An de répondre à notre problématique, nous avons développé un modèle où une multitude d'agents très simples (correspondant aux fourmis) sont déployés dans un graphe où les sommets représentent les ressources d'un domaine applicatif Dans cet état de l'art, nous allons tout d'abord nous pencher sur le fonctionnement des systèmes de recommandation classiques ainsi que sur leurs limites. Nous allons ensuite étudier quelques réponses à ces limites proposées par la littérature et discuter des améliorations possibles.

	2.1	Les systèmes de recommandation
	Les systèmes de recommandation ont pour but principal de proposer aux utilisateurs des
	ressources adaptées à leurs attentes. Une ressource peut être un document, une page web, une
	musique, un lm, un livre, un objet, un cours, etc. Pour eectuer une recommandation, une hy-
	pothèse simple a été exploitée par les premiers systèmes : les préférences passées d'un utilisateur
	peuvent être utilisées pour prédire les préférences futures de ce même utilisateur. Cette hypothèse
	s'est déclinée dans les deux approches principales des systèmes de recommandation que sont le
	ltrage par contenu
	1.4	Plan de la thèse
	La suite de ce manuscrit se présente ainsi : dans le chapitre 2, nous présenterons les travaux de
	la littérature portant sur les diérents facteurs humains utilisés dans les systèmes de recomman-
	dation, les approches existantes de recommandations en séquences et les systèmes multi-agents.
	Dans le chapitre 3, nous présenterons notre modèle et son fonctionnement en détail. Ensuite,
	nous présenterons les résultats obtenus par ce modèle dans le domaine applicatif de l'écoute de
	musique en ligne dans le chapitre 4. Enn, nous conclurons et discuterons des perspectives de ce
	travail dans le chapitre 5.

et où les arêtes représentent les liens entre ces ressources (correspondant à l'environnement à parcourir pour les fourmis). An d'intégrer les quatre métriques discutées ci-dessus, nous avons créé diérentes colonies possédant chacune leurs agents spécialisés dans l'optimisation d'une des métriques. De par le phénomène d'intelligence collective, les agents produisent des séquences optimisées dans le graphe pouvant être recommandées à l'utilisateur. Cette approche apporte ainsi des solutions aux problèmes soulevés par les problématiques scientiques sus-mentionnés : Nous sommes capables de prendre en compte les diérentes métriques explicitées dans un seul et même modèle. De plus, nous produisons des solutions représentant un compromis entre des objectifs parfois divergents entre eux (similarité et diversité) ; Dans la nature, les fourmis créent un chemin entre leur fourmilière et la source de nourriture. Nous utilisons cette aptitude inhérente an de créer des séquences entre une ressource de départ (la fourmilière) et une ressource d'arrivée (la nourriture) ; L'adaptation aux changements de l'environnement est rapide (nouvel utilisateur, nouvelle ressource, suppression d'une ressource, etc.). De la même manière que dans la nature, les fourmis sont capables de retrouver un autre chemin optimisé si le premier venait à être bloqué par une branche venant de tomber par exemple ; Notre modèle est souple car il permet de modier le poids de chaque métrique dans la séquence nale, permettant de s'adapter à chaque utilisateur ; Il est possible d'ajouter ou d'enlever des colonies à la volée dans le système, permettant de s'adapter rapidement à diérents domaines applicatifs et à diérents objectifs.

  une valeur haute et inversement. D'une manière générale, on nomme retours les informations récupérées par un système sur un utilisateur permettant d'aboutir à cette note. Dans les systèmes de recommandation, on peut distinguer deux types de retours : le retour explicite et le retour implicite. Le retour explicite est le plus simple des deux puisqu'il correspond à la situation où l'utilisateur fournit naturellement de lui-même la note associée à une ressource qu'il a consultée. Cette manière de procéder est courante dans l'e-commerce ou dans le divertissement, où les utilisateurs peuvent généralement noter de 1 à 5 le produit qu'ils ont acheté ou encore le lm qu'ils ont vu. Cette méthode permet d'accéder à l'évaluation réelle de l'utilisateur et à ses préférences, orant de manière directe des données de haute qualité[START_REF] Koren | Matrix factorization techniques for recommender systems[END_REF]. À l'inverse, le retour implicite représente les traces laissées par l'utilisateur lors de sa présence dans le système. Ces traces ne sont pas directement des évaluations ou des notes mais représentent bien les diérentes possibilités d'actions qu'ore un système à ses utilisateurs. Ces actions dièrent donc selon le domaine d'application du système. Pour un site web d'e-commerce,

Comme nous l'avons décrit plus haut, peu importe le type de système de recommandation utilisé, il est nécessaire de récolter les actions des utilisateurs an d'obtenir une évaluation des ressources qu'ils ont consultées. Cette évaluation prend la plupart du temps la forme d'une note r entière variant de 1 à 5 ou d'une valeur continue r ∈ [0; 1] où, dans les deux cas, une préférence marquée correspond à les actions pourront être la consultation d'une page, la consultation d'une che produit, la mise d'un produit dans le panier ou encore l'achat d'un produit. Pour un site web d'écoute de musique, les actions pourront être l'écoute d'une musique en entier, l'arrêt de l'écoute d'une musique avant la n, la consultation de la page d'un artiste, etc. On voit bien ici que les actions possibles sont dépendantes du domaine, mais aussi que toutes les actions n'ont pas la même importance ni la même signication. On peut en eet supposer qu'un utilisateur appréciera davantage un produit s'il l'achète que s'il consulte seulement sa page. On retrouve cette distinction dans

[Oard

Table 2 .

 2 1 Description des diérents types d'agents selon leur relation au monde et selon leurs conduites[Ferber, 1995]. simple par rapport aux agents cognitifs. La relative simplicité de ces agents est intéressante car elle s'inscrit dans un changement de paradigme par rapport à la vision classique des l'intelligence articielle dans le domaine de l'informatique. En eet, le domaine de l'intelligence articielle existe depuis près de 60 ans maintenant et, à l'origine, les systèmes intelligents créés dans ce domaine pour résoudre des problèmes l'ont été selon une approche dite top-down, c'est-à-dire

		Agents cognitifs	Agents réactifs
	Téléonomiques	Agents intentionnels	Agents pulsionnels
	Réexes	Agents modules	Agents tropiques

En plus de ces deux types d'agents diérenciés par leur représentation du monde, Ferber propose un autre type de distinction sur les comportements : ces derniers peuvent être téléonomiques, c'est-à-dire dirigés vers des buts explicites, ou bien réexes, c'est-à-dire régis par les perceptions. Ces 4 diérents types d'agents peuvent se combiner comme illustré dans le Tableau 2.1. Nous allons plus particulièrement nous intéresser ici aux agents réactifs et à leurs diérences avec les agents cognitifs. Malgré leur relative simplicité, les interactions entre agents réactifs existent bien. Mais contrairement aux agents cognitifs, elles s'eectuent au travers de l'environnement, généralement par des traces laissées dans ce dernier comme des données visuelles, olfactives, auditives, etc. Là où les agents cognitifs raisonnent avant de prendre une décision, les agents réactifs ne font que réagir à des stimuli externes. Ils possèdent bien des senseurs an de détecter leur environnement et des actuateurs pour agir, mais leur fonctionnement reste très de haut en bas, avec les notions de pensée et de raison au centre de ces systèmes. Ainsi ces systèmes manipulaient les connaissances à l'aide de symboles et de règles et n'avaient aucune interaction ni avec leur environnement ni avec d'autres systèmes intelligents. C'est ce qu'on appelle communément la Good Old Fashioned Articial Intelligence . Depuis les années 1990, une autre approche est apparue pour étudier l'intelligence et créer des systèmes intelligents : l'approche bottom-up, soit de bas en haut, dont certains systèmes très populaires s'inspirent de systèmes biologiques incarnés dans un environnement et pouvant communiquer entre eux. C'est dans ce mouvement que s'inscrivent les systèmes multi-agents et, comme le dit Rodney A. Brooks dans son article justement intitulé Intelligence without Reason

  . La stigmergie est le mécanisme par lequel des agents vont se synchroniser et travailler ensemble dans un but commun, sans qu'aucun n'ait l'idée à l'avance de l'action à faire ou n'ait le plan nal de la construction à réaliser (une fourmilière ou un nid de termites par exemple). Pour décrire le phénomène de stigmergie à l'÷uvre chez certains animaux, Pierre-Paul Grassé explique ainsi : L'ouvrier ne dirige pas son travail, mais il est guidé par lui. Cette phrase signie qu'un agent n'a pas d'intention et d'idée de ce qu'il doit faire, mais qu'il sait cependant exactement quoi faire au moment où il est présent devant le travail. Cette capacité s'explique par le fait que les individus sont génétiquement préprogrammés pour eectuer certaines tâches[Oster, 1981]. C'est de cette manière que des espèces ne possédant qu'une très faible intelligence individuelle, comme les fourmis ou les termites, sont capables de produire des constructions extrêmement grandes et sophistiquées. On peut par exemple citer une espèce nommée la fourmi coupe-feuille du Texas, aussi appelée fourmi champignonniste dont les individus vivent dans de grandes colonies de plusieurs millions d'individus et cultivent des

	dépassant de loin les capacités d'un individu seul. Le domaine des systèmes multi-agents s'est
	donc intéressé à créer un modèle permettant à l'aide de simulations informatiques de recréer les
	mumurations d'étourneaux. Ce modèle, où les agents sont appelés des boids 28 , permet d'obtenir
	informatiquement des murmurations d'agents dans un environnement simulé grâce à trois règles

champignons dans des pièces souterraines dotées d'une structure particulière et d'une aération spécique destinée à favoriser la pousse du champignon

[START_REF] Hölldobler | The ants[END_REF]

. La clé de la capacité de ces animaux à agir de la bonne manière face à tel ou tel stimulus réside dans l'ADN même de l'espèce, façonné par des millions d'années d'évolution. C'est ainsi qu'une ouvrière vaquera à ses tâches jusqu'à ce qu'un pan de mur de son nid s'eondre et que, devant ce nouveau stimulus, elle déploie une nouvelle panoplie de comportements appropriés à la situation à laquelle elle fait soudainement face. Ces exemples démontrent que l'intelligence est bien présente dans ces systèmes biologiques vivants et, dans la suite de cette section, nous allons donner deux exemples de modélisation de ces systèmes biologiques en systèmes multi-agents dans l'informatique.

Murmuration d'étourneaux : le modèle des boids

Les étourneaux représentent une famille d'une quinzaine d'espèces d'oiseaux et vivent sur les 5 continents. Ces oiseaux se regroupent parfois dans la nature sous forme de nuées pouvant contenir des dizaines de milliers d'individus. La raison de ces murmurations n'est pas encore connue avec certitude mais des théories existent, expliquant par exemple que ces regroupements permettraient une plus grande chance de survie face aux prédateurs

[START_REF] King | Murmurations[END_REF]

, ou bien que le regroupement et la haute densité d'individus leur permettraient de se réchauer durant les périodes les plus froides de l'année

[START_REF] Goodenough | Birds of a feather ock together : Insights into starling murmuration behaviour revealed using citizen science[END_REF]

. Ce phénomène est beaucoup étudié car tous les oiseaux semblent se déplacer dans la même direction et modient leur trajectoire en même temps sans qu'aucun oiseau ne se touche en vol, ce qui est remarquable étant donné le nombre d'individus et la vitesse à laquelle ils volent. Malgré cette complexité, il n'y a pas d'oiseau meneur décidant de la direction à prendre et un individu seul n'a pas la capacité intellectuelle susante pour planier ce genre de déplacements complexes dans un environnement en 3 dimensions. On retrouve bien là les caractéristiques d'un système multi-agents, où des agents simples provoquent, de par leurs interactions, un comportement intelligent et complexe

  Les chemins les plus longs sont peu à peu abandonnés, d'autant plus que les phéromones s'évaporent avec le temps, renforçant encore plus les chemins fortement empruntés ; 8. Au bout d'un certain temps, seul le chemin le plus court est emprunté par la majorité des

	fourmis ;
	9. Quelques fourmis ne prennent cependant pas ce chemin, permettant la recherche de nou-
	velles sources de nourriture ou de nouveaux chemins. En eet, si jamais le chemin em-
	prunté par la majorité des individus se voit perturbé par un nouvel obstacle (un arbre
	venant de tomber par exemple), alors ces quelques fourmis pourront éventuellement trou-
	ver le nouveau meilleur chemin le plus court et le cycle de renforcement recommencera.
	Comme pour les murmurations d'étourneaux, on retrouve bien les caractéristiques de l'auto-
	organisation dans un système multi-agents : aucun meneur n'est présent, les agents suivent seule-
	Les nouvelles fourmis atteignant la nourriture vont, elles aussi, revenir à la fourmilière en
	déposant des phéromones ;
	4. Les fourmis réussissant à revenir plus rapidement avec des chemins plus courts à la four-
	milière vont redéposer plus rapidement de nouvelles phéromones, étant donné qu'elles
	mettront moins de temps pour faire des allers-retours entre la nourriture et la fourmi-
	lière ;
	5. À l'inverse, les fourmis ayant emprunté des chemins plus longs vont déposer de nouvelles
	phéromones moins rapidement, puisqu'elles mettront plus de temps à faire leurs allers-
	retours ;

2. Quand une fourmi trouve de la nourriture, elle retourne du mieux possible à la fourmilière en déposant des phéromones ; 3. D'autres fourmis, attirées par ces phéromones, vont avoir tendance à suivre ce chemin.

6. Petit à petit, le chemin le plus court va être emprunté par de plus en plus de fourmis déposant chacune des phéromones, renforçant de plus en plus ce même chemin ; 7. ment quelques règles simples permettant l'émergence d'un comportement dépassant les capacités cognitives de l'espèce. Ces règles ont été décrites de manière formelle par Marco Dorigo durant sa thèse dans un modèle appelé Ant System (AS) permettant de recréer le comportement des fourmis au sein d'une simulation informatique

[START_REF] Dorigo | Ant system : optimization by a colony of cooperating agents[END_REF]

. Dans ce modèle, l'environnement est représenté par un graphe dont les sommets sont les points d'intérêts où l'agent peut se rendre et dont les arêtes sont les chemins disponibles permettant de se déplacer de point en point. À chaque arête (i, j) est associée deux valeurs numériques : la première représentant la distance à parcourir pour se déplacer du sommet i au sommet j ; la deuxième représentant la quantité de phéromones présente sur cette arête. Un agent se trouvant à un sommet i a connaissance de l'ensemble des sommets V i accessibles directement à partir de i. Pour décider quelle arête emprunter, l'agent prend en compte la distance et la quantité de phéromones associées à chaque arête. Une fois que l'agent a atteint un sommet spécique désigné à l'avance comme objectif, il dépose des phéromones sur chacune des arêtes empruntées. La quantité de phéromones déposée est dépendante de la longueur du chemin emprunté de sorte qu'un agent ayant trouvé un chemin court déposera plus de phéromones qu'un agent ayant trouvé un chemin plus long. Ce cycle peut ensuite recommencer avec une multitude d'agents jusqu'à ce qu'une solution émerge, de la même manière que pour les fourmis dans la nature. Marco Dorigo a, dans la suite de ses travaux, développé d'autres modèles ayant tous comme base le modèle AS mais possédant quelques variations ou ajouts, orant une plus grande variété d'outils pour résoudre les nombreux problèmes de la recherche en informatique. Dans les faits, le modèle original AS a aujourd'hui pratiquement disparu au prot de ses descendants et c'est pour cette raison que nous n'allons pas ici détailler plus avant le modèle AS

[START_REF] Dorigo | Ant colony optimization[END_REF]

. Tous ces diérents modèles sont maintenant regroupés sous le nom de Ant Colony Optimization (ACO)

[START_REF] Dorigo | Ant colony optimization[END_REF]

. Ces derniers ont été exploités dans de nombreux domaines de la recherche scientique pour résoudre des problèmes variés. On peut par exemple citer trois de ces problèmes, très connus et étudiés en informatique de par leur complexité, qui ont chacun vu des solutions leur être trouvées grâce à ACO :

  . Premièrement, seul l'agent ayant trouvé le meilleur chemin est autorisé à déposer des phéromones sur les arêtes qu'il a emprunté, alors que dans AS tous les agents déposaient des phéromones. Deuxièmement, et pour contrer la relatif manque de phéromones engendré par cette première modication, les agents possèdent un nouveau comportement appelé mise à jour locale de phéromones (locale pheromone update ), consistant en la mise à jour des phéromones par chaque agent sur la dernière arête empruntée durant la construction d'un chemin. Cette mise à jour s'articule autour d'un seuil de phéromones spécié comme métavariable avant l'exécution du programme. Si une arête traversée par un agent possède une quantité de phéromones inférieure à ce seuil, alors l'agent dépose des phéromones. À l'inverse, si la quantité de phéromone sur cette arête est supérieure au seuil, alors l'agent retire une certaine quantité de

phéromones. En d'autres termes, dans ACS dès qu'un agent emprunte une arête, il met à jour la quantité de phéromones sur cette arête, et ce, quelle que soit la qualité du chemin qu'il est en train de construire. Marco Dorigo explique lui-même les avantages que possède ACS par rapport à d'autres versions existantes

[START_REF] Dorigo | Ant colony optimization[END_REF]

: ACS permet de diversier l'exploration eectuée par les agents pendant une itération de l'algorithme : en diminuant la quantité des phéromones sur les arêtes les plus utilisées, les agents suivants sont encourager à se déplacer sur d'autres arêtes moins explorées, permettant de diversier les solutions trouvées à la n d'une itération.

Cette mécanique rend moins probable le fait que plusieurs agents puissent produire des solutions identiques durant une itération.

Une autre modication du modèle ACS par rapport au modèle AS concerne le déplacement des agents. Il est maintenant possible, grâce à une nouvelle métavariable, de donner l'importance souhaitée entre les phéromones et la distance lors du processus de choix de la prochaine arête à emprunter par un agent. Dans le reste de cette sous-section, nous allons expliquer les principales formules régissant le comportement des agents et la mise à jour des phéromones dans ACS.

  Nous avons vu dans les sections précédentes que les algorithmes de colonies de fourmis ont été utilisées dans des problèmes connus comme le voyageur de commerce, les tournées de véhicules ou la gestion de projet à contraintes. Chacun de ces exemples a la particularité d'être un problème d'optimisation où le but est de minimiser une distance à parcourir ou un temps d'exécution avec certaines contraintes, ce qui correspond bien au but premier des ACO. La versatilité des systèmes multi-agents leur a permis de s'adapter dans des domaines comme les systèmes de recommandation, et ils ont particulièrement été exploité pour l'e-éducation, Dans la suite de cette section, nous allons étudier quelques applications des algorithmes de la famille des ACO dans ce domaine particulier.Poids pédagogique W : c'est la valeur principale de chaque arête. Il est implémenté comme une variable globale accessible à tous les agents. W est manuellement déni en amont par les professeurs et reète l'importance des arêtes venant d'un sommet particulier (i.e. cet exercice est important après la leçon x, donc W = 0, 8 ; la leçon y n'est pas très importante après la leçon x, donc W = 0, 3) ; Phéromones S and F : S représente la phéromone de succès tandis que F représente la phéromone d'échec. S est incrémentée quand les étudiants ont réussi à compléter l'exercice correspondant, et inversement pour F . Ces phéromones sont associées à l'arête qui a mené l'agent au sommet courant mais aussi aux précédents sommets empruntés avec une quantité de plus en plus réduite, limitée à 4 sommets en arrière. Le but est de représenter le fait que le résultat d'un exercice dépend de l'ensemble du parcours emprunté et non du dernier sommet uniquement 31 . Les phéromones s'évaporent aussi au fur et à mesure Historique personnel H : c'est une variable propre à chaque sommet visité pour chaque agent. Quand un étudiant valide le module pédagogique associé au sommet, alors la valeur h associée à ce sommet particulier est égale à 0, 5 ; quand un étudiant échoue le module pédagogique, alors h = 0, 75. Cette valeur est ensuite utilisée comme facteur multiplicatif pour réduire la probabilité de visiter le sommet à nouveau. Si le sommet est revisité, H est à nouveau multiplié par ces mêmes valeurs. H s'évapore avec le temps pour tendre vers 1, symbolisant le fait que plus le temps passe et plus un étudiant aura tendance à oublier le module pédagogique visité.Pour chaque arc a, une tness value est calculée selon l'Équation :

	chaque jour ;
	2.5	Utilisation et évolution récentes des algorithmes de colonies
		de fourmis
		ont montré comment il était possible de
	reproduire ces comportements via des simulations informatiques. Dans la tradition des systèmes
	multi-agents, les principes permettant de modéliser ces comportements sont relativement simples

et, comme montré dans la section précédente, seules quelques équations susent à obtenir une modélisation de la réalité et l'émergence de comportements intelligents. Dans la suite de cette section, nous allons voir quelques exemples d'utilisation d'algorithmes provenant des modèles ACO dans les systèmes de recommandation.

2.5.1 Les algorithmes de colonies de fourmis dans les systèmes de recommandation

L'une des premières applications des ACO dans le domaine des systèmes de recommandation a été proposée par

[START_REF] Semet | Ant colony optimisation for e-learning : Observing the emergence of pedagogic suggestions[END_REF]

dans l'e-education. Le but de l'étude était de recommander des cours et des exercices à des lycéens avec l'objectif pédagogique d'améliorer leur réussite scolaire. Cette étude est intéressante car, en plus de proposer une modication des modèles ACO pour la recommandation, elle a été réalisée en partenariat avec Paraschool 30 , une entreprise dé- diée à l'apprentissage en ligne pour les lycéens français, permettant aux auteurs de tester leur modèle. Dans ce dernier, le domaine pédagogique est représenté par un graphe valué où les sommets sont des items pédagogiques et les arcs sont les liens hypertextes où des probabilités de passage sont associées. Les étudiants sont représentés par des agents se déplaçant dans le graphe en laissant des phéromones sur les arcs qu'ils suivent. Chaque page de cours ou d'exercice (représenté par un sommet unique dans le graphe) est doté d'un bouton NEXT amenant l'étudiant vers un nouveau cours selon une arête choisie par l'algorithme selon les facteurs suivants : 30. http ://www.paraschool.com/ 31. Cette méthode est similaire dans son fonctionnement à la technique de rétropropagation du gradient dans l'apprentissage des réseaux de neurones.

  Discussion générale en plus d'utilisateurs ont été amenés à utiliser ces systèmes et, aujourd'hui, ils accompagnent l'immense majorité des grands sites web et prennent une place de plus en plus importante. Cette démocratisation a permis la mise en relief des besoins toujours plus variés des utilisateurs et a puissance de résolution de problèmes variés et leur modularité. Cependant, nous avons aussi constaté ici une tendance générale ces dernières années à complexier toujours plus le modèle initial et les agents le composant, illustrant un certain éloignement avec la philosophie des modèles multi-agents. Celle-ci repose sur la résolution de problèmes complexes grâce à la propriété de l'émergence et de l'auto-organisation d'agents simples, régis par des règles simples.En conclusion nale de cet état de l'art, nous pouvons dénir deux enjeux qui guideront la suite de ce travail : la recommandation multi-objectifs et la recommandation en séquences. Le but de cette thèse est donc de s'inscrire à l'intersection de ces deux enjeux grâce à un modèle de colonies de fourmis multi-objectifs qui sera décrit dans le chapitre suivant.

	montré que les systèmes mono-objectif basés uniquement sur la précision des recommandations n'étaient plus susants. À la lumière de ce constat, nous nous sommes particulièrement inté-ressés aux techniques permettant de prendre en compte le plus de dimensions possibles dans les besoins des utilisateurs, que nous avons appelés facteurs humains. Les travaux de la littérature du domaine présentés dans cette section ont permis de mettre en exergue un certain nombre de points intéressants qui seront utilisés pour répondre aux problématiques de cette thèse, ils sont résumés dans la liste suivante : [Dorigo and Birattari, 2011] : les auteurs ont présenté diérents modèles d'algorithmes de fourmis permettant de résoudre un grand nombre de problèmes. Ces modèles sont intéres-problème courant où l'amélioration de la personnalisation des recommandations résulte souvent dans l'augmentation de la complexité du modèle ; [Van den Berg et al., 2005] : cet article propose de recommander des séquences de res-sources éducatives à des apprenants. Il illustre l'intérêt de dénir une séquence de recom-mandation avec des buts pédagogiques à atteindre, un objectif nal et un point de départ où l'utilisateur se trouve actuellement ; [Ribeiro et al., 2014] : ce dernier article n'utilise pas les ACO mais une hybridation de plu-sieurs algorithmes permettant de proposer des recommandations de ressources pertinentes pour chaque utilisateur sur 3 dimensions (précision, diversité, nouveauté). Il propose donc de résoudre un problème similaire à celui posé dans cette thèse mais avec une technique diérente des travaux présentés précédemment, il sera par conséquent une solide base de Cette complexication découle cependant de la direction prise par le domaine des systèmes de re-commandation ces dernières années avec la démocratisation de nombreuses mesures d'évaluation telles que la diversité, la nouveauté, etc. Dans la suite de cette thèse, nous étudierons la manière dont il est possible de combiner la nécessaire complexication des recommandations an d'être le plus pertinent possible pour l'utilisateur, et la simplicité inhérente aux modèles multi-agents. Chapitre 3 Notre modèle de recommandation multi-objectifs : AntRS Sommaire 3.1 Introduction . . 3.1 Introduction Après cet état des lieux de la recherche sur les systèmes de recommandation, il peut être utile de rappeler ici les principaux objectifs que nous nous sommes xés pour être satisfaits par notre modèle multi-objectifs de recommandation de séquences : Être susamment générique pour qu'il puisse être utilisé dans plusieurs domaines tout en s'adaptant aux diverses contraintes et évolutions de l'environnement de ces domaines ; Permettre de prendre des facteurs humains ; Pouvoir gérer d'importantes quantité de données, c'est-à-dire être capable de produire des recommandations satisfaisantes dans un grand espace de recherche ; Produire des recommandations sous forme de séquences. 3.2 Fonctionnement général du modèle Algorithm 1 Métaheuristique Ant Colony Optimization Initialisation des paramètres et des phéromones while conditions d'arrêts non atteintes do Construction des solutions Recherche Locale (optionnelle) Mise à jour des phéromones end while Chaque version existante des ACO a introduit des variations dans une ou plusieurs des étapes centrales de l'algorithme. La variante ACS a par exemple introduit la mise à jour locale Algorithm 2 AntRS Initialisation des paramètres et des phéromones Création du graphe Initialisation des diérentes colonies while conditions d'arrêts non atteintes do Construction des solutions pour chaque colonie Mise à jour locale et globale des phéromones modiée end while Fusion des diérentes solutions Recommandation Dans notre modèle inspiré d'ACS, nous pouvons distinguer un certain nombre d'apports qui 3.3 Graphe peu détaillé dans la littérature pour plusieurs raisons. Premièrement, un certain nombre d'études se focalisent sur un jeu de test composé de peu de ressources, limitant l'intérêt de développer des tactiques élaborées de création d'un graphe. Cela peut être dû à la simplicité d'utiliser un petit jeu de données, aux limites posées par le domaine d'application ou encore à la diculté de récolter des données. Par exemple, si le but est de développer un système de recommandation dans un musée contenant 100 ÷uvres d'art, le graphe représentant le domaine sera relativement peu complexes (i.e. 100 n÷uds et quelques centaines ou milliers d'arêtes). De la même manière, lorsque le jeu de données est limité en taille, il est possible pour des experts du domaine de Avantages Inconvénients • La conception algorithmique du graphe permet de s'adapter rapidement à dié-rents domaines applicatifs ayant diérents types et nombres de ressources ; • La qualité d'un graphe produit automa-tiquement dépend fortement de la qualité de son algorithme et peut potentiellement être moins pertinent qu'un graphe crée par un expert du domaine ; • Il devient possible d'intégrer un très grand nombre de ressources du do-maine applicatif si cela est nécessaire (par exemple toutes les musiques d'un site d'écoute de musiques en ligne) ; • La prise en compte d'un grand nombre de ressources a pour conséquence d'aug-menter signicativement le temps de calcul de l'algorithme travaillant sur ce graphe en aval ; • L'intervention d'experts humains ne de-vient plus nécessaire pour créer la topolo-gie du graphe et valuer ses arêtes. • L'algorithme de création automatique du graphe doit capturer les informations d'un domaine et les reéter dans la topolo-gie du graphe (i.e. pourquoi une ressource est liée par une arête à une autre, etc.). L'un des moyens les plus simples pour approcher le comportement réel des fourmis dans la nature consiste à créer des arêtes entre chaque sommet du graphe dans le but de créer un environnement où l'agent simulé pourra se déplacer où il veut en empruntant le chemin qu'il désire. Le graphe créé serait ainsi complet. Néanmoins, cette approche n'est pas réaliste pour deux raisons principales. Premièrement, l'environnement peut contenir des obstacles infranchissables pour des fourmis et elles ne peuvent donc pas se déplacer partout. Dans un graphe, cela se traduirait par une absence d'arête entre deux sommets. Deuxièmement, cette solution est aussi peu pratique dès que le nombre de sommets dépasse plusieurs centaines car le nombre d'arêtes des phéromones dans la dernière étape U pdateP heromones. 3.3. Graphe créer et de valuer manuellement les arêtes entre les diérentes ressources, comme cela a été fait n créées se calcule avec |E| = n(n-1) 2 . Le nombre d'arêtes d'un graphe de 100 sommets est donc

Dans cet état de l'art, nous avons fait un tour d'horizon du domaine de la recommandation et de son évolution au cours de ces dernière années. Avec la démocratisation d'Internet, de plus 2.6. sants notamment de par leur capacité de résoudre des problèmes multi-objectifs complexes grâce aux notions d'intelligence collective et d'émergence. Ils sont utilisés dans diérents domaines d'application (optimisation, recommandation,...), ils sont très modulables et orent de nombreuses possibilités pour les problématiques de cette thèse ;

[START_REF] Semet | Ant colony optimisation for e-learning : Observing the emergence of pedagogic suggestions[END_REF]

: cette étude est l'une des premières à proposer l'utilisation de plusieurs phéromones diérentes dans les ACO dans le cadre d'un système de recommandation dans l'e-education. Ces diérents phéromones étaient chacun destinés à résoudre une facette du problème. Ce travail a néanmoins aussi montré les limites de la création manuelle d'un graphe sur lequel appliquer les ACO, démontrant l'intérêt d'avoir une méthode automatique de création et de valuation d'un graphe représentant le domaine d'application et ses ressources ;

[START_REF] Kurilovas | Recommending suitable learning paths according to learners' preferences : Experimental research results[END_REF]

: les auteurs ont démontré dans cette étude l'intérêt de pouvoir catégoriser les utilisateurs d'un système an de personnaliser davantage les recommandations, mais elle a aussi montré le besoin de pouvoir modier en cours de fonctionnement ces catégories pour ne pas enfermer les utilisateurs dans les mêmes recommandations ;

[START_REF] Kardan | A new personalized learning path generation method : Aco-map[END_REF]

: les auteurs ont ici montré l'utilisation de plusieurs types d'agents diérents, qui chacun cherchaient diérentes solutions. Cette technique est proche de l'utilisation des diérents types de phéromones de

[START_REF] Semet | Ant colony optimisation for e-learning : Observing the emergence of pedagogic suggestions[END_REF]

et permet de chercher des solutions plus variées à des problèmes complexes ;

[START_REF] Yang | An attribute-based ant colony system for adaptive learning object recommendation[END_REF]

: cette étude utilise les modèles ACO dans l'e-education en étoant encore le niveau de personnalisation pour chaque utilisateur. Elle illustre cependant le comparaison pour mesurer les performances d'un algorithme de type ACO. D'une manière générale, cette revue des travaux sur les algorithmes de colonies de fourmis ont montré leur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Fonctionnement général du modèle . . . . . . . . . . . . . . . . . . . . 3.3 Graphe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.1 Similarité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.2 Diversité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.3 Nouveauté . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.4 Préférences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.5 Progressivité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Tactiques de fusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.1 Colonie de fusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.2 Fusion de séquences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tous ces objectifs sont nécessaires pour produire un modèle répondant aux problématiques énoncées dans l'introduction de ce manuscrit. Le modèle que nous avons conçu prend inspiration des modèles de colonies de fourmis présentés dans l'état de l'art, et plus particulièrement de la variante ACS (Ant Colony System ), car cette version possède des qualités intrinsèques importantes, notamment sa capacité supérieure d'exploration de l'environnement, pour répondre aux problématiques posées. Pour rappel, les avantages du modèle ACS ont été détaillés dans la Section 2.4.3. En se basant sur . Dans la suite de ce chapitre, nous détaillerons le fonctionnement général du modèle dans la Section 3.2. Ensuite, nous présenterons la création du graphe dans la Section 3.3 et les facteurs humains considérés et leur intégration dans la Section 3.4. Nous détaillerons par la suite les deux tactiques de fusion des résultats pour la recommandation nale dans la Section 3.5 et, enn, nous discuterons du modèle dans son ensemble. Dans le chapitre précédent sur l'état de l'art, nous avons présenté dans la Section 2.4.3 le modèle ACS de Dorigo et son fonctionnement [Dorigo and Birattari, 2010]. Notre modèle s'inspire d'ACS dans le sens où nous reprenons les grandes étapes de ce dernier tout en l'adaptant au contexte et aux contraintes des systèmes de recommandation. Pour rappel, voici l'algorithme 1 de haut niveau sur lequel se base le fonctionnement de l'ensemble des algorithmes des ACO. Notre modèle suit cette philosophie en prolongeant les travaux de Dorigo à travers une variante multi-colonies et multi-objectifs que nous avons nommé AntRS. Avant de dénir plus en détail ces modications dans le reste du chapitre, voici l'algorithme 2 modié correspondant au fonctionnement de notre modèle. seront approfondis dans la suite de ce chapitre. La création du graphe prend ainsi une place prépondérante en amont de l'exécution de l'algorithme an de pouvoir représenter correctement le domaine d'application et ses ressources. De plus, alors que dans les modèles initiaux de Dorigo, une seule colonie de fourmis avait pour but de trouver des solutions, notre modèle possède plusieurs colonies travaillant chacune à optimiser un objectif (i.e. un aspect correspondant à un facteur humain) de la recommandation nale. Ces diérentes colonies constituent le c÷ur de notre approche et seront expliquées en détail. Enn, après la convergence d'une solution dans chacune des colonies (i.e. un chemin dans le graphe correspondant à une séquence de

ressources dans un ordre précis), un dernier processus de fusion de ces solutions a lieu an de ne proposer à l'utilisateur nal qu'une seule séquence orant le meilleur compromis entre les diérents objectifs de chaque colonie. Après cette dernière étape, la recommandation peut être proposée à l'utilisateur. Dans la suite de ce chapitre, ces diérentes étapes seront détaillées an de mettre en exergue le fonctionnement de notre modèle.

La première étape de fonctionnement du modèle est la création du graphe. Celui-ci représente l'environnement dans lequel les agents évoluent. Dans ce contexte, les n÷uds représentent les ressources du domaine (musiques, oeuvres d'art, contenu pédagogique, etc.) tandis que les arêtes sont les chemins permettant d'accéder à ces ressources. Les agents se déplacent ainsi de n÷uds en n÷uds en empruntant des arêtes. Le processus de création du graphe n'est souvent que dans

[START_REF] Semet | Ant colony optimisation for e-learning : Observing the emergence of pedagogic suggestions[END_REF]

. Cependant, la conception d'un algorithme permettant de construire la topologie du graphe de manière automatique possède à la fois des avantages et des inconvénients :

Le but de cette section sera donc de détailler l'algorithme de création du graphe ainsi que les réponses proposées aux inconvénients énoncés ci-dessus.

Avant de présenter la méthode de création du graphe, il est important de discuter de ce que représente ce graphe dans le modèle ACO et de son pendant pour les fourmis. Une des diérences principales entre le comportement réel des fourmis dans la nature et les simulations informatiques des algorithmes ACO réside dans la dénition de l'espace de recherche. Les fourmis réelles évoluent dans un espace de recherche continu sans aucun point de repère ni chemin pré-établi. Les fourmis sont, en outre, libres d'explorer l'environnement où bon leur semble. Les agents simulés avec ACO sont, quant à eux, limités à un espace de recherche discret (le graphe) et ne peuvent se mouvoir qu'à certains points d'intérêts (les sommets) en empruntant certains chemins déjà établis (arêtes). Cette simplication de l'espace de recherche est nécessaire à la fois pour réduire la complexité de l'algorithme et pour permettre de représenter des domaines d'application possédant des ressources connues, contrairement à un environnement naturel inconnu et potentiellement inni du point de vue d'une fourmi. Cependant, les algorithmes ACO ont avant tout un but de simulation du comportement de ces fourmis. An de combiner à la fois les contraintes d'une simulation informatique avec le comportement réel observé des fourmis dans la création du graphe, plusieurs solutions sont possibles. de 4950 tandis que pour un graphe de 1000 sommets, ce nombre atteint déjà 499.500, comme le montre la Figure 3.1. Cette augmentation exponentielle n'est évidemment pas envisageable dès lors que l'on traite de domaines pouvant posséder plusieurs dizaines de milliers de ressources à 3.3. Graphe représenter dans le graphe.

  ij est le poids de la co-consultation de la ressource i vers la ressource j par les utilisateurs dans les séquences de consultations passées, m est le seuil au-dessus duquel les co-consultations sont automatiquement ajoutées au graphe comme arêtes, q ∈ [min t il ; log(max t il )] est une variable aléatoire uniformément distribuée dans l'intervalle décrit, min t il est le nombre minimal de co-consultations entre la ressource i et toutes les autres ressources l ∈ V i où au moins une co-consultation a été trouvée, deg(i) est le degré du n÷ud i dans le graphe et d est un paramètre spéciant le degré minimal de connectivité que

	3.3. Graphe
	arêtes selon un processus intégrant une part d'aléatoire que nous détaillerons dans la suite
	de cette section.
	Ces deux opérations permettent de peupler le graphe d'arêtes correspondant à la fois à toutes
	les transitions les plus eectuées par les utilisateurs ainsi qu'à certaines des transitions moins
	usitées par ces derniers. Après ces deux opérations, le graphe possède donc un certain nombre
	d'arêtes reliant ses sommets, mais rien ne garantit que chaque sommet est bien relié au reste du
	graphe (si par exemple un sommet représente une ressource très peu consultée du domaine). De
	plus, et malgré la deuxième opération mitigeant cet eet, les transitions très usitées (entre des
	ressources populaires par exemple) seront sur-représentées avec cette méthode de construction.
	Cette sur-représentation produira forcément en aval des solutions que l'on pourrait qualier de
	"classique", dans le sens où elles reprendraient en majorité ces transitions très utilisées et connues
	des utilisateurs. An de limiter cet eet et de s'assurer que tous les sommets sont bien connectés
	au graphe, une troisième et dernière opération est eectuée :
	
	   
	   
	construire entre deux sommets, nous calculons ensuite le poids de la co-consultation, c'est-à-dire doit posséder chaque sommet dans le graphe nal. Il est à noter qu'à ce stade du processus de le nombre de fois qu'elle apparaît dans les séquences des utilisateurs. En fonction de ce poids, création du graphe, les arêtes ne sont pas valuées car les valeurs attribuées aux arêtes varient deux opérations sont réalisées : pour chaque utilisateur. Ce processus sera détaillé dans la suite de la section.
	1. Toutes les co-consultations possédant un poids supérieur à seuil spécique sont ajoutées
	comme arêtes orientées dans le graphe reliant les deux sommets concernés. Le seuil est Avec cette technique de construction, la taille du graphe dépend désormais principalement
	déterminé de manière empirique car il est dépendant de chaque domaine et de la base de
	données utilisées ;
	2. En dessous du seuil, seules certaines co-consultations sont sélectionnées pour devenir des

L'objectif est d'exploiter les informations contenues dans les séquences passées des utilisateurs, mais aussi de garantir une certaine sérendipité du système de recommandation via la création de nouvelles arêtes. La première étape de ce processus est de créer un sommet par ressource du domaine. Ensuite, pour construire les arêtes reliant ou non ces sommets, nous calculons les poids associés aux nombre de co-consultations présentes dans l'ensemble des séquences de consultations passées. Autrement dit, quand un utilisateur consulte une ressource A puis une ressource B directement après, nous considérons que la transition A → B est une co-consultation. Pour déterminer si une arête est 3. Pour chaque sommet, si un certain niveau de connectivité n'est pas atteint, autrement dit si le sommet possède moins d'arêtes qu'un seuil xé à l'avance, alors des arêtes aléatoires sont ajoutées an d'atteindre ce seuil.

Cette troisième opération permet de s'assurer qu'aucun sommet représentant une ressource peu consultée ne soit laissé sans connexion avec le reste du graphe. Ainsi, chaque sommet possédera un certain niveau de connectivité, aussi appelé degré, avec le reste du graphe. Le graphe ainsi obtenu après ces 3 opérations possède dans sa topologie à la fois les liens les plus usités par les utilisateurs, ainsi que des liens aléatoires permettant la création de recommandations potentiellement nouvelles. L'ensemble du processus de création du graphe est repris dans l'Équation 3.1 ci-dessous.

(1) si t ij ≥ m, alors créer e ij (2) si t ij < m et q < t ij où q ∈ [min t il ; log(max t il )], alors créer e ij (3) si deg(i) < d alors choisir un sommet k aléatoire et créer e ik jusqu'à deg(i) = d (3.1) (1) et (2) s'appliquent pour chaque co-consultation tandis que (3) s'applique pour chaque sommet du graphe. e ij représente l'arête entre les sommets i et j, t de la variable d dénissant le degré minimal de connectivité à atteindre (en plus du nombre de sommets comme précédemment). La Figure 3.2 ci-dessous représente l'évolution du nombre d'arêtes uniquement en fonction de la variable d. Dans la pratique, le nombre d'arêtes sera supérieur aux nombres présentés dans la gure, étant donné que les deux premières étapes de la création du graphe ajoutent des arêtes en fonction des transitions trouvées dans les consultations passées des utilisateurs.

  car, pour notre modèle, ces facteurs humains sont en eet considérés comme des objectifs à atteindre et à maximiser. Les voici accompagnée d'une courte description :1. Similarité : recommander des ressources similaires à ce que l'utilisateur a aimé par le Préférences : recommander des ressources que l'utilisateur a déjà apprécié dans le passé.La similarité et les préférences sont proches des notions de précision et de rappel mais dièrent toutefois dans le sens où l'on ne cherche pas à reproduire exactement les mêmes séquences que l'utilisateur a consulté, mais à lui recommander des séquences pouvant le satisfaire. Ces objectifs représentent des facteurs humains important dans la création d'une bonne recommandation.

	passé ;
	2. Diversité : recommander des ressources diverses par rapport à ce que l'utilisateur a aimé
	par le passé ;
	3. Nouveauté : recommander des ressources nouvelles que l'utilisateur ne connaît pas en-
	core ;
	4. En d'autres termes, le but est de démontrer la généricité de notre modèle.
	Avant de détailler comment calculer ces objectifs, nous allons expliquer ici comment les in-
	tégrer dans le modèle. Le but de notre modèle est de proposer des recommandations orant un
	mandations. Dans cette section, nous allons dénir comment fonctionne le modèle pour produire bon compromis entre les diérents objectifs, où l'importance de ces derniers peut être ajustées à
	des recommandations à partir du graphe ainsi que les facteurs humains, i.e. les objectifs, qu'il volonté. Pour ce faire, notre modèle doit être capable de transformer ces objectifs listés plus haut
	cherche à satisfaire. en valeurs pouvant être chirées et optimisées. Autrement dit, notre modèle a pour but de ré-
	soudre un problème de recommandation multi-objectifs. Le choix des algorithmes ACO est ici du
	Comme nous l'avons vu dans le chapitre précédent sur l'état de l'art, il est désormais lar-sens étant donnés ces besoins spéciques. En eet, nous avons montré dans l'état de l'art que le
	gement admis que la mesure de précision seule n'est pas susante pour produire de bonnes modèle ACS, faisant partie des ACO, était capable de résoudre des problèmes possédant plusieurs
	recommandations aux utilisateurs. D'autres facteurs humains doivent être considérés pour satis-objectifs, comme par exemple avec le vehicle routing problem with time windows [Gambardella

faire la plus grande variété d'utilisateurs et de contextes possible. Nous proposons donc de dénir un ensemble de 4 facteurs humains parmi les plus étudiés dans la littérature et de les prendre en compte dans notre modèle de recommandation. Ces facteurs humains seront par la suite appe-lés objectifs Ils seront détaillés dans la suite de cette section. À ces 4 objectifs concernant les ressources recommandées, nous ajoutons un cinquième objectif s'intéressant quant à lui à la manière dont sont proposées les recommandations à un utilisateur : 5. Progressivité : recommander une séquence de ressources de sorte que la transition entre chacune de ces ressources soit uide et adaptée aux préférences de l'utilisateur.

Ces 5 objectifs considérés sont tous transposables dans diérents domaines applicatifs, garantissant la généricité de cette approche. Cependant, il est évident que d'un domaine applicatif à l'autre, certaines diérences peuvent justier la mise en avant d'un objectif plutôt qu'un autre.

De la même manière, les besoins et préférences pour ces objectifs peuvent varier d'un utilisateur à un autre au sein du même domaine. Pour répondre à ces deux problèmes, nous expliquerons aussi dans cette section comment adapter l'importance de chaque objectif. Il est aussi important de considérer le fait que nous nous appuyons sur ces objectifs car ils sont les plus fréquemment cités dans la littérature. L'objectif est de démontrer que notre modèle est capable de produire des séquences satisfaisant les objectifs considérés. Ce faisant, nous montrons par la même occasion que les objectifs peuvent être adaptés, enlevés ou ajoutés. En eet, on pourrait très bien considérer d'autres objectifs (personnalité, point de congestion si l'on est dans un musée, etc.).

  d'y arriver est diérente tant les algorithmes ACO sont modulaires. Pour rappel, notre problème consiste en la recommandation de séquences à partir d'un graphe et prenant en compte plusieurs objectifs pouvant potentiellement être incompatible entre eux. Il est important d'insister sur ce dernier point an de comprendre la solution mise en place dans notre modèle. Les objectifs que nous avons décrits ci-dessus peuvent en eet être incompatibles les uns avec les autres, quand bien même le but est de générer une recommandation possédant un certain équilibre parmi chacun d'entre eux. L'objectif de préférences, dont le but est de proposer des ressources déjà connues et appréciées, ainsi que l'objectif de nouveauté, dont le but est de proposer des ressources encore non connues, sont par exemple en contradiction claire. Chaque objectif traité séparément produira potentiellement des recommandations mutuellement exclusives, et pourtant il peut être intéressant de proposer à l'utilisateur une séquence de recommandations possédant ces deux aspects spéciques. Partant de ce constat, nous avons décidé d'intégrer chaque objectif comme une colonie diérente dans le modèle ACS. Ainsi, nos 4 premiers objectifs (similarité, diversité, nouveauté, préférences) seront représentés par 4 colonies dans notre modèle tandis que le cinquième objectif, la progressivité, sera quant à lui traité à part étant donné qu'il concerne la structure de la recommandation et non les ressources recommandées en elles-mêmes. An de rester aussi proche que possible des principes de base de l'algorithme, nous avons voulu converser le fonctionnement général des colonies et de la découverte de solutions sur le graphe tout en les adaptant à notre contexte. Pour ce faire, nous avons jouer sur la manière dont se dénit et se calcule la notion de distance dans le graphe. Dans les algorithmes ACO, la distance d associée à chaque arête du graphe représente comme son nom l'indique la distance physique nécessaire pour aller d'un

	sommet à l'autre de l'arête. Cette distance ne demande a priori pas de calcul et est simple-
	ment déduite, ou mesurée, de l'environnement représenté par le graphe. Elle est ensuite utilisée
	pour calculer l'heuristique η ij comme montré dans l'Équation 2.12 (pour rappel, l'heuristique
	se calcule ainsi η ij = 1 d ij

Intégrer ces objectifs par le biais de plusieurs colonies a nécessité quelques changements dans l'algorithme ACS. Dans le modèle initial, les agents d'une seule colonie se déplacent sur le graphe dont chacune des arêtes est valuée en fonction de la distance séparant les 2 sommets la constituant. Le but des agents est ensuite de se déplacer sur ce graphe an de trouver le plus court chemin d'un sommet A à un sommet B à l'aide des phéromones qu'ils y déposent. Une fois qu'une solution émerge comme étant la meilleure grâce au mécanisme de stigmergie, l'algorithme peut s'arrêter et la meilleure solution est retenue.

La philosophie derrière cette solution découle des principes même des systèmes multi-agents.

L'état de l'art du chapitre précédent l'a montré, l'approche multi-agent pour la résolution de problèmes est à la fois simple, élégante et ecace. D'autres solutions auraient été possibles, comme par exemple complexier les agents en leur ajoutant de nouveaux comportementS, mais nous avons voulu garder l'essence des systèmes multi-agents réactifs : l'émergence de comportements intelligents de par les interactions entre agents très simples.

  Par conséquent, les ressources doivent pouvoir être consultées et consommées rapidement. Ces ressources doivent aussi être disponibles en nombre susant.En se basant sur les études de l'état de l'art explorant les algorithmes de fourmis ou la recommandation de séquences, deux domaines applicatifs sont majoritairement utilisés : les ressources éducatives ou les ressources multimédias. Le domaine éducatif permet de générer des séquences destinées aux apprenants comme le ferait un vrai professeur tandis que le domaine du divertissement multimédia est en plein essor depuis quelques années grâce à la démocratisation d'Internet haut débit et des smartphones permettant à tout un chacun de regarder des lms ou d'écouter de la musique par exemple. Un troisième domaine a aussi été considéré car il a été le sujet de mon stage de n de Master en collaboration avec le projet européen CrossCult 42 : le domaine muséal, Histoire en créant de nouvelles interconnexions entre l'héritage culturel, des lieux de culture (musées, villes, etc.) et le point de vue des citoyens eux-mêmes.43. Les supports pédagogiques peuvent inclure des cours écrits, oraux, des vidéos, des exercices, des tests, etc. 44. http://www.uoh.fr Domaine muséal : ce domaine est unique car il est le seul des trois à nécessiter de récolter des données de manière physique et non sur ordinateur. Comme nous l'avons vu dans l'état de l'art, des études existent dans ce domaine et ont récolté les positions des utilisateurs avec plus ou moins de précision, mais il n'existe à notre connaissance pas de base de données publique permettant de savoir ce que le visiteur regarde précisemment 45 .Or cette information est essentielle à notre modèle, car la position seule ne permet pas de déterminer ce que fait précisément l'utilisateur (par exemple, il peut s'assoir en face d'une ÷uvre mais regarder derrière lui, ou encore discuter avec quelqu'un sans prêter attention à l'÷uvre devant lui, etc.). Autrement dit, sans savoir ce que regarde l'utilisateur, il n'est pas possible de savoir les ressources qu'il a consulté. Étant donné le sujet du stage eectué avant cette thèse, c'est sur ce problème précis que nous nous sommes d'abord concentrés.Cependant, devant le coût en temps de la mise en place d'une telle expérimentation, nous avons cherché des alternatives plus réalisables. Il est à noter qu'il existe aussi la possibilité d'un musée virtuel, où les visiteurs utilisent un ordinateur et un casque de réalité virtuelle pour se déplacer d'÷uvre en ÷uvre dans un espace recréé pour simuler un musée.La création de l'ensemble des composants permettant cette expérimentation ainsi que le recrutement des visiteurs virtuels est cependant complexe et très coûteux en temps, ne changeant pas le problème principal de la récolte de données dans notre cas ; Domaine du divertissement multimédia : depuis le tout début des systèmes de recommandations, le domaine multimédia (musique, lms, etc.) occupe une place majeure dans l'état de l'art. On peut citer par exemple la base de données publique MovieLens qui, depuis 1998, a été utilisée dans des milliers d'études sur la recommandation de lms Le choix s'est nalement porté sur le domaine de l'écoute de musique en ligne, d'une part pour la possibilité d'exploiter et de recommander des séquences de musiques, et d'autre part pour la possibilité d'obtenir une base de données de la part de nos partenaires dans l'industrie musicale.

	de ressources correspondant aux préférences de l'utilisateur. Il serait théoriquement possible de
	simuler un grand nombre de ressources aléatoires possédant des caractéristiques elles aussi aléa-
	toires. Cependant, nous souhaitons principalement évaluer la pertinence des séquences produites
	par notre modèle. Pour ce faire, il est nécessaire de disposer de données d'usage pour vérier,
	a posteriori, si ces séquences sont susceptibles d'intéresser les utilisateurs. L'exploitation d'une
	base de données réelle, possédant ces données d'usages, était essentielle.
	Choix du domaine applicatif
	Le choix du domaine applicatif a été un point crucial pour pouvoir tester notre modèle dans de
	bonnes conditions. La recommandation de séquences restreint le choix du domaine en imposant
	certaines contraintes :
	Les utilisateurs doivent consulter régulièrement les ressources du domaine applicatif ;
	Lors d'une période d'activité, les utilisateurs doivent consulter un nombre susant (au
	moins une dizaine) de ressources dans un court intervalle de temps ;
	4.3 Dans cette section, nous allons maintenant décrire les expérimentations menées sur le modèle Expérimentations sur le modèle AntRS AntRS que nous avons conçu dans le cadre de cette thèse et décrit dans le chapitre 3 précédent. Nous n'allons pas re-détailler la théorie du modèle AntRS ici comme cela a déjà été fait dans le chapitre précédent, mais nous allons plutôt nous concentrer sur son application et sur ses comportements d'un point de vue expérimental. De la même manière que pour le modèle ACS dans la section précédente, il est important de procéder à quelques tests pour jauger notre modèle avant de lancer des expérimentations pouvant être longues. Toutefois, et contrairement à la section précédente, toutes les expérimentations qui vont être présentées ici ont été réalisées sur une base de données réelles. Avant de s'intéresser à ces expérimentations, nous allons donc présenter la base de données utilisée. 4.3.1 Base de données utilisée Tout d'abord, et avant de discuter du choix des données, il est important de préciser pour-quoi nous n'avons pas eu recours, comme dans la section précédente pour le modèle ACS, à des données simulées. L'explication de cette décision réside dans l'objectif visé par ces expérimen-tations. Les expérimentations réalisées précédemment avaient seulement pour but de tester le autrement dit les séquences que créent les visiteurs d'un musée en se déplaçant physiquement dans un musée [Osche et al., 2016, Osche et al., 2019b]. Toutefois, même si ces trois domaines sont adaptés à notre application, la récupération d'une base de données assez importante pour réaliser des expérimentations ne pose pas les mêmes pro-blèmes selon le domaine considéré : Domaine éducatif : dans ce domaine, les ressources sont des supports pédagogiques de natures diérentes 43 et le but est de créer des séquences permettant à des utilisateurs d'at-teindre des connaissances spéciées. Il existe des bases de données publiques provenant d'universités ouvertes comme par exemple l'Université Ouverte des Humanités 44 mais ces dernières n'ont pas de prols utilisateurs assez fournis pour pouvoir les utiliser ici, notamment dûe à une connexion avec une session unique et anonyme sans prol. Comme il est préférable d'avoir plusieurs dizaines (voire centaines) d'entrées pré-existantes pour modéliser le graphe et les prols utilisateurs, il est nécessaire d'utiliser les données d'un site permettant la connexion de l'utilisateur et l'enregistrement de ses habitudes pendant une certaine durée ; 42. http://www.crosscult.eu : projet européen ayant pour but de modier la manière dont les citoyens européens sites web permettant, souvent de manière gratuite, de regarder des vidéos, d'écouter de la musique, etc. Les données d'utilisation de ce genre de sites sont aussi relativement simples à récupérer et à exploiter. L'écoute de musique en ligne est spéciquement inté-ressante dans le cadre de cette thèse car elle est propice à la consommation de multiples ressources à la suite dans une même session, orant ainsi la possibilité de travailler avec des séquences. De plus, il existe plusieurs sites de diusion de musique en ligne orant la possibilité d'accéder à leur API et à certaines de leurs données, comme Deezer 46 ou voient et s'approprient l'[Harper and Konstan, 2015]. La raison de cette omniprésence est la grande quantité de encore Spotify 47 .
	bon fonctionnement du modèle, son comportement et l'inuence de ses métavariables. L'objectif
	des expérimentations que nous allons présenter maintenant est diérent : proposer des séquences

  mesure la présence et la puissance des basses dans la musique ; speechiness : ∈ [0; 1], mesure l'importance des paroles dans la musique s'il y en a ; tempo : rythme de la musique ; valence : indique si l'émotion générale de la musique est plutôt heureuse ou triste.Enn, Deezer étant un service de musique en ligne, il dispose des données de fréquentations des musiques les unes par rapport aux autres. Il est donc possible de connaître pour chaque musique et artiste sa popularité : trackRankDeezer : représente la popularité de la musique sur le site Deezer ; artistRankDeezer : représente la popularité de l'artiste sur le site Deezer.La base de données possède aussi une table concernant les utilisateurs. Ces derniers sont bien sûr anonymisés avec un identiant généré automatiquement. De plus, pour chaque chanson,

	duration : durée de la musique en secondes ; Nombre d'occurrences acousticness : ∈ [0; 1], indique à quel point la musique est acoustique, c'est-à-dire si Pourcentage skip 603773 32,25%
	la musique est plutôt de type électronique ou plutôt classique (i.e. composée avec des ban 3417 0,18%
	instruments de musique à corde ou à vents par exemple) ; love 14174 danceability : ∈ [0; 1], indique à quel point la musique est adaptée à la danse ; 0,76% instrumentalness : ∈ [0; 1], indique à quel point la musique possède ou non des parties energy : ∈ [0; 1], indique à quel point la musique est énergique ; Total 621364 33,19%
	vocales ; liveness : ∈ [0; 1], indique si la musique a été enregistrée avec ou sans la présence d'un
	public ; loudness : ∈ [0; 1], Deezer peut connaître quelles actions l'utilisateur a eectué durant son écoute (s'il en a eectué) :
	idUser : identiant unique de l'utilisateur ; idTrack : identiant unique de la musique écoutée ; timestamp : date précise à laquelle l'utilisateur a lancé la musique ; skip : indique si l'utilisateur est passé à la musique suivante durant son écoute ; ban : indique si l'utilisateur a banni la musique écoutée de ses futures recommandations ; love : indique si l'utilisateur a aimé la musique durant son écoute.
	Ces trois dernières informations sont importantes car elles représentent l'avis de l'utilisateur
	sur la musique qu'il écoute. On peut par exemple déduire d'un utilisateur qui passe la musique
	en cours (skip) qu'il ne l'apprécie pas, ou alors qu'il l'aime mais que ce n'est pas le bon moment
	pour l'écouter. Un utilisateur supprimant une musique de ses futures écoutes (ban ) indique qu'il
	ne souhaite plus écouter cette musique, et ce quelles que soient les circonstances. Le Tableau 4.1
	présente la fréquence à laquelle les utilisateurs se sont servis de ces fonctionnalités dans notre
	base de données.
	Discussion sur la base de données
	Dans cette section, nous avons justié le choix d'une base de données musicale et décrit
	son contenu. Même si, initialement, nous nous sommes plutôt dirigés vers l'espace muséal et
	48. API : Application Programming Interface l'e-éducation, devant le temps et la complexité de la récupération de données dans ces deux
	49. https://developer.spotify.com/documentation/web-api/ domaines, nous avons nalement procédé au choix plus pragmatique du domaine musical dont

Table 4 .

 4 1 Tableau représentant le nombre de fois où un utilisateur a cliqué sur les boutons pour passer, bannir ou aimer une musique durant son écoute. On remarque qu'au total dans notre base de données, près d'un tiers des utilisateurs ont passé la musique qu'ils écoutaient.une base de données était déjà disponible et prête à l'emploi. Le travail préliminaire sur les deux domaines applicatifs non sélectionnés n'a cependant pas été vain, car des projets en parallèle sur la création d'une base de données de visiteurs se déplaçant dans le musée des Beaux-arts de Nancy sont en cours de réalisation[START_REF] Osche | From music to museum : Applications of multi-objective ant colony systems to real world problems[END_REF]][Castagnos et al., 2019].Un autre objectif derrière la prise en compte de plusieurs domaines sur lesquels appliquer notre modèle est la généricité de notre approche. Ces trois domaines possèdent de nombreuses diérences les uns par rapports aux autres. Le domaine des musées est un environnement physique où les distances entre les ÷uvres d'art et la foule sont des notions importantes à prendre en compte et unique à ce domaine. Le domaine de l'e-éducation, quant à lui, nécessite de prendre en compte l'objectif pédagogique de l'apprenant, son niveau ou encore sa vitesse d'apprentissage plutôt que les seules préférences qu'il est d'usage d'exploiter dans les systèmes de recommandation.Notre modèle AntRS a été conçu dans le but de pouvoir s'adapter à ces diérentes spécicités.An de mesurer les performances de ces 4 colonies, nous allons les isoler et les lancer sur un graphe identique en tous points. La modularité d'AntRS, nous permettant de changer le nombre de colonies utilisées au vol à chaque exécution, est ici mis à prot pour lancer notre modèle avec uniquement une colonie au lieu des 4 habituelles. La deuxième phase de notre modèle, la fusion des séquences provenant des diérentes colonies, n'est ici pas utilisée étant donné que nous n'aurons que les résultats d'une seule colonie, autrement dit nous n'aurons à la n qu'une seule séquence unique par utilisateur et par expérimentation (soit 4 séquences par utilisateur pour l'ensemble des 4 expérimentations). Nous allons donc procéder à 4 tests diérents pour chaque colonie avec des conditions de départ strictement identiques. Le but est ici de voir si les résultats obtenus correspondent bien à l'objectif de la colonie testée. Autrement dit, pour un utilisateur donné, les agents de la colonie de similarité devraient favoriser les musiques similaires au goût de l'utilisateur en question. De son côté, la colonie de nouveauté devrait, dans les mêmes conditions, produire des séquences de musiques moins familières pour l'utilisateur. Dans le cadre de cette expérimentation précise, les utilisateurs de la base d'entraînement ont écouté 10.621 sessions uniques de plus de 5 musiques et les utilisateurs de la base de test ont quant à eux écouté 2.569 sessions. Pour chacune des sessions d'écoute des utilisateurs de la base de test, notre modèle a produit une séquence de recommandations en partant de la première musique écoutée. Autrement dit, pour chaque session, les agents de notre modèle ont été lancés sur le graphe en prenant comme point de départ la première musique que l'utilisateur avait écouté. Par exemple, pour la session d'un utilisateur consistant en l'écoute de l'album entier Dark Side of the Moon des Pink Floyd conte-leur chemin. Deuxièmement, dans le cas où les agents n'atteignaient pas la dernière musique de la session initiale de l'utilisateur, ces derniers s'arrêtaient lorsqu'ils avaient parcouru deux fois la taille de la session initiale. Dans notre exemple avec l'album de Pink Floyd, les agents pourraient donc parcourir au maximum 18 n÷uds du graphe, et produire ainsi une séquence de recommandations de 18 musiques. En prenant en compte le nombre de n÷uds des graphes sur lesquels nous avons travaillé (entre plusieurs dizaines de milliers jusqu'à plusieurs centaines de milliers), c'est cette deuxième condition d'arrêt qui était très largement atteinte. Ces trois conditions son nécessaires et ont été mises en place an d'obtenir des séquences de recommandation faisant sens dans le contexte du domaine applicatif musical. Sans ces 3 conditions, il est possible d'obtenir des séquences ne faisant que deux musiques ou possédant des centaines voire des milliers de musiques. Comme le reste des paramètres de notre modèle, nous avons fait en sorte qu'il soit aisé de les changer au vol en fonction du domaine applicatif, voire même en fonction de chaque utilisateur au sein d'un même domaine. Nous allons maintenant nous intéresser à la création du graphe. Nous avons décrit la manière dont nous créons le graphe sur lequel les agents se déplacent dans la Section 3.3 du chapitre précédent. Nous avons utilisé un sous-ensemble de 500 utilisateurs choisis aléatoirement parmi l'ensemble des utilisateurs de notre base de données Deezer pour réaliser cette expérimentation. Ainsi, à chaque nouvelle session d'écoute pour laquelle notre modèle propose une recommandation, le graphe gagne en information et est plus à même de prédire correctement les préférences de l'utilisateur. Cependant, l'inconvénient majeur de cette méthode est de devoir reconstruire le graphe après chaque recommandation an d'intégrer les nouvelles informations. Après cette première expérimentation, nous proposerons une méthode plus classique de répartition des connaissances apportées par les utilisateurs. Yates et al., 1999]. Elles permettent de comparer directement les séquences de recommandation produites par notre modèle avec les sessions d'écoute initiales des utilisateurs. Dans un contexte d'utilisation réel où un utilisateur se connecte et le système propose une recommandation, il ne serait pas possible d'utiliser ces mesures.Cependant, dans le cadre d'une évaluation hors-ligne, elles apportent des informations majeures sur la qualité des recommandations, car nous considérons que les sessions d'écoute que nous possédons sont de bons modèles pour nos recommandations ; suite de cette section seront accompagnés de leur signicativité.Nous pouvons maintenant revenir sur les résultats présentés dans le Tableau 4.2. Comme il était prévu, on peut observer que chaque colonie a produit des recommandations orientées vers son objectif spécique. Ainsi, la colonie de similarité a produit des séquences de musiques ayant obtenu les plus hauts scores de précision, similarité et similarité intra-liste ; la colonie de diversité a produit les séquences avec le plus haut score de diversité et de diversité relative ; tandis que les colonies de nouveauté et de préférences ont respectivement produit des séquences avec le plus haut score de nouveauté et de préférences. On peut cependant remarquer que, pour certaines mesures (la précision, la similarité ou encore la diversité par exemple), les écarts sont relativement faibles entre les diérentes colonies. Nous pouvons répondre à cette constatation en deux points. Tout d'abord, et comme nous l'avons précisé plus haut, toutes les cases où 3 étoiles vertes ont été apposées représentent des résultats très signicatifs d'un point de vue statistique.Ensuite, l'objectif principal de cette expérimentation est de prouver que notre modèle est bien capable de produire des recommandations diverses et complètes suivant plusieurs dimensions.La deuxième partie de notre modèle, où les résultats de chaque colonie seront fusionnés, devra produire des séquences équilibrant au mieux chacune des dimensions. Les premières séquences produites par les colonies mono-objectifs prouvent que cela est possible, mais qu'il est nécessaire d'avoir cette deuxième étape an de mieux équilibrer les séquences nales qui seront proposées La fusion de séquences est la première de ces deux tactiques. Pour rappel, cette tactique consiste à générer une liste de toutes les ressources de chacune des 4 meilleures séquences trouvées par les colonies lors de la première étape du modèle, puis de les réarranger an de créer la séquence nale.AntRS avec les 4 colonies en parallèle et la colonie de fusion : Le deuxième modèle testé est identique au premier, sauf en ce qui concerne la tactique de fusion. Nous avons utilisé ici la deuxième tactique de fusion présentée dans la Section 3.5. Pour rappel, cette tactique consiste à construire un nouveau graphe constitué uniquement des ressources qui composent les séquences des colonies de la première étape, cette dernière agissant donc comme une sorte de sélection pour récupérer les ressources les plus intéressantes. Nous avons choisi ces 2 familles d'algorithmes an de comparer au mieux notre modèle. Les algorithmes mono-objectif permettent d'établir une base de comparaison an de déterminer si notre modèle est compétitif face à des systèmes n'optimisant qu'un seul de nos objectifs. De plus, ces algorithmes sont classiques dans le domaine de la recommandation et sont très souvent utilisés comme base de comparaison. L'algorithme multi-objectifs de comparaison permet quant à lui de mesurer nos performances sur l'ensemble des objectifs que nous optimisons. Nous allons décrire succinctement le principe de ces algorithmes sans entrer dans les détails étant donné que nous avons déjà décrit leur fonctionnement général précédemment dans l'état de l'art.

	Ainsi, le fonctionnement du c÷ur du modèle reste le même quel que soit le domaine et seuls
	les objectifs des colonies, ainsi que le type des colonies, nécessite d'être adapté en fonction
	des objectifs importants du domaine et des caractéristiques de ses ressources. Pour illustrer ce
	dernier point très concrètement, les expérimentations qui suivent n'incluent pas la colonie de
	progressivité. Nous avons réalisé de nombreux tests avec cette colonie avec le corpus de données
	mais les résultats obtenus n'ont jamais été concluants. Cela s'explique par le fait que les séquences
	d'écoutes utilisateurs que nous avons recueilli ne possédaient elles-mêmes aucun motif détectable
	de progressivité selon les critères dénis dans notre modèle. Nous avons donc décidé d'utiliser la
	modularité qu'ore notre modèle en enlevant cette colonie.
	4.3.2 AntRS mono-objectif : expérimentations sur chaque colonie isolée
	Après avoir détaillé la base de données, nous allons maintenant aborder la première expéri-
	mentation que nous avons réalisé avec celle-ci. Comme nous l'avons fait au début de ce chapitre
	avec le modèle ACS classique, nous avons jugé important de réaliser quelques expérimentations
	de tests an d'apprécier le fonctionnement en pratique de notre modèle qui, jusqu'à maintenant
	dans ce manuscrit, n'a été présenté que de manière théorique. Pour rappel, notre modèle simule
	en parallèle plusieurs colonies de fourmis ayant chacune un objectif unique. Ensuite, un algo-
	rithme se charge de fusionner les diérents résultats de l'ensemble des colonies pour ne proposer
	à l'utilisateur qu'une seule séquence de ressources. Avant de tester l'ensemble de notre modèle,
	nous avons voulu tester les colonies séparément an d'observer si les résultats qu'elles produisent
	sont bien adaptés à leurs objectifs respectifs. Voici les 4 colonies que nous avons présentés dans
	le chapitre 3 et que nous allons mesurer ici :
	1. Similarité ;

Avant de présenter les résultats de ces premières expérimentations, nous allons décrire de quelle manière nous les avons réalisées. Nous avons déjà détaillé la base de données avec laquelle nous travaillons dans la section précédente, mais nous n'avons pas encore expliqué comment nous avons utilisé ces données. Comme nous l'avons précisé, nous avons à notre disposition plus de 3.500 utilisateurs et plus de 91.400 sessions. Parmi l'ensemble total des utilisateurs, nous en avons sélectionné 500 au hasard an de travailler uniquement sur eux. Cette réduction du nombre d'utilisateurs nous a permis de réaliser beaucoup plus rapidement des expérimentations tout en gardant une diversité importante. Pour chacun de ces 500 utilisateurs, nous avons récupéré leurs sessions d'écoute et gardé toutes celles contenant 5 musiques ou plus. Ces 500 utilisateurs ont ensuite été divisés aléatoirement en 2 groupes de 400 et de 100 : les 400 premiers utilisateurs ont servi pour l'entraînement du modèle (dans notre cas la création du graphe) et c'est sur les 100 utilisateurs restants que nous avons mené les tests. étaient quant à elles imposées dans notre modèle an de limiter la taille maximale de la séquence recommandée des agents. Premièrement, la dernière musique de la session initiale écoutée par l'utilisateur n'était pas donnée en amont mais, si jamais les agents arrivaient à cette musique, ils arrêtaient ici Après cette sélection aléatoire, nous avons séparé ces 500 utilisateurs en 5 blocs de 100 utilisateurs an de réaliser une validation croisée à 5 blocs. 4 blocs ont constitué la base d'apprentissage tandis que le dernier bloc restant a constitué la base de test. Ce processus a été répété 5 fois pour réaliser l'expérimentation avec toutes les combinaisons possibles. Le choix spécique d'utiliser l'ensemble des connaissances disponibles de 80% des utilisateurs et d'essayer de prévoir les préférences des derniers 20% est délibérément voulu. Il nous permet de simuler au mieux le fonctionnement d'un service de recommandations en cours d'utilisation. En eet, un nouvel utilisateur arrivant sur le site sera inconnu du système de recommandation. La tâche de prédiction est plus ardue et s'aidera initialement des préférences des autres utilisateurs déjà connus du modèle. Au fur et à mesure que le nouvel utilisateur écoute des musiques et apporte ses retours sur ces dernières, le modèle peut intégrer ses préférences spéciques et, de ce fait, améliorer les recommandations qu'il lui propose. Pour simuler cette évolution des connaissances du modèle, nous avons intégré chaque session de l'utilisateur au graphe après avoir proposer une recommandation pour celle-ci. Autrement dit, une fois que le modèle a proposé une recommandation de séquence en se basant sur une session d'écoute de l'utilisateur, le graphe est reconstruit en intégrant les informations de cette nouvelle session d'écoute. recommandation de séquence. Nous allons décrire ces diérentes mesures ci-dessous : Précision, Rappel et F-mesure : les mesures classiques dans le domaine de la recherche Similarité et SIL (Similarité Intra-Liste) : bien qu'elles soient sur-utilisées, les mesures de similarité, et notamment la similarité intra-liste, sont de bons indicateurs de la cohérence de nos séquences de recommandations. La mesure de similarité intra-liste provient des travaux de Ziegler & al.[Ziegler et al., 2005] ; Diversité et DR (Diversité Relative) : comme nous l'avons expliqué plus tôt dans ce manuscrit, la diversité est une caractéristique cruciale des systèmes de recommandations en plus de la similarité. Il était donc important de mesurer à quel point les musiques rechaque case de résultat avec un système de symboles colorées où les trois premiers symboles (0 '***' 0,001 '**' 0,01 '*' ) sont signicatifs. Ces tests de signicativité ont été systématiquement eectués à chaque expérimentation et, par conséquent, tous les résultats que nous présenterons dans la Colonie de fusion uniquement : La troisième et dernière version de cette expérimentation sur le modèle AntRS est diérente des deux premières. Au lieu d'eectuer séquentiellement la première étape (les 4 colonies) puis la deuxième étape avec les résultats de la première (la fusion), nous avons voulu tester si le fait d'exécuter la colonie de fusion directement avec l'ensemble des ressources de tous les utilisateurs pouvait produire des résultats intéressants. En eet, dans le modèle AntRS classique, cette colonie est exécutée avec quelques dizaines de ressources tout au plus qui ont été sélectionnées par les autres colonies de la première étape, mais rien n'empêche de lancer directement cette colonie avec le même graphe qu'utilisent les premières colonies et qui contient quelques dizaines de milliers de sommets. Notre hypothèse est que la séquence nale obtenue par ce biais obtiendra de moins bons résultats que le processus complet de notre modèle AntRS avec notamment la pré-sélection de ressources potentiellement intéressantes par les premières colonies spécialisées. utilisé deux types d'algorithmes : (1) trois algorithmes classiques mono-objectif capables de produire des listes de recommandations et (2) un algorithme spéciquement multi-objectifs an de d'avoir un point de comparaison provenant d'un modèle de la même classe que le nôtre.

Table 4 .

 4 3 Expérimentations avec 3 versions du modèle AntRS et 4 algorithmes de comparaison : 3 algorithmes mono-objectifs classiques (UserKNN, TrustMF, SVD++) et 1 algorithme multi-objectifs (Pareto-Ecient Hybridization). Comme expliqué ci-dessus, nous avons testé deux tactiques de fusion pour combiner les résultats de nos quatre objectifs. Nous avons également exécuté directement la colonie de fusion sur le graphe complet et sans la première étape de notre modèle. Les deux premières lignes du Tableau 4.3 présentent les résultats de notre modèle AntRS complet avec ses deux variations : la fusion de séquences et la colonie de fusion. Nous pouvons voir que, d'une manière générale, notre modèle obtient de très bonnes performances par rapport aux 4 algorithmes de comparaison. Les deux variations de notre modèle obtiennent la meilleure précision (jusqu'à +78,23%), de rappel (jusqu'à +29,05%) et F-mesure (jusqu'à +31,28%) de tous les modèles testés dans cette expérimentation, ce qui signie que notre modèle est le meilleur pour modéliser les préférences à partir des sessions initiales écoutées par les utilisateurs. AntRS a également surpassé les autres modèles pour les préférences et les métriques de nouveauté, tout en parvenant à maintenir un niveau correct de similitude et de diversité. Il est utile de rappeler ici que nous avons délibérément choisi des objectifs non compatibles entre eux (Similarité vs Diversité, Nouveauté vs Préférences), ce qui rend le processus de recommandations plus complexe pour les algorithmes multi-objectifs (AntRS et PEH) par rapport aux algorithmes mono-objectif. Malgré une diversité un peu plus faible par rapport aux algorithmes de comparaison, AntRS ore un meilleur compromis entre tous les objectifs que PEH, et dans un temps d'exécution beaucoup plus court. Enn, nous pouvons remarquer que les deux modèles multi-objectifs, AntRS et PEH, ont une bien meilleure couverture par rapport aux autres algorithmes.

				Précision	Rappel	F-mesure	Similarité	SIL	Diversité	DR	Nouveauté	Préférences	Couverture
	AntRS (4 colonies	0,344	0,131	0,1838	0,947	0,908	0,053	0,069	0,741	0,61	96,92%
	+ fusion de sé-
	quences)
	AntRS (4 colonies	0,288 *** 0,151 *** 0,1836 **	0,945	0,905 ***	0,055	0,082 *** 0,702 *** 0,612 **	96,92%
	+ colonie de fu-
	sion)
	AntRS	(colo-	0,197 ***	0,118 ***	0,141 ***	0,953 ***	0,93 ***	0,047 ***	0,068	0,324 ***	0,389 ***	96,92%
	nie	de	fusion
	uniquement)
	UserKNN		0,224 ***	0,138	0,162 ***	0,95 ***	0,905 ***	0,05 ***	0,081 ***	0,68 ***	0,541	61,39%
	TrustMF		0,195 ***	0,117 ***	0,14 ***	0,95 ***	0,894 ***	0,058 ***	0,09 ***	0,697 ***	0,458 ***	68,17%
	SVD++		0,195 ***	0,12 ***	0,14 ***	0,941 ***	0,892 ***	0,06 ***	0,093 ***	0,70 ***	0,455 ***	68,17%
	PEH			0,193 ***	0,118 ***	0,14 ***	0,941 ***	0,892 ***	0,059 ***	0,096 ***	0,697 ***	0,452 ***	97,52%
		Signicance codes (compared to AntRS with 4 colonies + lists merging) : 0 '***' 0,001 '**' 0,01 '*' 0,05 '.' 0,1 ' ' 1

le modèle PEH associe chacun de ces scores dans une combinaison linéaire selon une hybridation spécique (i.e. des poids diérents attribués à chaque algorithme, mitigeant ou augmentant ainsi leur importance sur la valeur de pertinence nale). Le résultat de cette combinaison linéaire est la valeur de pertinence de la recommandation de la ressource à l'utilisateur. Plusieurs hybridations sont ainsi testées et représentées dans un espace en 3 dimensions où chaque point correspond aux niveaux de précision, de diversité et de nouveauté atteint par une hybridation. Comme ces 3 dimensions sont aussi importantes les unes que les autres, les auteurs utilisent le concept d'Optimum de Pareto an de sélectionner les meilleurs hybridations, c'est-à-dire les hybridations les plus proches ou sur la frontière de Pareto. Dans leur article, les auteurs utilisent diérents algorithmes classique de recommandation. Ayant à notre disposition Librec ainsi que les 3 algorithmes présentés ci-dessus représentant plusieurs techniques de recommandation à la fois diérentes les unes des autres et très utilisées dans la littérature, nous les avons inclus dans le processus d'hybridation. Le reste du modèle a été implémenté à partir de l'article des auteurs. Ce modèle est très intéressant pour notre comparaison de performance car il est multi-objectifs comme le nôtre, mais utilise une technique tout à fait diérente de An-tRS, non basée sur des modèles multi-agents et utilisant le concept d'Optimum de Pareto. Les résultats de cette expérimentation nous révèlent plusieurs informations importantes. Tout d'abord, nous allons nous intéresser aux performances de notre modèle AntRS.

Table 4 .

 4 4 Expérimentation AntRS multi-objectifs avec les modications de validation croisée et de création de graphe Le Tableau 4.4 présente les résultats de cette deuxième expérimentation. Nous avons testé 4 versions de notre modèle. Pour chacune de ces 4 versions, la nouvelle technique de validation croisée a été utilisée. Comme pour l'expérimentation suivante, nous avons également testé les deux tactiques de fusion de notre modèle. Quant aux modications portant sur la création du graphe, nous avons exécuté notre modèle selon 2 modalités : avec la même construction de graphe que l'expérimentation précédente (graphe classique), et avec la prise en compte des k voisins les plus similaires (graphe k voisins). On remarque déjà que les résultats sont, d'une manière générale, relativement similaires à la première expérimentation. Les valeurs de précision obtenues sont plus élevées que pour l'expérimentation précédente, suggérant que le modèle produit des recommandations plus proches des sessions d'écoute des utilisateurs. Cette augmentation de précision est la conséquence logique du fait que 80% des sessions d'écoute initiales sont connues du modèle. Ces résultats sont cependant à nuancer avec la couverture qui est signicativement plus basse dans cette version de notre modèle (71,68% par rapport à 96,92%).La tactique de fusion de séquence obtient une nouvelle fois la meilleure précision par rapport à la tactique de colonie de fusion. Cependant, nous n'observons pas de nette diérence entre les deux méthodes de construction du graphe. Cette expérimentation ne nous permet donc pas de valider l'hypothèse selon laquelle un graphe moins grand et construit à partir d'utilisateurs similaires à l'utilisateur actif pourrait améliorer les recommandations nales. Cependant, l'autre objectif de cette expérimentation, qui était de démontrer que notre modèle obtient également des résultats satisfaisants avec une méthode plus classique de validation croisée, est validée. La technique classique de création du graphe, sans connaître par avance 80% des séquences d'écoutes des utilisateurs, reste cependant plus proche d'un fonctionnement en conditions réelles de notre modèle.

			Précision	Rappel	F-mesure	Similarité	SIL	Diversité	DR	Nouveauté	Préférences	Couverture
	AntRS	graphe	0,379	0,147	0,205	0,942	0,902	0,058	0,073	0,748	0,631	71,68%
	classique	(fusion
	de séquences)
	AntRS	graphe	0,339	0,176	0,215	0,943	0,9	0,057	0,085	0,72	0,718	71,68%
	classique (colonie
	de fusion)
	AntRS graphe k	0,369	0,149	0,203	0,941	0,901	0,059 0,075	0,737	0,633	71,68%
	voisins (fusion de
	séquences)
	AntRS graphe k	0,329	0,167	0,206	0,944	0,905	0,056	0,081	0,707	0,68	71,68%
	voisins (colonie de
	fusion)
	senter les résultats obtenus.

Table 4 .

 4 5 Expérimentations présentant AntRS avec les métavariables empiriques et avec les métavariables optimisées via NSGA-II).

				Précision	Rappel	F-mesure	Similarité	SIL	Diversité	DR	Nouveauté	Préférences	Couverture
	AntRS	métava-	0,344	0,131	0,1838	0,947	0,908	0,053 0,069	0,741	0,61	96,92%
	riables empiriques
	(fusion	de	sé-
	quences)
	AntRS	métava-	0,288	0,151	0,1836	0,945	0,905	0,055	0,082	0,702	0,612	96,92%
	riables empiriques
	(colonie de fusion)
	AntRS	métava-	0,382 *** 0,153 *** 0,221 *** 0,953 *** 0,91 , 0,047	0,07	0,762 *** 0,744 ***	96,92%
	riables	NSGA-II
	(fusion	de	sé-
	quences)
	AntRS	métava-	0,312 *** 0,174 *** 0,226 ***	0,946	0,906	0,054	0,082	0,703	0,802 ***	96,92%
	riables	NSGA-II
	(colonie de fusion)

https://fr.wikipedia.org/wiki/Précision_et_rappel

2.3. La recommandation en séquenced'e-commerce ou de divertissement utilisent d'ailleurs principalement des recommandations par listes, comme Netix, Youtube ou encore Amazon. Un client sur un site d'e-commerce pourra par exemple être satisfait de se voir proposer par le système une liste d'articles similaires à ses recherches an de l'aider dans son choix. Cependant, certains domaines peuvent ne pas bénécier, voire être desservis, par ce format de recommandation. On peut ici à nouveau rappeler l'exemple directeur de l'introduction à ce sujet, où un apprenant se voyait proposer une liste de ressources éducatives toutes similaires au cours qu'il avait déjà suivi, sans tenir compte de sa progression ni de ses objectifs. De la même manière, un visiteur d'un musée ne sera pas forcément satisfait de se voir proposer une liste de 10 ÷uvres d'art similaires à ce qu'il vient de voir mais potentiellement éparpillées dans tous le musée. Dans ces deux exemples, on devine bien que d'autres manières de proposer les recommandations seraient bénéques. C'est ici que l'on peut dénir la notion de séquence qui pourrait permettre de répondre à des situations où une liste de ressources n'est pas susante pour satisfaire l'utilisateur et où la composante temporelle entre en ligne de compte :Dans le domaine de la recommandation, une séquence est une suite de ressources permettant d'atteindre un ou plusieurs objectifs, spéciés ou non par l'utilisateur (e.g. une compétence spécique, la sortie d'un musée, un apprentissage, des recommandations diverses pour un parcours éclectique, etc.). Une séquence possède donc un début, une n et une progression dénie sous forme d'un ordonnancement temporel. Une séquence est régie par les objectifs à atteindre, ces derniers étant spécique au domaine et à l'utilisateur.Une séquence peut donc être vue comme une liste améliorée de ressources, prenant un compte un nombre plus grand de variables et une dimension temporelle, dans le but de mieux satisfaire l'utilisateur. Nous allons ici détailler la notion de progression, qui est importante dans une séquence. Le principe d'une séquence réside dans l'existence d'au moins un objectif à atteindre, et c'est ce qui la diérencie d'une liste. Comme nous l'avons vu, une liste de ressources n'a pas fondamentalement d'objectif à atteindre, si ce n'est satisfaire l'utilisateur à t + 1 en lui proposant des ressources adaptées. De part la notion d'objectif à atteindre, une séquence a pour but de satisfaire les besoins de l'utilisateur, non plus à t + 1, mais à t + n. Il n'est donc plus question d'aider l'utilisateur pour sa prochaine action, mais bien d'aider l'utilisateur à atteindre un objectif plus complexe qui nécessitera n actions ou paliers intermédiaires. Avec ces deux dénitions, on se rend bien compte que les notions de liste et de séquence ne sont pas opposées mais complémentaires. Certains domaines ne nécessitent pas forcément l'utilisation de séquences car l'utilisateur n'aura pas d'objectif à moyen/long terme à satisfaire (ex. : la recherche d'un lm sur une plateforme de vidéos à la demande) tandis que dans d'autres domaines, une liste sera insusante pour satisfaire l'utilisateur (ex. : e-éducation, héritage culturel, playlist musicale).De la même manière, il n'est pas nécessaire de recommander des séquences à un utilisateur si ce dernier n'a pas d'objectif à atteindre et souhaite simplement une aide pour sa prochaine action, et ce, même si le domaine d'application est propice à l'utilisation de séquences. L'intérêt des séquences n'a pas échappé aux chercheurs du domaine des systèmes de recommandation qui les ont considéré comme étant un moyen supplémentaire permettant de mieux satisfaire l'utilisateur. Cette prise de conscience s'est d'ailleurs démocratisée au même moment que la prise en compte des facteurs humains autre que la précision dans l'article déjà cité précédemment[START_REF] Mcnee | Being accurate is not enough : how accuracy metrics have hurt recommender systems[END_REF]. Ainsi, on peut lire en 2004 dans le très complet article sur

Les auteurs expliquent donc clairement ici que la recommandation de séquences, même si elle n'avait pas encore été traitée à l'époque, était un point intéressant à développer et pouvait satisfaire des besoins spéciques, comme la recommandation de musiques en ligne ou encore l'acquisition de nouvelles connaissances en ligne. La première partie de leur réexion qui n'a pas été traduite ici sur les spécicités des recommandations musicales sera étudiée plus en détail dans le chapitre suivant. Même si les recommandations de ressources uniques ou de listes de ressources sont restées très largement majoritaires dans le domaine, quelques travaux se sont tout de même attelés au problème des séquences. Il est tout d'abord nécessaire de distinguer deux utilisations de la notion de séquence dans la littérature : l'utilisation de séquences déjà existantes en entrée d'un système et la production de séquences en sortie d'un système. Dans la suite de cette section, nous allons étudier ces deux manières de procéder ainsi que leurs avantages et inconvénients.Comme nous l'avons vu dans la majorité des cas, les systèmes de recommandation se basent sur la matrice d'évaluations utilisateurs × ressources pour prédire les ressources encore non consultées pouvant intéresser l'utilisateur. Cependant, même si elle permet l'application de nombreuses et puissantes méthodes de prédiction que nous ne détaillerons pas ici 22 , l'utilisation d'une matrice ne permet pas en l'état de tenir compte de l'ordre dans lequel les ressources ont été consultées, ni de distinguer les variances à court ou moyen-terme des prols utilisateurs[START_REF] Quadrana | Sequence-aware recommender systems[END_REF]. De la même manière, une cellule de cette matrice r ui représente uniquement une évaluation r d'un utilisateur u sur une ressource i, pouvant cacher une réalité plus complexe où un utilisateur a consulté plusieurs fois cette ressource au cours du temps, potentiellement dans diérents contextes et avec une évaluation diérente à chaque fois. Pour remédier à ce problème, des approches à base de tenseurs ont été proposées, permettant d'utiliser plusieurs matrices représentant diérents moments ou critères dans le prol de l'utilisateur[START_REF] Frolov | Tensor methods and recommender systems[END_REF]. Il est donc clair que les séquences de consultation contiennent des informations riches pouvant être exploitées dans un système de recommandation. L'exploitation de l'ordre des ressources dans des séquences n'est cependant pas nouvelle et provient principalement du domaine de la recherche d'information[START_REF] Agrawal | Mining sequential patterns[END_REF]. Aujourd'hui, on retrouve l'exploitation de l'ordre des séquences dans de nombreux autres domaines comme la fouille de motifs séquentiels ou encore la reconnaissance de la parole[START_REF] Han | Frequent pattern mining : current status and future directions[END_REF]. L'explosion des services proposés par la démocratisation d'Internet et du numérique en général ces dernières années a amené la recommandation à s'adapter à de nombreux domaines où l'ordre dans lequel les utilisateurs réalisent 22. On peut par exemple citer les techniques de factorisation de matrice qui dominent le domaine[START_REF] Koren | Matrix factorization techniques for recommender systems[END_REF].

trage collaboratif pour sélectionner des candidats potentiels et la deuxième utilisant une playlist avec ces candidats à l'aide de techniques de renforcement de gradient ;[START_REF] Yang | Mmcf : Multimodal collaborative ltering for automatic playlist continuation[END_REF] ont proposé un modèle multimodal de ltrage collaboratif en deux parties utilisant chacune des réseaux de neurones (autoencoder pour la première partie et réseau neuronal convolutif pour la deuxième partie). Le but des auteurs était de prendre en compte 3 des problèmes les plus communs aux systèmes de recommandation musicaux, à savoir : (1) le problème du démarrage à froid ; (2) les biais de popularité où des musiques se retrouvent soit dans la plupart des playlists soit dans très peu d'entre elles ; (3) et enn le contexte de la playlist originale (autrement dit, le fait d'utiliser les préférences à court terme de l'utilisateur dans la session d'écoute en cours pour continuer du mieux possible la playlist) ;[START_REF] Antenucci | Artist-driven layering and user's behaviour impact on recommendations in a playlist continuation scenario[END_REF] ont proposé une approche mêlant à la fois des techniques de ltrage collaboratif et de ltrage par contenu. Les prédictions de ces diérentes techniques sont ensuite agrégées ensemble dans le but de maximiser la qualité de la recommandation.On peut remarquer que ces 4 approches, ayant obtenu les 4 premières places de la compétition, possèdent des points communs et orent des perspectives intéressantes sur la manière de concevoir des systèmes de recommandation performants dans ce domaine. Premièrement, on remarque que toutes ces approches sont relativement complexes et utilisent des méthodes variées pour la recommandation (ltrage collaboratif, ltrage par contenu, factorisation de matrice, réseaux neuronaux, gradient boosting, etc.), prouvant que les systèmes de recommandation performants utilisent plus que jamais des techniques hybrides. Deuxièmement, chacune de ces 4 approches propose un modèle en deux parties. La première partie est généralement utilisée pour sélectionner un certain nombre de candidats parmi les 2,2 millions de musiques disponibles qui avaient été mises à disposition, et ce an de limiter l'espace de recherche et donc le temps de calcul. La deuxième partie consiste en la création de la playlist nale basée sur les candidats déjà sélectionnés. Cette partie peut potentiellement être plus complexe d'un point de vue algorithmique car l'espace de recherche est beaucoup plus restreint qu'initialement.Par ailleurs, chacune de ces 4 approches a aussi tenté de prendre en compte un maximum 24. https ://www.spotify.com 25. http ://www.recsyschallenge.com/2018/

2.3. La recommandation en séquence à l'aide d'un système de représentation de connaissances (OWL pour Web Ontology Language ), les intérêts d'un visiteur ainsi que les ÷uvres d'un musée dans un système de recommandation proposant des parcours. Il est à noter que, dans cette étude, les auteurs ont pu prouver que le temps passé par un visiteur devant un objet était positivement corrélé avec son appréciation positive sur cet objet. Le terme objet est utilisé ici car les auteurs ont réalisé cette expérience sur un site proposant des vêtements, et non dans le musée comme le reste de leur application.Plus récemment, les systèmes de recommandation touristiques de ces dernières années ont proté des nombreuses avancées technologiques, leur donnant plus de possibilités quant à la localisation de l'utilisateur et à l'aide personnalisée dans des lieux autrefois complexes à atteindre.En eet, la démocratisation des smartphones, recevant tous un signal GPS de bonne qualité, permet désormais à des applications de connaître relativement précisément la position d'un visiteur tant qu'il est dehors. D'une manière générale, les systèmes utilisant des données géographiques dans le processus de recommandation sont regroupés sous le terme systèmes de recommandation sensibles à la position (Location-Aware Recommender Systems (LARS)). Pour les systèmes de recommandation destinés à être utilisés à l'intérieur d'un bâtiment où le signal GPS ne peut pas passer (comme un musée par exemple), il existe maintenant plusieurs solutions étudiées et développées dans le domaine de recherche des systèmes de localisation en interne, comme par exemple le Wi-Fi[START_REF] Tesoriero | Enhancing visitors' experience in art museums using mobile technologies[END_REF], les puces RFID 26[START_REF] Tesoriero | A location-aware system using rd and mobile devices for art museums[END_REF], les senseurs de proximité Bluetooth[START_REF] Yoshimura | An analysis of visitors' behavior in the louvre museum : a study using bluetooth data[END_REF] et même le géomagnétisme 27 . Les moyens tech- niques permettant de localiser précisément un visiteur ou de lui fournir des recommandations à distance via une application ne seront pas détaillés ici. Cependant, il est important de prendre en compte ces problèmes lorsque l'on passe d'un domaine à un autre. Même si l'objectif est le même, à savoir recommander les meilleures séquences à un utilisateur d'un système, les moyens techniques à mettre en ÷uvre ainsi que les caractéristiques à prendre en compte pour produire de bonnes recommandations peuvent drastiquement changer. Ainsi, alors que certains systèmes de recommandations musicaux commencent depuis quelques années à prendre en compte le contexte de l'utilisateur quand cela est possible[START_REF] Wang | Context-aware mobile music recommendation for daily activities[END_REF], les systèmes déployés dans le domaine du tourisme doivent nécessairement tenir compte du contexte de l'utilisateur, au minimum pour pouvoir le guider activement[Adomavicius and Tuzhilin, 2011, Gavalas et al., 2014]. De la même manière, les modèles utilisateurs requis dans les recommandations touristiques dièrent de ceux des autres domaines. Il est par exemple important de prendre en compte la manière dont les visiteurs se déplacent physiquement, à la fois pour proposer des recommandations satisfaisantes d'un point de vue individuel, mais aussi pour avoir une vision globale de la foule et de ses effets sur les individus. Ainsi,[START_REF] Véron | Ethnographie de l'exposition : l'espace, le corps et le sens[END_REF]] ont réalisé une étude ethnographique au centre Pompidou montrant que les visiteurs pouvaient être classés en 4 catégories selon leur manière de se déplacer tandis que[START_REF] Yoshimura | An analysis of visitors' behavior in the louvre museum : a study using bluetooth data[END_REF] ont observé pendant 3 semaines le comportement de plus de 27.000 visiteurs au musée du Louvre, permettant de discerner 2 types de visiteurs selon la durée de leur visite ainsi que l'inuence de la foule sur les comportements.Ces deux études, toujours très utilisées aujourd'hui, révèlent que le domaine des recommandations touristiques possède des spécicités qu'il est important de prendre en compte an de correctement modéliser le comportement de l'utilisateur et de lui fournir des recommandations pertinentes. D'une manière générale, et peut-être encore plus que dans d'autres domaines, la 26. Acronyme de Radio-Frequency IDentication, désignant l'utilisation de radio-étiquettes adhésives permettant de recevoir et de répondre à des signaux à courte distance. 27. IndoorAtlas.

Dans les sections précédentes, nous avons décrit 4 facteurs humains, 4 objectifs à optimiser par notre modèle, ainsi qu'un cinquième objectif de contrainte de construction des séquences.Chacun de ces 4 premiers objectifs est associé à une colonie de fourmis spécique dont le but est de trouver un chemin dans le graphe. Par conséquent, après cette première étape, il existe autant de chemins, ou de séquences de ressources, que de colonies dans le modèle. Le but est cependant de ne proposer à la n qu'une seule recommandation à l'utilisateur. Chaque séquence représente donc idéalement une partie de la recommandation nale de l'utilisateur. An de construire cette séquence nale, il était nécessaire de fusionner ces diérentes séquences provenant des colonies en une séquence de recommandation unique. Pour résoudre ce problème, de nombreuses manière de procéder existent. Dans la suite de cette section, nous avons exploré deux tactiques de fusion

Tester les performances des deux tactiques de notre modèle (fusion de séquences et colonie de fusion) permettant de fusionner les séquences des colonies spécialisées ;

Comparer les performances de AntRS avec d'autres systèmes de recommandations monoobjectif et multi-objectifs de la littérature du domaine.Avec cette expérimentation, nous avons montré que AntRS était bien capable de synthétiser dans une même séquence les diérents aspects humains considérés. De plus, les séquences de recommandations produites par AntRS ont obtenu de meilleurs résultats par rapport aux algorithmes de comparaison de l'état de l'art. La première tactique de fusion de séquences s'est révélée être plus ecace que la colonie de fusion pour obtenir un compromis entre les diérents objectifs. L'expérimentation suivante, présentée dans la

Section 4.3.3, avait pour but de tester des variantes dans le fonctionnement de AntRS. Au cours de cette thèse, nous avons réalisé et testé de multiples modications et variantes de notre modèle de manière empirique, tant le fonctionnement du modèle initial ACS de Dorigo est modulable. Pour mettre en exergue un exemple de cette modularité, nous avons testé les performances de notre modèle en modiant la base d'apprentissage et la manière dont le graphe était créé. Les résultats obtenus ont mis en évidence

Généricité inter-domaine : Dans le point précédent, nous avons discuté de l'intégration de diérentes métriques dans les recommandations. Comme nous l'avons présenté dans l'état de l'art, un certain nombre de modèles prennent désormais en compte diérentes métriques. Cependant, un des points forts de notre modèle est la modularité avec laquelle nous pouvons l'exécuter. Il est en eet possible d'enlever ou de rajouter des colonies à la demande. Autrement dit, nous sommes capable de changer à la volée les facteurs humains à considérer pour construire les recommandations nales. Outre ce point, il est relativement simple de passer d'un domaine applicatif à un autre. Nous avons construit notre modèle de sorte qu'il soit le plus générique possible étant donné que, lors de sa conception, nous n'avions pas encore décidé quelle base de données utiliser. Ainsi, la seule modication nécessaire lors d'un changement de domaine est d'adapter le calcul de la distance d entre chaque ressource lors de la construction du graphe. Après cette modication le reste de l'algorithme est le

même.3. Séquences de recommandation : Étant donné que notre modèle AntRS se base sur le modèle des colonies de fourmis de Marco Dorigo, les résultats que nous obtenons se présentent sous le même format que pour ce dernier. Initialement, dans les modèles proposés par Dorigo, les fourmis ont comme but de chercher un chemin parmi plusieurs possibles, dans un environnement représenté par un graphe et en empruntant des points de passage représentés par les n÷uds du graphe. Le résultat obtenu est donc une suite de noeud avec un point de départ, un objectif de n et une série de points de passage dans un ordre précis entre les deux ; autrement dit une séquence. Nous avons souhaité garder ce principe de production naturelle de séquences et de l'adapter à la recommandation. Ainsi, en construisant avec attention le graphe an qu'il représente de la manière la plus dèle possible les liens présents entre les ressources du domaine applicatif ; et en adaptant le calcul de la distance d séparant deux n÷uds, notre modèle AntRS est capable de produire des séquences avec des ressources variées.Les deux premiers apports énumérés ci-dessus permettent de s'adapter non seulement à de nombreux prols utilisateurs grâce aux diérentes métriques, mais aussi à diérents domaines applicatifs grâce à la simplicité des changements à faire pour passer d'un domaine à un autre.Le troisième apport énuméré permet quant à lui de proposer non plus des ressources uniques ou des listes de recommandations à l'utilisateur nal, mais bien des séquences possédant un sens car basées sur les habitudes de consommation des ressources des utilisateurs passés.

l'ordre dans lequel les musiques sont proposées n'est pas une caractéristique prioritaire dans la satisfaction de l'utilisateur. On peut par exemple citer les études suivantes[START_REF] Vall | The importance of song context and song order in automated music playlist generation[END_REF], Vall et al., 2019] où les auteurs ont cherché à mesurer l'importance de l'ordre dans lequel étaient présentées les musiques d'une playlist. Les auteurs n'obtiennent pas de diérences de résultats entre plusieurs expérimentations où l'ordre des musiques était maintenu ou lorsqu'il était rompu. Les auteurs concluent que l'ordre des musiques n'est pas une variable cruciale pour la génération automatique de playlists. D'autres domaines sont ainsi potentiellement plus à même d'être le sujet d'études plus approfondies sur la progressivité, comme par exemple les recommandations de parcours dans des musées ou les recommandations de séries de cours et d'exercices dans l'e-éducation.Une autre perspective d'amélioration découlant du paragraphe précédent est l'application de notre modèle à un ou plusieurs autres domaines applicatifs. Nous avons déjà mentionné dans ce manuscrit que nous avions considéré les domaines muséal et de l'e-éducation en plus du domaine musical. Ces deux autres domaines proposent chacun des dés uniques et pourraient proter de séquences de recommandations répondant aux besoins spéciques de leurs utilisateurs. Il a malheureusement était trop complexe de récupérer ou de créer une base de données exploitable sur ces deux domaines durant cette thèse. Une expérimentation est toutefois menée actuellement en partenariat avec le Musée des Beaux Arts de Nancy an de construire une base de données des chemins empruntés par les visiteurs du musée, ce qui permettra alors d'appliquer notre modèle an de proposer des parcours personnalisés dans le musée.Une dernière perspective d'amélioration réside dans l'évaluation des séquences générées par notre modèle. Notre but était de considérer plusieurs facteurs humains pour générer et évaluer nos recommandations tout en uniant l'évaluation avec une seule métrique de satisfaction. Si nous avons réussi à intégrer plusieurs facteurs dans notre modèle, nous avons cependant rencontré des problèmes quant à l'unication des évaluations. L'objectif était de proposer une mesure de progressivité permettant de mesurer la qualité de la séquence recommandée mais, comme nous l'avons expliqué, nous n'avons pas obtenu de résultats concluants au regard de la progressivité dans notre base de données. Ainsi, la mesure de progressivité optimale o n proposée et détaillée dans la Section 3.4.5 n'a pas pu être testée dans de bonnes conditions. Même si les expérimentations menées dans ce travail n'ont pas pu exploiter cette mesure de progressivité optimale, nous pensons qu'elle pourrait à termes donner une indication générale de la qualité d'une séquence de ressources dans d'autres domaines comme l'e-éducation ou le tourisme.

Remerciements 5.2 Perspectives Dans ce travail, nous avons répondu aux problématiques que nous avons dénies au début du manuscrit, mais nous pouvons cependant distinguer des pistes d'améliorations futures. Premièrement, les séquences peuvent bénécier d'améliorations, notamment au niveau de la notion de progressivité. Pour le moment dans notre modèle, les séquences sont créées via 5.2. Perspectives les agents fourmis parcourant le graphe à partir d'un point de départ jusqu'à un objectif. La progressivité des séquences est garantie par deux processus : 1. La topologie du graphe qui prend en compte les séquences créées naturellement par les utilisateurs lors de précédentes visites ; 2. La formule du calcul du meilleur chemin une fois les agents ayant terminé de se déplacer sur le graphe. Nous avons exploré d'autres pistes pour orir des séquences plus progressives aux utilisateurs. Par exemple en incluant une colonie dédiée uniquement à la progressivité, ou encore en modiant les calculs de distance totale de chemin. Les tests que nous avons réalisés n'ont cependant pas abouti à des résultats concluants. Nous attribuons ces résultats au fait que le domaine de la musique n'est pas optimal pour utiliser ce genre de technique. Quand bien même il est courant pour les utilisateurs d'écouter des musiques sous formes de playlists, de récentes études ont montré que

tant que colonies dans notre modèle et participent toutes à la construction de la séquence de recommandations. Leur importance dans le processus de recommandation peut être modulée an de mieux correspondre à chaque prol d'utilisateur.

Abstract

Recommender systems are a fundamental research topic at the intersection of several major disciplines such as machine learning, human-computer interaction and cognitive sciences. They also constitute an ambitious application framework for the community of researchers in Articial Intelligence by their great complexity and the numerous constraints they generate.

The purpose of these systems is to improve the interaction between the general audience and the systems of search and access to information. It has become dicult to identify the most relevant items in the context of big data. The goal is thus to assist users in their explorations (whether in a virtual or physical environment), but also to propose items that may interest them but that they would not consult spontaneously.

Current systems have largely proven their added value and are based on various machine learning techniques (numerical or symbolic, supervised or not, etc.) [Castagnos, 2008]. Nevertheless, they still suer from limitations when making recommendations of sequences (recommending items in a specic order may depend on requirements, progressiveness, context, time constraints, etc.). Some models, such as the DANCE model [Castagnos, 2015], integrate this temporal dimension by following in real time the evolution in diversity of resources consulted by users to better understand the exploration context. In [Bonnin, 2010], the author also proposes a temporal model capable of detecting frequent consultation patterns in a history of consultations, in order to provide a priori resource recommendations related to the same context. Nevertheless, while temporal and spatial modeling have been made possible [Zheng, 2015], state-of-the-art models that focus on sequence recommendations or on the overall quality of the sequence are still too rare.

In the framework of this thesis, we will focus on dening a new formalism and a methodological framework allowing : (1) the denition of human factors leading to decision making and user satisfaction ; (2) the construction of a generic and multi-criteria model (physical or temporal constraints, diversity, progressiveness, etc.), integrating these human factors in order to recommend relevant resources in a coherent sequence ; (3) a holistic evaluation of user satisfaction with its recommendation path. The evaluation of recommendations, all domains included, is currently done recommendation by recommendation with each evaluation metric taken independently (accuracy, diversity, novelty, coverage, ...). Thus, we expect a more comprehensive evaluation framework, measuring the progressiveness and the completeness of the path. Such a multi-criteria recommendation model has many application frameworks. As an example, it can be used in the context of online music listening with the recommendation of adaptive playlists (recommendation of music sequences to change the atmosphere in a place such as a bar, to raise or lower the emotion felt by the audience progressively, or to adapt to the complementary/similar/dierent expectations of a group). It can also be useful to adapt the recommendation path to the learner's progress and the teacher's pedagogical scenario in an e-education context.

Let us also mention the tourism eld where this model could integrate the spatial and temporal constraints of a physical environment (cities, museums, etc.).

Keywords: Recommender systems, Multi-agent systems, User modeling.