The idea is that the computers will autonomously self-assemble their algorithms in order to complete tasks in the most efficient way in an effort to save running costs and energy consumption.
Researchers from Lancaster University intend to create a toolkit of small code blocks that autonomous systems can select and arrange in the “best way” to achieve tasks. According to the team, the systems will also be able to write their own brand new blocks of code as needed, continually finding better ways to do their job while they are running.
The research targets the automated writing and assembly of a broad range of software, but will focus initially on the ecosystem of modern data centres, which continually handle millions of differing requests as efficiently as possible.
To do this, the research will examine how various interconnected self-assembling computer programs, working across a range of machines, in different locations, can come together to achieve specific objectives. The hope is this will enable faster processing, less energy-consuming computational muscle, and intelligent response.
“By fully automating the writing of the source code of each little block of behaviour, the software continually creates its own new building blocks for systems without humans having to write them.
“This unleashes systems from their programming, allowing them to continually produce more novel and innovative solutions to achieve their objectives."
The end result could re-define what it means to be a computer programmer, adds Prof. Porter, and may help to reduce the amount of human effort needed to write software, in turn, reducing costs. According to the team, it may even result in software which re-designs itself to best work for its human users, by learning over time how individuals like to work and use their technology.
Dr Porter continues: “This will help deliver a fundamental new paradigm of software development in which computer programmers will be freed from laboriously writing all the fine detail of every system, and will instead, work at a much higher creativity level to guide the construction of complex software in collaboration with advanced machine learning.
“It is a bit like a self-driving car of computer programming, in which programmers, or even end-users, define the destination and the machine figures out the best way to get there.”
Although the researchers are initially focussing on improving the efficiency of data centres, the belief is that it could also help to shape the future of AI itself.
Through this, even non-programmers may be able to explain to their computer or smartphone what they need, and leave their device to work out a solution that goes beyond anything it was ever programmed to do.