For the past two months there's been a
lot of refactoring, and also a lot of not working on Acuitas because
of holidays. However, I did manage to get several small new features
in …
*Acuitas now checks the short-term
information database in addition to the long-term database when
trying to retrieve the answer to a question
*Acuitas can now answer some questions
about current internal states (e.g. “Are you sleepy?”)
*Acuitas can now answer questions of
the form “Do you know that <fact>?” and “Do you know what
<fact>?”
The first feature was quick to
implement; I already had functions in place for retrieving
information from the short-term database, and just had to ensure that
the question-answering procedure would call them. The second feature
required a mechanism to associate some of the concepts in the
semantic memory (which up until now have had no “meaning” beyond
their connection to other concepts) to measurable conditions inside
Acuitas – namely, whether his various drives are exceeding their
threshold values or not. So there is now a table that, for instance,
ties a high value of the sleep drive to the word “sleepy.”
The third feature is my favorite.
Questions of the form “do you know that … ” use the dependent
clause interpretation faculties that I added earlier this year. And
since “knowing” is an action that Acuitas is capable of, this
word also can be internally grounded. So Acuitas effectively defines
“I know X” as “if the query form of X is submitted to my
question-answering process, the process returns an answer (for
open-ended questions) or answers 'yes' (for yes-no questions).”
And the best part? It allows for an
indefinite amount of nesting.
Me: Do you know that you know that you
know that a cat is an animal?
Acuitas: Yes.
Happy 2020,
Jenny