Important Notice: Our web hosting provider recently started charging us for additional visits, which was unexpected. In response, we're seeking donations. Depending on the situation, we may explore different monetization options for our Community and Expert Contributors. It's crucial to provide more returns for their expertise and offer more Expert Validated Answers or AI Validated Answers. Learn more about our hosting issue here.

Whats an attribute impasse, and how can I detect them?

detect impasse
0
10 Posted

Whats an attribute impasse, and how can I detect them?

0
10

Attribute impasses occur if you have two values proposed for the same slot. e.g., ^name doug + ^name pearson + leads to an attribute impasse for the ^name attribute. It is a bit like an operator tie impasse (where two or more operators are proposed for the operator slot). The effect of an attribute impasse is that the attribute and all its values are removed from working memory (which is probably what makes your program stop working) and an “impasse” structure is created. (Soar 7, this is not provided by default in Soar 8.) It is usually a good idea to include the production: sp {debug*monitor*attribute-impasses*stop-pause (impasse ^object ^attribute ^impasse) –> (write (crlf) |Break for impasse | (crlf)) (tcl |preferences| | | | 1 |) (interrupt)} in your code, for debugging. If an attribute impasse occurs, this production will detect it, report that an impasse has occurred, run preferences on the slot to show you which values were competing and which productions created preferences f

Related Questions

What is your question?

*Sadly, we had to bring back ads too. Hopefully more targeted.