Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://www.stsci.edu/~rdouglas/publications/thesis/section2_5_3.html
Дата изменения: Tue May 13 19:35:11 1997 Дата индексирования: Sat Dec 22 19:13:30 2007 Кодировка: |
~ ~ Artificial Intelligence (AI) is a term which covers the issues relating to the development of intelligent agents in this thesis. The purpose of these agents is to simulate members of the CE design team. There are two important issues which arise from this role. The agents must have particular roles and the agents must be able to communicate. The literature on these roles is covered in this Section.
Before discussing particular aspects of the intelligent agents in a design
system, it is necessary to show the applicability of using expert systems as
design aids. The development of the Computer-Aided Mechanical Expert System
(CAMES) is discussed in [Campbell et al 1991]. The motivation for that project was
their difficulty in finding experts to do machine design. This suggested
an expert system to fill this gap. The first machine chosen as the design
domain was one of the hardest for an expert designer to design.
Campbell et al hoped to find all the problems this way and make development
of further expert systems for less complicated machines easier.
LISP was chosen as the AI language, and AutoCAD, which is written in
LISP, was used as the design drawing system. The system maintains a library
of components used, including spatial attributes. The expert
system helps to design the machine. CAMES is a successful example of how
expert systems can be used as design aids.
Brown [1992a] describes the task of design and the applicability of various AI
techniques, including Knowledge Representation, Constraint
Satisfaction, Search, Learning, Case-based Reasoning &Analogy, and
Qualitative Reasoning, to the design task. Several roles for expert systems
in a design system are identified in that paper. Some of these were adapted
for use as the various intelligent agents in SNEAKERS. Each agent
has a specific role, as described below:
In [Nii 1986a], the first part of this survey of blackboard systems, is a summary of what a blackboard system is and what its components are. The individual intelligent agents are referred to as Knowledge Sources (KS). The Blackboard data structure is a programming abstraction. It can be read by the individual KS's. KS's can also write to the Blackboard. The Control system is responsible for routing information to those KS's which can use it and decides which KS to use for a particular task. The actual implementation of these elements is different for different blackboard systems, but they are the essential ingredients. Nii also describes how this problem-solving method is applicable to many tasks, including the HEARSAY-I project, which was the first blackboard system developed. Its purpose was to recognize human speech.
[Nii 1986b] begins where the last article left off. It includes:
HEARSAY-II, the successor to HEARSAY-I; HASP/SIAP, that
maintained surveillance of surface ships and submarines from sonar data;
CRYSALIS, which was designed to infer the three-dimensional structure of
protein
molecules; and TRICERO, which monitored an area of airspace for
traffic. Nii then talks about skeletal systems, OPM in particular. She
discusses applying Blackboards to the Scene Understanding problem, where the
task is to label objects in a photo taken by a low flying aircraft. The final
section deals with Knowledge Engineering issues which might lead to the
decision to use a Blackboard approach. These include Problem Complexity and
Ill-structured Problems. Nii suggests ways the approach could be used to
formulate problems, as a system development tool, and as a research tool.
Blackboards are a part of work done by the Blackboard Technology Group.
(See [Blackboard 1991].) As they state,
blackboards allow separate knowledge systems to take information provided and
either ask for information from others or give information to others. Their
system is composed of a Controller and several Knowledge Sources (KS).
The Controller uses its rules to determine which KS will run and when that KS
will run. Each KS is also totally independent of the others. They can use
different approaches to solving the same problem.
Durfee et al [1989] discuss the idea of Cooperative Distributed Problem
Solving (CDPS), which is similar to the Blackboard problem solving approach.
They discuss many issues concerning multiple distributed problem
solving systems. These systems break a problem down into subproblems,
in order to generate a solution to the problem. CDPS works through local
problem decomposition. When a system is given a problem, it has the
option of solving the problem it has been given by itself, or decomposing all
or part of the problem and sending it off to another system.
Contrary to this method, Blackboard systems work through
global decomposition, with a Controller in charge of the whole problem.
This is the main difference between CDPS and Blackboards. In CDPS,
no system controls the whole process but each tells the others when to
activate, whereas in a blackboard system, the scheduler has control.
Some of the
important issues in the CDPS method are as follows: negotiation; functionally
accurate cooperation; organizational structure; multi-agent planning;
sophisticated local control; and formal frameworks.
Negotiation is a major concern here. The system that has control of the
problem sends a request specifying the problem to be solved, and those
systems that have the resources to solve it respond, listing their
capabilities, so the ``Controller''(for this individual subproblem) can decide
among them.
Myers et al [1991] discusses the Intelligent Computer Aided Design
System (ICADS)
expert design advisor. This is a very extensive system which includes a
user interface to a CAD system, six domain experts, a conflict resolver
(i.e., negotiator), and a blackboard for handling communication.
The user interface is a ``wrapper'' for a CAD drawing system, so that the
user can interact with the design drawing and the expert advisors.
The domain experts were written in CLIPS and each have a single machine
dedicated to them. Therefore, they are truly distributed. The conflict
resolver
has the task of deciding among conflicting design decisions made by the
domain experts. One of the major
problems with the conflict resolver was giving it the ability to recognize
when it had been in a certain situation before in order to avoid infinite
loops of swapping values between conflicting experts.
A blackboard was set up so that all of the experts would know where to
voice their questions and answers. It is a separate system running on a
separate machine.