一句话:提出 Aeneas 框架,用强化学习在不确定物理环境中自适应选择程序配置,满足移动 GPS 应用的能耗预算。
移动应用频繁与噪声大、不断变化的物理环境交互,这种不确定性给能耗优化带来挑战。本文提出 Aeneas——面向 Android 的能耗优化框架。它提供极简编程模型:将可接受的行为设置抽象为旋钮(knob),将应用相关优化目标(如满足能耗预算)具体化为奖励(reward),二者均可直接编程。框架核心是一个随机优化器,借助强化学习自适应地选择奖励最优的旋钮设置。作者在基于 Google LocationService API 的移动 GPS 应用上评估:实地案例研究覆盖约 6500 英里、150 小时驾驶及 20 小时骑行与徒步。结果表明 Aeneas 能在 GPS 读数剧烈波动的不确定环境中有效且韧性地满足程序员指定的能耗预算;与 profile-guided optimization 等非随机方法相比,多次运行结果显著更稳定。
Mobile applications regularly interact with their noisy and ever-changing physical environment. The fundamentally uncertain nature of such interactions leads to significant challenges in energy optimization, a crucial goal of software engineering on mobile devices. This paper presents Aeneas, a novel energy optimization framework for Android in the presence of uncertainty. Aeneas provides a minimalistic programming model where acceptable program behavioral settings are abstracted as knobs and application-specific optimization goals — such as meeting an energy budget — are crystallized as rewards, both of which are directly programmable. At its heart, Aeneas is endowed with a stochastic optimizer to adaptively and intelligently select the reward-optimal knob setting through a form of reinforcement learning. We evaluate Aeneas on mobile GPS applications built over Google LocationService API. Through an in-field case study that covers approximately 6500 miles and 150 hours of driving as well as 20 hours of biking and hiking, we find that Aeneas can effectively and resiliently meet programmer-specified energy budgets in uncertain physical environments where individual GPS readings undergo significant fluctuation. Compared with non-stochastic approaches such as profile-guided optimization, Aeneas produces significantly more stable results across runs.