Introduction
This paper describes the preliminary results of the efforts to develop a
Knowledge-Based Expert System (KBES) for agroforestry. Known as the
United Nations University Agroforestry Expert System (UNU-AES), its
goal is to assist individuals in applying the agroforestry approaches to land
management for sustainable production of food and fuelwood supplies by
farmers in developing countries.
An Expert System is a computer program that uses knowledge, facts, and
reasoning techniques to solve problems that normally require the abilities ofhuman experts. The goals sought by expert system builders include helping
human experts, assimilating the knowledge and experience of several human
experts, training new experts, and providing requisite expertise to projects
that cannot afford scarce expertise on site.
Expert systems developed in the 1960's and 1970's were typically written
on a mainframe computer in the programming language based on List
Processing (LISP). Evolving from university research laboratories, they
were limited to the applications developed by these research sites. Most of
these expert systems were not intended for commercial use. They incorporated
the specific knowledge of the experts about the problem area,
termed 'domain knowledge,' problem-solving heuristics (or 'rules of
thumb') and inferencing capabilities, and an interface machanism between
the user and the system. Some examples of these systems include
MACSYMA, developed at the Massachusetts Institute of Technology
(MIT), for assisting individuals in solving complex mathematical problems;
Stanford University's MYCIN, which diagnosed bacteremia and meningitis
infections; and the University of Pittsburgh's INTERNIST/CADUCEUS,
which aided internal medicine diagnosis and decision making.
Later researchers at Stanford University realized that MYCIN consisted
of three distinct parts which can be visualized as a set of concentric circles
or as a seed. At the kernel of the seed is a knowledge base which contains
the domain-specific knowledge. Outside that is the inference engine, the part
which contains the inferencing capabilities, problem-solving heuristics, and
control strategies. And finally, the expert system is 'surrounded' by the
user-system interface. By removing the domain-specific knowledge, and by
adding tools for managing knowledge sets (such as rule editors and tracers),
these scientists created a general purpose tool for developing expert systems,
now called a 'shell.'