Download
collaborative data gathering using context aware mobile devices n.
Skip this Video
Loading SlideShow in 5 Seconds..
Collaborative Data Gathering Using Context-aware Mobile Devices PowerPoint Presentation
Download Presentation
Collaborative Data Gathering Using Context-aware Mobile Devices

Collaborative Data Gathering Using Context-aware Mobile Devices

88 Views Download Presentation
Download Presentation

Collaborative Data Gathering Using Context-aware Mobile Devices

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Collaborative Data Gathering Using Context-aware Mobile Devices Tejas Lagvankar Master’s Thesis Defense Advisor : Tim Finin 20th July 2010

  2. Agenda • Motivation • Related Work • Context • Framework Details • Results • Future Work • Conclusion Motivation Related Work  Context  Framework Details  Results  Future Work Conclusion

  3. 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

  4. 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

  5. SAM Motivation Related Work  Context  Framework Details  Results  Future Work Conclusion

  6. Motivation Related Work  Context  Framework Details  Results  Future Work Conclusion

  7. Motivation Related Work  Context  Framework Details  Results  Future Work Conclusion

  8. 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

  9. 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

  10. 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

  11. 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

  12. 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 ?

  13. 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

  14. 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

  15. 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

  16. 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

  17. 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.

  18. 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) MotivationRelated Work Context  Framework Details  Results  Future Work Conclusion

  19. Related Work • Location and mobility in a Sensor Network of Mobile Phones [Kansal and Zhao, 2007] MotivationRelated Work Context  Framework Details  Results  Future Work Conclusion

  20. 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. MotivationRelated Work Context  Framework Details  Results  Future Work Conclusion

  21. Related Work • Micro - blog [Gaonkar, S.; Li, J.; Choudhury, R. R.; Cox, L.; and Schmidt, A. 2008] MotivationRelated Work Context  Framework Details  Results  Future Work Conclusion

  22. 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. MotivationRelated Work Context  Framework Details  Results  Future Work Conclusion

  23. 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. MotivationRelated Work Context  Framework Details  Results  Future Work Conclusion

  24. 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. MotivationRelatedWorkContext  Framework Details  Results  Future Work Conclusion

  25. 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. MotivationRelatedWorkContext  Framework Details  Results  Future Work Conclusion

  26. Framework Goals • Select appropriate users depending on their context • Derive conceptual place information about the user MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  27. Framework : High Level Components • Device • Mobile Agent • Server • Data Collector • Request Collector • Notification Engine • Sensor / Context Database • Reasoning Engine MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  28. 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. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  29. 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. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  30. The Mobile Agent MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  31. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion Contacts And Calendar Light Temperature GPS, Network Location Emails Social N/W Information Internet Motion, Magnetic Field Sensors

  32. Sensors • Battery • User Present • Motion • Headset plugged • Power chord Status • Bluetooth • Light • Temperature • Proximity • WiFi Status • WiFi IDs • GPS Coordinates MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  33. 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 MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  34. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  35. 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 MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  36. Request Collector • Accepts requests as HTTP requests and puts them into the queue. • Parameters required: • GPS location • Request String MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  37. Submitting a request MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  38. 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. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  39. The Reasoning Engine • The framework provides CWM reasoner. • However, any reasoner which can deal with N3 RDF can be used by the application. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  40. 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. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  41. 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… MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  42. 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. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  43. 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". MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  44. 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…) MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  45. 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. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  46. 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. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  47. Context Discovery MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  48. 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"}. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  49. 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. MotivationRelatedWorkContextFramework Details  Results  Future Work Conclusion

  50. 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. MotivationRelatedWorkContextFrameworkDetailsResults Future Work Conclusion