ES-Builder Web - Project Help
Building an Expert System
Firstly, users must create a new project for their expert system design. This is possible once logged in.
Project Details
In the Project Details page, the user defines a title for their expert system, defines the Universe of Discourse, may define an image to display on the title page, and edit other settings for the expert system, including whether to use Certainty Factors.
Decision Tree
The deductive logic of the ES is created through the Decision Tree View by entering the title details, attributes, values, and conclusions into a decision tree. Each step in the decision tree is called a node. A node that branches out of another node in the decision tree is called a branch node. A node may have branches to further nodes, and so on, until the decision tree is complete. There are a number of basic rules about how the tree can be formed and which branch nodes a particular type of node may accept. The nodes at the very ends of branches are called leaf nodes.
Universe of Discourse
The first (or root) node in any decision tree is the Universe of Discourse (UofD). Details about UOfD are entered by the user when they create the project including:
- the name of the ES
- the identifier to be used to refer to each conclusion in the ES
- a phrase to be used as a starting link at the beginning of the ES
- a longer description of the ES to be presented on the home page of the ES. This longer description can be created using HTML tags to improve presentation in the browser.
- An image to be displayed on the home page of the ES to improve presentation.
Attribute
The second node(or first branch) of the decision tree must be an Attribute which is displayed with an 'A' icon. Attributes are characteristics of possible conclusions that are to be tested in the ES. Each Attribute must have at least two branch nodes in the completed system. The only type of branch node accepted by Attribute nodes are Value nodes.
Value
Each Value nodes represents the most correct response to an Attribute for a particular conclusion. Value nodes may have two possible types of branch node. When a further Attribute needs to be tested, the branch node of a Value will be another Attribute node. When a final conclusion has been made, the branch node of the Value will be a Conclusion node. Value nodes may have only one branch node.
- a detailed definition (this allows the designer to use a short identifier in the tree to keep the design process neat and simple)
- a certainty factor to combine with certainty factors from other values apply culminatively to to the final conclusion.
Please Note: the certainty factor only appears if the Use Certainty Factors option has been selected in the project settings.
- a paragraph of help notes to inform users about the process of the ES and to give more detailed information about possible conclusions
- an image to be displayed in the ES to assist users in the process and to give detailed visual information about possible conclusions.
Conclusion
A Conclusion node must be a leaf node. No branches are accepted from Conclusion nodes.
For each node apart from the first (UofD) node, three data items can be added. Each Attribute, Value, or Conclusion node may have:
Editing Attributes
Any number of attributes may be defined. The attribute definition may be of any length, but it is recommended that a shorter version be entered in the Decision Tree, so that the attribute may be more concisely represented on the Decision Table page when the expert system is published.
There are up to 4 fields that may be edited for each attribute.
- Attribute - Node Text
- To aid in the presentation of the decision tree and decision table, each attribute in the decision tree system must have a short name to identify its individual node. This field should be restricted to one word, if possible. This should be a simple name for the characteristic being tested at this point. In some expert systems the attribute might need to be identified by a short phrase (eg eye colour) which is elaborated on in the long description field.
- Attribute - Long Description
- This field is for publishing to the finished expert system. It provides a detailed version on the short node text used in the decision tree.
Attributes are best constructed as sentences that might be completed by choosing a value from the value list. In this way, the search process seems to be a confirmation of observed data rather than an interrogation. For example, a colour attribute may be phrased as, 'The colour of the spider is'. This can be completed by the selection of a colour from the value list. This method will also result in a very plain English-like construction of the rules for the expert system when the full expert system is printed out or the reasoning for a selection is given.
eg the attribute 'The spider is' will result in the following form:
if the spider is black
and the spider lives in a burrow
then the spider is a Black Burrowing Spider
While the attributes may be phrased as questions, this will not result in a sensible definition of the rules for the expert system
eg 'What colour is the spider?' will result in a rule like the following:
If what colour is the spider? black
and where does the spider live? In a burrow
then the spider is a Black Burrowing Spider
- Attribute Notes
- Each attribute can be defined in greater detail using this field. Users may be provided with a wide range of information about each attribute. This text may be formatted using HTML tags if required.
- Attribute Image
- Each attribute may be accompanied by a suitable image in a format that is recognised by a web browser. These include .gif, .jpg, and .png image files. Transparency and animation are supported where relevant to the file type. Care should be taken when including images to decide how the images will be stored. ES-Builder Web does not provide storage for the actual images. You may insert a valid url for an image stored elsewhere on the internet and this will be displayed in the expert system where possible. For example, you may choose to store your images in a Imgur account. Once you have stored your images on the web and can view them in your browser, a click on the image will provide you with the appropriate Direct Link url.
Adding or Deleting a Attribute
An attribute may only be inserted as the branch of an empty value (by using the right-click popup menu or pressing F4). It is intended that the user will have planned carefully before constructing the decision tree and will have provided an appropriate location for each attribute. Any attribute leaf node may be deleted at any time, but a value branch should not be left without a conclusion or an attribute attached.
Re-Ordering Attributes in the Expert System
Re-ordering or moving attributes is not possible at this stage. It is intended that the user will have planned carefully before constructing the decision tree and will have provided an appropriate location for each attribute.
Editing Values
Any number of values may be defined. The value definition may be of any length, but it is recommended that a shorter version be entered in the Decision Tree, so that the value may be more concisely represented on the Decision Table page when the expert system is published.
There are up to 4 fields that may be edited for each value.
- Value - Node Text
- To aid in the presentation of the decision tree and decision table, each value in the decision tree system must have a short name to identify its individual node. This field should be restricted to one word, if possible. This should be a simple name for the characteristic being tested at this point. In some expert systems the value might need to be identified by a short phrase (eg blue) which is elaborated on in the long description field.
- Value - Long Description
- This field is for publishing to the finished expert system. It provides a detailed version on the short node text used in the decision tree. Values are best constructed as the completion of sentences. In this way, the search process seems to be a confirmation of observed data rather than an interrogation. This method will also result in a very plain English-like construction of the rules for the expert system when the full expert system is printed out or the rule for a conclusion is given.
- Value - Certainty Factor
-
Certainty factors provide a method to test the reliability of conclusions in your expert system. The type of certainty factors, when used in ES-Builder Web, are a simplified model that should be based on the results of thorough reliablility testing.
Conclusions in ES-Builder Web are reached by a process of induction(forward-chaining) where attributes of the tested instance are matched to a limited range of values. Thus testing can be undertaken of the reliability of users to make correct value choices based on the available data. By conducting an extensive testing regime, the applied certainty factor can approach an accurate representation of the probability that a user will correctly select a value in a given instance.
- Testing Values
-
Testing to calculate certainty factors can be done in two ways:
- Simple Certainty Factors are fractions used to represent the probability that when a user selects a option that this selection is correct. When using Simple Certainty Factors in ES-Builder Web, the creator of the system does the testing externally and enters the simple CF values in to the decision tree in the field provided for that purpose. Those CF values are then used in calculating the probability that a correct conclusion has been reached by the system.
- Tested Certainty Factors are also fractions used to represent the probability that when a user selects a option that this selection is correct. However, when using Tested Certainty Factors in ES-Builder Web, the CF data is calculated based on the results of testing of the system by test users. An application is provided within ES-Builder Web to support the testing of the system. This application shows each possible conclusion in the expert system sequentially with all attributes to be tested for each conclusion. The tester makes a selection of an appropriate value in response to each question and the correctness of these decisions are stored. When the expert sytem using Tested Certainty Factors is used, the probability that a certain conclusion is correct is calculated from the stored test data.
ES-Builder certainty factors differ fundamentally from Bayesian probability which uses complex calculations to determine the probability of a conclusion being correct.
- Value Notes
- Each value can be defined in greater detail using this field. Users may be provided with a wide range of information about each value. This text may be formatted using HTML tags if required.
- Value Image
- Each value may be accompanied by a suitable image in a format that is recognised by a web browser. These include .gif, .jpg, and .png image files. Transparency and animation are supported where relevant to the file type.
Care should be taken when including images to decide how the images will be stored. ES-Builder Web does not provide storage for the actual images. You may insert a valid url for an image stored elsewhere on the internet and this will be displayed in the expert system where possible. For example, you may choose to store your images in a Imgur account as are the images in the sample expert systems we have provided. Once you have stored your images on the web and can view them in your browser, a click on the image will provide you with the appropriate Direct Link url.
Adding or Deleting a Value
A value may only be inserted as one of the branches of an attribute(by using the right-click popup menu or pressing F6). It is intended that the user will have planned carefully before constructing the decision tree and will have provided an appropriate location for each value. Any value leaf node may be deleted at any time, but an attribute branch should not be left without at least 2 values attached.
Re-Ordering Values in the Expert System
Re-ordering or moving values is not possible at this stage. It is intended that the user will have planned carefully before constructing the decision tree and will have provided an appropriate location for each value.
Editing Conclusions
Any number of conclusions may be defined. The conclusion definition may be of any length, but it is recommended that a shorter version be entered in the Decision Tree, so that the conclusion may be more concisely represented on the Decision Table page when the expert system is published.
There are up to 4 fields that may be edited for each conclusion.
- Conclusion - Node Text
- Each conclusion in the decision tree system must have a short name to identify its individual node. This may simply be its correct scientific name as in a biological classification expert system (eg bufus maximus) or a chemical analysis expert system (eg hydrochloric acid). In other expert systems, such as a fault diagnosis system, the conclusion might need to be identified by a short phrase (eg the widget control is faulty) which is elaborated on in the long description field.
- Conclusion - Long Description
- This field is for publishing to the finished expert system. It can provide a detailed version on the short node text used in the decision tree, or it may be just the same text.
- Conclusion Notes
- Each conclusion can be defined in greater detail using this field. Users may be provided with a wide range of information about each conclusion. This text may be formatted using HTML tags if required.
- Conclusion Image
- Each conclusion may be accompanied by a suitable image in a format that is recognised by a web browser. These include .gif, .jpg, and .png image files. Transparency and animation are supported where relevant to the file type.
Care should be taken when including images to decide how the images will be stored. ES-Builder Web does not provide storage for the actual images. You may insert a valid url for an image stored elsewhere on the internet and this will be displayed in the expert system where possible. For example, you may choose to store your images in a Imgur account as are the images in the sample expert systems we have provided. Once you have stored your images on the web and can view them in your browser, a right-click on the image will provide you with the appropriate url.
Adding or Deleting a Conclusion
A conclusion may only be inserted as the branch of an empty value(by using the right-click popup menu or pressing F8). It is intended that the user will have planned carefully before constructing the decision tree and will have provided an appropriate location for each conclusion
Any conclusion node may be deleted at any time, but a value branch should not be left without a conclusion or an attribute attached.
Re-Ordering Conclusions in the Expert System
Re-ordering or moving conclusions is not possible at this stage. It is intended that the user will have planned carefully before constructing the decision tree and will have provided an appropriate location for each conclusion.
Viewing Progress of the Construction of the Expert System
The Expert System that you are currently editing can be viewed in your web browser at any time HTML by clicking on the Search (magnifying glass) icon in the top right of the decision tree. This opens the Es in a separate browser window. The ES viewed will contain all detail inserted up until the last time content was saved in the decision tree. This is in fact a live view built dynamically from the database and so any edit, at any time, to the decision tree will result in the live view of the expert system being automatically and instantly updated.
Sharing your Expert System
An Expert System that is a web site can have many practical applications, which means that a more realistic project can be attempted. If you can think of a web site that could be improved by expert system type problem-solving advice, then you can think of a likely place to publish a link your project. Expert Systems that help people choose a car, video, game or CD are just some examples. Another could help diagnose an illness or skin disorder! A url for linking to your ES is available when you are editing your Project Details.