Summit Sample Knowledge Base |
See also: downloads |
General topics: Pro/3 home page - documentation overview - definitions and terminology |
|
||
The first question we want to explore is whether or not a successful summit is possible. One way to do this is to assert the fact that he summit was a success, and then check if this leads to an inconsistency with the given domain knowledge (i.e. the rules above). This is a backward chaining approach. We start with the conclusion and work backwards. This involves what could be seen as bending of the knowledge in the domain, since most of the rules are formulated in a forward chaining way. While the domain knowledge clearly states that the attendance of the three heads of state and the signing of the agreement, are sufficient conditions for a successful summit, it does not preclude that the summit could be successful without these conditions. However, in the context of the entire knowledge of the domain, this seems to be reasonable assumption i.e. that the conditions are sufficient and necessary. Let's know represent the domain knowledge as Pro/3 rules (nothing in the domain knowledge can be represented as Pro/3 facts). Refer to What are Pro/3 facts and NL-syntax for sentence rules for details of the representation concepts, which involves the entity types summit, agreement, person, dog, food and thing, and the predicate types attended, did not attend, happened, came along, did not come along, did not bite, petted, was polite to, was served, was in good mood, was signed and was a success. The original domain knowledge is shown in blue italics while the corresponding Pro/3 rules are shown in green. THE RULES The summit will be a success if Bush, Thatcher and Gorbachev attend and an agreement is signed. if the International summit was a success, then the
International agreement was signed! We have introduced two atomic entity types summit and agreement, both with the data element type name. The name International is used both for the summit and the agreement entities. Bush will attend if he can bring Barbara or the dogs, while Thatcher will attend so long as she can bring Dennis and Mitterand does not attend. if the Thatcher person attended, then the Dennis person came along! The last rule do not fully capture the knowledge in the domain, pertaining to the attendance of Bush, and we will have to add the two rules: if the Bush person attended and the Bush Doggie dogs did not come along, then the Barbara person came along! Dennis will attend if refreshments are served, and Mitterand will not attend if the dogs are present. if the Mitterand person attended, then the Bush Doggie dogs did not come along! The dogs will attend so long as no-one talks politics. if the Bush Doggie dogs came along, then the "no talking politics" thing happened! An agreement will be signed so long as all three leaders are polite to each other. if the International agreement was signed, person X attended, person Y attended and X<>Y, then person X was polite to person Y! Bush will be polite to Thatcher so long as she is polite to him. This knowledge is a bit tricky since it is self-referential, and somewhat questionable even in its real meaning since neither person could be polite first. In Pro/3, it is specifically not allowed to have the same sentence type in the condition and in the conclusion, there cannot be a rule with a structure like if person is polite to person then person is polite to person. Refer to the sentence derivation process for a more detailed insight into this. Thatcher will be polite to Bush if Barbara comes to the meeting. if the Thatcher person was polite to the Bush person, then the Barbara person came along! Bush will be polite to Gorbachev if he pets the dog. if the Bush person was polite to the Gorbachev person, then the Bush Doggie dogs came along! Thatcher will be polite to Gorbachev if she is in a good mood. if the Thatcher person was polite to the Gorbachev person, then the Thatcher person was in good mood! Gorbachev will be polite to everybody so long as the dogs do not bite. if the Bush Doggie dogs came along, the Gorbachev person attended, person X attended, X<>Gorbachev and the Gorbachev person was polite to person X, then the Bush Doggie dogs CONTRADICTIONS Take note of the rules concluding the sentences did not attend and did not come along. did not attend (and did not come along) is just another predicate type, which I have used since a rule in Pro/3 cannot conclude that something is not true, e.g. something like NOT(Mitterand person attended)). However, the inference engine has no way of knowing that it is impossible for a person both to attend and to not attend (with the proposed representation), and to detect such eventual contradiction, we will add the following rules: if person X attended and person X did not attend, then the International summit could not have taken place! RESULTS Finally let's load all the above rules into the knowledge base, assert that the summit was a success the International summit was a success! and see what inferences Pro/3 can make. We then ask the following questions (in whatever sequence): who came along? And the answers were: person with name Dennis came along! Refer to the knowledge dependency graph for the model (generated via export to MS Vision). Let's now try a forward chaining approach. We will then remove the assertion that the summit was successful, and instead assert a few of the facts above - as much as possible only those which are required to make the inference that the summit was a success. The rules will have to be reformulated such that they work from the facts and towards the conclusion that the summit was a success.
The rules should generally be understandable. To tackle the problem with the knowledge that Bush will be polite to Thatcher so long as she is polite to him, I have introduced a "mutual politeness" concept. In that way the dependency graph remains acyclic. The facts required to make the inference that the summit was a success, the following facts need to be asserted: person with name Thatcher was in good mood! Refer to the knowledge dependency graph for the model (generated via export to MS Vision). Download the Summit-model if you want to study the details.
|