As a computer scientist, I am involved in Artificial Intelligence and cognitive modeling. I am primarily interested in the task of generating qualitative spatial representations from visual input (in our case, hand-drawn sketches). We believe qualitative representations play a major role in people's ability to complete a wide range of spatial tasks. In our lab, our systems have completed a number of tasks using qualitative spatial representations, including: mental rotation, geometric analogy (problems of the form A : B :: C : D), a subset of the Raven's Progressive Matrices, learning spatial prepositions, mechanical reasoning problems, and recognizing sketched objects.
My goal is to create a single, general system that performs perception on a sketch, building up representations that can be used in any of these tasks. Of course, different tasks require different representations. In particular, they require different levels of granularity. Depending on the task, you may be reasoning about one-dimensional edges, two-dimensional shapes, groups of two-dimensional shapes that make up some kind of pattern, or three-dimensional shapes that consist of multiple 2D surfaces. Thus, what we actually need is a hierarchical spatial representation that can be queried for different representations at different levels of detail and granularity. The full, hierarchical representation need not be entirely qualitative. Indeed, we are not claiming that perception produces solely qualitative representations. However, we do want it to be capable of producing symbolic, qualitative representations in response to a query, so that domain-general reasoning systems such as SME, our model of analogy, and SEQL, our model of generalization, can be run on these representations.