Research

Our research is in the general intersection of software engineering with dynamic, resource constrained networks. We focus on programming abstractions, middleware, models, and tools that ease the programming burden in these complex, dynamic, and unpredictable environments. Here, we provide details of our current and past projects; for more information, please contact us directly.

Current Projects

research thumbnail

Project SMART

Project SMART directly and simultaneously seeks to address declining rates of childhood physical activity and to support contextualized computer science and computation thinking (CS/CT) education within the elementary school classroom. The basis of Project SMART is a cooperative educational game that has been adapted to use CS/CT to provide not only learning opportunities but also a focus on the health and educational benefits of physical activity, leveraging organized physical activity opportunities during the school day.

The project relies on community based participatory research to create a researcher-practitioner partnership that includes university researchers in health education and computer science, elementary school administrators and teachers, and K-12 computer science education experts. The combination of physical activity and CS/CT learning in the elementary school classroom is an important novel contribution of this work. There currently exists little emphasis on improving computational thinking in elementary curricula. Computer science pathways that do exist often fail to engage student populations that are traditionally underserved.

Project moveSMART uses a web-based platform to integrate opportunities for physical education with computer science and computational thinking (CS/CT) learning activities. Within the platform, a class cooperatively earns credit for performing physical activity like participating in physical education class or playing outside at recess. This credit takes the form of distances traveled on a virtual path (e.g., along Route 66 across the United States). As the class makes progress, they unlock waypoints that contain CS/CT learning modules as well as additional learning activities directly tied to the required school curriculum. Within the platform, we have developed a series of tutorials designed to introduce elementary students to CS/CT by making connections to physical activity and grade-level curricula in other subjects. Through these tutorials, students create a physical activity monitor using the BBC micro:bit.

Through our work in Project SMART, which also includes professional development sessions for elementary school teachers, we have surfaced multiple challenges that include pressures for all instruction to adhere to required standards, a lack of contextualization of CS/CT content, and unreliable at-home Internet that makes it difficult to reinforce lessons outside of school. By tying CS/CT to students’ own physical activity, we address the dual problems of declining physical activity in children and a lack of contextualization of CS/CT content. To further address identified barriers, we co-designed game elements with classroom teachers to enable cross-curricular connections, including connecting CS/CT to language arts, cultural studies, music, etc.

Participants: Dr. Christine Julien (MPC director), Dr. Darla Castelli (collaborator at The University of Texas at Austin), Dr. Jamie Payton (collaborator at Temple University)

Previous Projects

research thumbnail

Balance

Balance is an autonomous thermostat control framework that balances a range of user comfort levels (i.e. temperature settings for heating and cooling) with a user-defined monthly budget for heating and air conditioning costs.

Our work is motivated by the large percentage of residential energy usage that is consumed by heating and cooling (HVAC) needs. Many commercial and academic approaches have been developed for autonomous thermostat control to reduce unnecessary HVAC usage. Such systems typically reduce HVAC usage by adjusting the thermostat setting while the house is unoccupied, so as not to disrupt occupants' thermal comfort. We instead consider the balance of the financial burden of HVAC costs with occupants' comfort desires. Balance is an agent-based approach to autonomous thermostat control that is based on the idea that many people are comfortable in a range of temperatures (for example, 68 to 75 degrees Fahrenheit in the summer). Those wishing to meet a certain energy bill each month may wish to adjust the thermostat in order to save money, but mentally converting from the thermostat setting to dollars on an energy bill is challenging, due to the variable impact of weather and household activities on energy used.

Our Balance agent therefore aims to meet the user's monetary HVAC budget by adjusting the thermostat setting within the range of temperatures the user finds comfortable. The agent has two constraints - to meet the user's budget and to stay within the user's comfort range; and one optimization - maximize the user's comfort within that range. To-date, we have implemented a simple agent that accomplishes this task in realistic simulated environments, using real-time HVAC consumption data and indoor and outdoor temperature data to determine thermostat settings at regular intervals throughout each day. Ongoing work on Balance includes: 1) improving the Balance agent's control strategy through reinforcement learning techniques; 2) deploying the Balance agent in the real world, using an Ecobee Smart Thermostat; and 3) investigating the use of feedback, for example if a user provides a budget that is simply not feasible with the user's comfort levels.

Participants: Kate McArdle (Ph.D. student), Dr. Christine Julien (MPC director)

research thumbnail

Grapevine

Grapevine is a framework that enables applications to share context information in a localized region of a pervasive computing network, use that information to dynamically form groups defined by their shared situations, and assess the aggregate context of that group.

Moving beyond more typical egocentric world views, Grapevine allows an application to distribute its own context information while simultaneously leveraging the context information it receives to modify its behavior and aggregate task-relevant group context information that can also distributed within the network. We use novel data structures such as probabilistic Bloomier filters to represent context information efficiently and minimize the network resources required to support Grapevine's use.

Our long term vision is a framework that allows a pervasive computing application developer to delegate all context related functionality to Grapevine and focus solely on the task at hand. Instead of spending time determining what context information is needed, who it should be sent to, and managing the lifecycle of the information it has received, a Grapevine-enabled application can merely indicate the context information it has to offer and the context information it is interested in receiving. Achieving this vision leaves many interesting research challenges such as communicating and responding to interest gradients within the network, determining the frequency with which information should be sent, assessing a quality metric for the context information on hand, and finding ways to provide all this functionality without placing undue burden on the limited resources available to pervasive computing platforms.

This project is funded, in part, by the National Science Foundation under grants CNS-0844850 and CNS-1218232. Any opinions, findings and conclusions or recomendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation (NSF).

Participants: Samuel (Sungmin) Cho (Assistant professor), Dr. Christine Julien (MPC director)