Dynamique des réseaux d'interactions sociales : présentation du projet

Laurent Beaudou, Etienne Duchesne, Emmanuel Filiot

1  Introduction

Objectif
Le projet consiste en la réalisation d'un outil de simulation de processus dynamiques sur des graphes quelconques à grand nombre de sommets (de l'ordre de 105), comprenant des outils de création de graphes particuliers, de règles de transitions, des outils de mesure des résultats, voire de visualisation de l'évolution des graphes. Les sommets sont dans des états particuliers, et la simulation consiste à faire évoluer les différentes configurations d'états du graphe, selon des régles de transitions définies par l'utilisateur, et à fournir des résultats pertinents.
Un projet orienté objet
Un module permettra de créer des graphes ( graphes réguliers, graphes à distribution de degrés fixée, graphes aléatoires). Un autre concernera la dynamique sur le graphe, par la définition de régles de transition. Un module permettra de choisir entre une exécution synchrone, et une exécution asynchrone de la simulation, i.e. entre une transition synchrone (tous les états de chaque sommet changent en même temps) ou asynchrone.
Enfin un module d'interface utilisateur avec un système de fenétrage permettra de rendre le logiciel simple d'utilisation.

Déroulement de la simulation
D'abord, l'utilisateur devra entrer les données qui concernent le graphe, la dynamique du graphe, une configuration initiale (aléatoire ou non), ainsi que diverses informations (exécution asynchrone, synchrone, nombre d'itérations, nombre de simulations, etc...i.e. le protocole de simulation).
Ensuite, l'utilisateur doit pouvoir faire des mesures, des statistiques, en temps réel ou non, et pourvoir visualiser le résultat des mesures sur des graphiques, 2d, 3d, etc...Il pourra aussi (peut-être), visualiser l'évolution du graphe en temps réel, en 2d ou 3d, effectuer des zooms sur certaines parties, avoir différents modes de représentations graphiques, etc...

Protocole de simulation
L'utilisateur pourra définir un protocole de simulation,par exemple, le nombre de simulations à effectuer sur tant de configurations, aléatoires ou non, le nombre d'itérations pour chaque simulation, les mesures à faire entre ces différentes simulations, etc...
Pour l'instant, la donnée d'un graphe, d'une dynamique, et d'un état initial permet de recueillir des résultats. Dans le protocole de simulation, entre les différentes simulations, on pourra faire varier l'état initial (variations aléatoires, ou proches). La possibilité de pouvoir définir, dans le protocole, une variation de la dynamique "continue" entre les différentes simulations est intéressant. Des variations trop brutales fourniraient des résultats inexploitables.

Langage
Le projet se fera en Java, pour sa portabilité, et l'existence de nombreuses bibliothèques pour les statistiques, le fenétrage, l'interface utilisateur.

Un travail d'équipe
Le projet se divise en trois grands axes, les graphes ( génération, définition, utilisation), la dynamique ( définition) et l'exécution, et les mesures. C'est principalement sur ces trois axes que chaque membre va travailler, selon le planning suivant :

2  Esquisse d'UML

2.1  Vue générale



2.2  Vue d'ensemble



2.3  Utils



2.4  Graph



2.5  Dynamic



2.6  Protocol



2.7  Execute




Ce document a été traduit de LATEX par HEVEA.