Expert Systems/Introduction to Expert Systems

Computer Intelligence
AI research has been one of the most frenzied areas of computer science since the inception of the discipline. However, despite the massive effort and money that has gone into research, computers are still unable to perform simple tasks that humans do on a regular basis. Many researchers believed that a comprehensive system of logic would enable computers to successfully complete high-level reasoning tasks that humans can perform. However, logical computer programs require knowledge on which to base decisions. Converting human knowledge into a form that is both meaningful and useful for a computer has proven to be a difficult task.

Expert Systems
Expert systems are an area of AI research that attempts to codify the knowledge and reasoning processes of a human expert into a computer program.

How Expert Systems Work
Expert systems interact with another entity, such as a human user or an application, to discover information about a problem, and evaluate possible solutions. The most simple form of an expert system is a question-and-answer system, where a human user is presented with questions. The user answers these questions, and those answers are used to further the reasoning process of the expert system.

Uses of Expert Systems
Expert systems are used for problems where there is incomplete data about a subject, and insufficient theory available for the creation of an algorithmic solution. Some problems, such as medical diagnosis, are not easily solved with an algorithm, but instead require reasoning and induction.

Numerical algorithms are more efficient than expert systems, and are typically more exact. However, many problems are not suited to being easily modeled mathematically, and in these cases numerical algorithms are not possible. Other AI techniques, such as artificial neural networks are suited for problems where there is very little theory but a wealth of experimental data.

Expert systems tend to be slow, and often require extensive human interaction. However, well-designed expert systems can be very rigorous, and some expert systems have been shown to outperform the human experts that helped to develop them.

Shortcomings of Expert Systems
Expert systems are based on human knowledge and reasoning patterns. This knowledge must be extracted from a human expert by a specialized knowledge engineer. Knowledge engineers ask the expert questions about his knowledge and his reasoning processes, and attempts to translate that into a computer-readable format known as a knowledge base. Expert systems generated in this way will be flawed if the information received from the expert is flawed, or if it is incorrectly translated by the knowledge engineer.

Expert systems, because they are focused on a single problem area, tend to fail catastrophically if presented with a problem or information that is outside their domain.