Home      Contact      Login
:
|
|
|
|
|

A Decentralized Recommendation Engine in the Social Internet of Things

 
 

Daniel Defiebre, Dimitris Sacharidis, Panagiotis Germanakos

d.defiebre@sap.com; dimitris@ec.tuwien.ac.at; panagiotis.germanakos@sap.com

 

Link to paper: https://doi.org/10.1145/3386392.3397602

Link to video pitch: https://www.youtube.com/watch?v=p85SKyjqxLM

 
 
DANOS System

DANOS (Dynamic and Anthropomorphic Network of Objects System) is an agent-based system for SIoT objects that runs over a decentralized architecture. It adheres to the following characteristics:

  • User-Object Profile: User Specifics (e.g., age, gender, tasks, preferences, personality); Object Specifics (static attributes of the object, e.g., battery autonomy, size, model, production year); and Interaction Specifics (data that are generated through the objects’ experience in the network)
  • Objects navigate with human behavior (in this case personality traits)
  • Autonomous travelling and interaction of objects in a decentralized network
  • It contains virtual intent areas, that facilitate specific information needs. An area is organized into cells, which act as virtual rooms where objects visit to establish friendships
  • Private and secure; the object stays with the user and exchange only with other objects-friends
  • It uses collective intelligence to optimize the network and the recommendations in time
  • Transparent and fair recommendations to the users; influencing with their feedback the formation and quality of the network, and objects’ friendships (neighborhood)

DANOS workflow process
 
 
Recommendation Engine

Preliminaries

  • A user has a profile that contains information specific to the user (e.g., preferences, personality traits), and specific to the object (e.g., device characteristics)
  • We assume a specific intent for the SIoT objects: Recommendations of items from a set I (e.g., product categories)
  • A user provides a rating to an item, which is represented as normalized in the [0,1] range. The feedback given by a user determines the user’s preference on item content
  • Given two users u,v, we define three similarity values, based on their profiles, their ratings, and their preferences

Recommendation engine process
 
 

Higlights of the proposed recommender include

 
 
Evaluation

Method & Results

  • Dataset: A small scale study using recommendations of professional training resources. In total, 134 ratings from 38 users on 16 resource topics
  • Method: Comparison of danos-N (our approach with N meeting rooms) with central (a centralized recommender) and static (fixed social connections)
  • Evaluation Metrics: (a) We measure the root mean squared error (RMSE) of the rating predictions made by the recommenders; (b) we count the ratio of requests for which the recommender does not return the item eventually ranked by the user (No-Rec; and (c) we use the positive ratings (with score 4 or 5) to measure the ranking accuracy of the recommenders in terms of the mean reciprocal rank (MRR)
  • Results: We report the mean metric values over three executions of the simulation, as follows:
    • Recommendation Effectiveness (Fig.1): In all metrics, the two baselines perform worse than the DANOS variants. The bigger differences are in terms of No-Rec, indicating that the baselines fail to recommend the ground truth item more than 60% of the time, whereas the DANOS approaches only fail around 40%
    • RMSE (Fig.2): Comparing the DANOS approaches with the two baselines we observe that RMSE improves (decreases) over time; performing the best almost at all time instances. The centralized approach performs slightly worse than the DANOS methods, while static performs the worst. Among the DANOS methods, we note that Danos-4 is the best in terms of RMSE
    • MRR (Fig.3): There is a significant difference with the baselines exhibiting MRR around 0.15 and DANOS approaches around 0.20. In this case also, MRR improves (increases) over time with Danos-8 to be the best compared to the rest

 
Fig.1: Recommendation effectiveness; Fig.2: Rolling average of RMSE over time; Fig.3: Rolling average of MRR over time
 
 
The Aftermath

The advantages with DANOS recommendation engine are:

  • A user selects its friends from a smaller pool of users, those that have recently visited the cells
  • The pool of users is more specialized and thus better equipped to handle each recommendation request
  • The benefit of this specialization in DANOS is also that the performance improves as we increase the number of cells (decentralization)
  • The distributed nature of DANOS helps achieve higher recommendation effectiveness than a centralized approach
  • The dynamicity of DANOS is equally important for effectiveness — when restricted to a fixed network, as static is, where it becomes worse than the centralized approach

 
 

published @ ACM UMAP 2020, Genoa, Italy