Using question-based rules to deliver expert knowledge with machines

An expert system built on logic-based rules needs input from to make it work. Questions can elicit this input from users.

Adding action to conditional logic

The rules in the expert system’s knowledge base depend on a conditional “if…,then…” or “if X, then Y” structure. The “if X” represents the condition and the “then Y” represents a resulting action. This structure can ultimately be stated to be “if (condition), then (action).

The expert system is designed to collect input from the user by asking questions about the condition in his or her circumstances. By answering the questions, the user provides the input the expert system needs to take the next action. These actions can include reasoning, providing information or directing users to other tools and actions.

Here are some examples:

  • If (user indicates (s)he wants dessert), then (the system will show a list of dessert choices).
  • If (the user indicates (s)he suffered a personal injury), then (the system will ask whether the injury was the result of a motor vehicle accident).
  • If (the user confirms the victim has suffered a poisonous snake bite), then (the system will display a short video explaining how to clean and dress the wound).

These conditional statements make it possible for a non-expert user to interact with the expert database.

User-focused questions

Conditional statements aren’t very interactive on their own. They can be turned into much more intuitive questions.

Expert system users aren’t experts in the domain. The questions have to be easy for non-experts to answer. It’s up to the knowledge engineering team to construct them in a way that walks them through the knowledge base the captured expert knowledge in the domain period

Users will usually be able to answer questions about their circumstances or about other facts that are available to them or discoverable by them, with a little help.

Binary vs multiple choice structures

Using one of the examples above, a conditional statement can be turned into questions into a dichotomous or “Yes / No” format:

Do you want dessert?

[ ] Yes

[ ] No

Yes / no questions can be very simple for users to answer. However they can only engage two possible rule outcomes and require the system to ask more questions. Consider if the user answers the dessert question in the negative. Then you might have to ask:

Do you want a main course?

[ ] Yes

[X] No


Do you want an appetizer?

[ ] Yes

[ ] No

And so on.

Now consider questions that engage more answers and more rule outcomes:

What do you want to eat?

[ ] an appetizer

[ ] a main course

[ ] dessert

Depending on the expert system, the user may be required to pick only one answer at a time in a multiple choice structure, or as many as apply to their facts or circumstances.

These question structures can be a little more complicated to answer, but the gains are often worth it in terms of reducing the number of questions and rules chained in a linear sequence.

[Want to read the post on Answers now? It’s here]

Comments are closed.

Proudly powered by WordPress | Theme: Baskerville 2 by Anders Noren.

Up ↑