  Wearable devices that integrate multiple sensors, processors, and
communication technologies have the potential to transform mobile health for
remote monitoring of health parameters. However, the small form factor of the
wearable devices limits the battery size and operating lifetime. As a result,
the devices require frequent recharging, which has limited their widespread
adoption. Energy harvesting has emerged as an effective method towards
sustainable operation of wearable devices. Unfortunately, energy harvesting
alone is not sufficient to fulfill the energy requirements of wearable devices.
This paper studies the novel problem of adaptive energy management towards the
goal of self-sustainable wearables by using harvested energy to supplement the
battery energy and to reduce manual recharging by users. To solve this problem,
we propose a principled algorithm referred as AdaEM. There are two key ideas
behind AdaEM. First, it uses machine learning (ML) methods to learn predictive
models of user activity and energy usage patterns. These models allow us to
estimate the potential of energy harvesting in a day as a function of the user
activities. Second, it reasons about the uncertainty in predictions and
estimations from the ML models to optimize the energy management decisions
using a dynamic robust optimization (DyRO) formulation. We propose a
light-weight solution for DyRO to meet the practical needs of deployment. We
validate the AdaEM approach on a wearable device prototype consisting of solar
and motion energy harvesting using real-world data of user activities.
Experiments show that AdaEM achieves solutions that are within 5% of the
optimal with less than 0.005% execution time and energy overhead.
