Android Genetic Programming Framework Alban Cotillon, Philip Valencia, and Raja Jurdak Autonomous Systems Laboratory CSIRO ICT Centre, Brisbane Australia alban.cotillon@insalien.org, { philip.valencia, raja.jurdak } @csiro.au Abstract. Personalisation in smart phones requires adaptability to dy- namic context based on application usage and sensor inputs. Current personalisation approaches do not provide sufficient adaptability to dy- namic and unexpected context. This paper introduces the Android Ge- netic Programming Framework (AGP) as a personalisation method for smart phones. AGP considers the specific design challenges of smart phones, such as resource limitation and constrained programming envi- ronments. We demonstrate AGP’s utility through empirical experiments on two applications: a news reader application and an energy efficient localisation application. Results show that AGP successfully adapts ap- plication behaviour to user context. 1 Introduction Smartphones have experienced exponential growth in recent years. These phones embed a growing diversity of sensors, such as gyroscope, accelerometer, Global Positioning System (GPS), and cameras, with broad applicability in areas such as urban sensing or environmental monitoring. Coupled with diverse user profiles [1], this provides significant user personalization opportunities, such as location- based and usage-based services, but it also involves significant challenges in adaptation to new or unexpected context. Most smartphone algorithms, aiming at either data-centric [4] or user-centric personalization [2], are based on static or rule-based approaches. However, per- sonalization increasingly depends on contextual information and user inputs [3]. Both are subject to dynamic changes, which motivates the use of methods that can not only adapt to expected changes or behaviors, but can also learn how to deal with unexpected changes in context. Online learning is well-suited for smart phone personalization. In particu- lar, online genetic programming supplies common basic constructs for a smart phone application that can evolve over time according to individual user prefer- ences. This paper introduces Android Genetic Programming Framework (AGP) for the mobile Operating System (OS), Android. We have chosen the Android platform as it is mainly open-source. As far as we know, this is the first ge- netic programming solution available on smartphones. The AGP framework can deal with dynamic fitness functions, providing a context-specific solution. Our goal is to demonstrate the flexibility of our new platform and how it can solve multi-objective problems in a dynamic environment.