REx: AI offers self-assembling data centre software
Mon 31 Oct 2016
Researchers have developed a machine-led approach to the creation of data centre software which characterises the available hardware and creates appropriate code, derived from online learning.
Entitled REx, the framework – developed by Lancaster University researchers led by Dr Barry Porter – develops a workflow for runtime emergent software systems, which assemble code based on needed behaviours and available configurations. As the paper notes, this is achieved via online learning and proceeds without models, architecture specifications or adaptation policies.
The procedure REx utilises is three part: the component-based programming language Dana; a Perception, Assembly and Learning framework (PAL) built on Dana; an online learning construct devised around the linear bandit model, intended to address the signal-to-noise issues in using machine learning to feed the creation of runtime emergent software.
The final system ‘begins with no knowledge that it is specifically assembling a web server, nor with knowledge of the deployment conditions that may occur at runtime.’
‘Modern software systems are increasingly complex, and are deployed into increasingly dynamic environments. The result is systems comprising millions of lines of code that are designed, analyzed and maintained by large teams of software developers at significant cost. It is broadly acknowledged that this level of complexity is unsustainable using current practice.’
The researchers believe that REx opens up the possibility not only of reducing the scale of current software development practices but radically reducing human involvement in these processes. They further argue that the resultant systems and software will be far more responsive to real world runtime conditions, and therefore able to offer optimised routines with better response times and less power consumption.
REx offers data centre systems that essentially calibrate themselves without constant reference to the baseline structure and standards assumed by human hardware (or software) developers; it is essentially a fixed engine creating self-rewriting, autonomous engines. The paper says: ‘If the target system is already assembled in a particular configuration, a command to re-assemble it into a different one uses our adaptation protocol to seamlessly shift to the alternative.’
Future research for REx may involve applying the system applying this level of self-reconfiguration to itself in response to changing conditions – a truly fractal approach to upgrading.