A Mobile Context-aware Crowdsourcing Framework
(Note: this topic has already been taken)
Crowdsourcing is described as "a type of participative online activity in which a crowdsourcer proposes to solve a a problem or perform a task/activity, which is then solved/performed by a group of individuals who bring their knowledge and experience together" (Wikipedia). Crowdsourcing benefits from the collective knowledge and labor force of a heterogeneous group, and has the potential to solve problems that any single individual cannot solve. Crowdsourcing is employed to perform a variety of tasks, e.g., computationally intensive tasks (think of the SETI project), evaluations (restaurants, books, websites), expert tasks (translations, mathematical problems), voting (televoting, facebook's "like" button), gather funds (crowdfunding), etc. For instance, Amazon's Mechanical Turk allows a crowdsourcer to outsource so-called Human Intelligence Tasks (i.e., tasks more fit for a human than a computer; such as article categorization, translations, etc) to a large, flexible workforce of (human) Mechanical Turk workers.
The topic of this proposal is to develop a framework for context- and environment-aware crowdsourcing. The framework should allow a crowdsourcer to write out a context-sensitive, personalized task on one hand, and allow participants to participate in a task on the other hand. Examples of such context-sensitive personalized crowdsourcing tasks are:
- Location-specific tasks: for instance, gather sensory data (e.g., sound, temperature) of a geographic location, in order to create sound / temperature maps; collect location and visit information to visualize crowds and popular locations; collect photos and tags for animal spotting; etc.
- Personalized tasks: for instance, collect votes on vegetarian restaurants (whereby only vegetarian users are allowed to vote) ; nice pubs selling Belgian beers (whereby only users in a certain age group can vote) ; etc.
The framework should be build on top of the SCOUT framework, an existing context-aware development framework for mobile applications. The SCOUT framework runs on a mobile Android device, and provides applications with automatic sensing of context and environment information (e.g., nearby buildings, monuments, places, persons) and services (e.g., sensory data, actuators). This information is gathered in the so-called Environment Model, which is represented as an RDF graph and can be queried using the SPARQL query language. As such, SCOUT provides all the necessary context- en environment information to make personalized, context-aware crowdsourcing possible. More information on SCOUT can be found here.
More concretely, the crowdsourcing framework will consist of:
- A client-side mobile application, build on top of SCOUT, that allows a crowdsourcer to specify a task to be performed (e.g., visualize local temperatures in Brussels), and the required information from SCOUT (e.g., temperature readings) in a user-friendly way.
- A server-side application, built using any server-side technology, to collect crowdsourcing information gathered and sent by participants (e.g., temperature measurements & their location).
- A client-side mobile application, build on top of SCOUT, which is used by the participants and detects the required information (e.g., temperature & location) and sends it to the server-side application.
- A server-side technology (for example: servlets, php, etc)
- A DBMS technology (for example: mysql, postgresql, etc)
You will learn how to develop user interfaces for Android
You will learn how to use an existing context-aware framework
You will learn and apply basic knowledge on the Semantic Web (for example: RDF(S), OWL, SPARQL)