The core characteristic of our synthetic analytics system is the ability to bring together synthetic movement traces with real-world datasets. In our use case, the output of the mobility simulation consists of a list of display sightings per agent, enabling us to map a timestamp to each of the display sightings and combining these with Pheme’s log of the content shown. More specifically, each display sighting consists of the following attributes: 1. the unique identifier of the agent, 2. display identifier and location, and 3. the timestamp of the display sighting. In order to retrieve the content shown at any particular time for any display on campus, we access Pheme via an API with the location identifier and timestamp and retrieve a set of metadata for the piece of content that was displayed at the given location and time. The metadata includes the name of the content, a unique content hash and, for Web-based content, the full URL. We expand the set of display sightings with the retrieved metadata from Pheme providing us with a foundation to compute new insights into the perception of content across the entire display network. In particular, we are able to consider and track individual synthetic viewers across multiple locations and displays without violating the viewers’ privacy and enabling us to shift towards aviewer-centricanalytics approach in the digital signage context.
3.5 Summary 81
3.4.3.5 Implementation
The synthetic analytics tool has been implemented in its entirety in Python (total 1,796 lines of code). Whilst the spatial layout of the University campus has been colour-coded with standard image manipulation tools, the resulting encoded map was parsed using Pillow5and the extracted features were inserted into an undirected graph-based data structure provided by NetworkX. The encoded campus map (2119 by 5122 pixels) resulted in 11,225 nodes (6,827 nodes representing buildings, 4,398 nodes representing paths) and 29,539 edges. Each node corresponds to a square on the map of 5 sqm. Models were implemented in the form of Python classes, whilst agents were modelled as instantiations and objects of these classes. Each mobility model class consists of a function that allows agents to return the movement decision in each iteration of the simulation. To retrieve display content logs from Pheme, we developed a dedicated export component that provides us with an API and the ability to query the content shown for a specific display location and timestamp. In order to improve the performance of the implementation by avoiding duplicate API calls, we implemented a simple caching mechanism in which we store returned values from Pheme regarding historical content shown in a local MySQL database—due to the nature of the data we do not request such information twice.
3.5
Summary
In this chapter, we described the importance of data collection for digital signage analytics. Concretely, we made the following four contributions.
1. We highlighted the potential for sharing analytics data sets and provided a framework for describing potential combinations of data.
2. We highlighted the importance of viewer-centric analytics in the context of open pervasive display networks.
3. We illustrated how digital signage analytics data can be collected and processed by techniques brought together from the Web analytics domain.
4. We designed three distinct approaches to collecting viewer mobility data: client-based tracking, infrastructure-based tracking and the use of synthetic mobility traces as a new approach to addressing privacy-related issues.
In the following chapter, we will provide examples of novel display analytics reports that utilise the datasets described as part of this chapter.
Chapter 4
Reporting
4.1
Overview
In this chapter, we explore novel analytics reports for the digital signage domain using the previously described opportunities for data collection as a foundation. Concretely, we follow the overall approach shown in Figure4.1and describe the opportunities particularly but not limited to viewer-centric analytics that can be produced by combining display-oriented data with viewer mobility patterns. We provide a set of example reports that have been created from the use of synthetic analytics (i.e. the use of synthetic mobility traces), and subsequently describe the extensions required to support analytics reports relating to display personalisation. We further describe the commonalities and applicability of digital signage analytics to Web analytics terminology, and demonstrate the potential of repurposing existing analytics services for other domains using Pheme.
We note that in the context of this chapter we focus purely on developing and describ- ing novel analytics reports by applying existing information visualisation techniques, and describing the benefits and opportunities from different types of analytics reports for each of the stakeholder groups identified in the earlier chapters. We are not seeking to develop novel data visualisation techniques and algorithms for the extraction or detection of specific usage
Viewer Mobility Data Display-Oriented
Sign Analytics
Viewer-centric analytics Combining mobility traces with traditional analytics datasets of content shown on screens provides the ability to generate traces of viewer sightings of content across displays and providing viewer-centric analytics.
Data Collection Reporting
Figure 4.1:Using display-oriented analytics and viewer mobility data as a foundation, we now focus on novel viewer-centric analytics reports.