Expert system: Difference between revisions

The educational technology and digital learning wiki
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
[[under construction]]
{{under construction}}


== Definition ==
== Definition ==

Revision as of 14:45, 24 April 2006

This article or section is currently under construction

In principle, someone is working on it and there should be a better version in a not so distant future.
If you want to modify this page, please discuss it with the person working on it (see the "history")

Definition

Expert systems are a kind of computer software that is able to solve certain kinds of problems.

In education, expert systems are used in various kinds of artificial intelligence and education projects, e.g. intelligent tutoring systems, intelligent learning environments, adapative hypertext systems. They are also in use as a kind of simulation.

Definition by an example

Most expert systems are rule based. Let's explain how this works with an example taken from a text by young Pierre Dillenbourg (1994).

Let us imagine that the travel agency trainee has to solve the following problem: Problem 22 Mr Hubert wants to go from Geneva to Igloolik, Canada. His is member of the frequent flyer programme of Swissair Departure: 1.04.95 Return: 10.05.95

The standard way to do support interactions about this problem would be to store the solution: Solution 22 Flight SR434 Geneva - Zurich 1.04.94 9 H 40 Flight SR121 Zurich - Ottawa 1.04.94 11 H 45 Flight AC101 Ottawa - Frobisher 2.04.94 9 H 30 Flight AC123 Frobisher-Igloolik 2.04.94 16 H 20 ... Another approach is to AI techniques to model the reasoning process which led to that solution. Knowledge modelling techniques decompose the reasoning process into numerous intermediate steps or decisions. The knowledge necessary for each step or decision is generally expressed as an 'IF-THEN' rule. Here are a few examples of rules that could be used for solving the problem presented above:

Rule 12
  IF the destination is a remote and unknown place,
  THEN plan the trip via a major city in the area
Rule 33
  IF the local flight is done by a company
  THEN plan the international flight with this company
Rule 122
  IF the customer is part of the frequent flyer programme of a company and if this company has a flight to the customer's destination
  THEN select a flight with this company

Each of these rules encodes a fragment of expertise. The system reasons by checking the 'IF' part of each rule. If the conditions described in the 'IF' part are matched, the system activates the 'THEN' part of the rules. The rules are general: the term 'a company', 'destination' or 'customer' are instantiated by the data of this problem. Some of these rules may be contradictory for some cases, as the 33 and the 122. The system selects the rules and activates them until the problem is solved. In real systems, the rule syntax is of course more formal than the examples above. The systems based on such a set of rules are generally named, knowledge-based, rule-based systems or expert systems. The system component which selects rules, makes the deductions and updates the problem state is called the inference engine.

By decomposing the expertise into fragments, we also decompose the reasoning into intermediate steps. These steps constitute the 'solution path'. The main advantage is that the system can interact about any of these steps: Zurich - Ottawa - Frobisher. For instance, if the learner selects Toronto instead of Ottawa, the system may ask the learner to justify his choice or may present the reasons why it selected Ottawa.

The second advantage of AI techniques is that the system can explain its solution. In general, the explanation is the sequence of rules which have been used by the expert to reach the solution (the 'trace' of its reasoning).


References

Dillenbourg, P. (1994). The role of artificial intelligence techniques in training software, Paper presented at LEARNTEC 1994. [1].