Human Contact Prediction

General Description: This project implementation is in Python. It has the implementations for several unsupervised contact predictors to infer missing contacts in a mobile social setting by exploiting the known properties of contact graphs [1]. We define a contact graph to be a graph in which nodes are people and edges represent people physical contacts.

Code Input: It uses the Infocom 2005 and 2006 human mobility traces collected by iMotes.

Code Output: It outputs the accuracies of different contact predictors.

Project Goal: The main goal was to predict who is the next person whom you will visit.

Implementation period: July - August 2010.

people mobility

Technical details:
The implemented methods are listed below:

  1. predCN: infers the missing edges in a mobile social network by computing the number of common neighbors measure.
  2. predSPF: infers the missing edges in a mobile social network by running the shortest path first algoritm.
  3. predPRank: infers the missing edges in a mobile social network by employing a variation of Page Rank algorithm.
  4. evalPreds: evaluates the results of a prediction method.
The following figure is the contact graph constructed from the first day of Infocom 2005 conference where 40 people participated.
Infocom 2005 CG
Please find the details of our contact predictors and their performance results in our SocialNet paper [1]. You can also download our contact predictor source code from its github repository: contact-predictor.

[1] K. Jahanbakhsh, G.C. Shoja, V. King, Human Contact Prediction Using Contact Graph Inference, CPSCom 2010, Hangzhou, China.


You should follow Follow @kjahanbakhsh me on Twitter.