Posts tagged ‘visualization’

------------------------------------

SocioPatterns at the 25C3 conference

Monday, December 29th, 2008

Until December 30th we will be deploying 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 are making the live contact network available on the web, at the following URL: https://ssl.openamd.org/openamd/viz.php .

We thank the following persons for their work and support: Milosch Meriac, Brita Meriac, and aestetix, Janette Lehmann, Aurora Mazzone, Eric, Marco Perosa, Tomasz Rybak. We acknowledge the contribution of the OpenBeacon project and the OpenAMD project. We also thank the organizers of 25C3 for hosting our work at such a stimulating event!

Contact Patterns part 2

Friday, December 5th, 2008

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.

[movie]
Alternative versions: YouTube, Vimeo or QuickTime/MP4.

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 setup during the workshop in Oct 2008

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.

Exposing contact patterns

Friday, June 13th, 2008

SocioPatterns.org aims to shed light on hidden patterns in social dynamics. A case in point is the study of contact patterns, which deals with such patterns in contacts among people. To date, little is known about these patterns. Although models can help in learning more, measuring real-world dynamics is indispensable for obtaining a complete picture. However, doing so manually is both laborious and intrusive, and tends to produce unreliable data - yet until recently it was the sole option we had. Fortunately, emerging technologies such as active RFID devices offer previously unfeasible means for collecting this much needed data. While collecting data is the first step, making sense of the resulting large amounts of data is the next. This is where insightful visualizations come into play, as these can expose otherwise invisible features and regularities.

The following movie gives an impression of a first contact patterns experiment and visualization we have been working on. It is followed by a detailed description.

[movie]
Alternative versions: YouTube, Vimeo or QuickTime.

Experiment set-up

We have been working on an experimental set-up in which we aim to measure the contact patterns of a group of people. To do so we asked volunteers to wear small tags with integrated active RFID technology, henceforth called the beacons. These beacons continuously broadcast small data packets. These packets are received by a number of stations and relayed through a local network to a server for further processing. The stations are installed in fixed locations in the environment. The beacons and stations we used were created by and obtained from OpenBeacon.org.

Schematic overview of the interactions between the beacons, the stations, and the server.

Schematic overview of the interactions between the beacons, the stations, and the server.

A first medium-sized test deployment of this experimental set-up took place recently (26-29 May, 2008) during the workshop “Sociophysics: status and perspectives” in Villa Gualino, in Turin, Italy. The workshop presentations took place in Sala A, while the participants lingered in the Bar during breaks, and had lunch in the Cafeteria. All three areas were covered by at least four stations each, as shown on the map below.

Map of the placement of the stations in Villa Gualino.

Map of the placement of the stations in Villa Gualino.

The packets from up to 50 beacons were collected continuously for about 75 hours at an overall rate of up to 100 distinct packets per second. In total about 25 million packets were collected, corresponding to about 200 Mb of compressed raw data.

On-line data analysis and visualization server

In addition to recording data for further analysis - whose results will be posted here in the future - we also developed a real-time visualization system to display some aspects of the observed dynamics. Our visualization involves a server component and a client component. The server component processes the beacon packets relayed by the stations. These packets are typically received by multiple stations at varying strengths (measured in terms of packet drop rate.) These reception patterns can be regarded as fingerprints. We can use fingerprint similarity as a proxy for the physical proximity of two beacons, i.e. beacons with similar fingerprints are bound to be close to each other. A related technique is used in the geo-location feature of the Apple iPod Touch and iPhone, or in services like PlaceEngine. In these cases, locations are approximately determined by comparing fingerprints made up by the nearby base stations’ signals against a database of fingerprints for known locations.

Two beacons at different position in the same room, yielding two different fingerprints based on the strengths at which the beacons' packet broadcasts are received by the stations.

Two beacons at different positions in the same room, yielding two different fingerprints based on the strengths at which the beacons’ packets are received by the stations.

In addition to estimating the distances between beacons using the above technique, the server also estimates the distances between beacons and stations. It does so based on the rate at which the stations receive the beacons’ packets. All calculations are performed in real-time over a sliding window of about two minutes. The post-processed data are dispatched to the visualization client at regular intervals, as an XML stream. The on-line data collection and analysis system is entirely coded in Python on top of the Twisted framework and the Numpy library.

Visualization client

The main visualization represents the beacons, the stations, and their relations of proximity as measured by the system. The beacons are shown as simple discs, which are optionally labeled. Two beacons are connected by a link if the system detected that they are close to each other. The length, thickness and transparency of a link are a function of the strength of the link: short, thick and more opaque links represent strong proximity; thin, transparent links indicate weak proximity. The size of the discs representing the beacons depends on the number and proximity of other beacons, and specifically is a function of the sum of link weights to other beacons. The stations are shown as labeled shapes and laid out in a circle that spans the main view. The size of these shapes varies according to the number of beacons that are close to them.

Stations and beacons in the main visualization view.

Stations and beacons in the main visualization view.

While the stations are laid out at fixed positions, the beacons are not. The network of their proximity relations is laid out by using a force-based model. Beacons repel each other, and the link between two beacons acts as a spring pulling them close to each other. The stiffness of the spring increases with the proximity of beacons. Beacons are also pulled towards the stations that see them more often, so that groups of nearby beacons are laid out in the vicinity of the stations that is closest to them.

The result is a first attempt to obtain a rather abstract yet comprehensive visualization of the proximity dynamics. The movie at the top of this post contains a time-lapse playback of the most interesting periods of one day of the workshop.

Visualization client interface

The visualization client is an Adobe Air application developed in Flex. The visualization and physics system use (a mildly modified version of) the flare visualization toolkit.

The application interface involves a visualization window, a control panel and a number of auxiliary windows. The visualization itself can be shown full-screen during presentations. The control panel provides various interfaces to manage the data-sources, the visualization and the physics engine.

The data source is either the server component for real-time visualizations, a simulation for off-line testing, or data files for time-lapse playback. When using a simulation, an additional window is provided in which the simulated stations and beacons are shown. When in time-lapse mode, one can activate the recorder, which saves a bitmap file for each rendered frame. These saved frames were for example used to create the movie at the top of this post.

The complete interface of the visualization client, including the simulation window.

The complete interface of the visualization client, including the simulation window.

Credits

visualisation: Wouter Van den Broeck

data analysis: Ciro Cattuto

music: Maps and Diagrams - Siaptik - Recorded by Tim Martin

experiment set-up: Alain Barrat, Ciro Cattuto, Vittoria Colizza, Daniela Paolotti, Jean-François Pinton, Wouter Van den Broeck, and Alessandro Vespignani

thanks to: Santo Fortunato, ISI administration, Ezio Borzani, Milosch Meriac (openbeacon.org), and the workshop participants

sponsoring institutions: Institute For Scientific Interchange Foundation (Torino, Italy), Laboratoire de Physique de l’École Normale Supérieure de Lyon (Lyon, France)