Next: Programming Languages and Systems
Up: Research Areas in Computer Science
Previous: Research Areas in Computer Science
Artificial Intelligence
Artificial Intelligence is the study of computational models of the
mind. At Yale, there are a wide variety of topics studied, including
knowledge representation, inference, planning, learning, vision,
and robotics.
The term ``artificial intelligence'' is somewhat misleading, because the
focus of research in the field is often on more mundane activities, such
as simple visual perception, than the word ``intelligence'' would suggest.
The field has learned over the years that the effortlessness of a skill
such as vision is deceptive, that in fact the brain does a great deal of
hard labor behind the scenes to allow us to see without conscious effort.
It will take us years to duplicate the skills that nature evolved over
eons.
AI uses many of the same techniques as other areas of Computer Science
application, from numerical optimization to symbolic indexing. The
key to solving any problem is always the algorithm and its analysis.
The goal is always to characterize precisely a set of problems and
demonstrate an algorithm that solves them with reasonable efficiency.
But, at least at its current state of development, AI is of necessity
more exploratory than other areas. We are often forced to define a
problem at the same time that we try to solve it. It often happens
that we don't know how to analyze the performance of an algorithm with
existing tools, but we believe that its average-case performance is much
better than its worst-case performance, and this belief must be backed
up with experiments. Sometimes a piece of research is valuable even
though all that it accomplishes is the discovery of a dimension of
knowledge representation that we as yet do not know how to incorporate
into algorithms at all.
In general we think it is a mistake for AI research to focus on
central mental function and ignore input and output. In the long
run, machines will not be treated as intelligent unless they can
perceive and manipulate the objects around them. Real perception and
action impose stubborn constraints on thinking. Sophisticated robot
planning is wasted if the robot crashes into the wall while trying
to generate a predicate-calculus description of the world in front
of it. So our planning research focuses on models of execution
and replanning in realistic, changing worlds, and not so much on
provably correct plans.
Here is a partial list of the projects we are now working on:
- Map learning for mobile robots: How can a robot get back
to a place it's been before? To answer this question, you need to
define what a place is. We are pursuing a model in which a place is a
perceptually distinctive point, reachable from other places by fairly
robust but not perfect operations. As the robot wanders around its
world, it builds up a graph of places and the metrical relationships
among them. It is able to correct errors in this graph by merging two
places that are really the same, and splitting a place that really
corresponds to two similar places.
- Perception and decision making:
The information that an autonomous system has available is often
incomplete and may contain errors. In order to carry out its
activities, the system must use sensors to gather information. Of
course, a central problem area is the development of methods for
interpreting and using sensor information. However, these methods
must match the capabilities of the system. Consequently research also
focuses on optimizing the use of sensing equipment and computer
resources to gather and process information for a particular task.
- Transformational reactive planning: A plan is a program an
agent gives to itself in response to problems it encounters. In
changing worlds, the plan must contain rules for reacting to problems,
but in addition there must be a planning module with a more long-range
outlook that can revise the plan before execution is completed. Our
planner revises the plan by using information gained by mentally
simulating, or ``projecting,'' it to see how execution will go.
- Engineering problem solving:
Scientists and engineers model, analyze, design, and explain
complicated physical systems using reasoning that is often heuristic,
qualitative, and graphical in addition to formal mathematical
arguments. Understanding this ability requires a deep understanding
of the techniques in simplifying mathematical models, finding
approximate solutions, and deriving consequences from mathematical
models by mixed symbolic, numerical, and geometric computations.
Current research involves the automatic analysis of certain classes of
fluid dynamics problem. Our goal is to produce computer programs that
not only serve as high-level assistants to scientists and engineers
but also smart enough to carry out independent research in fluid
dynamics and write research papers of publishable quality.
- Object Recognition: One of the fundamental goals of
computer vision is to recognize the three-dimensional objects in a
single perspective projection image in terms of a database of object
models. Most of the research has considered polyhedral objects where a
correspondence between object features (e.g. vertices) and image
features (e.g. corners) can be readily established. At Yale, we have
focussed on recognition of curved objects where it is more difficult
establish such a correspondence. Specific problems that are being
considered include representing objects by algebraic surfaces,
building object models from a sequence of images, constructing aspect
graphs (a viewer-centered representation enumerating all topologically
distinct line drawings), estimating an object's pose from one image,
and indexing a model database.
Faculty members working in Artificial Intelligence are
Gregory Hager, David Kriegman, Drew McDermott, Francois Meyer, Willard
Miranker, Marcello Pelillo, and Steven Zucker. Michael Hines, and
Kaleem Siddiqi are Research Scientists.
Next: Programming Languages and Systems
Up: Research Areas in Computer Science
Previous: Research Areas in Computer Science
Graduate Handbook Contents
Yale Computer Science Department
Homepage