Réseaux Sociaux Physiques


 * UE/Module: Projet M2M M2PGI
 * Enseignants: Didier Donsez, Bassem Debbabi
 * Etudiants M2PGI: Yann Diorcet (chef de projet), Amina Ben-Yelles

Description
Le domaine d'application est la compréhension des maladies nosocomiales : il s'agit d'établir une cartographie des rencontres physiques entre patients hospitalisés et professionnels de santé.

La cartographie est constituée incrémentalement par les noeuds lors qui sont en contact avec un puit (capteur relié à un hôte fixe). Les mesures sont remontées par un médiateur construit sur Cilia

Mots-clé : wireless sensor networks, delay tolerant networks, opportunistic networks, opportunistic computing

Autres applications:
 * Avalanche Victim Seeker
 * Géolocalisation Zigbee

Lire
 * workshop on Data driven dynamical networks (Oct 2010) http://www.cpt.univ-mrs.fr/~barrat/leshouches.html
 * MOSAR (Mastering hOSpital Antimicrobial Resistance in Europe) https://www.mosar-sic.org/mosar/en-gb/index

Composition

 * Collecteur
 * SunSpot
 * Mediateur
 * PC

Communication entre Sunspot
Chaque Sunspot ayant un adresse unique, on utilise celle-ci pour enregistrer les informations sur le temps qu'ils ont été en contact. Pour ce faire, chaque Sunspot émet un paquet de type broadcast sur un canal toutes les secondes. Si ce paquet est reçu (avec une intensité de réception supérieur à une limite fixée) par un autre Sunspot, celui-ci le traite. Ce traitement implique que si la condition suivante est remplie, il incrémente de 1 le compteur de "contact" qu'il possèdent pour le Sunspot émetteur.

Répartition
Les conditions sont:
 * Si la somme de l'adresse de l’émetteur et celle du récepteur est impair, le récepteur l'enregistre si il possèdent l'adresse la plus petite.
 * Sinon le récepteur enregistre l'information de contact si son adresse est la plus grande.

Volume de données
Ces conditions permet une répartition des informations entre tout les Sunspots. En effet si notre réseau de Sunspots est composé de N Sunspot on aura:
 * Un maximum de N(N-1)/2 informations sur les temps de contact à sauvegarder.
 * Un Sunspot aura au maximum a sauvegarder (N-1)/2 temps de contact.

Communication avec le Collecteur
Les collecteurs communique avec le serveur grâce a une chaîne de caractères en format XML qui est construite de la façon suivante: 11112222 6 

Médiation(Cilia)
La chaîne de médiation mis en place grâce à Cilia est composé des éléments suivant:
 * Serveur: Récupère les données en XML venant des Collecteurs et les transmet au UnMarshaller XML.
 * XML UnMarshaller: Transforme la chaîne de caractères en format XML, en Objet directement utilisable.
 * Core: Contient le code traitant les différentes informations: Par exemple, effectuer l'horodatage des informations.
 * Console: Fournit une interface permettant d'avoir des logs sur les informations transitant pas le Core.
 * BDD: Suivant le type de donnée de l'objet transitant, cet objet est rendu persistant dans une base de donnée.
 * JSON Marshaller: Ce compostant convertit l'objet en chaîne de caractères en format JSON(directement utilisable par JavaScript).
 * Feed Servlet: Servlet fournissant les informations en temps réel.

Interface Web
Une interface Web permet de visualiser les données collectées par le(s) collecteur(s). Les technologies utilisées sont:
 * HTML + JS/AJAX + SVG
 * Pages JSP & Servlets



Equipement

 * 5 kits SunSPOT



Logiciels

 * Cilia
 * Protovis