Mes principaux sujets de recherche sont liés à l'ingéniérie des systèmes multi-agents et des machines sociales: les machines sociales sont essentiellement des systèmes multi-agents où les agents sont des personnes. Les machines sociales sont souvent basées sur des applications Web, mais je suis très intéressé par la décentralisation, par conséquent je m'intéresse aussi beaucoup aux architectures alternatives commes les réseaux peer-to-peer et les réseaux ad-hoc..
Projet "Sociogrammes"
(afficher)
Contexte :
Une machine sociale [1] est un système socio-technique constitué d’applications en réseau et de leurs utilisateurs. De nombreuses applications Web ou mobiles engendrent des machines sociales; on peut citer par exemple Wikipedia, Twitter, Strava, Tinder, Waze, les réseaux peer-to-peer, les jeux en réseau comme Pokemon go, etc.
Certaines machines sociales font usage de systèmes existants (réseaux sociaux, en particulier) : voir par exemple le hashtag #icanhazpdf, à partir duquel les chercheurs coordonnent la distribution d’articles
scientifiques payants.
But :
Le but de ce projet est de démocratiser la création de machines sociales, à travers un langage visuel qui permettrait à des novices de schématiser une interaction sociale, et un système pour automatiquement transformer un tel schéma (un « sociagramme ») en une infrastructure fonctionnelle utilisant des applications existantes (messages twitter, sondages doodle, etc.).
Le travail proposé fait suite à un projet initié avec des chercheurs des Universités d’Edimbourg et Oxford (projet SOCIAM), et les idées de base sont décrites dans deux articles publiés en 2018 [2, 3].
Sujets de recherche possibles:
- Implémenter
et évaluer un éditeur de « sociagrammes », qui permet de dessiner des
schemas et les enregistrer dans un format à définir. Les prototypes présentés dans [3] peuvent servir de point de départ pour l’application visuelle.
- Transformer
des « sociagrammes » en machine sociale fonctionnelle, en utilisant l’approche MDD (model-driven development). Un objectif important est d’exploiter autant que possible des applications existantes (Twitter, Slack, Doodle…) et de les combiner avec des agents simples.
- Étude de cas : créer une machine sociale pour un cas d’utilisation réel. À discuter.
Ces sujets peuvent être traités à différents niveaux de profondeur et être appropriés pour un essai, une maîtrise ou un doctorat (un doctorat combinerait probablement les trois aspects).
[1] Smart, P. R., & Shadbolt,
N. R. (2015). Social machines. In Encyclopedia of Information Science and
Technology, Third Edition (pp. 6855-6862). IGI Global.
[2] Papapanagiotou, P., Davoust, A., Murray-Rust, D.,
Manataki, A., Van Kleek, M., Shadbolt, N., & Robertson, D. (2018, July).
Social Machines for All. In Proceedings of the 17th International Conference on
Autonomous Agents and MultiAgent Systems (pp. 1208-1212). International Foundation
for Autonomous Agents and Multiagent Systems.(pdf)
[3] Murray-Rust, D., Davoust, A., Papapanagiotou, P.,
Manataki, A., Van Kleek, M., Shadbolt, N., & Robertson, D. (2018, June). Towards executable representations
of social machines. In International Conference on Theory and Application of
Diagrams (pp. 765-769). Springer, Cham.(pdf)
Projet "Du contrat social pour agents autonomes"
(afficher)
Contexte :
L'interaction d'agents rationnels peut être modélisée par des jeux, au sens de la théorie des jeux. Dans de nombreux cas, les équilibres de Nash sont inefficaces, c'est à dire que la somme des utilités obtenues par les joueurs à l'équilibre est inférieure à l'utilité obtenue par l'action (conjointe) optimale de ce point de vue.
But :
Ce projet explore des mécanismes pour modifier des jeux de manière à encourager des équilibres plus efficaces ou plus désirables. Il y a plusieurs facettes à ce projet.
On a d'abord une problématique de choix social: en supposant que les agents sont insatisfaits d'un jeu existant, ils doivent choisir ensemble comment ce jeu doit être modifié: il peut par exemple être modifié pour générer le maximum d'utilité, ou de manière à répartir l'utilité de façon la plus équitable possible. [4]
Une fois l'objectif défini, il y a des questions théoriques de faisabilité: est-ce qu'on peut transformer n'importe quel jeu pour rencontrer cet objectif?
Enfin, il serait intéressant d'implémenter des algorithmes de transformation et d'expérimenter avec des agents apprenants.
Sujets de recherche possibles:
- Étude théorique du problème de choix social consistant à choisir des modifications à un jeu.
- Étude théorique: étude du lien entre cette approche et les concepts de théorie des jeux coopérative (noyau) et/ou des jeux sous forme "partition function form games".
- Étude de cas pratique avec des agents utilisant l'apprentissage multi-agent par renforcement.
- Étude de faisabilité: implémenter un contrat social à l'aide de smart contracts sur blockchain.
Ces sujets peuvent être traités à différents niveaux de profondeur et être appropriés pour un essai, une maîtrise ou un doctorat. Un doctorat dans ce domaine requiert un solide bagage théorique.
[4] Davoust,A. and Rovatsos, M.: Social Contracts for Non-Cooperative Games. AIES 2020: 43-49.(pdf)
Projet: Requêtes de graphe pour le Web Sémantique
(afficher)
Contexte :
Le Web sémantique, le mouvement Linked Data on the Web, sont des mouvements pour promouvoir le partage de données sur le Web, principalement au format RDF. Les formats de graphe comme RDF sont le format privilégié pour la représentation de connaissances. Un des mécanismes fondamentaux des requêtes de graphe est la traversée d'arêtes en suivant des chemins satisfaisant des expressions régulières -- requêtes de chemins de graphes ou Regular Path Queries (RPQ). Un certain nombre de techniques ont été proposées pour évaluer des requêtes RPQ dans un contexte distribué, en particulier sur le Web.
But :
Dans ce projet on souhaite évaluer des requêtes de graphe dans un contexte distribué.
Sujets de recherche possibles:
- Application de techniques existantes pour distribuer des requêtes sur le Web (Linked Data).
- Évaluation expérimentale de techniques de modélisation de graphes pour évaluer le coût de requêtes pour le Web. (extension de [7])
- Création d'un benchmark pour des requêtes de graphe.
- Application de techniques d'évaluation de requêtes de graphe à la sécurité. Voir [5]. Le projet consisterait à reproduire ces résultats et de collaborer avec un chercheur en cryptographie pour chercher à les obtenir en utilisant le private multi-party computing.[6]
Ces sujets peuvent être appropriés plutôt pour un essai ou une maîtrise. Pour un doctorat, je suis ouvert à discuter de directions pour étendre ces projets.
[5] Chen, H., Dean, D., & Wagner, D. A. (2004, February). Model Checking One Million Lines of C Code. In NDSS (Vol. 4, pp. 171-185).
[6] Goldwasser, S. (1997, August). Multi party computations: past and present. In Proceedings of the sixteenth annual ACM symposium on Principles of distributed computing (pp. 1-6). ACM.
[7] Davoust, A., & Esfandiari, B. (2016, October). Processing regular path queries on arbitrarily distributed data. In OTM Confederated International Conferences" On the Move to Meaningful Internet Systems" (pp. 844-861). Springer, Cham.
Projet: Collaboration Décentralisée pour la prise de notes
(afficher)
Contexte :
Dans un contexte éducatif, la prise de notes par les étudiant.e.s est une activité essentielle, et est supposée venir en complément de matière fournie par les enseignant.e.s. Aujourd'hui de nombreuses étudiant.e.s utilisent leurs ordinateurs ou tablettes en cours pour prendre des notes. Cependant, la pratique de la prise de notes a peu changé dans les dernières années, malgré le potentiel des outils informatiques -en particulier des outils d'édition collaborative- pour améliorer cette pratique et l'expérience des étudiant.e.s.
Une des raisons pour ceci pourrait être que les outils collaboratifs existants implémentent tous le même modèle de collaboration, où tout le monde modifie un document partagé, et il n'existe qu'une version du document, "one size fits all", alors qu'en prenant leurs propres notes, les étudiant.e.s obtiennent un matériel éducatif personnalisé. Les expériences d'enseignant.e.s démontrent des faiblesse au modèle du document partagé: il peut être difficile de motiver les étudiant.e.s à participer, et ils/elles peuvent aussi être inconfortables à éditer, et donc détruire, du texte écrit par d'autres. La difficulté des étudiant.e.s à participer pourrait s'expliquer, en théorie des jeux, par la similarité de la situation avec le classique "snowdrift game": si participer est un effort couteux, et que le bénéfice peut venir du travail des autres, alors l'attitude rationnelle est d'attendre passivement que les autres travaillent.
But :
Dans ce projet on se propose d'addresser le second problème: comment les participantes peuvent-elles bénéficier de la collaboration tout en maintenant une version personnalisée des notes?
La solution proposée consiste à implémenter un outil d'édition collaborative suivant un modèle décentralisé de collaboration, conçu lors de mes travaux de doctorat [8].
Un nouvel outil est en cours de développement et sera expérimenté au cours de l'année 2020-2021, dans des cours de l'UQO et peut-être ailleurs.
Une expérimentation est également en cours pour développer un back-end peer-to-peer.
[8] Davoust, A., Craig, A., Esfandiari, B. &Kazmierski, V. (2015). P2Pedia: a peer-to-peer wiki for decentralized collaboration. Concurrency and Computation: Practice and Experience.(pdf)