Custom Search
 

Expert Systems

 

 

 

 

         

An Expert System is a computer program that is designed to solve specific real-world problems like one or more human experts would. For this to happen, an expert system must be equipped with equivalent human knowledge and thinking process used by its its human counterpart(s). The main challenges in building expert systems, therefore, are: 1) how to represent real-world human knowledge into a form that the computer can process readily and 2) how to give the computer the ability to mimic a human expert's thinking process.

   

Due to the inherent complexity of real-world problems, expert systems are designed to be narrow in scope, i.e., each one only specializes in a small field of expertise. Typical applications include machine troubleshooting, medical and psychological diagnosis, system failure analysis, financial assessments, etc.  

 

 

Expert systems constitute a distinct field of practical application of artificial intelligence (AI).  Over the years, many techniques and systems have been developed for creating expert systems, resulting in expert systems that vary widely in form and function.  Nonetheless, a typical expert system has three primary components: 1) a knowledgebase (kbase) that contains the expert's knowledge required to solve problems in its problem domain; 2) an engine that processes the available information about the problem and applies the kbase to come up with a solution to the problem; and 3) a human interface for the user. Many expert systems, but not all, also incorporate a systematic learning process that improves its performance with its usage.

  

The process of building up the contents of the kbase varies from one expert system to another.  Some simple kbase systems get knowledge directly from a single expert's typing on a keyboard, while other kbase systems collect their knowledge from a large group of experts and users through a network. Some sophisticated kbase systems can even gather their knowledge autonomously from various sources.

  

Many expert systems today, however, are built using expert system shells, generic versions of which are now widely available in the market. An expert system shell is a special software package for building and implementing expert systems.  It usually comes as a complete package already, equipped with the following: 1) a structure for systematic build-up and storage of knowledge in the kbase; 2) an inference engine that handles the problem-solving process; and 3) a user interface for convenient inputting of knowledge or use of the expert system. A generic expert system shell is easy to use and will work for many applications, but will not be applicable to all kinds of problems, so some expert systems dealing with complex problems still need to be customized.

   

The science of artificial intelligence has expanded so much these past two decades that the 'thinking process' of expert systems are now implemented in many different ways.  The most basic approach is to use an inference engine capable of backward- and/or forward-chaining.  In such an expert system, the knowledge is represented as a set of rules at different levels, i.e., a group of little rules can form a new rule, which in turn can be used to form other rules. The kbase of such a system is therefore just a rule-based decision tree. When solving a problem, the inference engine looks at these rules and compare them with the facts known about the problem being solved.  It then picks the solution supported by rules that most closely match the facts at hand.

  

Backward chaining refers to the inference process that starts with the solution, and compares the rules attached to the solution with the facts at hand one by hand.  If the rules and facts don't match, then a new solution is picked and the process starts all over again. This process starts at the end (the solution itself), and goes backward inspecting one rule at a time until all rules of a solution are matched, which is why it is called backward chaining or a top-down solution.

  

Forward chaining is the reverse of backward chaining - it is a bottom-up process that starts with the lowest-level rules first and try to go up the rule tree, matching one rule at a time with the facts, until it completes a chain of correctly-matched rules that leads to a solution at the top. 

  

Aside from inference engines, experts systems have also been built using artificial neural networks (ANN). Inspired by how a real brain works, an artificial neural network is an information processing tool that uses a huge interconnection of nodes or processing elements known as 'artificial neurons' working together to solve a problem. ANN's have been proven to work well with pattern matching and self-learning, making it really suitable for use in expert systems.

          

 

   

See Also:   More Industry Articles