Research in Algorithms

PDEs for image processing: Partial differential equations have been used for image processing tasks such as denoising and segmentation. In some of our early work, we evaluated the performance of these methods on real images so we could understand better their pros and cons and compare them with more traditional methods of image processing. We were particularly interested in the computational cost of the PDE-based methods and the choice of various parameters and options in their implementation.

Sapphire scientific data mining software (R&D100 award, 2006): When I started the Sapphire scientific data mining project in late 1990s, I put together an object-oriented, modular design for the software. A common interface for each class of algorithms allowed us to easily try different algorithms and create new ones, a common data store supported many different data formats used in different domains, and the implementation of the compute intensive parts in C++, that were glued together using Python, enabled us to quickly create efficient solutions to specific problems. Nearly twenty-five years later, with lots more practical experience in data mining, I find the approach I took provided both the flexibility and efficiency required to meet the diverse needs of data analysis in scientific simulations, observations and experiments.