McSense ParticipAct — Architecture
In its simplest formulation, crowdsensing is a two-step process: assign sensing tasks to users and wait for them to complete the assignments. A more refined approach, taken by McSense – our mobile crowdsensing platform, is to exploit information about potential workers and their mobile execution context (processing power of their phones, battery level, people geographical location, etc.) to better and more effectively tailor the task assignment process. In particular, McSense puts task description, task assignment, and mobile sensing in a closed loop that allows a more efficient and effective usage of all involved socio-technical resources.
The McSense Geo-social sensing platform
The previous figure shows the McSense data collection lifecycle that consists of three main functions: mobile sensing, user/region profiling, and task assignment. The Smart City Management system strictly interacts with McSense to provide a full-fledged framework for data sensing including functions to create and describe new sensing tasks and to analyze sensed data. By focusing first on the McSense subsystem, mobile sensing is a comprehensive term used to describe all kinds of sensing activities carried out by users via their mobile devices, such as recording noise pollution and taking pictures. Data processing analyzes the output of mobile sensing to reap the relevant data for the active sensing task. User profiling processes the collected data and aims to profile user participaction by drawing accurate estimations about their potential involvement in future mobile sensing tasks; moreover, to avoid long processing operations and to improve user experience, McSense includes region profiling to cache already evaluated user profiles, stored by geo-localized regions, thus exploiting also the physical locality principle (higher probabilities of similar profiles in the same region). Task assignment includes all tools and support components to ease and assist the design of new sensing tasks, first of all automatic task assignment. As regards Smart City Management subsystem, it includes a Web-based user interface that offers two main functions: data processing & visualization provides active mapping features and exploits over-imposed informative visualization layers to show statistics about completed sensing tasks and collected data; task design console, instead, enables the creation and publication of new crowdsensing tasks.
The McSense console
The McSense console offers two main functions: task description and task assignment. The task description gives immediate feedback to the operators by estimating expected performance for a geo-localized sensing task. In particular, by using statistics/profiles stored in the data backend and task-related data (location, area, and duration), the task description evaluates the time required and the number of people that should be involved needed to complete the task with a desired probability. The task assignment goal is to define the optimal set of people to assign the sensing task to and achieve the targeted objectives and success level. For example, assigning a task to a user usually spending much time in an area increases its probability to be successful, whereas assigning it to a user that has been there recently tend to decrease the time needed for task completion.
The McSense mobile application
The McSense mobile application provides the actual sensing capabilities. It is a standard Android application that runs on smartphones of people willing to participate in the crowdsensing program: users can register to use it and the software will automatically start sending profiling data to the McSense console, that will use it to choose the users that shall receive a task assignment.
When a new task is created via the McSense console, the following steps happen:
- the task details are pushed to all users selected by the console;
- users can read the task details and accept or refuse to carry it out;
- if a user accept to execute a task, then depending on the task type two things can happen:
- if the task requires human interaction (e.g., taking a picture), then the mobile application provides appropriate tools to let the user actively complete the sensing task;
- if the task does not require human interaction (e.g., collecting accelerometer data), then the mobile app automatically starts the sensing and locally stores sensed data;
- when the sensing task is completed the collected data is automatically sent to the McSense ParticipAct data back-end.
McSense task statistics
We tested McSense by assigning sensing task to 44 workers from NJIT for two months, asking them to execute long-term tasks that run automatically in the background and short-term tasks that require active participation (i.e., taking a picture of a given pubic place). Each task was associated to a monetary reward and could be freely either accepted or refused. The tasks were:
- App usage: monitoring of application usage statistics;
- Bluetooth: periodic automatic bluetooth inquiry scan
- Misc sensing: automatic background logging of WiFi scans, accelerometer data, network traffic statistics.
- Photo: request to take a picture of a public place on NJIT campus.
Here are the details of task assignment and completion rate:
For further details, please refer to the documentation section.