Expertsystemen

 

Graphs and sub graphs

xxllnc Expertsystemen models are structured in graphs. A graph is a group of nodes that are connected to each other. Every graph has exactly one start node where it starts, but can have multiple end nodes. The nodes in their turn have the actions that make up the functionality of your model.

An example graph
An example graph

Names are unique within their scope: a question name needs to be unique within the context of a node, but not across nodes.

This means you can use the same question name in different nodes. For example, consider asking a birth date. You could have a node to ask one person’s birth date, and another to ask theirs partner’s. These questions could both be called birth_date, but can be uniquely referred to as main.personal_details.birth_date and main.partner.birth_date.

The same holds true for node names: they have to be unique within the context of a graph, but not across graphs.

You always tell the difference between two nodes. For example, node main.start is different from node g_subgraph.start.

Every model starts out with a single graph, called main. But as you add more and more nodes to your graph, you will quickly lose overview of your model. And even if you still understand it, it might be difficult for others to understand them! A solution to this problem are so-called ‘sub graphs’.

Sub graphs

Sub graphs are graphs within other graphs. They are used to group related questions.

For example, in a decision tree about health habits, you can group all questions extracting a someone’s food habits in a sub graph called g_food, and keep those concerning bodily exercise in g_exercise. This will help you keep a better overview of your model then when you lump all questions together in the main graph. And, if you need to use the same kind of questions again, you can reuse that sub graph. For instance you could reuse g_food to ask the user about breakfast, lunch and diner.

adding a sub graph
adding a sub graph

When you create a graph icon new sub graph, you will need to pick a name for it. It is good practice to start new graphs with g_. This remind yourself and others that it is a sub graph. The Studio will create a callgraph icon Call graph action in the action list. You can find more about graphs and flows here.

You can navigate back and forth between graphs in different ways. By clicking on a sub graph, you enter that sub graph. If you want to jump back to the main graph, you can click on the main graphs (and other graphs) from the left side of the screen.

navigating through graphs
navigating through graphs

Another way to navigate is by using the buttons [Home], [Previous], and [Next]. These buttons can be found in the menu under Graph.

Bookmarks

You can also hop from graph to graph using bookmarks. You can create a bookmark by pressing [Ctrl+Shift+1] and return to that bookmark by pressing [Ctrl+1]. You can use 9 bookmarks, namely 1 through 9. If you make a bookmark, e.g. by pressing [Ctrl+Shift+3], a number 3 will appear on the current node. You can return from anywhere in the model to this node by just pressing [Ctrl+3]. You can remove the bookmark by pressing the [Ctrl+Shift+number] combination again, or assigning the bookmark to another position. Bookmarks are not saved, so they are gone as soon as you close the Studio.

Bookmark on node information
Bookmark on node information