Research
My research interests are primarily within evolutionary computation, swarm intelligence, biologically-inspired multiagent systems, and applied artificial intelligence. I explore both theoretical and applied topics in these areas, with a particular interest in how theory impacts practice. Current and past application domains for my research include scheduling and planning, coordination and logistics, computer-aided engineering, and manufacturing. I also, on occasion, conduct research on computer science education topics.
Search Landscape Analysis
Recently, I have been exploring the fitness landscapes of permutation optimization problems, problems where one must find an optimal ordering of some discrete set (e.g., scheduling problems). Such permutation problems fall into one of three broad categories, depending upon the structural characteristics of greatest influence on solution fitness (absolute positioning of elements, relative positioning of elements, or element precedences), although some problems may span more than one of these categories. Among other things, my research on permutation fitness landscapes has introduced a theoretical framework enabling exploring the effects of these structural properties on search performance. This includes the "Permutation in a Haystack" problem which enables specifying permutation fitness landscapes; as well as the "Calculus of Search Landscapes", a new tool for search landscape analysis that focuses on rates of change of fitness landscape topology, complementing other search landscape analysis tools such as fitness-distance correlation. More info, including selected relevant publications....
Self-Adaptive / Self-Tuning Metaheuristics
Genetic algorithms, and more generally, evolutionary computation, along with other metaheuristics such as simulated annealing, ant colony optimization, etc, often involve a large number of so-called control parameters (e.g., mutation and crossover rates in genetic algorithms, parameters to control the cooling schedule in simulated annealing, and so forth). Getting these control parameters "right" is often critical to search performance. My research in this area includes both automated parameter tuning, as well as self-adaptive metahueristics or automated parameter control. My research in this area also includes multi-heuristic search. Some forms of search require the guidance of a heuristic, and the "best" heuristic for a problem may vary widely from that of another problem, or may even vary across instances of a problem. Some of my research has applied machine learning to enabling metaheuristics to adapt their choice of heuristic. More info, including selected relevant publications....
Genetic Operators for Permutation Representation
The permutation representation for genetic algorithms requires specialized operators. A wide variety of crossover and mutation operators for permutations exist in the research literature. In my research on evolutionary computation for optimizing permutation structures, I have developed several crossover and mutation operators, including Non-Wrapping Order Crossover (NWOX), Uniform Partially Matched Crossover (UPMX), Heuristic Sequencing Crossover (HeurX), and window-limited variations of common permutation mutation operators. More info, including selected relevant publications....
Metaheuristic Development
My research has lead to the development of new metaheuristics, including Value-Biased Stochastic Sampling (VBSS), and Wasp Behavior Inspired Stochastic Sampling (WHISTLING). More info, including selected relevant publications....
Swarm Intelligence
Swarm intelligence refers to multiagent systems whose behavior is motivated by models of naturally occurring swarming systems, such as social insect swarms (e.g., ants, wasps, etc). My past research in this area includes applications of models of wasp task allocation and wasp social hierarchy formation to industrial scheduling and coordination problems, as well as multirobot coordination in space exploration. I have also explored applications of swarming agents to data management and network monitoring on mobile ad hoc networks. More info, including selected relevant publications....
Multi-Agent Systems / Multi-Robot Systems
Although much of my research on multiagent / multirobot systems is specifically related to swarm intelligence, I have additionally conducted research related to other aspects of these systems, including market-based coordination, security engineering of multiagent systems, issues related to mobile agents on ad hoc wireless networks, power aware agents, and multiagent collaboration tools. More info, including selected relevant publications....
Applications of AI to Computer-Aided Engineering
My research also includes applications of artificial intelligence to problems within the broad domain of Computer-Aided Engineering (CAE). These problems are mostly related to data management in large engineering digital libraries, such as automated engineering format classification, and search and retrieval of engineering artifacts, such as Computer-Aided Design (CAD) models based upon structural similarity. More info, including selected relevant publications....
Computer Science Education
My computer science education research includes studies of effective pedagogical techniques in a variety of undergraduate computer science courses, including software engineering, AI, CS 1/2, discrete math, and non-major courses. More info, including selected relevant publications....