Over the years, the World Wide Web has evolved beyond being a platform for seeking information, and has become a ubiquitous medium supporting various forms of communication, collaboration, and peer to peer interactions, as well as the creation of user-generated content. In Web 2.0, most of the online information is produced by the regular end users around the globe. Wikipedia provides a compelling and well-known example, in which content is being created by a massive number of people on the Internet. YouTube is another example of a collaborative project, where many users share their videos on the Internet; Twitter has become an important channel of mass communication. In these examples, large numbers of users making small contributions led to a completely new type of application, enabled by the pervasive availability of the World Wide Web. End-user participation has significantly transformed the web, and paves the way towards crowdsourcing; where users are involved in producing small amounts of information and fulfilling tasks.
Crowdsourcing is a new paradigm for utilizing the power of “crowds” to facilitate large scale tasks, which are too costly, time consuming or complex to perform with traditional methods (e.g., automated reasoning). The concept describes a distributed problem-solving and product model, in which small tasks are outsourced to a group of people in the form of open call for solutions. Crowdsourcing tries to attract interested, capable and motivated crowds in return for incentives, which are often mainly small amounts of money. It combines the effort of the crowd workers, where each of them adds a small portion that combines into a greater result. Crowdsourcing has an enormous potential that can be truly unleashed when extended to sensor-rich mobile devices such as smartphones.
The past few years have witnessed the proliferation of smartphones standardly, equipped with Internet connectivity, location awareness and various utilities such as cameras, NFC readers and Bluetooth. People carry their phones with them the entire day, providing the opportunity to contribute at any time. Moreover, new form of contributions become possible, where contributors utilize their mobile hardware to supply sensed data such as light and temperature readings, and pictures of places or things. Mobile crowdsourcing offers even greater potential when automatically considering the mobile user’s context.
In general, context-aware applications take into account the user’s context (e.g., personal preferences, characteristics) and environment (e.g., nearby places and things) to enhance functionality and improve usability. In mobile settings, huge amounts of context become continuously available, increasing the opportunities for improving the user experience. In the case of crowdsourcing, context can be exploited to automatically push relevant tasks to suitable and interested users, based on their profile and surroundings. In doing so, both crowdourcer’s and contributor’s work is facilitated, making it easier to crowdsource tasks and to fulfil them.
In this dissertation, we present a framework for mobile, context-aware aware crowdsourcing. Compared to the state of the art, our framework is fully context-aware, taking into account the
user’s entire context and allowing a crowdsourcer to define context-sensitive tasks. In particular, it allows a crowdsourcer to create context-sensitive tasks or queries, which are then distributed to participants based on their location and profile. When defining a context-sensitive task, the crowdsourcer can choose the right type of workers, based on their age, location and level of education, habits, preferences or other attributes. This way, workers are provided with the right tasks at the right time, leading to a fully context-aware mobile experience. The framework consists of two mobile Android applications, one for each stakeholder (crowdsourcers and workers), as well as a server-side component for disseminating tasks. Furthermore, it is built on top of the SCOUT framework, a mobile context-aware framework that supplies a wide range of context information to mobile apps.