Autonomic Computing is now showing its value as a solution to the increased complexities of maintaining computer systems and has been applied to many different fields. In this paper, we demonstrate how a gaming application can benefit from autonomic principles. Currently, minimal adaptivity has been used in games and is typically manifested as bespoke mechanisms that cannot be shared, extended, reused etc. In this paper we show the advantages of Autonomic Computing in terms of not only improved performance, but also show that decoupling adaptivity mechanisms from the managed game can be done efficiently whilst improving its software engineering.
To this end we implement and evaluate a proof of concept architecture using the popular Java game engine jMonkeyEngine and in doing so produce autonomic extensions for the jMonkeyEngine (namely ajME). We show that this framework enables easy adoption of autonomic computing in games created using this games engine but also how this relates to other engines. We conclude that autonomic computing in gaming is viable (i.e. performance is improved while leaving the game quality minimally changed), has advantages over other approaches from a software engineering point of view and all with a minimal overhead. We then discuss the difficulties that are still present in the implementation of autonomic gaming systems, and suggest some further work that could be done in order to improve this area.
pubs.doc.ic.ac.uk: built & maintained by Ashok Argent-Katwala.