On December 26-30th we deployed a new SocioPatterns experiment at the 25th Chaos Communication Congress in Berlin (25C3). This is the first large-scale deployment of our platform for sensing social interactions. We added to the visualization interface several ways of focusing on particular subsets of the real-time and cumulative contact networks. In line with the conference’s action line “nothing to hide”, we made the live contact network available on the web.
We thank the following persons for their work and support: Milosch Meriac, Brita Meriac, and aestetix, Janette Lehmann, Aurora Mazzone, Marco Perosa, Eric Preston, Tomasz Rybak. Our work at 25C3 was carried out in the context of a broader tracking event by the OpenBeacon project and the OpenAMD project, with hardware and infrastructure provided by Bitmanufaktur. We also thank the organizers of 25C3 for hosting our work at such a stimulating event!
Visualizations, movies and results from the data collected at 25C3 will be posted to this blog in the next few weeks.
The following movie visualizes the social interactions between the participants of a recent workshop at Villa Gualino. The visualized data is obtained through a distributed sensing platform. This platform uses active RFID technology to detect “contacts” during which participants are both near each other and are facing each other. If such configuration is sustained for longer than a few seconds, then this generally indicates that some form of social interaction is taking place. Next to the actual contacts, the platform also infers where these contacts take place. An earlier post in this blog provides more details on the technical set-up and the objectives of this project. Note however that we here use the peer-to-peer contact detection scheme detailed in this subsequent post. More details about this are provided in a manuscript available at arxiv.org/abs/0811.4170.
What this movie shows is a time-lapsed replay of some sections of a real-time visualization that was publicly displayed during the workshop, shown in the picture below. In this visualization, the RFID stations are represented as immobile labeled marks laid out in an oval configuration. Their labels name the areas in which the respective stations are located. There are two stations in sala A in which the workshop presentations took place, three in the bar next to sala A, two in the cafetaria in which lunch was served, and one in the lobby. The size of the round part of the station marks is proportional to the summed strengths of the signals received from beacons.
The publicly displayed visualization. The left screen shows the instantaneous contact network, the right screen shows the cumulative network, which will be discussed in more detail in a future post.
The mobile circlets represent the beacons, which are the small RFID devices worn by the participants. Their size is proportional to their strength, which is the sum of the weights of the contacts they are involved in. Their situation in the visualization is controlled by a force-directed layout algorithm.
A first set of spring forces are applied between beacons and those stations that are within their radio signal range. Their length and tension is proportional to the strength of the respective signals. Stronger signals, which reflect closeness, are translated in shorter spring lengths and increased tensions. The relative location of the participants with respect to the stations is thus (flexibly) mapped to the abstract geography of the visualization. As the signal strengths change when the participants move around with their beacons, the mapping of their marks will be effected accordingly. A clear example of this is the “migration” of the bulk of the beacon marks towards the bar stations marks during the coffee breaks.
A second set of spring forces is applied between beacons that are in contact with each other. These contacts are furthermore explicitly represented as edges. The thickness and shade of these edges, and their spring length and tension, are all proportional to the weight of the contact.
The layout system also involves drag forces and n-body repelling forces. Unlike the spring forces, these do not reflect actual information, but solely serve to optimize the layout. The drag forces are applied to stabilize the spring driven movements, while the repelling forces, which are applied between all beacons marks, prevent overlap.
Comparing this new movie with the one in the first post clearly shows that the new peer-to-peer scheme produces much more precise contact data. The previous system only used proximity as a proxy for social interactions. However, when for example lots of people are seated in a conference room, then many of them are near each other, even though there is no real social interaction going on. In the old movie this is clearly visible. It shows a highly connected network, almost as if everybody is interacting with everybody else at the same time. While perhaps visually pleasing, it is not a truthful representation of reality.
In the new movie on the other hand, there are significantly fewer contact edges. This is because participants now also need to face each other for a contact to be detected. These contacts are therefore a much more reliable proxy of actual social interactions. This seems to be confirmed by the fact that there are now less contacts during the presentations in Sala A than during the breaks, as one would expect, or at least hope for. This particular observation is, by the way, discussed in more detail in the previous post.
High-resolution localization of active RFID devices by means of triangulation is a non-trivial task. However, a more coarse-grained localization, by room for example, is easily feasible.
There were three main ‘rooms’ at the “Facing the Challenge of Infectious Diseases” conference: the conference room, the bar and the cafeteria. The following figure shows how many participants were in which of these three locations over the course of one day of the conference. It clearly shows the attendance in the conference room during the sessions (two in the morning and two in the afternoon) and the shifts to the bar during the coffee breaks and the cafeteria during breakfast and lunch. The social event taking place in the bar after 7.30 pm is also visible.
Correlating this location data with the contact data can offer a more interesting picture than the simple attendance figures for seminars or social events. One approach is to aggregate the contact data over discrete time intervals. For each interval we can then calculate measures such as the average number of contacts of each participant, or their average duration. When plotted over time, these measures provide insights into the temporal evolution of the social dynamics of the group as a whole. The following figure is an example of this. In it we compare the average number of contacts per participant, denoted <k>, measured over 20 seconds time windows, with the number of participants that are present in the conference room. Strikingly, the number of contacts per participant is low when the attendance in the conference room is high. A strong increase of the average number of contacts per participant is observed during each break. This clearly shows how most social interactions occur during the coffee and lunch breaks, while a lower level of interaction takes place during the talks: people talking to their immediate neighbor, typically.
Another more detailed approach is to gather for each interval the average number of distinct contact pairs, contact triangles, and contact cliques with four or more participants. In the following figure we again plot these measures over the course of one day. We see that triangles and cliques of 4 individuals almost exclusively occur during the breaks. A fluctuating number of pairs is observed during the session, corresponding most probably to participants turning towards their neighbors to chat or comment. Peaks are observed at the beginning and end of each session and in fact of each talk, when participants have indeed more activity. The small number of triangles observed during the sessions correspond to small groups of participants remaining in the coffee break area for discussions even after the beginning of the session.
That social interactions take place during breaks is certainly not a surprise nor a novelty: these results are clearly expected. Our aim here is to emphasize how our experimental setup is able to characterize face-to-face interaction and not simply spatial proximity. A simpler setup based on physical proximity alone would show a large number of cliques (or even a unique large clique) during the sessions, in which participants are indeed physically close. Here, in contrast, we are able to detect meaningful social contacts, and also discriminate between pair interactions or discussions in small groups of 3, 4 or 5 persons.
We just completed a first experiment with our new contact-detection firmware for the OpenBeacon platform. The experiment was hosted at a conference on “Facing the Challenge of Infectious Diseases” and involved about 50 attendees over four days. The new firmware proved to be as much reliable in a real-world setting as it appeared to be in our preliminary experiments. In the next posts, we will report on different aspects of this new experiment.
As a first example of hidden patterns in the dynamics of social contacts, we display below the probability of observing a face-to-face contact of a given duration. The probability P(Dt) of observing a contact of duration Dt is shown as a function of the contact duration Dt. The probability distribution was computed using a few hours of data. The interval of time we analyzed was divided into slices of 20 seconds, and for each of these slices the contact graph of the attendees was computed and used to assess when a new contact was established, continued, or broken. As a consequence, the contact durations we measure are multiples of the interval used for temporal coarse-graining (i.e., contacts last 20 seconds, 40 s, 60 s, …)
Remarkably, this simple analysis exposes a clear pattern of social contact: the duration of face-to-face contacts is power-law distributed (straight line on a log-log plot) with an exponent close to -2 (black line). This behavior holds over different periods of time, and is robust across different groups of individuals.
Qualitatively, the figure above shows something obvious: there are comparatively few long-lasting contacts and a multitude of brief contacts. It is remarkable, however, that such a clear-cut pattern emerges when observing a few tens of persons over a few hours. Moreover, the specific value of the scaling exponent (-2) shows that the duration of social contact is scale-free, i.e., there is no “typical” duration for contacts. While one can always compute an average duration of contacts over a finite sample of data, the scaling properties are such that the computed average will increase without limit on increasing the length of the experiment.
We close by noticing that we are not the first to observe this regularity for the duration of social contacts (see for example the work by Scherrer et al. on “Description and simulation of dynamic mobility networks”). Our measurements, however, achieve higher spatial and temporal accuracy than previous studies, and reliably select face-to-face interactions at close range, which are a very good proxy for social interaction.
Detecting contacts between persons, in a reliable and accurate way, is a crucial requirement to achieve the scientific goals of SocioPatterns. In a variety of contexts, spatial proximity is a good proxy for social interaction. Spatial proximity of persons wearing an active RFID tag can be inferred by tracking the location of RFID tags, and by using the position information to decide whether two tags are nearby. Locating OpenBeacon tags in space, however, requires several receiving station and is subject to uncontrollable errors that limit both the spatial and temporal accuracy of contact detection. Because of this, we decided to move from contact inference to direct contact detection.
We rewrote the firmware of the OpenBeacon tags specifically targeting contact detection. We are now able to detect contacts between persons with a very good spatial (~ 1 m) and temporal (~ 10 s) resolution. We achieve this by operating the RFID devices in a bi-directional fashion, over multiple radio channels. Tags no longer act as simple beacons, emitting signals for the receiving infrastructure. They exchange messages in a peer-to-peer fashion, to sense their neighborhood and assess contact with other tags. The contact events detected by the RFID network are then relayed to the monitoring infrastructure. On suitably tuning the system parameters, we can easily discriminate who is talking with whom, in a small crowded room, with just one receiving station.
As an example, the figure below displays the results of a simple table-top contact detection experiment. We arranged 5 tags in different configurations, over three desks in a small room (5×3 m). Only one receiving station was used to collect the packets sent by the RFID tags. For each spatial arrangement of tags (described below each panel), the detected contact network is shown.
We are currently performing experiments with small groups of people (20-50) at the ISI Foundation and at the ENS in Lyon, to tune the system parameters and evaluate the performance of this new contact detection scheme. We will soon move to large-scale experiments.
We would like to point out that the open nature of the OpenBeacon project was crucial in allowing us to reprogram the tags. We also acknowledge help from Milosch Meriac.