Пакет psy_Tree_Models


Дерево моделей понимания.
Жизненный опыт в виде моделей понимания смысла происходящего и своих действий
Опыт формируется в виде иерархии контактов условий от общего до частости происходящего.

ПЕРЕМЕННЫЕ:
•	var TreeModel levelModel - само дерево понимания
•	var NodeFromID =make(map[int]*levelModel) /// Массив адресов TreeModel
•	var LastActiveTreePuls=0 // время последней активации Дерева - в числе пульсов
•	var TreeModelActiveList[] *levelModel// список активных узлов Модели кроме первого корневого
•	var LastActiveTreeNode *levelModel// последний активный узел активной ветки модели
•	var LastActiveTreeLevelCount=len(TreeModelActiveList) // число уровней в активной ветки модели
•	var BaseLevelvalueG=-1// значение ConditionG узла 1-го уровня активной ветки
•	var EmotionLevelValueA=-1// значение EmotionsArray узла 2-го уровня активной ветки
•	ActConditionP - было действие с Пульта с ID= ActConditionP
•	LastActionFromPult=conditionP
•	var  ActiveTreeConditions[] Conditions//  список всех условий в активной ветке
•	var ActConditionS[] int // хранит последовательность распознанных слов фрвзы с Пульта в активной ветке
•	var WordsFromNodes=make(map[int][]*levelModel)//WordsFromNodes[wordID] - ВСЕ УЗЛЫ, СОДЕРЖАЩИЕ ДАННОЕ СЛОВО - массив адресов узлов
•	var WordsFromBranch=make(map[int][]*levelModel)//WordsFromBranch[wordID] - ВСЕ ВЕТКИ - конечные УЗЛЫ, СОДЕРЖАЩИЕ СЛОВО - массив адресов
•	var NodesWordArrmap=(map[int] []int)  // - последователньость слов конечных веток Дерева в виде []int WordID
•	var AllTreeNodes[] *levelModel последовательность всего Дерева для показа на Пульте
•	// все ID улов, содержащие данную эмоцию
•	var EmotionFromNodes=make(map[int][]*levelModel)
•	// все ID улов, содержащие данное действие с Пульта
•	var ActionsFromNodes=make(map[int][]*levelModel)

ОСНОВНЫЕ ФУНКЦИИ:
•	созданиe нового узла для родителского
•	очистить дерево
•	загрузить все виды памяти из файлов и инициировать их
•	записать текущее состояние Дерева Моделей, автоматизмы и Эпизодическую память
•	считывание дерева из файла
•	пересканировать Дерево
•	очистить все виды psy-памяти: Эпизодическу память, автоматизмы и Дерево модели понимания
•	сразу создать всю последовательность узлов для введенной с Пульта фразы, минуя уже созданные и переактивировать Дерево
•	контекстная активация дерева - той ветки, что соотвествует текущим условиям
•	список всех условий ветки дерева, начиная от данного узла к более общим узлам
•	получить все предшествующие узла дерева для данного узла
•	жесткое создание автоматизма для узла nodeID или lastNodeID, если nodeID==0
•	значение Weight узла дерева на величину addVal в минус или плюс значимости
•	принудительно активировать узел
•	Бот сам имитирует фразу, подставляя произвольное словосочетание

Eсли текст с Пульта больше, чем имеющаяся ветка, то Дерево переактивируется с пройденной части слов
вызовами gotoStepTreeActivation() остатками фразы пока фраза не закончится.
В любом случае заполняется стек Общего смысла StackCommonSense[10] *levelModel, если дерево проходилось несколько раз,
то в StackCommonSense буду столько же конечных *levelModel