Realistisches Nutzerverhalten in einem sozialen Netzwerk

  • Beschreibung

    Soziale Netzwerke wie Facebook oder Foursquare sind aus unserer heutigen Welt nicht mehr wegzudenken. Üblicherweise handelt es sich dabei um Webdienste, die mit Hilfe von zentralen Servern realisiert sind. Dies bringt für den Benutzer diverse Nachteile mit sich: Zum einen ist er für die Nutzung auf Internetkonnektivität angewiesen, zum anderen wirft die zentrale Datenspeicherung bei einem Drittanbieter Fragen der Privatsphäre auf.

    SODESSON ist eine Middleware, die den Austausch von Daten zwischen sozialen Kontakten mit ihren eigenen Geräten selbstorganisiert, möglichst lokal und kostengünstig realisieren soll.

    Zur Evaluierung der für SODESSON entwickelten Verfahren ist sowohl die Simulation von Geräten und ihren Eigenschaften wichtig, als auch die Modellierung von realistischem Nutzerverhalten. Dazu gehören beispielsweise die Mobilität, das Treffen sozialer Kontakte und das Anwendungsverhalten.

    Aufgabenstellung

    Deine Aufgabe ist es, ein Nutzer-Simulationsmodell für das SODESSON-Szenario zu entwerfen und für den P2P-Simulator OverSim zu implementieren. Dieses soll die Grundlage für zukünftige Evaluierungen verschiedener Protokolle und Verfahren für SODESSON bilden, indem es möglichst realistische Bedingungen für die Simulation bereitstellt. Dazu sind einerseits Eigenschaften der Geräte (Leistungsfähigkeit, Verfügbarkeit), andererseits das Nutzerverhalten der Gerätebesitzer abzubilden.

    Bei der Modellierung ist auch vor allem deine Kreativität gefragt. Gleichzeitig musst du einen Kompromiss zwischen Detailreichtum und Skalierbarkeit finden - lässt sich deine Lösung auch noch sinnvoll evaluieren, wenn für 1000 Nutzer jeder Schritt auf einer OpenStreetMap abgebildet wird? Wir sind gespannt!

    Arbeitsumgebung

    Dir stehen Linux-PCs in einem klimatisierten Pool-Raum zur Verfügung, gleich neben Kaffeevollautomat, Süßigkeiten und Kaltgetränken. Mit deiner Implementierung bringst du dann später leistungsstarke Simulations-PCs mit massenhaft RAM und CPU-Cores so richtig ins Schwitzen.

    Voraussetzungen

    Du bringst großes Interesse an sozialen Netzwerken, Kreativität und Spaß an der Modellierung mit. Du hast schonmal über die verpflichtenden Uni-Projekte hinaus programmiert, idealerweise in C++. Grund- wissen über die Funktionsweise von P2P-Netzen ist hilfreich, aber nicht feste Voraussetzung.