As the knowledge economy migrates away from static knowledge, such as fixed information, and develops the ability to deal more and more with meta-processes, it’s developing tools such as evolutionary computing. Evolutionary computing finds an answer by massive numbers of trial and error iterations, eventually ‘evolving’ a design that meets a set of criteria. In one particular case, that criteria included avoiding patented technology. In that particular case, the ‘evolved’ design was more efficient than the patented one. (From the Economist: Don’t Invent, Evolve)
“I HAVE not failed. I have just found 10,000 ways that won’t work.” So said Thomas Edison, the prolific inventor, speaking of his laborious attempts to perfect the incandescent light bulb. Although 10,000 trial-and-error attempts might sound a little over the top, an emerging technique for developing inventions knocks even Edison’s exhaustive approach into a cocked hat. Evolutionary design, as it is known, allows a computer to run through tens of millions of variations on an invention until it hits on the best solution to a problem.
As its name suggests, evolutionary design borrows its ideas from biology. It takes a basic blueprint and mutates it in a bid to improve it without human input. As in biology, most mutations are worse than the original. But a few are better, and these are used to create the next generation. Evolutionary design uses a computer program called an evolutionary algorithm, which takes the initial parameters of the design (things such as lengths, areas, volumes, currents and voltages) and treats each like one gene in an organism.
It’s also another datapoint that shows how the PC has the potential to level the playing field between smaller and larger organizations. Here it is, doing something that until very recently was only within the reach of a few large corporations or government agencies:
The idea of evolutionary algorithms is not new. Until recently, however, their use has been confined to projects such as refining the aerodynamic profiles of car bodies, aircraft fuselages and wings. That is because only large firms have been able to afford the supercomputers needed to mutate and crossbreed large virtual genomes—and then simulate the behaviour of their offspring—for perhaps 20m generations before the perfect design emerges.
What has changed, in this as in so much else, is the availability and cheapness of computing power. According to John Koza of Stanford University, who is one of the pioneers of the field, evolutionary designs that would have taken many months to run on PCs are now feasible in days.
Makes you want to think twice before surrendering the freedom to use your PC to Microsoft, through their plan known as ‘Trusted Computing”, but is in reality ‘Treacherous Computing’ as Richard Stallman has noted.
The answers developed using evolutionary computing can be are unexpected and often suggest new approaches to problems, that wouldn’t have occurred to those studying the problem:
At the University of Sydney, in Australia, Steve Manos let an evolutionary algorithm come up with novel patterns in a type of optical fibre that has air holes shot through its length. Normally, these holes are arranged in a hexagonal pattern, but the algorithm generated a bizarre flower-like pattern of holes that no human would have thought of trying. It doubled the fibre’s bandwidth.
A scientist at Stanford used such an algorithm to design an antenna without infringing on any of Cisco’s patents.
Perhaps the most cunning use of an evolutionary algorithm, though, is by Dr Koza himself. His team at Stanford developed a Wi-Fi antenna for a client who did not want to pay a patent-licence fee to Cisco Systems. The team fed the algorithm as much data as they could from the Cisco patent and told the software to design around it. It succeeded in doing so. The result is a design that does not infringe Cisco’s patent—and is more efficient to boot.
Now, of course, someone will try to patent the idea of evolutionary computing itself…
A related post about evolved knowledge, human societies as evolutionary computers: Types of Knowledge