12 research outputs found
Software design by reusing architectures
Abstraction fosters reuse by providing a class of artifacts that can be instantiated or customized to produce a set of artifacts meeting different specific requirements. It is proposed that significant leverage can be obtained by abstracting software system designs and the design process. The result of such an abstraction is a generic architecture and a set of knowledge-based, customization tools that can be used to instantiate the generic architecture. An approach for designing software systems based on the above idea are described. The approach is illustrated through an implemented example, and the advantages and limitations of the approach are discussed
Teraphim: a domain-independent framework for constructing blackboard-controlled, blackboard-based expert systems in Prolog
The blackboard architecture, in which a set of independent knowledge sources communicate by means of a global data base known as a blackboard, has been suggested as a generally useful design for knowledge-based systems. Teraphim is a domain-independent frame work for writing blackboard-based expert systems in Prolog. It implements concepts common to a range of previous blackboard architecture programs, such as HEARSAY-III and BB1. Teraphim includes as its basic elements a partitioned blackboard, a simple blackboard-controlled scheduler, a set of general-purpose scheduling heuristics to control the scheduler, a generic knowledge source with the ability to ask the user questions about incomplete data, modifiable methods of reasoning about uncertain data, and a simple explanation facility that traces the origins of terms on the problem blackboard. Trials of the system indicate that it can be used to implement expert systems to solve either synthesis or analysis problems. The blackboard architecture of Teraphim lends itself to experimentation with the kinds of knowledge representation and control knowledge needed to solve problems. Prolog proved to be a convenient language for writing blackboard-based systems
Knowledge Based Systems: A Critical Survey of Major Concepts, Issues, and Techniques
This Working Paper Series entry presents a detailed survey of knowledge based systems. After being in a relatively dormant state for many years, only recently is Artificial Intelligence (AI) - that branch of computer science that attempts to have machines emulate intelligent behavior - accomplishing practical results. Most of these results can be attributed to the design and use of Knowledge-Based Systems, KBSs (or ecpert systems) - problem solving computer programs that can reach a level of performance comparable to that of a human expert in some specialized problem domain. These systems can act as a consultant for various requirements like medical diagnosis, military threat analysis, project risk assessment, etc. These systems possess knowledge to enable them to make intelligent desisions. They are, however, not meant to replace the human specialists in any particular domain. A critical survey of recent work in interactive KBSs is reported. A case study (MYCIN) of a KBS, a list of existing KBSs, and an introduction to the Japanese Fifth Generation Computer Project are provided as appendices. Finally, an extensive set of KBS-related references is provided at the end of the report
Recommended from our members
A Knowledge-Based Expert Systems Primer and Catalog
For more than 20 years, artificial intelligence techniques have been applied to the development of computer programs that solve difficult problems. Although several expert systems are well known, it is all too easy to circumscribe the field based on these few examples. The purpose of this paper is to present the fundamentals of the field (the Primer), and to give a broad overview via concise descriptions of many rule-based expert systems and knowledge engineering frameworks (the Catalog)
A blackboard-based system for learning to identify images from feature data
A blackboard-based system which learns recognition rules for
objects from a set of training examples, and then identifies and locates
these objects in test images, is presented. The system is designed to use
data from a feature matcher developed at R.S.R.E. Malvern which finds the
best matches for a set of feature patterns in an image. The feature
patterns are selected to correspond to typical object parts which occur
with relatively consistent spatial relationships and are sufficient to
distinguish the objects to be identified from one another.
The learning element of the system develops two separate sets of
rules, one to identify possible object instances and the other to attach
probabilities to them. The search for possible object instances is
exhaustive; its scale is not great enough for pruning to be necessary.
Separate probabilities are established empirically for all combinations
of features which could represent object instances. As accurate
probabilities cannot be obtained from a set of preselected training
examples, they are updated by feedback from the recognition process.
The incorporation of rule induction and feedback into the blackboard
system is achieved by treating the induced rules as data to be held on a
secondary blackboard. The single recognition knowledge source
effectively contains empty rules which this data can be slotted into,
allowing it to be used to recognise any number of objects - there is no
need to develop a separate knowledge source for each object. Additional
object-specific background information to aid identification can be added
by the user in the form of background checks to be carried out on
candidate objects.
The system has been tested using synthetic data, and successfully
identified combinations of geometric shapes (squares, triangles etc.).
Limited tests on photographs of vehicles travelling along a main road
were also performed successfully
Design and analysis techniques for concurrent blackboard systems
Blackboard systems are a natural progression of Artificial Intelligence based systems into a more powerful problem solving technique. They provide a way for several highly specialized knowledge sources to cooperate to solve large, complex problems. Blackboard systems incorporate the concepts developed by rule-based and expert systems programmers and include the ability to add conventionally coded knowledge sources. The small and specialized knowledge sources are easier to develop and test, and are hosted on hardware specifically suited to the task that they are solving.;Designing and developing blackboard systems is a difficult process. The designer is attempting to balance several conflicting goals and achieve a high degree of concurrent knowledge source execution while maintaining both knowledge and semantic consistency on the blackboard. Blackboard systems have not attained their apparent potential because no established tools or methods exist to guide in their construction or analyze their performance.;The Formal Model for Blackboard Systems was developed to provide a formal method for describing a blackboard system. The formal model outlines the basic components of a blackboard system, and how the components interact. A set of blackboard system design tools has been developed and validated for implementing systems that are expressed using the formal model. The tools are used to test and refine a proposed blackboard system design before the design is implemented. The set of blackboard system design tools consists of a Knowledge Source Organizer, a Knowledge Source Input/Output Connectivity Analyzer, and a validated Blackboard System Simulation Model. My preliminary research has shown that the level of independence and specialization of the knowledge sources directly affects the performance of blackboard systems. Using the design, simulation, and analysis tools I developed a concurrent object-oriented blackboard system that is faster, more efficient, and more powerful than existing systems. The use of the design and analysis tools provided the highly specialized and highly independent knowledge sources required for my concurrent blackboard system to achieve its design goals
Computer science: Key to a space program renaissance. The 1981 NASA/ASEE summer study on the use of computer science and technology in NASA. Volume 2: Appendices
Adoption of an aggressive computer science research and technology program within NASA will: (1) enable new mission capabilities such as autonomous spacecraft, reliability and self-repair, and low-bandwidth intelligent Earth sensing; (2) lower manpower requirements, especially in the areas of Space Shuttle operations, by making fuller use of control center automation, technical support, and internal utilization of state-of-the-art computer techniques; (3) reduce project costs via improved software verification, software engineering, enhanced scientist/engineer productivity, and increased managerial effectiveness; and (4) significantly improve internal operations within NASA with electronic mail, managerial computer aids, an automated bureaucracy and uniform program operating plans