This is a brief description of my main research interests. I think of these research domains as providing theoretical tools to solve real world problems.

My research projects tend to overlap one or many of these areas, but also have an applied focus. You can look at the "Projects" section if you want to see some current projects.

Creativity - Patterns and Process
I'm interested in how ideas are created and used. In particular how recursive, symmetric patterns are used to create and describe ideas and how evolutionary processes shape those ideas. I'm particularly interested in one generic pattern for idea generation which I call "simplicity". This provides, for me at least, some form of consilience, a way to abstract all the things I know into one pattern.

Information Visualisation
Visualisation uses human visual perception to find patterns in abstract data. This involves taking large sets of data from some domain and turning the data into pictures. It develops tools that allow people to interact with theses pictures and find useful patterns in their data. I look at lots of different of data, e.g. medical, weather, sport, etc. However, I am particularly interested in looking for temporal patterns that occur between two complementary but competing forces. For example, short term trends in the stock market based on bids and asks from buyers and sellers. A challenge is to identify the same patterns in a wide range of domains, from the stock market to the human mind.

Multi-sensory Display
Turning data into pictures only makes use of one sensory modality. It is also possible to use sound and touch to display useful information. This can be useful were there is a large amount of data, more than you can represent using the visual sense alone. Different data types also lend themselves to different modalities, for example vision is very good at finding spatial patterns, while hearing is adapted for temporal signals. A challenge is to develop useful multi-sensory models of large abstract data sets and present the information in a way that improves the pattern finding capabilities of the user.

Virtual Environments
These environments provide a range of unique types of computer interfaces. They can allow for 3D visual and auditory and haptic (touch) display. I have worked in a number of different environments since 1992 and typically see these environments as platforms to implement multi-sensory tools for exploring large data sets. I usually refer to these tools as "perceptual data-mining tools". A challenge is to develop generic, useful 3D models of abstract data that can be displayed in these environments.

Intelligent Agents
You will find a lot of different definitions of what "agents" are. Typically they display attributes such as autonomy, goal setting, planning, collaboration, learning and mobility. I tend to view agents as a problem solving approach for very complex programming problems. The key assumption here is that the complexity in the system can be modeled by simple software entities (agents). These entities follow simple rules and interact with one another and over time complex patterns tend to emerge in the system. These types of systems were traditionally studied in the field of "Complex Systems" and many of the ideas derive from the domain of physics. Agent-Based Systems are a useful counterpart to perceptual data-mining as they can be used to code the rules and patterns found during perceptual data-mining. This provides an automated approach for verification of any patterns.

Software Engineering - Interfaces and Algorithms
Since 1990 I've worked a lot in both User Interface and Algorithm design for a number of different software projects. My main focus in User Interfaces is on the way information is presented to the user, particularly in Computer Games and Virtual Environments. My main interest in algorithms centers around recursive algorithms. Because of my interest in complementary and competing forces I'm also interested in algorithms that explore the broadly defined concept of "symmetry".

Computer Games
I teach a lot in this area, and find many computer games are at the forefront or user interface design. Often games present multi-sensory information in new and useful ways, providing clues about how to adapt these approaches for other applications. Massively multi-player role-playing games are also one of the most complex types of software system being developed today. Future games will also look at developing more emergent simulations where the world of the game evolves along with the game play. Again this ties in to my interest in emergent systems described in the field of "Complex Systems"

Conceptual Modeling
Conceptual modelling (using UML) is a general interest of mine as it an encapsulates most of my other interests. It is something that is used routinely for software development, but I also find useful for modeling knowledge from all domains. I find the basic design principles of aggregation (breaking things into parts), and hierarchy as useful tools for abstraction and understanding. This is perhaps not surprising as the idea originally derives from Artificial Intelligence.

Copyright (c) 2007 Keith Nesbitt
All rights reserved.