RuThink Russian-thinking module

of ghost.pl First Working AGI

Artificial General Intelligence


1. Diagram of the RuThink() Russian-Thinking Mind-Module


   /^^^^^^^^\  Volition calls the RuThink module   /^^^^^^^^^\
  /   EYE    \              ____________          /   EAR     \
 /            \            /            \        /             \
|              |   | |    (  MainLoop    )      | auditory      |
|   _______    |   | |     \____________/       | memory        |
|  /image  \   |   | |       |      \           | channel       |
| / percept \--|-----+    ___V___    \________  | where         |
| \ engram  /  |  a|c|f  /       \   /        \ | English       |
|  \_______/   |  b|o|i (Sensorium) ( Volition )| and           |
|              |  s|n|b  \_______/   \________/ | Russian       |
|   visual     |  t|c|e              /  |       | words         |
|              |  r|e|r             /   |       | are           |
|   memory     |  a|p|s            /    |       | stored        |
|              |  c|t|   _______  /  ___V___    |               |
|   channel    |  t| |  /       \/  /       \   |               |
|              |   | | ( EnThink ) ( RuThink )  |               |
|              |   | |  \_______/  /\_______/   |               |
|              |   | |      |     /     |       |               |
|              |   | |  ____V____/  ____V_____  |               |
|              |   | | (InFerence) /          \ |               |
|              |   | |  \_______/ (RuIndicative)|               |
|              |   | |             \__________/ |               |
|              |   | |                |   |     |               |
|              |   | |     ___________V   |     |               |
|    ______    |   | |    /            \  |     |               |
|   /      \   |   | |   ( RuNounPhrase )-|-----|---СТУДЕНТЫ    |
|  / reentry\  |   | |    \____________/  |     |               |
| /   of     \ |   |_|_         __________V_    |               |
| \remembered/ |  /     \      /            \---|---ЧИТАЮТ      |
|  \ image  /--|--\ Psy /     ( RuVerbPhrase )  |               |
|   \______/   |   \___/       \____________/   |   КНИГИ       |


2. Purpose

Although the purpose of the RuThink module in the Perl AI is simply to call the subordinate modules which generate a thought in Russian, here we discuss Russian-language AI in general because RuThink is the top module in the hierarchy of Russian AI mind-modules. Since the ghost.pl Perl AI is meant as a primitive proof-of-concept example of artificial intelligence, the Russian-language features of the AI are initially rather simple and rudimentary, on a level designed to show that AI is possible in Russian and designed also for vast expansion by Russian-speaking Perl coders.


3. Function

A. Calling RuThink
The Volition() module calls RuThink if the human-language code $hlc is set to "ru" for Russian. Thinking in Russian or English is a component of decision-making in free will or volition. If a human user addresses the ghost.pl AI in Russian, the software detects the entry of Russian Cyrillic characters and automatically sets the $hlc code to "ru" for Russian. Versions of the ghost.pl AI may be set to think in Russian initially so as to demonstrate to all users that the Russian capability is there in the AI Mind. After a user types with Roman characters into the AI, the $hlc code switches to "en" for English.

B. RuThink calls subordinate module RuIndicative.


C. Machine Translation

Concepts in the ghost.pl AI are expressed as Russian or English words, with a special $mtx tag attached to them for "machine-translation transfer" of activation from a Russian word expressing a concept to an English word expressing, as closely as algorithmically possible, the same concept.

4. Uses

5. Opportunity at http://www.gotai.net/forum

The Singularity needs Russian-speakers who will go into http://www.gotai.net/forum and explain the ghost.pl Russian AI Mind to other Russian-speaking AI enthusiasts. It is an opportunity to become a recognized expert on the ghost.pl Russian AI Mind.


6. Code of RuRuThink() from ghost.pl First Working AGI in Perl

sub RuThink() {  # http://ai.neocities.org/RuThink.html
  $output = "";  # 2016apr21: Show output between array-display and aud-input.
  $pov = 1;      # 2016apr01: thinking occurs in self or "I" mode.
  $tvb = 0;      # 2017-06-17: reset time-of-verb for safety before thinking.
  print "\nGhost: ";  # 2016apr01: Listen to the ghost in the machine.
  RuNounPhrase(); #2016feb24: Find a Russian noun or pronoun. 
  RuVerbPhrase(); # 2016feb24: call the module to select a Russian verb.
  $hlc = "ru";   # 2016feb22: Think in the particular human language.
  $idea = " ";   # 2016apr23: reset for safety. 
  $nounlock = 0; # 2016apr23: reset for safety. 
  $svo1 = 0;     # 2017-06-17: reset subject-verb-object values for safety.
  $svo2 = 0;     # 2017-06-17: reset subject-verb-object values for safety.
  $svo3 = 0;     # 2017-06-17: reset subject-verb-object values for safety.
  $svo4 = 0;     # 2017-06-17: reset subject-verb-object values for safety.
  $tdo = 0;      # 2016apr28: reset time-of-direct-object for safety. 
  $tkb = 0;      # 2017-06-30: reset time-in-knowledge base for safety.
  $tvb = 0;      # 2016apr28: reset time-of-verb for safety.
  $verblock = 0; # 2016apr28: reset for safety.
  PsiDecay();    # 2016apr28: Reduce activation after each thought.
  $pov = 2;      # 2017-06-19: give human user a "pause" for input...
}  # 2017-04-02: RuThink() returns to the FreeWill Volition() module.


7. Troubleshooting and Robotic Psychosurgery

7.1.a. Symptom: (Something goes wrong.)
7.1.b. Solution: (AI Mind Maintainer devises solution.)


8. Variables for First Working Artificial General Intelligence

$hlc -- human-language code; 1=en; 2=de; 3=ru.

$idea -- for re-entry of AI thought back into the AI.

$nounlock -- for a verb to lock onto a seq-noun.

$output -- output string as in JavaScript FirstWorkingAGI.html or ghost.pl AGI.

$pov -- point-of-view: 1=self; 2=dual; 3=alien. When pov=1, the word "you" is somebody in the external word. When pov=2, the word "you" refers to the self-concept "I" in the AI. When pov=3, the word "you" is interpreted as part of a conversation by a third-party or as a word in a text, not referring to the self-concept of either the AI or of someone talking to the AI.

$snu -- subject-number as parameter for verb-selection.

$svo1 -- subject -- item #1 in subject-verb-object.

$svo2 -- verb -- item #2 in subject-verb-object.

$svo3 -- indirect object -- item #3 in subject-verb-object.

$svo4 -- direct object -- item #4 in subject-verb-object.

$tdo -- time-of-direct-object for a parser module.

$tkb -- time-in-knowledge-base of an idea. The EnParser() module stores time-of-verb $tvb in the k[13] $tkb slot of the subject of a sentence being stored at the time-of-subject $tsj time-point in the Psy conceptual array. The EnParser module stores $tkb as equal to $tdo (time of the direct object) in the Psy array row of the verb at time-of-verb $tvb. Thus for subjects $tkb means "verb" and for verbs $tkb means "direct object". No $tkb is stored for a direct object, because the associative tags go from subject to verb to object (SVO) but no further.

$tvb -- time-of-verb for parsing. The EnParser module sets "t - 1" as the tvb if the word being parsed is a verb by part-of-speech. InStantiate uses the time-of-verb tvb to fill the tkb-slot in a verb-panel with the time-location of the direct object of the verb. EnParser uses the time-of-verb tvb to find the numeric verb-concept that will be the pre of a direct object being parsed. EnParser also uses the time-of-verb tvb to store the time-of-direct-object tdo as the tkb in the flag-panel of the verb. Therefore the tvb-flag needs to be reset to zero not during but after AudInput, when program-flow has returned to the Sensorium module.

$verblock -- for subject-noun to lock onto seq-verb. The $verblock is a time-point in conceptual @psy memory where the $seq of a subject-noun is located, so that any crucial consideration such as the negation of a verb will be found when the verb-phrase module fetches the verb-concept from memory. If the thinking process finds and activates a particular subject-noun in memory, the $tkb of the subject noun becomes the $verblock so that a particular verb at a particular time will be selected by the English or Russian verb-phrase module.


9. Future Development


10. Resources


Please see also

http://cyborg.blogspot.com/search/label/Russian -- is a weblog URL which invites Netizens to view blog-posts discussing the RuThink and other Russian mind-modules.


11. AiTree of First Working AGI Mind-Modules


Return to top; or to
http://www.gotai.net/forum -- Russian-language AI forum;
http://ai.neocities.org/Dushka.html -- obsolete Russian AI;
http://github.com/kernc/mindforth/blob/master/wiki/RussMan.wiki
http://en.wikipedia.org/wiki/Natural_language_understanding -- solved.
http://old.reddit.com/r/ControlProblem -- NOT SOLVED.
javascript subreddit for AI Mind discussion;
Forth subreddit for MindForth discussion;
Perl subreddit for ghost.pl AI Mind Maintainers.