I'm a C++, Java, and C# developer in finance. I also poke around in many other languages such as D, go, F#, python, and so on.

My first computer, in 1982, was a BBC Micro Model B. I occasionally get excited about astronomical things, and once completed a PhD about the Sun and genetic algorithms.

If you would like to contact me, try a private message on Twitter.

Abstract of my PhD Thesis

Helioseismology and Genetic Algorithms” (December 2000, Queen Mary and Westfield College, University of London).

This thesis investigates the usefulness of genetic algorithms as a tool for performing inversions on helioseismic data. As a somewhat unusual approach to the problem, the notion of genetic algorithms is introduced and discussed. As a technique that has developed largely from the field of computer science, we review the literature that already exists, examining problems and resolutions that have been found with the genetic algorithms.

With this knowledge we then continue by applying the genetic algorithm to the helioseismic rotation inversion problem. We show that the technique developed is at least as competent as a regularized least squares fit, together with error estimation. After developing this method and using a regularized least squares fit as a benchmark we perform further statistical analysis to ascertain the reliability of the genetic algorithm. Due to the formulation of the genetic algorithm we are able to specify a wide variety of parameterizations for a problem. Using this feature we then go on to perform an inversion to ascertain the location and width of the solar tachocline using the genetic algorithm, and make a comparison to results already obtained. As a somewhat unusual inversion tool, we also use simulated annealing in addition to the genetic algorithm to perform an inversion for the linear rotation rate to see if such a method is also applicable.

We then spend some time introducing Duvall's law (first order asymptotic approximation) and further approximations that can be made to it that more successfully related the oscillation frequencies to the interal properties such as sound speed. We end with a review of second order asymptotic expressions. We then show that by perturbing Duvall's law we can also obtain a measure of the sound speed difference between a model and the observed star by inverting against the frequency differences between the same model and the star. We examine this technique further to see if we can gain any further information from the data.

Finally we conclude the thesis with the application of the genetic algorithm to a structural inversion for the sound speed and density from a set of given data. We devise and test several different variations on the inversion, after first analysing a suitable description for the problem. We begin with an inversion for sound speed and density.

At the end of this thesis we hope to have demonstrated that the genetic algorithm is a versatile and robust technique and that it maybe added to the tools for performing helioseismic inversions.

What is Helioseismology?

If you didn't click on the wikipedia link, helioseismology is the process of inferring the internal structure and kinematics of the Sun from the propagation of seismic waves.

The typical oscillation period is approximately 5 minutes, and the frequency of oscillation is measured in millihertz.

The same techniques used for helioseismology can be used for any celestial body that is gaseous, referred to as asteroseismology, including large gas giants such as Jupiter, particularly if driven by an external force such as a cometary impact.