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

 

In the Social Internet of Things (SIoT), the connected objects operate autonomously to request and provide information and services to end users.
Following concepts and aspects from human social networks, the objects interact with each other, and over time develop trustworthy relationships, to the benefit of the end-users.
In this work, we propose a recommender system that takes advantage of the social dynamics that drive the behavior and interactions of autonomous objects as they attempt to discover and return the best possible result. The main aim is to facilitate the optimum pairing of objects so as to enable effective recommendations.

 

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

 

Highlights of the proposed recommender include:

 

Evaluation

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

 

ACM UMAP 2020 Genoa