- Theoretical Computer Science
- Teaching and Learning
- Algorithms and Theoretical Computer Science
- Programming Languages
- Systems and High Performance Computing
My current passions are object-oriented programming, Java, the open-source movement, data mining, spatial interfaces, and adaptive software, as exemplified by the Java open-source KnownSpace Project. A related project, Symphony, is intended to give infrastructure support for remote peer-to-peer Java development.
My current work is in genetic algorithms, a branch of machine learning, which is a branch of artificial intelligence.
My work focuses on the theoretical and engineering consequences of various implementations of genetic algorithms.
My future work will focus on describing just what mathematical properties of search spaces a genetic algorithm exploits during its search.