ES-Builder Web - Main Help

ES-Builder is an Expert System Shell application. The software is used to design expert systems that may be accessed dynamically as 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.

This type of expert system is developed using a process of deductive reasoning. Thus, the expert system provides an interface to test a series of attributes, which through the process of deduction allows the user to arrive at a conclusion which is logically correct based on the values chosen by the user for each attribute.

Building an expert system with ES-Builder is easy, because it uses a simple web interface which can be easily accessed by anyone familiar with the internet. The user constructs the expert system using a decision tree interface where attributes, values and conclusions are added as leaf nodes on the tree. Each node has a small integrated data set which is used to form the content of the expert system when it is accessed online.

When the expert system is completed and thus available on the internet, 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 values 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.

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:

In addition, the expert system can be improved by:

Searching the Expert System

The search process is very simple. Starting from the first hyperlink on the home page of the published expert system, the user can click on the most appropriate response to the attribute tested 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 of deduction assumes that the user has made accurate observations and given 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 completely on the rules created by the knowledge engineer. The rule that results in a conclusion being found is reported on the Search Results page. Any additional information recorded in the expert system along with this conclusion is also displayed in this page.

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 to calculate certainty factors can be done in two ways:

  1. 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.
  2. 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.

Using ES-Builder Web

Creation of an expert system(ES) in ES-Builder is only possible for registered users of ES-Builder Web.

Setting up a User Account

User accounts are created via the ES-Builder Web User Registration page. Each user must supply a unique email address for registration as a username. User email addresses and passwords are stored in our database in an encrypted form and cannot be retrieved by McGoo Software or any other user. This registration is confirmed by the supplied email address before a user may login in to the system.

School-based users may choose to include their school name, however this is not required. Registered schools may wish their students to include the school name, as this is how registered schools may provide their teachers with direct access to the projects developed by their own students. Students may alternatively provide their teacher with a url for their expert system. Schools may register by purchasing a school licence.

Schools already registered for the desktop application, ES-Builder 3.0, may email us for a free conversion of that licence to ES-Builder Web.

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.

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 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:

ES-Builder Web ©2013 McGoo Software is provided free for personal and academic use.               ES-Builder Web Help         Privacy Policy