Integrated knowledge systems I. Priha
Technical Research Centre of Finland, laboratory for Information Processing, l_ehtisaarentie 2 A, SF-00340 Helsinki, Finland This paper presents a preliminary system structure supporting integration of expert systems and knowledge-based problem solving to other kinds of computing. The structure is based on layers on different abstraction levels communicating with each other through well-defined interface protocols. The result of applying such structure is a knowledge system capable of utilizing existing computer programs and information stores during its problem solving process. The structure is used in an application supporting hydrodynamic design of ships. A brief presentation of a demonstration system integrated to an existing ship design and engineering system is given. Key Words: knowledge-based systems, system integration, intelligent design systems, modelbased problem solving.
1. K N O W L E D G E - B A S E D P R O B L E M SOLVING
Expert systems have been expected to raise the problem solving ability of computer programs to a new performance level ever since they were introduced in the late 1970s. The knowledge included in the systems should enhance the quality of solutions produced and make it possible to solve more complex problems than with conventional programs. The most essential feature distinguishing an expert system from other kinds of programs is the use of heuristic methods based on expert knowledge, instead of algorithms, in problem solving. New programming techniques, from which rule-based programming is best known, have been developed for building expert systems. In spite of remarkable advantages of knowledge-based problem solving, the first generation expert systems are defective in many ways. A great deal of shortcomings are due to the fact that in the development of expert systems the advances in other areas of computer science have not been utilized. The basic idea of heuristic problem solving should not lead us to try to solve every oncoming problem with informal methods. Heuristic methods only provide a possibility to solve a problem when more formal methods are not available or cannot be applied due to lack of information or inexact problem specification. When aiming at the best possible result in computeraided problem solving, all available knowledge in the application area should be synthesized. Known algorithms and other formal methods, existing information stores, ways of organizing the concepts of the application domain, heuristics based on experience, etc. The result of the synthesis integrates different kinds of information and information processing techniques to a one total system. Examples of successful integrations in different applications are presented by Abarbanel and Williams 1, Chalfan2, Zumsteg 3 and Wilson4. In the Paper accepted January 1989. Discussion ends August 1989. © Computational Mechanics Publications 1989
70
Artificial Intelligence in Engineering, 1989, Vol. 4, No. 2
following sections, a preliminary system structure supporting incorporation of different kinds of computing into an integrated knowledge system is presented.
2. THE STRUCTURE OF AN INTEGRATED K N O W L E D G E SYSTEM A layered structure in an information system makes complex systems easier to manage. It is used especially in computer network protocols 5. The layered structure clarifies development of a system by separating portions of the system on the same abstraction level to their own entities. It also makes the system modular which facilitates its maintenance, reusability and portability. In the layered structure, adjacent layers communicate with each other through well-defined interfaces. Nonadjacent layers may not communicate directly. The system development work can be directed to one layer at the time while the system as a whole is manageable with the aid of the clear interfaces. The interface between two adjacent layers is defined as a communication protocol. The protocol can be formed by a set or predefined functions, macros, messages located on a blackboard 6, or something else. The defined protocol has to be used in all communication between the layers. The protocol must be well designed to guarantee its feasibility. In the structure of an integrated knowledge system, we have used an organization of layers based on the abstraction level of the information to be processed (Fig. 1). The core layers of the system contain general problem solving knowledge on some application area. The outer layers connect the core gradually specifying to one particular operation environment. The core manipulates information most significant for problem solving while the outer layers collect and refine raw information for the core.
Integrated knowledge systems: I. Priha concept layer. The control over the concept layer gives a 'meta' nature to the expertise layer.
2.2 The concept layer The purpose of the concept layer is to form a model of the concepts needed in the problem specification and during the problem solving process. The model includes abstractions of concrete objects, abstract ideas, events and relationships existing in the real world. Their meaning, properties, structure and behaviour have to be simulated by the system to the extent needed to solve actual problems. The abstractions are based on our formal and well-understood knowledge about some specific application domain. The form and extent of the contents of the concept layer are determined by the requirements of the expertise layer, because its operation is fully based on the information available to it through the concept layer. The benefits of an explicit concept layer forming an abstract model of the real world, when compared to solutions where the same knowledge is hidden inside other parts of the system, include9: Fi9. 1. system
The layered structure of an integrated knowledge
2.1 The expertise layer In an expert system, the knowledge included in the system is considered to be formed by -
-
known facts about the current problem situation in the real world, hypotheses made during the problem solving process, and rules describing dependencies and events between the above two.
In this layered system structure, we have separated the heuristic knowledge capable of solving different problem situations in the real world by reasoning from the more formal knowledge of models, concepts and algorithms forming an abstraction of the real world. We have called the first type of knowledge expertise, and located it into the core of the system as an expertise layer. The expertise is formed by heuristics, representing the problem solving capability of human experts on some specific application domain, and (inference) mechanisms controlling the problem solving process with the aid of the heuristics. The expertise describes complicated dependencies between the application concepts based on practical experience. Typically such dependencies cannot be represented with relations or algorithms but new representation techniques, like logic 7 and production rules 8, must be applied. In literature, the expertise is also called shallow knowledge or surface knowledge emphasizing the fact that we do not actually know exact theories or physical laws explaining the 'first principles' behind it. The expertise layer communicates directly only with a concept layer adjacent to it. The concept layer gives a conceptual abstraction of the real world to the expertise layer and serves as an agent supplying information that is needed during the problem solving process. Also solutions, produced by the expertise layer, are represented with the aid of concepts defined in the
Flexibility An explicit model is more independent on other parts of a system than implicit ones. It can be used in different ways, by different people, to solve different problems, from different perspectives, and with different methods. Extensibility A direct consequence of the flexibility is a possibility to build a system gradually. Extensions both to the model and to the applications it supports do not cause unexpected side effects. Reduced life cycle costs An explicit model with multiple uses is less costly to develop and maintain than several hidden models requiring separate maintenance. Integration An explicit model provides consistent representation for the information it contains across the different applications it supports. It facilitates the integration of the applications to external systems. Object-oriented programming 1° and its derivatives, like frames, schemas, units, etc., provide a natural way for representing the concept layer in a computer program. The concept definitions can be designed to form an application specific language with which to describe generic problem situations occurring in the real world as object classes. Individual problem cases are represented as instances, i.e. specific copies, of the class descriptions. The knowledge on the generic problem situations is of a permanent nature but the concept layer has also access to changeable information about actual problem cases. Communication with the world outside the system is managed by information sources defined in an information source layer adjacent to the concept layer.
2.3 The information source layer Most conventional programs (as opposed to knowledge-based programs) are build to produce a specific piece of information by processing a sequence of transformations and unifications on a set of initial information. Functional systems development methods Artificial Intelligence in Engineering, 1989, Vol. 4, No. 2
71
Integrated knowledge systems: I. Priha and procedural programming languages support this kind of approach. However, systems based on purely functional ideas lack the natural information context. Both the initial information and the result of processing are usually detached from their logical information entities and gathered up to an unnatural collection of input and output data. The user of such a system has to do the collection of input data and return the result to its logical context. A typical example is a designer using a set of separate engineering programs, each of which is capable of producing information from only one (functional) viewpoint of the design, like strength analysis, performance analysis, weight analysis, cost analysis, technical drawing, etc. In this system structure, the information source layer integrates functional programs, needed by the problem solving process, as logical information sources to the centralized, knowledge-based representation of the application in the concept layer. Such structure removes the need for manual transformations between integrated operations during the problem solving process. A logical information source is a definition and access facility of a real information source available to the system. The real sources can be physical objects or events (users of the system, machineries to be monitored, financial trends), information processing methods (different kinds of analyses), information stores (databases), or even other systems of the same kind. The real source is typically behind or inside an existing program external to the system. With the aid of the logical information sources, the information source layer supports: Standardized communication Logical information sources provide a uniform way for the concept layer to communicate with the external programs integrated to the system. Information hiding Logical information sources cover the implementations of the external programs integrated to the system, and the way how they are used. Modifications to the external programs do not affect the core layers of the system but their consequences can be limited to the information source layer. The physical connections between the information source layer and the external programs are maintained by an interface layer.
2.4 The interface layer The interface layer connects the logical information sources in the information source layer to the implementations of the corresponding real information sources. The interface layer includes protocols for accessing external programs and data bases, interfaces to sensors and measuring instruments, user interface programs, etc. It is quite specific for each application being dependant on the actual operation environment and the external components to which the system is integrated. Its task is to take care of the 'data' level communication between the system and the world outside of it. 3. A K N O W L E D G E - B A S E D
DESIGN
SYSTEM
The system structure presented above is developed in a research project on intelligent interfaces and applied to a
72
Artificial Intelligence in Engineering, 1989, Vol. 4, No. 2
knowledge system supporting hydrodynamic design of ships 11 The project is funded by the Technology Development Centre of Finland (TEKES) and the Finnish industry. It is part of the Expert Systems Subprogramme of FINPRIT.
3.1 Problem specification The purpose of the hydrodynamic design of ships is -
-
to minimize the resistance of motion, to optimize the performance of the propulsion system, to improve the behaviour of the ship in heavy sea, and to minimize the hindrances caused by the propulsion system (e.g. vibration impulses).
The result of the design work includes an estimate for propulsion power at maximum speed, recommendations for an optimal hull form and main dimensions and preliminary specifications for an optimal propulsion system. Hydrodynamic design is the first one of the twelve more or less separate design stages related to each other in a complicated way in a ship design process. In Fig. 2, the design process is presented as a spiral of iterative design circles. During the first iterations, the preliminary power requirement is estimated by using statistical methods based on resistance and propulsion measurements of existing ships and ship models. The methods have been developed during several decades of research and experiments, and their accuracy is quite good in their scope of application. However, the scope of every one method is quite narrow due to limitations in the statistical data behind it. To cover a larger scope of different ship types several concurrent power estimation methods have to be used. A Finnish shipyard, W~irtsil~i Marine, has developed a software package covering a sufficient scope. The package includes a total of 12 methods for resistance analysis and several methods for analysis and optimization of propulsion systems. The package used over 400 different input and output data items. The problem of the package is its complexity. Selection of a suitable method for an oncoming design problem, definition of correct input data for each method and interpretation of results of an analysis require, beside expertise in ship hydrodynamics in general, a lot of knowledge about applicability and limitations of the available programs. The kind of requirements described above lead easily to a situation where only one person in the organization has the experience needed to produce good design solutions in hydrodynamic design of ships. Such a situation causes a bottle-neck to the design process when the expert is temporarily not available, or more serious problems if the expert leaves the organization permanently. Because this design stage is of primary importance to the whole design process, poor design solutions can cause significant costs during detailed design, manufacturing and operation of the ship. As a solution to the problem, we have studied possibilities to transfer hydrodynamic design knowledge to a knowledge system integrated to existing engineering and design programs in the shipyard.
Integrated knowledge systems: I. Priha OWNER'S REOUIREMENIS m
. . . . . . . .
PR
IAGE BILITY
LINES & BODY PLJ
CAPACITIES, TRIM ~ INTACT STABILITY
HYDROSTATICS & BONJEANS
IGHT SHIP JEIGHT ESTIMATE
FLOODABLE LEN FREEBOARD
G
(HULL & MACHY) Fig. 2.
STRUCTURE
The ship design process 13
3.2 Description of the demonstration system During the first phase of the research project we designed and implemented a simple system which is based on the structure of the integrated knowledge system and demonstrates its possibilities. The goal of the demonstration system is to illustrate the purpose and function of each layer of the system, not to provide final solutions to design problems. The general structure of the demonstration system, showing its layers and the interfaces between them, is presented in Fig. 3.
• • E X P
3.2.1 Design expertise on ship hydrodynamics By applying the hydrodynamic design expertise, a shipyard must be able to analyse the hydrodynamic properties of ships under design. The result must be reliable enough to base the subsequent design stages on it. In addition, the design expertise is used to improve the hydrodynamic properties by changing the design in a reasonable way. The analysis should produce a preliminary power requirement estimate and justifications on its accuracy. The estimate and some additional design parameters are then used in the detailed design of the propulsion system. The design expertise can be divided into the following categories:
-
-
selection of appropriate methods for the analysis based on available information about the actual design problem, selection and definition of accurate input parameters for the selected analysis, validation of the results of the analysis, and
E
R
T
I
~
I INFORMATION RETRIEVAL FUNCTIONS t INFORMATION SOU-~YER9 COMMUNICATION FUNCTIONS I
Fig. 3.
The structure of the demonstration system
Artificial Intelligence in Engineering, 1989, Vol. 4, No. 2
73
Integrated knowledge systems: I. Priha -
recommendations for improving the design based on the results of the analysis.
We concentrated on the three first ones in the demonstration system. The acquisition of the expertise was carried out in one of the Wfirtsilfi Marine's shipyards as a part of a Master of Science thesis 13. The implementation of the expertise was done by applying rule-based programming. The expertise layer of the system forms a separate rule base which communicates with the concept layer through a blackboard. The blackboard is formed by a set of frames having the same structure as the conceptual representation of the design problem in the concept layer. However, the blackboard is available only during run-time, and it is not bound to any specific ship design project or version. Whenever some item is requested from the blackboard by a rule, a demon operation is invoked. The demon updates the value of the requested item on the blackboard to be in accordance with the current design problem description, before the rule can use it. Vice versa, when a rule writes something on the blackboard, another demon operation updates the current problem description in the concept layer. The blackboard mechanism makes the expertise layer independent of the project and version management of ship design, which helps its development and maintenance, and makes it possible to apply the same rule base to all design problems. An example of a simplified rule, selecting appropriate methods for a resistance analysis of a passenger ship, looks like this: (IF
THEN
(THE type O F analysis IS resistance) (THE type O F ship IS passenger) (THE number.of.propellers O F ship = 2) (THE method O F analysis IS TaylorGertler))
The symbols in lower case refer to specific items on the blackboard. The words in upper case are part of the rule language.
shipping, causes some confusion. The definitions of concepts needed in the hydrodynamic design are refined to very simple forms due to the statistical (and former manual) methods. For instance, the geometry of the underwater hull of the ship can be represented with its main dimensions and a few dimensionless parameters in most analyses. In the demonstration system, a hierarchic model of structural components of the ship, affecting its hydrodynamic properties, was selected as the basis for the representation of the design problem in the concept layer (Fig. 7). The model includes also some more abstract concepts, like the navigation area, related to the hydrodynamic design. The model is represented with a frame structure. The basic frame is a physical quantity whose main attributes are a value, a source for the value and a unit of measure. Design parameters are represented as specifications of the basic frame. Each of the parameters is connected to some of the components in the model as a property of that component. In Fig. 4, the parameters of the geometric hull of the ship are presented by their marine technical abbreviations. The parameters include the main dimensions of the ship. The current design problem is formed by a project with one or more versions. The project is a knowledge base containing at least one copy (instance) of each component in the model. A new version inside a project can be created by making concurrent definitions for some of the components in the project. The expertise layer has access to the model and its parameters through the blackboard. The demon operations, included in the blackboard, request values needed by the rules from the project and version describing the current design problem. The parameters of the components in the model get their values from information sources. The information sources of the system are connected to the parameters, for which they are capable of producing values, through relations. The parameters and their sources can interact with a set of information retrieval functions.
3.2.2 A conceptual model of ship hydrodynamics The concepts related to ships and ship design are well established. However, the use of non-SI units in some definitions, due to the traditional, British impact on
lnclude~
DEMO.S~ILIN DI~bfO.£PPENDAGES D£MO.IID.HULL DZMO.BOW
Fig. 4. Design parameters of the geometric hull 74
Artificial Intelligence in Engineering, 1989, Vol. 4, No. 2
3.2.3 Information sources for hydrodynamic design The most important information sources in the hydrodynamic design are the geometric definition of the
Integrated knowledge systems." I. Priha II) ~lk~[ll]ll | I |]i | I I I MIll--Oil:| ",/:I~1;I I '
[ Includ~ in
LPP LWL BWL T TI TA TF DISV C'B CM CWP LCB $ I~FYA V$ itT
m
DF,MO.HULL
1O0,0 I00.0
5.0 0.0
5.0 5.0
M M
NAPA.GEOMETRY NAPA,GI~METRY
M R,~ M M
~ P , ARY.DEFINITION SYSTEM.DEFAULT FORMULA FORMULA
HOLTROP,84 111.0
KNOTS
~ l ~ k l ~ Y ~ O N
~]iSl~.[~.],, j. ~ ,,,~,L,~
-HARVALD
IOIYLD~ pI~I~IvlA~II~NTj~.~ irvll~_~dk.~l~rlr~~
il
TFJVIPOI~tN,.Y,DF.FINITIONO O R ~ N L Iaclud~
Fig. 5.
]
-
I HOLTROP's2 [HOLTROP.78
[ ]
Information sources for the resistance of motion
underwater hull of the ship and the propulsion and resistance analyses. In our project, we used W/irtsil/i Marine's ship design system (NAPA - Naval Architectural Package) and hydrodynamic analysis system (SH Ship Hydrodynamics) as the implementations of these information sources. Among other information sources known by the system are calculation formulae, definitions made by the designer, statistical information, system defaults and permanent facts. All information sources are prioritised according to their reliability and applicability. The priorities depend on the current design problem and are updated by the design expertise. During the beginning of the design process, statistical information and default values have to be used, but when the design becomes more stable, more reliable sources can be utilized. In Fig. 5, the parameters of the hydrodynamic hull of the ship are presented. The pop-up menu shows the information sources related to the resistance of motion. At the deepest menu level, they include the different resistance analyses integrated to the system. In the demonstration system, the logical information sources, forming the information source layer, were implemented as objects containing instructions how to use a corresponding real information sources. The instructions include -
I I
a list of initial data needed by the real information source to produce a requested data or service, definitions of methods controlling the execution of the real information source, a reference to a communication protocol in the interface layer connecting the logical information source to the real one.
The information source layer interacts both with the concept layer and the interface layer. The concept layer requests parameter values from appropriate logical information sources, and the logical information sources retrieve initial data needed by the real information sources from the concept layer. The latter interaction continues with new requests from the concept layer to
CONSUMER I PROCRAM)
SERVER
PROCRAM
SYNTAX I N T E R P R E T E R
SERVER SlOE
CONSUMER SlOE W NETWORK . . . . .PROTOCOL ... ~
NETWORK
COMPUTER
COM PUTE R
PROTOCOL
Fig. 6. The structure of the remote communication protocol
other information sources. For instance, a typical resistance analysis needs values for more than 30 design parameters before it can be performed. When the value of the resistance of motion is requested from the corresponding logical information source, it will ask values for these parameters from the concept layer. The concept layer, in turn, will request the values from those logical information sources which are connected to the corresponding parameters. The new requests can require new initial data and thus invoke still more requests. The system will build a temporary network between the parameters and the information sources, which will be able to produce the originally requested piece of information. The interface layer contains the protocols through which the logical information sources can communicate with the corresponding real information sources to provide the final values for the requested data. The communication is managed with a set of communication functions.
3.2.4 Interfaces to external information sources In the demonstration system, the external information sources are W~irtsil~i Marine's design and analyses programs. The integration of external programs is made
Artificial Intelligence in Engineering, 1989, Vol. 4, No. 2
75
Integrated knowledge systems: I. Priha through a specific communication protocol (RAP Remote Access Protocol), which controls the interaction with an integrated program through its own user interface. The idea is to simulate the user commands of the integrated program when some services or information are needed. The main benefit of the solution is that the integrated program need not to be modified but still its whole functionality can be utilized. The main restriction is that the protocol supports only commandbased user interfaces. The structure of the protocol is presented in Fig. 6. The demonstration system is a consumer program and the external programs are server programs. The tasks of the protocol are: -
-
-
to open a communication link between the consumer side and the server side, to maintain the link during the execution of the system, and to synchronize communication between the sides.
The syntax interpreter is the only application dependent part of the protocol. Its task is to translate requests from the consumer program to the syntax of the user language of the server program, and responses from the server program to the form understood by the consumer program. The communication functions, with which to use the protocol, include a set of message sending and receiving functions.
II~w~o,~,s~o.l~ PItOJECT
PR~R.I~!
~o~t MlNAOl~I,,Im~Ami c h a n l e current+
. ~ ,
~l pro+ec~ ~I
MANAGE1
DE:SIGN E N V I R O N M E N T
SHIP DESIGN
PItOpIrl-WER
HYDRODYNAMIC HULL
Fig. 7.
76
OATION £1F,&
GEOMETRIC H U L L
APPENDAGES
~Ie.KN
BOW
The user interface of the demonstration system
Artificial Intelligence in Engineering, 1989, Vol. 4, No. 2
3.2.5 User interjace The user interface of the demonstration system is quite simple. Through it the user can control and monitor the execution of the system. In addition, it serves as an interface between the user as a logical information source and as a real user. The user interface is based on icons including menus which can be activated with a mouse (Fig. 7). The design projects are managed through a project manager icon. Through a program manager icon the user can control the execution of the external programs integrated to the system. The design itself is managed through icons corresponding to the conceptual structure of the components of the ship used internally by the system. The design parameters of a specific component are manipulated through forms which can be opened from the menu of the corresponding component icon. Each parameter is associated with a field in the form. The fields are divided into three columns corresponding to the value, unit and information source of the parameter. The form works as a predefined table calculation sheet where the user can fill in part of the values and the system calculates the rest (Fig. 8).
3.3 Implementation of the demonstration system The demonstration system is implemented on top of KEE (Knowledge Engineering Environment by Intellicorp), which is a Lisp-based tool supporting hybrid
Integrated knowledge systems: I. Priha 8 9 10
78
Hayes-Roth, F. Rule-based systems. Communications of the ACM 1985, 28(9), 921-932 Hedberg, S. and Dynis, J. Extending expert systems technology: model-based reasoning. IntelliNews (by IntelliCorp) 1986, 2(2), 1-12 Stefic, M. and Bobrow, D. G. Object-oriented programming: themes and variations. The AI Magazine 1986, 6(4), 40-62
Artificial Intelligence in Engineering, 1989, Vol. 4, No. 2
11 12 13
Priha, I. IDA; Intelligent Design Aid. Valokynfi 4, 1986, pp. 1722 (in Finnish) Comstoek, J. P. (ed.). Principles of Naval Architecture. New York, 1967, SNAME Halminen, M. On applying artificial intelligence technology in preliminary design of ships. Espoo, 1987, Helsinki University of Technology, M.Sc. thesis, pp. 84-93 (in Finnish)
lnteyrated knowledye systems." I. Priha
P~OJECT MANAGER
•SGRTL RT
£9 tit
RFRIC
I~
2i~.l) 6,3 ~e.II 4,3718 0,296
~-3
in
4.140 ] $4~eCl dlsplltct'w4¢~ rat. I $pe~l(tmo~z)/I.(¢*,et.)"e ! R~*/nol,¢- n ~ d ) e r J T O ~ I reSIS~LaI~'~C e.I) ! R p ~ d a g e res4sl:.~ce 291,6 I F r I ¢t.| On r e s i s t i l e
DEMO,DESIGN
0.994 0.777? 0.4728
~ I~lklrig restlrl~nc~ R~sistanoe of I~Ib S c a l e effe~-~ r e s t s t . l n ¢ C a l c u l i ~ . l o n Iwll;hod: HI. Fr~de mmber ! R e s t s t a r , c4. I*ertt; ~ f 4,91"2 ! D l ~ 4 1 q a l ~ l e s s rll~tst.&rl I . S ~ 8 ~ F r i c t ~ l o n r e s i s t , r..oeff
z
I I ! ! !
]
100.0
r
.u
t
XHO
?.$
,,9o, 1025.0
[
KO/M3
HULL
PII~,II~M¥[ MANAGEil [ Include~
]
-
Incl-cb,~
Included in
DEMO.HUI&
DESIGN E N V I l t O N M E N T
SHIP DESIGN
LPp LWL llWL T Tit TA TF DISV CB
GA'I'ION ~
100.0 100.0 20.0 S.0 0.0 5.0
Id M M M RAD IV[
5.0
M
6592.1 0.65921
MS
0.05,8
C'Wp PKOP scLLI~
HYDRODYNAMIC HULL
Fig. 8.
0,72 -0.210
GEOMETRIC H U L L
APPENDAGES
STERN
BOW
S
2188
ENTA VS RT
10.0
0.$
477~8
M M2 RAD KNOTS KN
NAPA~.-EOMETRY NA PA.GI~IvILZ"FRy PERMA N~ NT.DI~IINITION TEMPORARY.DEFINITION SYSTZ~.DI~'AULT FORMULA Y O ~
NAPA ~;EOIvlETRY FORMULA NAPA,G~RY PER/d ANENT .DI~'INITION NAPA.GEOMETRY NAPA,GL~METRY NAPA .GEOMETRY TEMPORARY.DEFINITION HOLTROP.04
Includes
The workspace of the user
knowledge representation methods. The system is running in a Symbolics 3640 Lisp-machine. The ship design and engineering programs by W~irtsil~i Marine are written in Fortran and are running in Vax and Prime computers. Our programming environment supports researchoriented software development very well being flexible enough and quite productive for testing new ideas in practice quickly. The disadvantages of the environment are expensive purchase prices, high maintenance costs and poor run-time performance.
each other, the resulting distributed knowledge system could be capable of producing solutions to problems of a new order of magnitude by combining solutions to subproblems available to it through the net. 5. R E F E R E N C E S 1
2 4. D I S T R I B U T E D
KNOWLEDGE
The system structure presented above is meant to serve as a principle for integration of different kinds of information processing techniques, and programs applying these techniques. The example illustrated integration of a knowledge-based system to existing engineering programs. However, the same principle can be applied to make two knowledge systems to communicate with each other. Through logical information sources they could share knowledge about concepts related to application areas of both of them. By creating a whole net of knowledge systems integrated to
3
4 5 6 7
Abarbanel, R. M. and Williams, M. D. A relational representation for knowledge bases. Proceedings of the First International Conference on Expert Data Base Systems, Charleston, 1~ , April 1986, University of South Carolina, p. 139 (the paper was delivered afterwards) Chalfan, K. M. A knowledge system that integrates heterogeneous software for a design application, The AI Magazine 1986, 7(2), 80-84 Zumsteg, J. R. et al. A prototype expert system for the design and analysis of composite material structures. Computers in Engineering 1985, Boston, 4-8 August 1985, The American Society of Mechanical Engineers, Vol. II, 137-150 Wilson, R. T. SEATS: an expert system to manage airline passenger discounts. Bloomington, 1986, Sperry Corporation, 14p ISO open systems interconnection Basic reference model. International Organization for Standardization, ISO/TC 97/SC, 1981, 16, 1 Nii, H. P. Blackboard systems: the blackboard model of problem solving and the evolution of blackboard architectures. The AI Magazine 1986, 7(2), 38-53 Genesereth, M. R. and Ginsberg, M. L. Logic programming. Communications of the ACM 1985, 28(9), 933-941
Artificial Intelligence in Engineering, 1989, Vol. 4, No. 2
77