Разделы
Счетчики
7.3.6. Процесс построения бесконечного логического домена
Интегральная теория создания ИИ
Рассмотрим процесс построения бесконечного логического домена на качественном уровне. В качестве примера возьмем построение на основе модели "руда - металлы - сплав" (см. пункт 7.4.2). Пусть в качестве цели мы имеем набор требуемых глобальных характеристик A, B, C, являющихся объектами 2-го порядка, а точнее 2.2. Причем они не противоречат свойствам слагающих их физически элементарных объектов. Во внешнем мире должны существовать логические домены X, Y, Z, удовлетворяющие следующему условию: среди глобальных характеристик домена X (x1, x2, ...., xn) есть некоторая характеристика xi, похожая на A. Аналогично среди свойств домена Y (y1, y2, ...., yn) некоторая характеристика yj похожа на B. Аналогично и с Z - характеристика zk. Взяв домен X начнем делить его до тех пор, пока одно из слагаемых не станет равным xi. Аналогично поступим с Y и Z. В результате мы получим домены со свойствами xi, yj, zk, похожие на A, B и C в "химически чистом" виде. Соединив домены xi, yj, zk мы и получим домен, обладающий требуемыми характеристиками. Хорошей аналогией построения требуемого домена на основе свойств существующих служит аналогия с получением сплава металлов, обладающего заданным свойством (что и дало название модели "руда - металлы - сплав"). Допустим мы хотим получить сплав, обладающей твердостью, легкостью и хорошей электропроводностью. Очевидно что готового сплава, обладающего такими свойствами в природе нет. Мы начинаем искать материалы - руду, в которых имеется хотя бы одно из указанных свойств. Из полученного списка материалов мы начинаем выделять металлы, входящие в их состав и придающие им эти свойства. Получив их, мы сплавляем металлы в единое целое, получая требуемый сплав. Из качественной схемы построения видно, что требуемый логический домен не существует изначально. Следовательно, целью объекта 3.3 не может быть требование переделывания уже существующего домена. Она задает конечный его вид и не накладывает каких-либо дополнительных требований. Любые попытки придания цели ориентира на преобразование заранее заданного домена обречены на неудачу, так как любое преобразование автоматически означает поиск возможных путей такого преобразования, а это влечет за собой необходимость прохождения бесконечного лабиринта решений и борьбы с потенциальными барьерами. Естественно что такая цель недостижима. Такое принципиальное отличие цели 3.3 от целей 3.1 и 3.2 заставляет смотреть на проблему прогнозирования поведения 3.3 совершенно с другой точки зрения. Изначально любой искусственный объект, в т.ч. и объект 3-го порядка создается для того, чтобы изменить существующее положение вещей в определенной области мира. Смысл цели 3.1 и 3.2 заключается в придании объекту 2-го порядка C->Y->D определенных состояний. Придя, по замыслу создателей, в эти состояния объект C->Y->D тем самым за счет универсального интерфейса изменит и состояния окружающих его объектов. Манипулируя, таким образом, состоянием одного-единственного объекта 2-го порядка можно вызывать целые серии следующих за этим событий и управлять ими. Таким образом, истинной целью создателей 3.1 и 3.2 служит, в общем случае, не столько изменение состояния самого C->Y->D, сколько следующие за этим изменения в мире. В случае с 3.3 все по-другому. Где возникнет нужный домен заранее неизвестно. Поэтому прогнозировать заранее изменения, которые он вызовет во внешнем мире, нельзя. Отсюда вытекает, что ставить целью создание одного домена можно только в случае, когда истинной целью создателей является сам факт возникновения такого домена - они просто указывают объекту 3.3 что создаваемый бесконечный логический домен имеет уровень N (если не указывать уровня то и делать как бы ничего не нужно, поскольку только уровень отличает заключительный вид бесконечного целевого домена от его описания-цели внутри 3.3, также бесконечной, - ведь алгоритмы описывающие их глобальные параметры равны). Тоже самое получается и при 2-х и при 3-х и т.д. числе доменов. Если же они претендуют на то, чтобы при помощи 3.3 направленным образом влиять на внешний мир, то кроме этого домена им придется описать в цели весь мир в том виде, в каком они хотят его видеть. Очевидно что в этом случае в только что созданном объекте 3.3 по своей массе цель становиться равной внутреннему миру. То есть как минимум потенциально бесконечной. Конечно в реальных системах бесконечность внутреннего мира и цели может быть только потенциально бесконечной - создать их изначально бесконечно большими вряд ли когда-либо удастся. Отсюда можно заключить что цель описывает требуемый мир приближенно - на уровне глобальных характеристик бесконечных логических доменов. Поэтому от 3.3 можно ждать только прогнозируемые глобальные изменения в мире. Локальные его решения могут быть какими угодно. Глобальностью цели 3.3 объясняется, в частности, поведение человека - он никогда не стремится к достижению чего-либо конкретного (в широком понимании). Он ищет "смысл жизни", "счастье" и т.п., маскируя под этими терминами свою деятельность по изменению окружающего его мира. И находит душевный покой тогда, когда в окружающей его обстановке "все на своих местах" (правда и в этом случае внутренне он неспокоен - за счет наличия внутреннего мира он "видит" внешний мир не только через рецепторную матрицу, и подозревает что там, "за горизонтом", не все "хорошо"). Качественная схема построения также наглядно демонстрирует и неспособность объекта 3.3 генерировать принципиально новых знаний - объектов класса 2.2, аналоги которых отсутствуют во внешнем и внутреннем мирах. В дополнению к качественной схеме построения пути к цели обрисуем в общих чертах эту схему применительно к конструктивным особенностям объекта 3.3. Пусть цель задается логическим доменом (объектом 2-го порядка) такого вида: ┌─┐ ┌─┐ │1│ │2│ ├─┤ ├─┤ │3│ ╔═╗ │4│ ├─┼────────>╢X╟────────>┼─┤ │5│ ╚═╝ │6│ ├─┤ ├─┤ │7│ │8│ └─┘ └─┘ Или в виде свойств: ┌ │1->X->2 │3->X->4 (1) ┤5->X->6 │7->X->8 └ 1) Первым нашим шагом должно стать нахождение в vM логических доменов содержащих хотя бы одно похожее свойство из (1). Одним из вариантов решения этой проблемы может быть следующий: от каждого объекта класса 2.2 каждого логического домена vM идет связь к объектам 2.2 цели. Эта связь по принципу работы похожа на обратную связь из 3.1 или 3.2. В ней также рассчитываются коэффициенты u, по которым и определяется насколько тот или иной процесс похож на свойство из (1). Процесс сравнения тесно связан с проблемой произвольного доступа к любому объекту внутреннего мира (см. пункт "Устройство основных узлов объекта класса 3.3. Энциклопедия первичных знаний"). И он также может быть решен при помощи внутренних рецепторно-эффекторных матриц vR, vE, а также их плагинов vPR, vPE. Если цель содержит один объект A->X->B, а в vM есть только 2 процесса d11->D1->d12 и d21->D2->d22, то такую систему поиска можно изобразить так: ┌───┐ ╔══╗ ┌───┐ │d11├>────╢D1╟────>┤d12│ │ ├─┐ ╚══╝ ┌─┤ │ └───┘ │ │ └───┘ ╔═══╗ │ │ ╔═══╗ ║ ╟<┘ ┌──┐ └>╢ ║ ║u11╟────>┤u1├<────╢u12║ ║ ╟<┐ └──┘ ┌>╢ ║ ╚═══╝ │ │ ╚═══╝ ┌───┐ │ │ ┌───┐ │ ├─┘ ╔══╗ └─┤ │ │ A ├────>╢X ╟────>┤ B │ │ ├─┐ ╚══╝ ┌─┤ │ └───┘ │ │ └───┘ ╔═══╗ │ │ ╔═══╗ ║ ╟<┘ ┌──┐ └>╢ ║ ║u21╟────>┤u2├<────╢u22║ ║ ╟<┐ └──┘ ┌>╢ ║ ╚═══╝ │ │ ╚═══╝ ┌───┐ │ │ ┌───┐ │ ├─┘ ╔══╗ └─┤ │ │d21├────>╢D2╟────>┤d22│ └───┘ ╚══╝ └───┘ Коэффициенты u1 и u2 показывают степень схожести с процессом A->X->B соответственно процессов d11->D1->d12 и d21->D2->d22. По такому принципу можно найти из vM процесс, наиболее похожий на заданный. Важным преимуществом такой схемы поиска является параллелизм - коэффициенты u рассчитываются параллельно, что дает возможность очень быстро определить местонахождение нужного процесса (а по ним и домена) независимо от их общего числа в vM. 2) Второй шаг - процедура деления или распада найденных доменов на отдельные процессы. Допустим что нашли 3 домена: ┌──┐ ┌──┐ │ 1│ │ 2│ ├──┤ ├──┤ │a1│ │a2│ ├──┤ ╔═╗ ├──┤ │a3├────────>╢A╟────────>┤a4│ ├──┤ ╚═╝ ├──┤ │a5│ │a6│ ├──┤ ├──┤ . . . . . . └──┘ └──┘ ┌──┐ ┌──┐ │b1│ │b2│ ├──┤ ├──┤ │ 3│ │b4│ ├──┤ ╔═╗ ├──┤ │b3├────────>╢B╟────────>┤ 4│ ├──┤ ╚═╝ ├──┤ │b5│ │b6│ ├──┤ ├──┤ . . . . . . └──┘ └──┘ ┌──┐ ┌──┐ │c1│ │ 6│ ├──┤ ├──┤ │c3│ │c2│ ├──┤ ╔═╗ ├──┤ │ 5├────────>╢C╟────────>┤c4│ ├──┤ ╚═╝ ├──┤ │ 7│ │ 8│ ├──┤ ├──┤ . . . . . . └──┘ └──┘ Казалось бы можно просто соединить, синтезировать, такой домен: ┌──┐ ┌──┐ │ 1│ │ 2│ ├──┤ ├──┤ │a1│ │a2│ ├──┤ ├──┤ │a3│ │a4│ ├──┤ ├──┤ │a5│ │a6│ ├──┤ ├──┤ . . . . . . ├──┤ ├──┤ │b1│ │b2│ ├──┤ ├──┤ │ 3│ │b4│ ├──┤ ╔═╗ ├──┤ │b3├────────>╢Y╟────────>┤ 4│ ├──┤ ╚═╝ ├──┤ │b5│ │b6│ ├──┤ ├──┤ . . . . . . ├──┤ ├──┤ │c1│ │ 6│ ├──┤ ├──┤ │c3│ │c2│ ├──┤ ├──┤ │ 5│ │c4│ ├──┤ ├──┤ │ 7│ │ 8│ ├──┤ ├──┤ . . . . . . └──┘ └──┘ минуя при этом фазу распада. Но при таком способе синтеза нужные процессы попросту "растворятся" в огромном количестве посторонних процессов. В пределе при таком подходе вообще ничего не надо делать - в "растворенном" виде требуемые процессы уже существуют в M. Так что распад все же необходим. Задача распада такая: создать цепочку доменов vE->vDR1->vDR2->...->vA, vB, vC. Где vDRi - домены распада, vA, vB, vC - аналоги A, B, C в vM. Плюс к этому требуется запомнить последовательности создания vDRi и команд на vE, чтобы потом можно было повторить тоже в M. После прохождения фазы расщепления должны появиться 1->A->2, 3->B->4, 5->C->6, 7->C->8 в чистом виде. Определим сперва что вообще может вызвать распад, например, домена A. Для этого находим (аналогично п. 1) ) в vM процессы, которые вызывают расщепление доменов, содержащих процессы похожие на a1->A->a2, a3->A->A4 и т.д.. Очевидно что применив похожие процессы к домену A мы вызовем его деление на a1->A->a2, a3->A->a4, .... . При этом, освободившись от остальных процессов, 1->A->2 также появится в чистом виде. Точно так же идет расщепление B и C. Что значит "применить похожий процесс" - значит построить около A, B, C домен распада, примерно такой же как и у доменов, похожих на A, B, C, но отличающийся одним свойством - близостью к A, B и C. Построение такого домена происходит аналогично всему этому алгоритму. Теперь домен распада нужно запустить - построить цепочку доменов-посредников от vE к vDR. Это делается так: ищутся домены, влияющие на состояние доменов-аналогов vDR и строятся похожие вблизи vDR - домены vDR1. Параллельно ищутся домены, похожие на vDR1 и к которым есть доступ от vE непосредственно или уже через готовые домены-посредники vDRi. Они также строятся, но уже со стороны vE: vE->vER1, vER2, ..... . Когда vERi совпадет с vDRj цепочка управления готова. Команды, которые подаются на E для управления DR записываются походу построения, они аналогичны командам для управления доменами, которые мы брали за шаблон при построении новых. 3) Синтез. На этом этапе требуется синтезировать из находящихся в чистом виде процессов 1->A->2, 3->B->4, 5->C->6, 7->C->8 домен X. Кажется, можно поступить так же, как и при распаде - искать и строить по аналогии. В принципе это возможно, но только в частных случаях - когда объект 3.3 ранее уже синтезировал что-то похожее, в результате чего запомнил процесс синтеза. Но как быть если все делается в первый раз? Где в таком случае найти аналогию синтеза? Очевидно что для этого в vM нужно искать отдельные 1->A->2, 3->B->4, 5->C->6, 7->C->8 или очень на них похожие. Такими же схожими должны быть и процессы, составляющие сам процесс синтеза. Но если все требуемое действительно существует, а тем более в естественном виде (т.е. не было когда-то создано 3.3), то это говорит также и о существовании аналога X, что делает вообще бесполезным существование объекта 3.3 - какой смысл строить уже то, что уже есть? Так что воспользоваться естественными аналогиями синтеза возможно, пожалуй, лишь на стадиях постройки доменов-посредников между vE, vR и X с vM. Для реализации процесса синтеза в общем случае они малопригодны. Воспользуемся таким способом: разобьем фазу распада домена A на несколько равных последовательных стадий. То же самое сделаем и для синтеза (пока предполагаемого) того же домена A, причем число стадий синтеза то же что и распада. Чем отличаются при этом условия, при которых происходит расщепление на 1-й стадии от синтеза на последней, расщепления на 2-й и синтеза на предпоследней и т.д.? Очень немногим. Чем больше стадий - тем меньше разницы. Это дает основания полагать, что создав на начальной стадии синтеза 1-A->2, 3->B->4, 5->C->6, 7->C->8 совокупность условий, присутствующих на последней стадии их высвобождения в чистом виде, и незначительно поварьировав некоторыми параметрами окружающих их доменов (привлекая ГС - генератор случайности), придем ко 2-й стадии синтеза и т.д.. Т.е. в данном случае работает принцип "клин клином вышибают". Поиск и постройка доменов, обеспечивающих появление необходимых внешних условий синтеза на каждой его стадии, происходит аналогично всему этому алгоритму. 4) После того как все готово, делается пробный запуск X и его тестирование. Если выяснится что он не в полной мере обладает нужными свойствами, то пройденная последовательность шагов запоминается как неудачная, происходит откат на первоначальное состояние "состояние 1" (или на состояние, после которого и начались "неудачи", определить которое кстати весьма непросто) и далее весь этот алгоритм начинается с начала (но уже, конечно, по другому пути). 5) Итак, все шаги в vM пройдены. Осталось самое главное - проделать тоже самое, но уже в реальном мире - M. Что и делается. После чего формирователи vM изменяют его в соответствии с изменениями в M - возникновения X. Далее объект 3.3 будет играть роль системы слежения - удерживать X в нужном состоянии. Вот таков процесс достижения цели в рамках 3.3. Добавим к этому еще несколько соображений. 1) Если в результате многократного возврата с шага 4 выяснится что на шагах 1, 2, 3 не хватает информации (слишком большие коэффициенты U при поиске похожих вариантов), то необходимо провести детализацию vM. Ищется область наибольшей вероятности появления домена с нужными свойствами. Как правило это область с наибольшей концентрацией доменов по свойствам, приближающимся к заданному. После этого строятся домены доступа в данную область, идущие от vE и vR. Происходит постройка того же самого в M. Затем при помощи случайных изменений со стороны 3.1 или 3.2 на E, состояния доменов в этой области будет меняться. Это отразится на R и в конечном итоге на формирователях vM. Произойдет более детальная прорисовка vM в этой области. Вполне возможно что после операции детализации область наибольшей вероятности сместится в другую часть vM. 2) Потенциальная бесконечность внутреннего мира объекта класса 3.3.1 может быть таковой лишь отчасти. В силу масштабируемости универсального интерфейса вложенной структуры логических доменов представляется реальным построить внутренний мир (и соответственно его первоначальную детализацию) на базе глобальных параметров бесконечных логических доменов. В этом случае дальнейшее развитие внутреннего мира может идти как по пути "присоединения" логических доменов внешнего мира, так и по пути детализации изначальных (бесконечных) доменов. Аналогичным образом решается и задача модификации рецепторно-эффекторных матриц, изначальные элементы которых (объекты m - см. пункт "Эволюционный процесс и механизм полуактивной защиты, память стекового типа и косвенная цель. Объект класса 3.2.2") также могут представлять собой бесконечные логические домены. 3) Домены-посредники между E, R и M мы будем называть ВНЕШНИМИ ПЛАГИНАМИ. Плагины, эти направленно созданные домены, остаются во внешнем мире и после достижения цели, имеют аналоги в vM и могут быть использованы в дальнейшей работе. Кроме того, на основе плагинов полученных на одном шаге, можно строить плагины для другого шага и т.д.. Все машины человечества - его плагины. Обозначим плагины эффекторы и рецепторы внешнего мира соответственно как PE и PR, а внутреннего - как vPE и vPR. 4) Схематичный рисунок структуры 3.3: ┌─────────────┐ ┌--------------------┐ │Цель - объект│ | Внешний мир M | │ класса 2.2 ├>──┐ | ┌─┐ ╔═╗ ┌─┐ | └─────────────┘ │ | │C├────>╢Y╟───>┤D│ | ┌─────────────┐ │ | └─┘ ╚═╝ └─┘ | │ЭПЗ - объекты├>─┐│ | ┌──┐ ┌──┐ | │ класса 2.1 │ ││ | │PE├<┐ ┌<┤PR│ | └─────────────┘ ││ | └──┘ | | └──┘ | ┌─────────────┐ ││ | ┌─┐ | | ┌─┐ | │ Источник │ ││ | │ ├--┘ └--┤ │ | │материала для├>┐││ | │E│ │R│ | │ внутренних │ │││ | │ ├<─┐ ┌─<┤ │ | │ миров │ │││ | └─┘ │ │ └─┘ | └─────────────┘ │││ └------┼------┼------┘ │││ │ │ │││ ╔╧══════╧╗ ┌------┐ ┌------┐ ││└──────────>╢ Модуль ╟─<─────|Объект|─<─────|Объект| │└───────────>╢ M3 ║ |класса| |класса| └────────────>╢ ║─>─────| 3.2 |─>─────| 3.1 | ╚════╤═══╝ └------┘ └------┘ _ │ _ ┌--------------------------------------┼---------------------------------┐ | Области внутренних миров │ | | ┌─────────────────┴───────────┬──────────────┬... | | ┌------------------┼-------┐ ┌------------------┼-------┐ ... | | | ┌──────┴─────┬┐| | ┌──────┴─────┬┐| | | | _ __| | _ __| | | |╔══════════╧══════════╗ ││| |╔══════════╧══════════╗ ││| | | |║ Формирователь ║ ││| |║ Формирователь ║ ││| | | |║ внутреннего мира Vm1║ ││| |║ внутреннего мира Vm2║ ││| | | |║(объект 3-го порядка)║ ││| |║(объект 3-го порядка)║ ││| | | |╚══════════╤══════════╝ ││| |╚══════════╤══════════╝ ││| | | | _ ││| | _ ││| | | |┌──────────┴───────────┐││| |┌──────────┴───────────┐││| | | |│Внутренний мир 1 - vM1│││| |│Внутренний мир 2 - vM2│││| | | |│ (он же полигон) │││| |│ (он же полигон) │││| | | |│ ┌───┐ ┌──┐│││| |│ ┌───┐ ┌──┐│││| | | |│ │vPE├<---┤vE├┼┘│| |│ │vPE├<---┤vE├┼┘│| | | |│ └───┘ └──┘│ │| |│ └───┘ └──┘│ │| | | |│ ┌───┐ ┌──┐│ │| |│ ┌───┐ ┌──┐│ │| | | |│ │vPR├>---┤vR├┼─┘| |│ │vPR├>---┤vR├┼─┘| | | |│ └───┘ └──┘│ | |│ └───┘ └──┘│ | | | |└──────────────────────┘ | |└──────────────────────┘ | | | └--------------------------┘ └--------------------------┘ | └------------------------------------------------------------------------┘ Как видно из рисунка, область внутреннего мира делится на несколько частей - автономных параллельно работающих внутренних миров (используется схема вида "M->полигон" - см. пункт "Устройство основных узлов объекта класса 3.3. Энциклопедия первичных знаний"). Каждый из них включает свой собственный формирователь и набор внутренних рецепторов, эффекторов и плагинов внутренних рецепторов и эффекторов. Кроме цели и ЭПЗ имеется также источник материала для строительства областей внутренних миров. На схеме мы видим что пути влияния к внешним плагинам E->PE, PR->R, vE->vPE, vPR->vR показаны пунктиром. Тем самым показывается что PE, PR, vPE, vPR не имеют прямого отображения в памяти 3.2 и работа с ними (как с отдельными объектами) происходит исключительно в рамках внутреннего мира. Большой простор для фантазии открывается при улучшении полигона - к примеру при переходе от "состояние 1" к "состояние 2" можно запоминать не все состояние vMi, а лишь изменения в соответствующих объектах. Сделать полигон на основе многоблочных объектов - каждый блок объекта содержит информацию о его состоянии в "состоянии i" причем состояние одного блока не влияет на другой, что дает возможность параллельно дав команду на все объекты управлять переходом от "состояние i" к "состояние j". И т.п.. Так что конструкция объекта 3.3 содержит большой потенциал для своего развития. Интересна также организация защиты объекта 3.3 от негативного влияния внешнего мира. Как уже упоминалось, внутренний мир представляет собой совокупность объектов класса 2.2, интерпретаторы которых функционируют независимо друг от друга. Поэтому внесенные нами изменения в состояния одних объектов автоматически вызывают изменения состояния других, как и во внешнем мире. Даже если мы вообще ничего не изменяем во внутреннем мире, все равно идет постоянное движение объектов внутреннего мира само по себе. Искусственно повысив скорость процессов внутреннего мира относительно скорости тех же процессов во внешнем мире мы сможем предвидеть развитие событий. Совместно с механизмом отката это делает реальным построение активной защиты. "Проиграв" развитие событий, объект 3.3 строит во внутреннем мире домены позволяющие изменить их ход в лучшую для него сторону. Используя же механизм отката можно провести оптимизацию этих мер - выбрать из нескольких возможных путей наиболее перспективный. Так что активная защита строиться на тех же самых принципах, что и общее движение 3.3 в сторону достижения цели. Образно говоря внешний мир с точки зрения объекта 3.3 - это "черный ящик". Подсистема класса 3.2 накапливает информацию об "черном ящике", образуя набор (Ri, Ei, dUi). Затем подсистема 3.3 производит "расшифровку" этого набора в "терминах" ЭПЗ и путем создания логических доменов "проигрывает в голове" путь к цели. Очевидно что принципиальных отличий достижения цели в модели "построение по аналогии" и в рассмотренной "руда - металлы - сплав" нет. Поэтому особо останавливаться мы на ней не будем.
newpoisk.narod.ru, 21 марта 2005 года