I work mainly in automata theory, where I concentrate on symmetric difference NFAs (XNFAs), which is a special case of automata with multiplicities. The XNFAs have many interesting properties when compared to standard NFAs, in particular as far as their descriptional complexity is concerned.

I dabble somewhat in cellular automata (mostly from an application point of view), and defined a variant of CA (CA with cell clustering) which allows for changing cell size in CA. This variant has been used, amongst others, to solve layout problems. Just for fun, we implemented a system to generate building instructions for LEGO sculptures, given a Blender wireframe model as input. The application of CA in image processing is one of the areas where I achieved some nice results.

I am interested in applications to support nature conservation activities. In particular, we are currently working on a rather difficult problem to recognize animal tracks in sand -- edge detection in sand is challenging, as the different grains of sand reflect light in a non-uniform manner. I also work with Landmark Foundation on an automatic classification tool for camera trap images.

I am interested in diagram recognition. I have done some work on recognizing finite automata diagrams, and crochet diagrams. We also looked at the translation of diagram outputs, for example MathML to braille. I am working with the School for the Blind in Worcester on various translation issues between braille and textual representations.