![]() XpertRule Knowledge Builder®for the Capture and Deployment of KnowledgeAbout Knowledge Builder
About Knowledge BuilderKnowledge Builder is an enterprise strength environment for developing and deploying knowledge-based applications and components. Knowledge-based applications are software components which incorporate rules, expertise, know-how, procedures, policies and regulations which can collectively be called "Business Rules". The automation of business rules is the engine that powers the "knowledge economy" and "eBusiness"; this requires flexible and scaleable tools for the capture and deployment of business rules over the web. Therefore Knowledge Builder provides a key enabling technology for eBusiness.Knowledge Builder is unique in the breadth of its integrated knowledge technologies, its comprehensive development environment and its scalable deployment options; which makes it ideally suited to a wide range of knowledge-based applications. XpertRule Knowledge Builder extends the graphical knowledge representation paradigm, established since 1988, by its predecessor XpertRule KBS, to new levels of scalability and flexibility. Almost all of the software development environments targeted at developing knowledge solutions tend to specialise in addressing a certain class of applications. For example, trouble shooting in help desks. Knowledge Builder is unique in being an environment that can automate any knowledge based function within your organization from front office to back office. Making Recommendations & AdviceThis class of application provides recommendations and advice on the most suitable products, services and courses of actions. Such applications can be used to help customers select the best products and services based on their requirements. These applications can also use the customer profile to present the customer with a personalised recommendation service and to maximise the opportunity for cross selling. Recommendation and Advice systems can also be used internally within an organization to share knowledge and to enforce best practice.Troubleshooting, in Customer Support & Help Desk applicationsCapturing troubleshooting and diagnostic knowledge allows an organization to effectively support internal users (such as call centre agents) and customers. Using knowledge based customer support will deliver better customer service and higher productivity. Better customer service results from the responsiveness and quality of your support/helpdesk. Better productivity results from the customer support application automatically processing some queries and also from empowering the support agents to handle more queries accurately and consistently.Risk & Condition Assessment & MonitoringThese are knowledge applications that monitor your business transactions for patterns that represent a high risk to your business processes. Examples of such applications are systems for assessing the risk of fraud in financial transactions such as credit card purchases, insurance claims, loan applications and others. Other examples involve assessing the condition of manufacturing and process plants to detect early warning signs of failure.WorkflowA knowledge based decision making engine can use rules to decide on the next task/action in a workflow system, based on current events and available data.Resource OptimizationThe Genetic Algorithm optimizer within Knowledge Builder can be used to determine optimal solutions to problems that have many possible solutions, such as design, resource scheduling and planning, and component blending - in other words resource optimization. You do not have to tell Knowledge Builder how to solve the problem - instead you specify a method of evaluating solutions, define the constraints on resources and Knowledge Builder will evolve the best possible solution according to your criteria.Knowledge Representation in Knowledge BuilderKnowledge Builder supports a very broad range of knowledge representations rarely found in one single environment. This enables developers to support a wide range of knowledge applications. Despite the richness of the knowledge representation, knowledge Builder retains the same graphical knowledge building blocks across representations. This consistency of knowledge representation ensures ease of maintenance and the ability to develop hybrid applications.Decision Making Knowledge is also now often called "Decisioning" and covers diagnostic, selection, recommendation, advice, assessment, monitoring, workflow and similar applications. Typically, the knowledge in such applications is represented by rules and/or decision trees. In these applications decisions or outcomes are derived from attributes. The attributes are captured from the user through dialogs, calculations or read from data files. Knowledge Builder represents "Decisioning" Knowledge using Decision Trees and Cases Tables. A decision tree relates an outcome or decision to a number of attributes as shown in the example tree below for the diagnosis of car starting problems:
A table of Cases contains a list of examples or rules each showing how an outcome or decision relates to a combination of attribute values. The table below can be used for the diagnosis of car starting problems:
An attribute in a decision tree, or in cases table, can itself be represented by another decision tree or cases table. This is called knowledge "chaining". Knowledge is executed by a "runtime" or "inference" engine. In a Decision Making application, the "runtime engine" has the task of deriving all the required decisions/outcomes. It does this by executing the knowledge in the decision trees and/or the case tables. The values of attributes driving the decision making knowledge are either passed to the engine at the start of inference, or are captured by the engine as and when it encounters those attributes in the trees or tables. Case Based Reasoning can also be used in diagnostic applications, whereby the user can be asked to volunteer any number of symptoms (attributes) with the application still being able to generate a narrowed down list of diagnosis values. Fuzzy Logic can also be used where there are applications, such as performance assessment and diagnostics, in which the human expert applies fuzzy reasoning in their decision making. The following rule is an example of such reasoning: IF income is low AND person is young THEN credit limit is low This rule is fuzzy because of the imprecise definitions of "income", "young" and "credit limit". Knowledge Builder allows you to implement such fuzzy reasoning which can be integrated seamlessly with crisp reasoning and with GA optimization. This leads to accurate systems using small rules sets. For more detail please see the white paper on Fuzzy Logic in Knowledge Builder. Constraint Inference - enabling the unique graphical knowledge representation of Knowledge Builder to be used to define constraint rules which ensure that only valid / desirable combinations of features and options can be selected. This is a particularly powerful technique in configuration applications, where the sales of complex products and services requires the customer to choose, from a vast number of theoretical combinations, the features and options that best satisfy their individual needs. A live web demo exists of Constraint Inference here Hierarchy Inference - enabling hierarchical knowledge, such as a generic “bill of material” both physical and logical, to overlay selection rules. This is a particularly powerful technique in configuration applications, where products and services consist of modular components and sub-components, whose selection rules are driven by customer requirements, which are typically captured with the aid of constraint logic. Capturing Knowledge in Knowledge BuilderDevelopers of knowledge based systems often face difficulties in the knowledge engineering stage of developing an application. This is because expertise, know-how, procedures and policies, and other business knowledge, is tacit and rarely formulated or documented . Knowledge Builder simplifies the process of capturing this tacit business knowledge through its graphical knowledge representation, structuring and acquisition methods.Knowledge StructuringThe lack of a modelling methodology for decomposing a large knowledge application into a hierarchy of rule sets represents a major difficulty in building knowledge based systems. Without the structuring of rule sets, developing a rule base for a large application becomes a difficult job. A number of ad-hoc methods for structuring rule sets have been traditionally used, such as spider diagrams and concept maps. These methodologies aim to model the application by establishing a hierarchy of concepts, each concept with a corresponding rules set. The developer must then add control rules and agendas to force the flow of the inference engine to correspond to the structuring of concepts.Knowledge Builder enables highly complex knowledge applications to be structured into intuitive units of knowledge - each unit being a decision tree or a cases table - and to be able to visualise the overall structure using a knowledge Map. Knowledge AcquisitionKnowledge acquisition is acknowledged as the bottleneck of developing Knowledge Applications. Although structuring applications into trees and tables simplifies the process of knowledge acquisition, the job of acquiring the knowledge remains a major concern of developers of knowledge based applications. The problem is twofold, firstly there is the problem of eliciting the rules from experts who have intuitive (tacit) decision making skills. Secondly, there is the problem of assessing the logic of the acquired rules for conflicts, overlaps and gaps. The first problem requires machine learning techniques to help derive the know-how from tacit knowledge and from knowledge difficult to articulate by experts. While a few methods for guiding rule entry have been proposed with limited effectiveness, the problem of intuitive knowledge remains largely not tackled. In conventional rue-based systems it is assumed that tacit knowledge is explicit and easily accessible. The second problem is not addressed by knowledge tools which do not support facilities for testing knowledge for conflicts, overlaps and gaps.Knowledge Builder gives knowledge engineers the flexibility of multiple knowledge representations, allowing knowledge to be expressed in the most natural way. In addition, Knowledge Builder utilises Rule Induction as a catalyst for knowledge acquisition. Rule induction can convert a table of cases (examples) into a decision tree. Rule induction reveals the generic patterns, logic gaps and conflicts in the table of cases. The decision tree shown previously for the diagnosis of car starting problems was derived from a table of cases using rule induction. Learning from DataLearning from data can be considered as an alternative knowledge engineering strategy, if the data represents records of expert decision making. Alternatively, learning from performance data can derive new patterns and relationships which can improve our understanding of a certain business process and therefore enables us to make better future decisions.XpertRule Miner is a dedicated software product for learning from data (Data Mining). The overall objective is to derive decision tree rules or patterns from data files. Knowledge derived from data can be exported to Knowledge Builder. Deploying the Captured KnowledgeOnce captured and tested, the decision-making knowledge captured within Knowledge Builder can be deployed in a number of platforms and configurations:Running Knowledge on a stand alone or networked PC clientAn inference engine is used for running knowledge applications on a PC client. This configuration is typically used to run knowledge applications on stand alone or networked PC's.Running Knowledge on a Windows NT / 2000 ServerA COM+ inference engine is used to run knowledge applications on Windows NT / 2000 servers. The COM+ engine uses XML to exchange data with other applications (receiving attribute data and returning decisions). This engine is highly performant and scalable.The COM+ inference engine can be used either as an embedded knowledge server for other applications or it can be used in conjunction with the Knowledge Builder ISAPI filter to develop a thin client interactive (e.g. Q&A) Expert System application. Running Knowledge in a Web BrowserAjax deployment Benefits of Ajax deployment Use of the Ajax technique by Knowledge Builder Server platforms supported by Knowledge Builder’s
Ajax deployment
The Java and J# Engine options are also available as a ‘generated’ sub-option, where the application runtime (engine and knowledge-base) are automatically combined and generated into Java/J# source code which can then be complied for maximum execution speed. This option requires new ‘source’ to be re-generated and complied each time the knowledge-base is changed. It is primarily suitable for low (design-time) knowledge maintenance / high (runtime) transaction throughput.
Quick TourThe objective of this section is to take you on a quick journey through the terminology, features and screens of Knowledge Builder. This should give you an overview of the development environment and put you in a position to decide which aspects of the software you wish to explore further, by reading the appropriate manual chapters or the on-line help system. Please note that this section is not a step by step tutorial but rather a whistle stop tour through the capabilities of knowledge builder.Knowledge Builder is an environment for developing and delivering knowledge based solutions which are difficult or impossible to implement using conventional programming techniques. The system consists of the development and runtime systems. The development system is used to build the applications and capture and maintain the knowledge. The application is maintained by knowledge Builder in any relational database. The Runtime engine is used to run applications and is available as an EXE program or a Windows COM object for embedding within other applications. The runtime engine can be invoked from within the development environment to enable rapid prototyping and testing. The development environment is highly graphical with an intelligent user interface and extensive on-line help. The following sections give an overview of the main functions of the development environment, together with some other important screen display examples. About the Knowledge Explorer
From the Knowledge Explorer you select an object to edit with the relevant editor. Multiple object editors can be opened in the area to the right hand side of the Knowledge Explorer. Object editing windows (tabs) can also be stacked vertically. An overview of the various object editors is given in the following topics. Knowledge Attributes Editor![]() The Attributes editor has 6 tabs: Note that for most cases you can simply use the Wizard to define the type of knowledge and the cases and/or decision tree tabs to enter the knowledge. Dialog and Report Editors
A report editor is also supported.
Procedure Editor
Decision Map
Customizing the Explorer ObjectsNote that new objects on the Knowledge Explorer are made from "predefined object classes". These classes can be customized (given the right user privileges and version of Knowledge Builder) by defining their type (list, numeric, etc.), properties, attached knowledge type and display properties. Finally, note that each user of Knowledge Builder is assigned a predefined "role" which can be used to restrict which knowledge modules and which object categories on the Knowledge Explorer he/she is allowed to view or edit. Advantages of XpertRule Knowledge Builder over XpertRule KBS
Compatibility with XpertRule KBS: Existing XpertRule KBS developers can easily import their XRA files into XpertRule Knowledge Builder, which provides extensive support for upgrading KBS developed applications. Minimum Operating Requirements for the Development Environment
For prices and ordering information E-mail or fill in this Request Form. Specifications are subject to change. Please check for latest features and operating environments. XpertRule® and XpertRule Knowledge Builder® are registered trademarks of XpertRule Software Limited. XpertRun is a trademark of XpertRule Software Limited. All other brand and product names are trademarks or registered trademarks of their respective holders. |