Introduction
to ES-Builder *
ES-Builder is an Expert System Shell application. The software is used to design expert systems that may be published as a web pages and incorporated as a knowledge base in any web site. ES-Builder features a decision tree modelling process for developing the logic of the expert system(ES).
The purpose of the ES-Builder program is to assist expert system developers by providing a simple interface to implement model expert systems that may have been pre-designed using a suitable design process.
Building an expert system with ES-Builder is easy, because it uses a familiar Windows interface which can be easily accessed by anyone familiar with computers. When the expert system is complete and published as a web site, the user simply has to click on an option from a list presented on a page for each attribute. Attributes are displayed in sequence with only attributes appropriate to the current search shown.
ES-Builder was originally conceived as an aid to the teaching of the basic concepts of expert systems within the Artificial Intelligence topics of Information Technology courses in secondary schools and colleges.
The design of the ES-Builder program recognises that the processes of designing the logic of an expert system are the key concepts to be learnt in AI. ES-Builder simplifies the implementation of such an expert system, but relies on the correct specification of the logic of the system using a decision tree.
Examples of appropriate decision trees can be found on the McGoo Software website along with sample expert system files.
Using the ES-Builder expert system shell
*
ES-Builder is
a trademark of McGoo Software ![]()
www.mcgoo.com.au
Using the ES-Builder expert system shell
ES-Builder is a dual purpose program. It allows the user to both create an expert system(ES) and to search the expert system for results. This allows the user the flexibility to both edit the expert system and to test it within the one application.
Before expert systems can be created in the ES-Builder expert system shell, the user first needs to:
· plan and design the expert system efficiently using a clearly defined Universe of Discourse .
· have identified all the conclusions to be included in the expert system
· have determined all of the attributes that will be tested by the expert system
· have researched the Universe of Discourse thoroughly and have identified all appropriate values for each attribute.
In addition, the expert system can be improved by:
· the preparation of extra notes on each possible attribute,IDH_attrib value, and conclusion to further inform the user about the result of each search.
· the use of suitable image graphics to illustrate each attribute, value, and conclusion during the search process
Searching
the Expert System
Expert systems are tested in this component of ES-Builder .
Creating
the Expert System using ES-Builder
Creation of an expert system(ES) in ES-Builder is done in through the 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.
The first (or root) node in any decision tree is the Universe of Discourse (UofD).
The UOfD requires the user to enter a number of details about the expert system including:
· the name of the ES
· the creator/s 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.
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.
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 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:
· a detailed definition (this allows the designer to use a short identifier in the tree to keep the design process neat and simple)
· 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.
Editing Expert System
Details
The Edit Details page can be reached by clicking on the Universe of Discourse or “root” node of the decision tree.
Title of Expert System
In this field, insert an appropriate title for the expert system. A title helps to communicate the purpose of the expert system.
Created of Expert System
In this field, the user may record an personal identifier. This identifier is used on the home page of the expert system.
Each Conclusion in Expert System is a:
If the word ‘conclusion’ in this field is replaced by a name for the conclusions of the expert system, then this name will appear almost everywhere in the system instead of the word ‘conclusion’. For example, the words, ‘the spider is a Red-Back Spider’ would appear instead of the words, ‘the conclusion is a Red-Back Spider’. Similarly, ‘Conclusion No: 7’ would be replaced with ‘Spider No: 7’.
Text for Starting Link on Home Page of Expert System
In this field, the user may record an short phrase that will be used on the home page of the expert system as a starting link for searches of the ES.
Description of Expert System
In this field, insert an broad description of the Expert System being developed. The Universe of Discourse sets out the boundaries for the area under discussion. It should nominate the objects within the expert system and the limits in which these may be found. For example, ‘all insects found in the Black Lagoon’, or ‘all birds found around waterholes in Australia’.
The Description section can be opened in a basic HTML Editor by clicking on the Edit… button above the Notes field. Any changes made in the HTML Editor are saved back to this field and saved with the .tree file.
Image for Export
The description of expert system on the home page 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. If the Relative Paths option is checked, images selected will automatically be copied to the work folder where the tree file has been saved. This location relative to the tree file will be used to find all images when publishing the expert system.
If Relative Paths is unchecked, images will be left in their source folders and full path information to their location will be stored in the tree file. Access to these original folders will be necessary when publishing the expert system to HTML.
McGoo Software recommends the use of Relative Paths whenever possible for portability of work files, especially when saving work on a flash drive to move between computers.
It is important that a choice be made about the use of Relative Paths before inserting any images, as if this choice is reversed later on, all images will need to be re-selected for the publish to HTML function to work correctly.
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 .
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.
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
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. The Notes section can be opened in a basic HTML Editor by clicking on the Edit… button above the Notes field. Any changes made in the HTML Editor are saved back to this field and saved with the .tree file.
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. If the Relative Paths option is checked, images selected will automatically be copied to the work folder where the tree file has been saved. This location relative to the tree file will be used to find all images when publishing the expert system.
If Relative Paths is unchecked, images will be left in their source folders and full path information to their location will be stored in the tree file. Access to these original folders will be necessary when publishing the expert system to HTML.
McGoo Software recommends the use of Relative Paths whenever possible for portability of work files, especially when saving work on a flash drive to move between computers.
It is important that a choice be made about the use of Relative Paths before inserting any images, as if this choice is reversed later on, all images will need to be re-selected for the publish to HTML function to work correctly.
An attribute may only be inserted as the branch of an empty value. 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 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
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.
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 eye colour) which is elaborated on in the long description field.
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.
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. The Notes section can be opened in a basic HTML Editor by clicking on the Edit… button above the Notes field. Any changes made in the HTML Editor are saved back to this field and saved with the .tree file.
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. If the Relative Paths option is checked, images selected will automatically be copied to the work folder where the tree file has been saved. This location relative to the tree file will be used to find all images when publishing the expert system.
If Relative Paths is unchecked, images will be left in their source folders and full path information to their location will be stored in the tree file. Access to these original folders will be necessary when publishing the expert system to HTML.
McGoo Software recommends the use of Relative Paths whenever possible for portability of work files, especially when saving work on a flash drive to move between computers.
It is important that a choice be made about the use of Relative Paths before inserting any images, as if this choice is reversed later on, all images will need to be re-selected for the publish to HTML function to work correctly.
A value may only be inserted as one of the branches of an attribute. 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 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
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.
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.
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.
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. The Notes section can be opened in a basic HTML Editor by clicking on the Edit… button above the Notes field. Any changes made in the HTML Editor are saved back to this field and saved with the .tree file.
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. If the Relative Paths option is checked, images selected will automatically be copied to the work folder where the tree file has been saved. This location relative to the tree file will be used to find all images when publishing the expert system.
If Relative Paths is unchecked, images will be left in their source folders and full path information to their location will be stored in the tree file. Access to these original folders will be necessary when publishing the expert system to HTML.
McGoo Software recommends the use of Relative Paths whenever possible for portability of work files, especially when saving work on a flash drive to move between computers.
It is important that a choice be made about the use of Relative Paths before inserting any images, as if this choice is reversed later on, all images will need to be re-selected for the publish to HTML function to work correctly.
Adding or Deleting a Conclusion
A conclusion may only be inserted as the branch of an empty value. 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.
Editing Attributes
The HTML Notes Editor
Notes for the ES, Attributes, Values, and Conclusions can all be quite long. The field for each does not allow the use of line returns or tabs as the output of these notes is inserted into a web site and the line returns and tabs are ignored by the browser. However, HTML tags do allow line returns and tab marks, etc.
By clicking on the Edit button above the notes field, the user can bring up a basic HTML editor to assist with appropriate HMTL formatting for the Notes field. Changes are updated to the relevant Notes field on exit from the HTM Editor.
The Picture Viewer
The picture viewer can be used to view large images full-size. Just click on the View button above the image.
Checking the Decision
Tree
To check the
decision tree for possible structural errors, click on the
button on the toolbar, select Tree
| Check Tree from the menu or press [Ctrl + K] on the keyboard.
The Check Tree function works down through the tree, stopping and highlighting any node where there might be a potential structural problem. If the problem is likely to cause the resulting expert system to have a serious fault, the Check Tree function will stop at that node until the problem is resolved. Problems might include: an attribute or value as a leaf node with no conclusion following; an attribute with only one value node attached; or an attribute has been tested twice on the way to a conclusion. Each of these potential errors can have a serious effect on the quality of the final ES and should be rectified before publishing.
The Check Tree function alerts the user if a conclusion has been duplicated, but will continue on once the user verifies this is intentional. It is quite alright to use a conclusion more than once in the ES as long as this was intended and not an error on the part of the user.
Printing the Decision
Tree
A
Print Preview of the decision tree can be reached by clicking on the
button on the toolbar,
choosing Tree | Print Preview from the menu or by pressing [Ctrl + P1]
on the keyboard.
From this screen the decision tree can be visually checked for layout.
To print out the decision tree, simply click on the Print button. A progress box will appear to show the progress of the job being sent to the printer.
Searching the Expert System
Publishing the
Expert System to a Web Site (HTML)
The
complete Expert System can be saved as HTML to create a web by clicking on the
button
on the tool
bar, choosing Publish | Publish to web site from the menu, or by
pressing [Ctrl + H] on the keyboard.
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 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!
Including the Project Notes in the Web Site
Editing the Web Site Style Sheet
The colours
and fonts, etc. of the published ES web site can be modified by clicking on the
button on the
toolbar, selecting Publish | Edit Web Site Style from the menu or by
pressing [Ctrl + F] on the keyboard.
Items in on the site style dialog can be edited by the right-clicking on the desired object and choosing an item from the context menu. Only valid items can be selected. Selected colours and fonts are displayed in this dialog.
If you make no changes, the default colours and fonts shown are used.
Web site styles are saved to the published web folder as web.css which is compatible with all browsers according to the Cascading Style Sheets standards.
Viewing the Web Site
in the Browser Window
ES-Builder
has its own browser window to avoid opening multiple instances of your default
browser when testing HTML publishing. It is simple to switch between the
browser window and other screens in ES-Builder by using the
button toolbar, selecting
View | Web View from the menu or pressing the shortcut key, [Ctrl+B].
Creating an Expert System Web Site
Including
the Project Documentation in the Web Site.
One
of the benefits of being able to save the Expert System to a web site is that,
with a little work, the website can become the whole project. Paper is not
needed. The Project Documentation can be edited by clicking on the
button on the toolbar, selecting Publish
| Edit ES Documentation from the menu, of pressing F7 on the
keyboard.
When you first choose this option, you will be given a range of options, possibly with one pre-defined by your teacher specifically for your project. You may choose a template of simply cancel to start from scratch. You are never locked in to the headings shown as you can edit, add, or delete headings at any time.
All documentation entered through the Documentation Editor is saved into your .tree file and is published as part of your final web site. The content of each section in the Project Documentation can be formatted using HTML tags by opening in the HTML editor.
The
.tree File Format.
Decision Tree work files are saved with the .tree extension. This file is in simple text format, but should not be edited directly, as a small error may result in a corrupt file.
When the Expert System is published as a web site, the files are saved as .html files. Image files are included in the web site.
Exporting
the Decision Tree to a Rich Text Format File
If not publishing the ES as a web site, the user may wish to include the Decision Tree in a word processing file as part of a larger project. This can be done simply by saving the Tree in Rich Text format and then importing the resulting file into a word processing application.
The
Export Decision Tree to RTF option can be reached by clicking on the
button on the toolbar, by selecting Tree
| Export to .rtf file… on the menu or by pressing [Ctrl + R] on the
keyboard.
The user may wish to save the expert system data to a rich text file so that it may be imported to a word processor and spell-checked or re-formatted.
A save dialog will appear to allow the user to complete this process. The data will be saved in Rich Text Format which is compatible with most common word processing software.
Printing the
Expert System Data
As the Expert System can be published completely to HTML, the user may print any part of the ES using the print functions available in their favourite browser.
Searching the
Expert System
The search process is very simple. Starting from the first hyperlink on the home page of the published web site, the user can just click the most appropriate response to the sentence on each page. The system moves to the next attribute or reaches a conclusion. The user may use the back button in the browser at any time, if a wrong choice has been made.
#+ Understanding the Search results
The search results gives the conclusion from the expert system that matches the responses the user has made. This process assumes that the user has made accurate observations and accurate responses.
Of course, this type of expert system has no Artificial Intelligence and cannot make an educated guess at what it is the user may be observing. This form of knowledge engineering, relies complete on the facts recorded by the knowledge engineer.
The results are based on rules input by the creator of the system. The rule that results in a conclusion being found is reported on the Search Results screen.
Any additional information recorded in the expert system along with this conclusion is also displayed in the search results screen.
Setting ES-Builder Preferences
The Settings Dialog can be opened by clicking on the button on the toolbar, selecting View | ES-Builder Settings from the menu.
There are 3 tabs in the Settings dialog:
1. Register Licence Details
This tab allow a school to enter and save its licence details. Just copy these details directly from the School Site Licence document.
2. Save Folder
This tab is designed for school network situations where the network administrator or teacher would like to set a default folder for students to save their ES work. The default is “Single User Only”. No Start-up Directory is required for this one. All other options require the administrator to insert a path in the Start-up Directory field.
3. Preferences
This tab has 3 available settings at this time.
· Enable Auto-Save – If this option is checked, ES-Builder will attempt tp automatically save the current file at the set interval. If the file has not already been saved, it will prompt the user at the set interval to save.
· Use Relative Paths for Images – If this option is checked, ES-Builder will look for images in the same folder as the .tree file when publishing to a web site. Image locations are stored as filenames only without path information. If the selected files are not in the .tree folder, they are automatically copied there. This is very useful when the path to images is likely to change often, eg, when users have their work stored on a USB flash drive, where the drive letter is different on different computers. The default is on. This is the recommended mode.
When this option is off, full paths to images are stored. This is fine when work files are always left in the same place, but may cause problems when files are moved.
· Show Tips – If this option is checked, a tips dialog will be shown on start-up. The default is on.
Please Note: ES-Builder Settings can only be saved if the esbuilder.ini file is stored in a writable folder. If the file is stored on a read-only folder on a school network, students will not be able to edit these settings. If stored on a home computer, there should be no problems in editing the settings.
The ES-Builder Toolbar
Decision Tree Toolbar
New ES
Open ES
Save ES
Check Tree
Print Preview
Browser View
Edit
Documentation
Edit
Styles Sheet
Export to
Web Site
Add
Attribute
Add
Value
Add
Conclusion
Delete
Node
Browser View Toolbar
Back
Home
Search
Knowledge
Base View
Decision
Tree View
Decision
Table View
Attribute
List View
Documentation
View
Tree View
Purchasing a Site
Licence for ES-Builder
ES-Builder is designed for educational use only and is usually available only as a school site licence. Commercial licences may be negotiated when required.
A school site licence allows the school to run as many copies of ES-Builder as required on school computers. Furthermore, the school may give copies to students and teachers to run on their home computers as necessary to complete school assignments.
McGoo
Software will provide a school site licence to your school for $199.00.
The licence pack will include a copy of ES-Builder on CD and a printed licence document which carries the school’s unique licence number. Licence details may be entered into ES-Builder by selecting View | ES-Builder Settings from the menu. The site licence details will be displayed in an about box on program start. Thus, all copies used under the school's site licence will be easily identified.
A school site licence pack will be sent by return mail on receipt of a cheque (or an official school order document) made out for the above sum to:
McGoo Software, 19 Lancewood Court, Torquay Woods, Q 4655
Fax: ( +617) 41251669
Alternative arrangements for payment may be negotiated via e-mail to:
or by visiting the McGoo Software web site at http://www.mcgoo.com.au
# Universe of Discourse
The Universe of Discourse sets out the boundaries for the area under discussion. It should nominate the entities within for the expert system and the limits in which these may be found. For example, all insects found in the Black Lagoon, or all birds found around waterholes in Australia.
# attribute
An attribute defines some characteristic of a conclusion in the expert system. For example colour is an attribute for a spider. Black, brown and white are values for that attribute.
# value
a value is once instance of a given attribute. For example, if the attribute is colour then black might be a value for that attribute.
# conclusion
the term conclusion is used to describe any entity in the expert system that might become a result of a search of the expert system. If the Universe of Discourse of the expert system is Australian Spiders, then each entity in the expert system would be a spider, and thus, each conclusion would be a spider.
# reasoning
the reasoning for a selection when searching the expert system is reported on the same screen that gives the result.
#Decision Table
A decision or induction table is used in the creation of expert systems to sort out the logic of the system. In particular it is useful for ensuring uniqueness on conclusions and finding the most efficient order of attributes.
#Unique Rows
For the expert system to function correctly, it is usually necessary for all conclusions to be arrived at by a unique set of choices. Of course in some circumstances, the user may want to include more than one conclusion that may be reached by the same logic. ES-Builder will handle this situation quite well.
# IDH_intro
+ 11
# IDH_using
+ 12
# IDH_editing
+ 1
# IDH_details
+ 21
+ 22
# IDH_list
+ 25
# IDH_conclusions
+ 1
# IDH_htmleditor
+ 32
# IDH_picview
+ 33
# IDH_checktree
+ 26
# IDH_printtable
+ 44
# IDH_website
+ 81
# IDH_style
+ 44
# idh_browser
+ 82
# IDH_specs
+ 86
# IDH_file
+ 27
# IDH_export
+ 4
# IDH_print
+ 51
# IDH_search
+ 61
# IDH_under
+ 64
# IDH_settings
+ 71
# IDH_toolbar
+ 72
# IDH_buy
+ 71
# IDH_uofd
# IDH_attrib
# IDH_value
# IDH_conclusion
# IDH_reasoning
# IDH_table
# IDH_unique