Solving who-query problems and EnParser bug.

Although the ghost.pl AI responds to a who-query by calling SpreadAct()
from the end of AudInput(), the JSAI will call SpreadAct() too many times
from AudInput() before the end of the input. Since we need to test for
qucon when the Volition() module is not engaged in thinking, we test for
qucon in the Sensorium() module, which does not call AudInput() but which
is called from the MainLoop() after each generation of a thought.

We must also troubleshoot why the JSAI eventually outputs "ME ME ME". We
discover that EnNounPhrase() is sending an aud=726 into Speech() while
there is a false verblock=727. Then we learn that the concept-row at the
end of "ROBOTS NEED ME" for "ME" at t=727 has an unwarranted tkb psi13=727,
as if the concept 701=I had a tkb. Apparently we need to prevent a false
tkb from being stored. An inspection of the diagnostic display shows that
the tkb properly set for each verb is improperly being retained and set for
the object of the verb. We then notice that the EnParser() module is
properly setting the time-of-direct-object "tdo" to be the tkb of a verb
and leaving the tkb value set to the "tdo" value. So we insert into
EnParser() a line of code to reset tkb immediately back to zero after
storing the tkb of a verb, and the erroneous "ME ME ME" output no longer
appears.

-- 
http://ai.neocities.org/MsIeAi.html
http://www.amazon.co.uk/dp/0595654371
http://cyborg.blogspot.com/2018/05/jmpj0530.html
http://github.com/BuildingXwithJS/proposals/issues/22

------------------------------------------
Artificial General Intelligence List: AGI
Permalink: 
https://agi.topicbox.com/groups/agi/T31791d499ad70c55-Ma08ac4a891be074716e8f030
Delivery options: https://agi.topicbox.com/groups

Reply via email to