Table of Contents:-
- What is Business Expert System?
- Business Expert System Meaning
- Characteristics of Expert System
- Functions of Expert System
- Structure of Expert System
- Components of Expert System
- Role of Expert Systems in Complex Decisions
- Building of an Expert System
What is Business Expert System?
A Business Expert System (BES) is a knowledge-based information system based on artificial intelligence. A knowledge-based information system adds a knowledge base that uses its understanding of a specific, complex application area to act as an expert.
An expert system is software consisting of a ‘knowledge base of facts’ and relationships and can draw conclusions based on such a knowledge base. In other words, an expert system is a computer-based information system, where knowledge is represented in data. The processing of such knowledge is managed by computer programs.
It can also be said that an expert system is a computer application, which enables even non-experts to utilize and obtain results. This means that an expert system can be considered the equivalent of an expert in a specific problem domain. The expert system acts as an excellent guide towards the performance of ill-structured tasks.
Hence, an expert system can be considered as a Decision Support System (DSS), having unique features of knowledge base, data and decision rules, which help ES to act as an expert.
Due to its wide applicability in business decisions, the expert system is also called the Business Expert System (BES). It is a knowledge-based information system; working as an expert depends on one’s knowledge of a specific and complex application area.
Business Expert System Meaning
According to Gaschnig, Reboh and Reiter, “Expert systems are interactive computer programs incorporating judgment, rules of thumb, intuition and other expertise to provide knowledgeable advice about a variety of tasks”.
According to Professor E. Feigenbaum, “An Expert System is an intelligent computer program that uses knowledge and inference procedures to solve problems that are difficult enough to require significant human expertise for their solution. Knowledge necessary to perform at such a level, plus the inference procedures used, can be thought of as a model of the expertise of the best practitioners of the field.”
Characteristics of Expert System
The essential characteristics of expert systems are as follows:
1) Ability to Provide a Training Facility: The expert system can train critical personnel and staff members. It can provide such training because of its vast knowledge base and exceptional explanatory capabilities.
2) Institutional Memory: An expert system is a corpus of knowledge (providing expertise to the system) and thus acts as institutional memory. This implies that their expertise remains intact even when essential people leave the organisation. This feature is critical in business, mainly in the military and government, where rapid turnovers and frequent personnel transfers occur.
3) High-Level Expertise: One of the most valuable features of the expert system is its ability to provide the high-level expertise it gives while solving any problem. It offers the best thinking, just like top experts and ends up with imaginative, accurate and efficient solutions.
4) Predictive Modelling Power: Predictive modelling power is another significant feature of an expert system as it helps users evaluate the possible effects of changes in facts or data. It also enables us to understand the relationship of changes to the outcome. This is possible because the system functions as a problem-solving model while providing answers to given problems and describing the changes occurring due to the effects of new situations.
Functions of Expert System
1) Diagnosis:Â It finds the nature and cause of an observed situation.
2) Interpretation:Â It describes and investigates the observations.
3) Negotiation:Â It recommends, evaluates and schedules contracts between parties.
4) Prediction:Â It forecasts the future while evaluating time.
5) Regulation:Â It responds to commands and regulates control parameters to sustain stability and performance.
6) Design:Â It considers the form and material of the new device, object, system or method.
7) Instruction:Â It provides knowledge or skill.
8) Monitoring:Â It monitors a process, compares the actual observations with expected observations, and shows the system status.
9) Planning:Â It plans activities to attain the desired targets.
10) Reconfiguration:Â It changes the system structure to sustain or enhance the performance.
Structure of Expert System
There exist two environments in the expert systems, as shown in the image below:
1) Development Environment: The Expert System (ES) builder makes the components and stores the knowledge in the knowledge base in a development environment.
2) Consultation (runtime) Environment: Non-experts generally work in the consultation environment. Their function is to get knowledge and suggestions from experts.
When the overall systems have been developed, these environments can be separated.
Components of Expert System
The following components are part of an expert system:
1) Knowledge Base
The main raw material of expert systems is knowledge. The knowledge which is essential for understanding and solving a problem is included in the knowledge base. This contains two elements:
- Facts: It encompasses details about the problem situation or area.
- Special Heuristics or Rules: They control the use of knowledge to solve particular problems in a specific domain. In application areas, informal judgmental knowledge is generally conveyed through heuristics or rules.
2) User Interface
A language processor is one of the key components of ES as it provides easy communication between the user and the computer for solving problems. Effective communication is most successful when it occurs in a natural language. However, due to technological limitations, most existing systems use the question-answer method to interact with the users. The use of menus, electronic forms and graphics supports this.
3) Explanation Subsystem (Justifier)
The explanation sub-system or justifier can trace responsibility for the conclusions obtained from the sources. This function is extremely important for the transfer of expertise as well as problem-solving. The justifier explains ES behaviour by answering the following questions.
- Why did the expert system ask a specific question?
- How did an ES conclude?
- What was the reason for rejecting other alternatives?
- What is the procedure adopted to reach a solution? For example, what remains to be established or analyzed before arriving at a definitive diagnosis?
In a simple ES, the explanation tells about the rules which can be used to obtain particular suggestions or solutions.
4) Knowledge Acquisition Subsystem
Knowledge acquisition refers to the gathering, transmission and conversion of problem-solving capability from experts or documented sources to a computer program. This helps in the construction or expansion of the knowledge base. Sources of knowledge can be human experts textbooks, multimedia documents, databases, and special research reports.
5) Inference Engine
The inference engine is the brain of the expert system. It is also known as the rule interpreter or the control structure. The computer program offers a systematic procedure for reasoning about information in the knowledge base. Additionally, it can also be used for formulating inferences. It provides guidelines on using the knowledge base while effectively organising and controlling the steps required to solve problems.
6) Blackboard (Workplace)
The blackboard is a temporary database which interprets the current problem as per the input data. This is the part of working memory which records transitional (intermediary) hypotheses and decisions. Three types of decisions, recorded on the blackboard, are as follows:
- A plan on how to tackle the problem,
- An agenda on actions to be executed, and
- Finding a solution by taking into consideration different hypothetical situations and the corresponding actions the system has generated.
7) Knowledge Refining System
Human beings (experts) contain a knowledge-refining system. They use this system so that they can review their knowledge base, learn from it and enhance it for better results. Such a kind of assessment is also essential in computerised systems so that the program can learn and analyse the causes for its success or failure, thereby developing a more accurate knowledge base. However, at present, this component is not available in commercial expert systems, but research institutions and universities are working on the development of such experimental ESs.
Role of Expert Systems in Complex Decisions
The role of expert systems in complex decisions can be explained as follows:
1) Help to distribute human expertise.
2) Enhance the utilisation of most of the available data.
3) Permit dynamism through modularity of structure.
4) Encourage investigations into the subtle aspects of a problem.
5) Increase the frequency, probability, and consistency of making good decisions.
6) Facilitate real-time, low-cost expert-level decisions by the non-expert.
7) Permit objectivity by weighing evidence without bias and regard for the user’s personal and emotional reactions.
8) Free up the human expert’s mind and time, allowing them to dedicate their valuable time and mental energy towards engaging in more innovative endeavours.
Building of an Expert System
Expert system development can be viewed as five highly interdependent and overlapping phases. The image below illustrates how these phases interact.
1) Identification
During identification, the knowledge engineer and expert determine the important features of the problem. This includes identifying the problem itself (e.g., type and scope), the participants in the development process (e.g., additional experts), the required resources (e.g., time and computing facilities) and the goals or objectives of building the expert system(e.g., improve performance or distribute scarce expertise).
Of these activities, identifying the problem and its scope gives developers the most trouble. The problem is often considered too large or complex and must be scaled down to a manageable size. The knowledge engineer may obtain a quick measure of this complexity by focusing on a small but interesting subproblems and implementing routines to solve it.
2) Conceptualisation
During conceptualisation, the knowledge engineer and expert decide what concepts, relations and control mechanisms are needed to describe problem-solving in the domain. Subtasks, strategies and constraints related to the problem-solving activity are also explored. At this time, the issue of granularity is usually addressed. This means considering the level of detail the knowledge should be represented.
The knowledge engineer will generally pick the most abstract level of detail (coarsest grain) that still provides adequate discrimination between critical concepts. The developers must refrain from trying to produce a complete problem analysis before beginning program implementation. They will learn much from the first implementation that will shape and direct the conceptualisation process.
3) Formalisation
Formalisation involves formally expressing the key concepts and relations within a framework suggested by an expert system-building language. Thus, the knowledge engineer should have some ideas about appropriate tools for the problem by the time formalisation begins. For example, suppose the problem seems amenable to a rule-based approach. In that case, the knowledge engineer might select ROSIE as the system-building language and gather expertise in IF-THEN rules.
If a frame-based approach seems more appropriate, the knowledge engineer might instead select SRL and work with the expert to express domain knowledge as an extensive network.
4) Implementation
The knowledge engineer turns the formalised knowledge into a working computer program during implementation. Constructing a program necessitates the incorporation of form, content, and integration.
- Content: The content comes from the domain knowledge made explicit during formalisation: inference rules, data structures and control strategies necessary for problem-solving.
- Form: The form is specified by the language chosen for system development.
- Integration: Integration involves combining and reorganising various pieces of knowledge to eliminate global mismatches between data structures and rule or control specifications.
Implementation should proceed rapidly because one of the reasons for implementing the initial prototype is to check the effectiveness of the design decisions made during the earlier phases of development. This means there is a high probability that the initial code will be revised or discarded during development.
5) Testing
Finally, testing involves evaluating the performance and utility of the prototype program and revising it as necessary. The domain expert evaluates the prototype and helps the knowledge engineer adjust it. As soon as the prototype runs on a few examples, it should be tested on many problems to evaluate its performance and utility. This evaluation may uncover problems with the representational scheme, such as missing concepts and relations, knowledge represented at the wrong level of detail, or unwieldy control mechanisms. Such problems may force the developers to recycle through multiple development phases, such as reformulating the concepts, fine-tuning the inference rules, and revising the control flow.