Supporting Collaboration Between Co-Located Devices for Context Monitoring in a Mobile Environment

Khaled Alanezi, University of Colorado at Boulder


In recent years, the field of mobile computing has witnessed an increased focus in developing innovative mobile context-aware applications. These applications run on the mobile device and harness the sensors on board to detect and react to user context changes. A key enabler of these applications is the near ubiquity of smartphones equipped with powerful hardware and wide range of sensors. Smartphones are now capable of sensing their environment and executing sophisticated algorithms to detect events of special interest. This thesis tackles two major issues that hinder wide adoption of mobile context-aware applications. First, the requirement of continuous sensing and context derivation is difficult to accommodate on resource-limited mobile nodes. To mitigate this problem, we utilize group collaborations between co-located mobile devices as a way of sharing the burden of context monitoring tasks. We demonstrated the efficiency of this approach by developing Panorama, a distributed framework that runs on mobile nodes to orchestrate group collaborations. Panorama employs a multi-objective optimizer that takes into account different constraints of collaborators such as computation capability, access cost, energy consumption and data privacy, and efficiently computes a collaboration plan optimized simultaneously for different objectives such as minimizing cost, energy and/or execution time. The second major problem facing context aware applications is the low-accuracy of produced context, which is attributed to the large variations in their operating environments. We identified the smartphone carry position as a major source of this variability and developed a position detection service that detects the carry position with high accuracy. We demonstrated an increase in the accuracy of a context-aware application when integrated with the position detection service. This service can be used to increase the accuracy of group collaborations by eliminating mobile devices with unfavorable position for the context task.