As my Bachelor thesis at The Open University, I investigated the possibility of using unit test cases to define fitness functions in genetic programming. More precisely, I wanted to see whether GP could benefit from the practices of test-driven development.
I made some promising progress at first, but I soon realised that GP and TDD are not as good a match as I thought. Furthermore, I had some technical difficulties, making it impossible to evolve anything but the most trivial programs. I discussed the issues with Klaus Meffert and he gave me some ideas on how to solve them. But I’ve been working on this for the last nine months, and I prefer to work on other projects right now.
Anyway, I’m still happy with the results. I didn’t get the grade yet, but I have quite a good feeling. Furthermore, I was able to investigate both TDD and GP thoroughly. I’m pretty psyched about TDD, as evident from my recent blog post about it. Working with GP has taught me a fair deal about machine learning, which is in my opinion the most interesting topic in artificial intelligence.