I am an industrial research fellow at the Computer Laboratory and help teach the lab's Part 1A software engineering course.
I mentor and invest in technology start-ups, with a focus on software companies. I am a member of the Cambridge Angels and chair the advisory committee for the Bradfield Centre, a state-of-the-art facility for technology companies on the Science Park.
I took an interlude in my academic career to found Brady plc, which now employs 250 people and is listed on the London stock exchange. We supply software covering the supply chain and financing of electricity, commodities and recycling.
Such algorithms do not perform very well. For example, if the computer has found a good route around England but a poor route around Scotland, it must temporarily make the English route longer in order to improve the Scottish route - a problem which is computationally expensive to overcome.
Biological evolution encounters the same problem. But if you can out-evolve your competitors, you will win in the long run. Biology has had billions of years to evolve a solution. Today, most organisms use sex as a way to mix up genes, so that good genes can spread throughout the population. I adapted this to make machine learning more efficient.
I created multiple solutions to the travelling salesman problem, and performed a 'cross-over'. In the above example, a solution with, say, a good route around England would be crossed with others, some of which would have a good route round Scotland. By optimising these child solutions and selecting the best, and repeating, I beat the then-fastest algorithms for the travelling salesman problem. The genetic algorithms I introduced have subsequently been adapted to other problems.
After you have fixed the bugs reported by your testers and beta testers, those that remain are in the corner cases. They `hide' from the developer by having a very long mean time to failure. Statistics from IBM, gathered from a program with hundreds of thousands of users, showed that some bugs have a mean time to failure of 100,000 years. By modelling the development process and applying statistical methods, we showed why that these difficult-to-find corner cases dominate the customer bug experience.
These statistics explain why, at a minimum, it is necessary to use automated tests, even with relatively small programs.
I have recently been working with a chemist, Ed Samulski at UNC, and a physicist, David Turban at the Cavendish laboratory in Cambridge, on a phenomenon in which an interstitial atom advances through a body centred cubic lattice. This is a numerical model of the effect, using the forces between helium atoms.
This movie was generated using a novel algorithmic technique, which calculates an effectively infinite body centred cubic lattice, storing only the atoms that have been disturbed.
These moving interstitial atoms cannot lose energy to acoustic waves, since it is not possible to match the energy and momentum changes simultaneously, and so they move without resistance in some circumstances. Such a phenomenon was predicted in 1969 by Andreev and lifschitz, and independently in 1970 by Leggett. It is called 'supersolidity'. We are in the process of final consultation on a paper regarding this phenomenon, which may be responsible for the superflow in helium.
This interstitial atom is resonant, and, when created, it is an association between a particle and a wave. This is related to an investigation into another association between a particle and a wave. Watch these simple experiments in which droplets of oil bounce on a vibrating oil tray and move across the surface. Bouncing droplets cause waves to appear in the surface of the oil, and in turn these waves guide the motion of the droplets. Surprisingly, they exhibit more quantum-like behaviour, including double-slit diffraction, tunnelling and angular quantization.
Ross Anderson of the Computer Laboratory and I showed how this quantum-like behaviour emerges from the classical equations of motion. Such behaviour is studied in the field of emergent quantum mechanics.
It turns out that the mass of copper within radius r of a point cathode is proportional to rD. We could measure D because the mass of copper is proportional to the total charge transferred, and the radius is proportional to the current. The experimental result was D = 2.43 ± 0.03, in agreement with previous simulation work.
Subsequently I wrote a computer progaram to model this behaviour. This used an efficient algorithm which briefly held the record for the largest simulations (we were using a timeshare on an IBM mainframe, and our competitors were using a supercomputer -- we lost this crown when my algorithm was adopted on these computers). The program was used in papers together with Robin Ball, Giuseppe Rossi and Bernard Thompson [1 2 3 4].
My PhD [contents 1 2 3 figs 4 ] was in theoretical and experimental superconductivity at the Cavendish Laboratory in Cambridge. I did a postdoc at the National Bureau of Standards in Boulder, Colorado and became a fellow of Trinity College, Cambridge.
By examining the phase of the superconducting order parameter [defined in Brian Josephson's thesis] I showed there is a correction to the London moment of a rotating superconductor [chapter 2] and predicted a new effect which could be used to make a superconducting gyroscope with no moving parts which Jim Zimmerman and I measured experimentally [chapter 3 and chapter 4].
By default, when I post a paper here I license it under the relevant Creative Commons license, so you may redistribute it with attribution but not modify it. I may subsequently assign the residual copyright to an academic publisher.
University of Cambridge
JJ Thomson Avenue
Cambridge CB3 0FD, England
Tel: +44 7770 75 66 35