Cyborg AI Minds are a true concept-based artificial intelligence with natural language understanding, simple at first and lacking robot embodiment, and expandable all the way to human-level intelligence and beyond. Privacy policy: Third parties advertising here may place and read cookies on your browser; and may use web beacons to collect information as a result of ads displayed here.

Showing posts with label Sensorium. Show all posts
Showing posts with label Sensorium. Show all posts

Sunday, September 30, 2018

pmpj0930

Ghost AI says when it does not know the answer to a query.

When the ghost.pl AI considers a what-query such as "what do kids make", some mind-module must call the SpreadAct() module to handle the what-query, but which module? We could say that the Indicative() module should make the call to SpreadAct() just before making a response in the indicative mood, but perhaps a response may need to be uttered in a mood other than indicative. The AI Mind might wish to answer the query with an imperative command like "DO NOT BOTHER ME". Or the AI might not understand the what-query and might want to ask a question about it. So perhaps we should have the Sensorium() module call SpreadAct() to respond to a what-query.

We have now introduced a new technique for answering "I DO NOT KNOW" in response to a what-query for which the AI Mind does not find an answer. The AI briefly elevates the $tru truth-value and the activation-level of the idea "I DO NOT KNOW" as stored in the MindBoot() knowledge base (KB), so that the Indicative() module expresses the momentarily true idea. Immediately afterward, the AI returns the $tru truth-value to zero.

Wednesday, May 30, 2018

jmpj0530

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 quconin 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.