610 likes | 717 Views
Collaborative Data Gathering Using Context-aware Mobile Devices. Tejas Lagvankar Master’s Thesis Defense Advisor : Tim Finin 20 th July 2010. Agenda. Motivation Related Work Context Framework Details Results Future Work Conclusion.
E N D
Collaborative Data Gathering Using Context-aware Mobile Devices Tejas Lagvankar Master’s Thesis Defense Advisor : Tim Finin 20th July 2010
Agenda • Motivation • Related Work • Context • Framework Details • Results • Future Work • Conclusion Motivation Related Work Context Framework Details Results Future Work Conclusion
Motivation (Previous Work) • SPIRE gathers data from citizen scientists who report observations about biological species. • Spotter is the web-based tool to report observations. • We developed SAM (Spotter App on Mobile) so that observations can be reported on the fly. Motivation Related Work Context Framework Details Results Future Work Conclusion
Semantic Data Generation Ease of Use and Correctness How can we improve Field survey Mechanisms? • - Get more volunteers • Dynamic Requirements Motivation Related Work Context Framework Details Results Future Work Conclusion
SAM Motivation Related Work Context Framework Details Results Future Work Conclusion
Motivation Related Work Context Framework Details Results Future Work Conclusion
Motivation Related Work Context Framework Details Results Future Work Conclusion
Semantic Data Generation Ease of Use and Correctness How can we improve Field survey Mechanisms? • - Get more volunteers • Dynamic Requirements Motivation Related Work Context Framework Details Results Future Work Conclusion
Semantic Data Generation Ease of Use and Correctness How can we improve Field survey Mechanisms? • - Get more volunteers • Dynamic Requirements Motivation Related Work Context Framework Details Results Future Work Conclusion
Getting more volunteers • More volunteers • More data • Diverse data • More opinions • More confidence • Why getting volunteers is a problem? • Volunteers are required to visit the site ‘intentionally’ • Survey is about a specific region Motivation Related Work Context Framework Details Results Future Work Conclusion
Handling dynamic requirements • Information to be gathered as well as area from which information is needed may keep on changing. • Make use of millions of mobile devices, that have spatial coverage. • How to select appropriate users ? i.e. Users who are at the right place, right time and in a right state. Motivation Related Work Context Framework Details Results Future Work Conclusion
The Question Internet What is the condition of the bridge near Hilltop after today’s snow ? Motivation Related Work Context Framework Details Results Future Work Conclusion Where ? NOW ! What ?
More Questions • What is the current parking situation at the Commons parking lot ? • Urgent ! Is there a surgeon nearby ? • Can anyone spot the Red balloons put up by DARPA ? Motivation Related Work Context Framework Details Results Future Work Conclusion
Properties of Queries Motivation Related Work Context Framework Details Results Future Work Conclusion Very Specific Time Bound • Answers may not be already available on the internet • Need to ask actual people • Need the response in a short period of time • Have to reach users on their mobile devices
Use of Social Networking • Ask queries on Facebook, Twitter etc… where many people are online ! • However: • Unnecessary Flooding of queries to uninterested people • Still, possibility of people being in the right situation is very less Motivation Related Work Context Framework Details Results Future Work Conclusion
What do we need • We need a system that • Is mobile based and can reach people at their presence. • Is able to select appropriate people who can answer any such queries Motivation Related Work Context Framework Details Results Future Work Conclusion
Thesis statement Develop a mobile based framework to discover user context and facilitate forwarding of specific data requests to appropriate people based on this derived context and personal preferences.
Related Work • Roy Want and Veronica Falcao and Jon Gibbons: The Active Badge Location System. ACM -Transactions on Information Systems. 10., 91–102 (1992) • Gregory D. Abowd and Christopher G. Atkeson and Jason Hong and Sue Long and Rob Kooperand Mike Pinkerton and Usability Centre: Cyberguide: A Mobile Context-Aware Tour Guide. (1997) • Keith Cheverst and Nigel Davies and Keith Mitchell and Adrian Friday and Christos Efstratiou: Developing a Context-aware Electronic Tourist Guide: Some Issues and Experiences. 17–24, (2000) MotivationRelated Work Context Framework Details Results Future Work Conclusion
Related Work • Location and mobility in a Sensor Network of Mobile Phones [Kansal and Zhao, 2007] MotivationRelated Work Context Framework Details Results Future Work Conclusion
Related Work • A three tier system consisting of physical sensors, virtual sensors and the application tier. • Mobile devices act as physical sensors over which a layer of virtual sensors is overlaid. • Virtual sensors are static which may be points of interest for the applications. • Any devices that come under these virtual sensors are contacted. MotivationRelated Work Context Framework Details Results Future Work Conclusion
Related Work • Micro - blog [Gaonkar, S.; Li, J.; Choudhury, R. R.; Cox, L.; and Schmidt, A. 2008] MotivationRelated Work Context Framework Details Results Future Work Conclusion
Related Work • People can upload pictures and videos of the locations around – called as Micro-blogs. • When a query for a particular region arrives, it is looked for in the micro-blog database. • If not found, it is forwarded to the phones in the location of interest. MotivationRelated Work Context Framework Details Results Future Work Conclusion
Related Work • The participatory applications discussed consider location alone as the deciding factor. • Dealing with mobile phones, the context the user is in determines user participation and willingness. • Our framework reasons about the user context before notifying the user. MotivationRelated Work Context Framework Details Results Future Work Conclusion
Context • Context is a set of environmental parameters relevant to an application. • We define it in terms of mapping the users’ positionto place. • Position is the geo-spatial information captured in terms of lat-lon. • Place is the conceptual information associated with the position depending on user surroundings and activities. MotivationRelatedWorkContext Framework Details Results Future Work Conclusion
Context (examples) • Position : 39.255984,-76.711714 • Direct Mapping : UMBC • Place : In a meeting, at the coffee shop, delivering a talk, in a class • One position can map to multiple places. • One place can map to multiple positions. MotivationRelatedWorkContext Framework Details Results Future Work Conclusion
Framework Goals • Select appropriate users depending on their context • Derive conceptual place information about the user MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Framework : High Level Components • Device • Mobile Agent • Server • Data Collector • Request Collector • Notification Engine • Sensor / Context Database • Reasoning Engine MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Users of the Framework • Applications using the framework will have 2 primary roles: • Mobile User : End user of the system registered to the framework • Administrator : Manager Users, Manage System Rules, decide on data format and ways to collect data. MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
The Mobile Agent • A piece of software that sits on the mobile device. • Senses the environment using the device sensors. • Sends three types messages: • INIT : Initial set up sent on first run • DATA : sends sensor data • ALIVE : check for notification • Developed an agent using Google Android platform. • Any other mobile agent following this pattern can talk to the server. MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
The Mobile Agent MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
MotivationRelatedWorkContextFramework Details Results Future Work Conclusion Contacts And Calendar Light Temperature GPS, Network Location Emails Social N/W Information Internet Motion, Magnetic Field Sensors
Sensors • Battery • User Present • Motion • Headset plugged • Power chord Status • Bluetooth • Light • Temperature • Proximity • WiFi Status • WiFi IDs • GPS Coordinates MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
The Server • Divided into several components: • The Sensor data collector • The Request collector • The Reasoning engine • The Rule subsystem • The Context Database • The Notification Engine MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Data Collector and Notification Engine • Data Collector • Collects data using HTTP, dumps into database • Can accept data from any mobile agents following the data format • Notification Engine • Queues notifications for devices • Dispatches on ALIVE message MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Request Collector • Accepts requests as HTTP requests and puts them into the queue. • Parameters required: • GPS location • Request String MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Submitting a request MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
The Reasoning Engine • Pre-reasoning: • Data extracted as RDF triples in N3 format at pre-defined intervals. • E.g. cs:29 cs:hasTimestamp "2010-06-13 01:54:43.0"; cs:sensedLight "225"; cs:hasBattery "60". • Reasoning: • Forward chaining reasoner works upon the triples. • Applies rules to these triples. • New triples are generated which constitute the context information for the user. MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
The Reasoning Engine • The framework provides CWM reasoner. • However, any reasoner which can deal with N3 RDF can be used by the application. MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
System and User Rules • System Rules: • provide a level of abstraction over the raw sensor data and maps it to human readable terms. • are generic for all the users. • E.g. • if sensed light < 225, phone is in DARK environment. • If timestamp < 12, its MORNING etc.. • The framework provides basic system rules for certain sensors like ambient light, timestamps and proximity. • Administrators can override and add to the system rules. • Provides ways of enforcing policies / group level rules. MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
System and User Rules • User Rules • allow mobile users to define conditions that constitute specific context information • E.g. the user may define conditions under which he can be considered as busy. • The user can set reminders depending on location, time, people around etc… MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
The Reasoning Process • Dr. Mark is advisor of Bob. • Dr. Mark has the following triples: :Mark geo:lat "39.2546"; geo:lon "-76.7120"; cs:hasBluetooth 00:0A:D9:EB:66:C7. • Bob has the following triples: :Bob geo:lat "39.2321"; geo:lon "-76.7012"; cs:hasBluetooth 00:0C:F3:2G:23:56; cs:hasNeighbour 00:0A:D9:EB:66:C7. MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
The Reasoning Process • Bob has the following rules: {?A cs:hasNeighbour ?B. ?C cs:hasBluetooth ?B.} => {?A cs:isNearBy ?C}. {?A cs:hasBluetooth "00:0A:D9:EB:66:C7”} => {?A cs:hasIdentity "Dr. Mark"}. {?A cs:isNearby ?B. ?B cs:hasIdentity "Dr. Mark".} => {?A cs:isBusy "True"}. • Bob has the following triples: :Bob geo:lat "39.2546"; geo:lon "-76.7120"; cs:hasLocation "ABC University"; cs:hasBluetooth 00:0C:F3:2G:23:56; cs:hasNeighbour 00:0A:D9:EB:66:C7; cs:isNearby "Dr. Mark"; cs:isBusy "True". MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Guidelines for application • Implement mobile agent, provide sensor information to the server. • Choose the desired reasoning engine ( we provide results for CWM). • Implement an interface for the request collector. • Set up data repository and data reporting methods. • Define system rules and provide default user rules. • User Management (Login, UIs for rules etc…) MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Guidelines (example for SPIRE) • Android mobile agent • SAM used as reporting tool, SPIRE DB for data collection. • Rules defined for finding is user is busy or not. • Request Collector and Notification Engine used as default. MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Context Discovery • Broader goals is to find conceptual place information such as “in a cafeteria”, or “at a meeting”. • Currently, we ask users to tag certain sensed information. • System maintains list of seen WiFi IDs. • Asks user to tag these with conceptual information. MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Context Discovery MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Context Discovery • Eventually, the system can have multiple tags for same WiFi ID. • The most popular once can be used as suggestions. • Will simplify understanding places and writing rules. • E.g. If a WiFi ID say “Simon” is tagged as “Food Court” and some time interval is tagged as “Lunch Time” the user could say: {?D cs:hasWiFi ?W. ?W cs:hasTag "Food Court". ?D cs:hasTime ?T. ?T cs:hasConcept "Lunch Time".} => {?D cs:notifyFoodLocation "True"}. MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Context Discovery • Similarly, seen bluetooth IDs can be tagged to form groups of people identifying a conceptual place. • E.g. People in the class, people at the gym, people in the train. MotivationRelatedWorkContextFramework Details Results Future Work Conclusion
Evaluation Criteria • The framework was built for developing applications for the SPIRE project and will be using SAM as the data reporting tool. • Evaluation majorly includes a feature comparison, battery usage and reasoning times. MotivationRelatedWorkContextFrameworkDetailsResults Future Work Conclusion