HELP!

Knowledge Structuring (Back-chaining)

When a Knowledge Object (e.g. Decision Tree) is used inside another Knowledge Object (e.g. another Decision Tree) the runtime Inference will invoke the sub-tree from the parent-tree. This process is referred to as 'back-chaining'. Back-chaining can go many levels deep giving rise to a large Decision Map

Back-chaining is the process of calling one knowledge object from another. So in the following example, the 'Hotel' knowledge object is called from the 'Expenses' knowledge object.





Here, the outcome values of the called back-chain knowledge object ('Hotel' Decision Tree) are used in the calling knowledge object ('Expenses Decision Tree); so the values '3 star', '4 star', '5 star' which are the outcome values of the 'Hotel' Decision Tree appear as branch values in 'Expenses' Decision Tree split. At runtime the back-chained knowledge is processed and once complete the calling knowledge resumes.




Knowledge can also be build in a top-down manner, so in an early stage of development the 'Expenses' Decision Tree may have contained question objects only.



Here the 'Hotel' object would start off as a simple Question object, prompting the runtime user about whether they stayed in a '3 star' or '4 star' or '5 star' hotel. This categorisation of the Hotel could alternatively be determined from answers to other questions such as the Cost and whether it was located in London. So by adding Knowledge to the 'Hotel' question object in the form of a Decision Tree (by right clicking the 'Hotel' object in the tree and selecting 'Add Knowledge') and then including these additional question objects, the original Hotel split in 'Expenses' Decision Tree remains based on the same list values of Hotel, but to determine the hotel category, the runtime will execute the (back-chain) 'Hotel' Decision Tree.

Back-chaining is a useful technique for structuring the knowledge of an application. The Decision Map panel reflects this structuring with the nesting of knowledge objects. Although back-chaining is described here using Decision Tree back-chaining to another Decision Tree, it can be used for any viabl.ai knowledge representations back-chaining to any other representations.

On This Page