What is an Expert System?
Expert systems are often used to advise non-experts in situations where a human expert in unavailable (for example it may be too expensive to employ a human expert, or it might be a difficult to reach location).
How Do Expert Systems Work?
- A user interface - This is the system that allows a non-expert user to query (question) the expert system, and to receive advice. The user-interface is designed to be a simple to use as possible.
- A knowledge base - This is a collection of facts and rules. The knowledge base is created from information provided by human experts
- An inference engine - This acts rather like a search engine, examining the knowledge base for information that matches the user's query
The inference engine uses the query to search the knowledge base and then provides an answer or some advice to the user.
Where Are Expert Systems Used?
Playing strategy games like chess against a computer (the knowledge base would contain strategies and moves, the player's moves would be used as the query, and the output would be the computer's 'expert' moves)
Providing financial advice - whether to invest in a business, etc. (the knowledge base would contain data about the performance of financial markets and businesses in the past)
Helping to identify items such as plants / animals / rocks / etc. (the knowledge base would contain characteristics of every item, the details of an unknown item would be used as the query, and the advice would be a likely identification)
Helping to discover locations to drill for water / oil (the knowledge base would contain characteristics of likely rock formations where oil / water could be found, the details of a particular location would be used as the query, and the advice would be the likelihood of finding oil / water there)
Helping to diagnose car engine problems (like medical diagnosis, but for cars!)
Can Expert Systems Make Mistakes?
However expert systems can some problems:
- Can't easily adapt to new circumstances (e.g. if they are presented with totally unexpected data, they are unable to process it)
- Can be difficult to use (if the non-expert user makes mistakes when using the system, the resulting advice could be very wrong)
- They have no 'common sense' (a human user tends to notice obvious errors, whereas a computer wouldn't)