Разделы
Партнеры
Счетчики
7.2.2. Устройство объекта класса 3.2
Интегральная теория создания ИИ
Общая схема объекта класса 3.2 ┌---------------┐ ╔═══╗ | ┌─┐ ╔═╗ ┌─┐ | ╔═══╗ ║AU1╟<─────────────────────────┼─┤A├─>╢X╟─>┤B├─┼───────────────────────>╢BU2║ ╚╤══╝ | └─┘ ╚═╝ └─┘ | ╚══╤╝ │ | Цель | │ │ ┌──┐ └---------------┘ ┌──┐ │ └>─┤ │ ╔═════╗ │ ├<─┘ │U1├───────────────────────────>╢U1U2U╟<─────────────────────────┤U2│ ┌>─┤ │ ╚══╤══╝ │ ├<─┐ │ └──┘ _ └──┘ │ │ └──────┐ │ │┌---------------------------------------─┐ │ ┌------------------------┐│ │| Модуль M2.1 | │ | Объект класса 3.1 |│ │| ┌─────────────────────────────┐ |┌─┴─┐| |│ │| │ ┌────────────────────────┐ │ |│ U │| |│ │| │ │ ┌-------------------┐ _ _ |└┬─┬┘| ╔═════════════════════╗|│ │| │ │ |Ячейки памяти 4 шт.| ╔╧══╧╗ | _ _ | ║ Модуль M1 ║|│ │| │ │ | ┌─────────┐ | ║ ╟───────┼─┘ └─┼─╢ ║|│ │| │ │ | │E1,R1,dU1├<─┼>╢ ║ | | ╚═════╤══════╤═╤══╤══╤╝|│ │| │ │ | └────────┬┘ | ║ ║ | | _ _ _ _ _ |│ │| │ │ | ┌─────────┐│ | ║ ║ | | │ │ │ │ │ |│ │| │ │ | │E2,R2,dU2├│─<─┼>╢ ║ | | _ _ _ │┌─┴┐|│ │| │ │ | └────────┬┘│ | ║M2.1║ | | ┌─────┴─────┐│ │ ││ГС│|│ │| │ │ | ┌─────────┐│ │ | ║ ╟─<─────┼─────┼─┤Uпредыдущее││ │ │└──┘|│ │| │ │ | │E3,R3,dU3├│─│─<─┼>╢ ║ | | └───────────┘│ │ │ |│ │| │ │ | └────────┬┘│ │ | ║ ║ | | ┌──────────┴┐│ │ |│ │| │ │ |┌─────────┐│ │ │ | ║ ║ | | │Eпредыдущее││ │ |│ │| │ │ |│E4,R4,dU4├│─│─│─<─┼>╢ ║ | | └───────────┘│ │ |│ │| │ │ |└────────┬┘│ │ │ | ╚════╝ | | ┌──────────┴┐ │ |│ │| │ │ └---------┼-┼-┼-┼---┘ | | │ Eтекущее │ │ |│ │| │ │ │ │ │ │ | | └─────┬─────┘ │ |│ │└-┼-┼-----------┼-┼-┼-┼------------------┘ └-----------┼-------┼----┘│ │ │ │ │ │ │ │ │ │ │ │ │ │ ┌------┼-┼-┼-┼------------------------------------┼-┐ │ │ │ │ │ | │ │ │ │ _ | │ │ │ │ │ | │ │ │ │ Модуль M2.2 │ | │ │ │ │ │ | _ _ _ _ │ | │ │ │ │ │ |╔═════╧═╧═╧═╧════════════════════════════════════╧╗| │ │ │ │ │ |║ M2.2 ║| │ │ │ │ │ |╚═════════════════╤═══════╤═══════════════════════╝| │ │ │ │ │ | _ _ | │ │ │ │ │ | │ ┌─┴─┐ | │ │ │ │ │ | │ │Em │ | │ │ │ │ │ | │ └─┬─┘ | │ │ │ │ │ └------------------┼-------┼------------------------┘ │ │ │ │ │ │ └──────────┐ │ │ │ │ └───────────────────────│─────────────────┐│┌──────────────────┘ │ │ └───────────────────────┐ │ │_│ │ │ ┌--┼-┼-----------------┼┼┼--┐ │ │ | ┌┴─┴┐ ┌┴┴┴┐ | │ │ | │ R │ │ E │ | │ │ | └───┘ Внешний мир └───┘ | │ │ | ┌---------------┐ | │ │ ╔═══╗ | | ┌─┐ ╔═╗ ┌─┐ | | ╔═══╗ │ └──────<╢CU1╟<──────────┼─────┼─┤C├─>╢Y╟─>┤D├─┼─────┼──────>╢DU2╟>────────┘ ╚═══╝ | | └─┘ ╚═╝ └─┘ | | ╚═══╝ | └---------------┘ | └---------------------------┘ Приведем упрощенный (просто показывающий суть идеи и неоптимизированный) алгоритм работы объекта 3.2, полагая что имеется 2 эффектора, 3 рецептора, и 4 ячейки памяти, содержащие такие значения: ((E11, E12), dU1, (R11, R12, R13)) ((E21, E22), dU2, (R21, R22, R23)) ((E31, E32), dU3, (R31, R32, R33)) ((E41, E42), dU4, (R41, R42, R43)) --------> Начало алгоритма: 0. Инициализация: а) Получение значения U б) Uпредыдущее := U в) Eтекущее := ГС г) Eпредыдущее := Eтекущее 1. Получение значений U, R, E 2. Если U=0, то цель достигнута. Перейти на пункт 1. ---------------------------логика работы 3.1---------------------------------- 3. Если U<=Uпредыдущее, то сделанный шаг оказался удачным (или нейтральным), 3.1 делает новый шаг: а) Получает значение Eтекущее: Eтекущее := E б) Запоминается состояние U: Uпредыдущее := U в) Запоминается состояние Eпредыдущее: Eпредыдущее := Eтекущее г) Случайно генерируется новое состояние Eтекущее: Eтекущее := ГС 4. Если U>Uпредыдущее, то сделанный шаг оказался неудачным - привел к увеличению значения U, 3.1 возвращается назад: а) Запоминается состояние U: Uпредыдущее := U б) Осуществляется возврат к состоянию Eпредыдущее: Eтекущее := Eпредыдущее в) Так как в случае если и этот шаг окажется неудачным смысла возвращаться уже нет, поэтому 3.1 не сохраняет Eпредыдущее, а присваивает ему случайное значение: Eпредыдущее := ГС ---------------------------логика работы M2.1--------------------------------- 5. dU := Uпредыдущее-U 6. Если имеются свободные ячейки памяти и dU>0, то записать в первую свободную ячейку (с номером i): Ei := E Ri := R dUi := dU Перейти на пункт 8. 7. Если dU>0, то шаг удачный, M2.1 производит заполнение памяти: а) Рассчитываются коэффициенты Ki по формуле: (1) Ki=sqrt((Ri1-R1)^2+(Ri2-R2)^2+(Ri3-R3)^2)), где i=1..4, sqrt - функция извлечения квадратного корня, значок ^ - знак возведения в степень (в данном случае в квадрат). б) Произвести уменьшение значения dUi у всех ячеек памяти по формуле: Ki+1 (2) dUi=dUi*(1- ────────), H*Ki+1 где H - большое положительное число (В принципе H можно рассчитать как произведение мощностей множества состояний рецепторов: H=|R1|*|R2|*...|Rm|). в) Если dU>=min(dUi), то записать в ячейку с наименьшим dUi текущее состояние рецепторно-эффекторных матриц (R, E) и dU. min(dUi) - минимальное значение dUi 8. M2.2 проводит подготовку к очередному шагу: а) Рассчитывает коэффициенты влияния Qi каждой ячейки памяти на будущий облик эффекторной матрицы. Чем больше Qi, тем меньше образ матриц запечатленный в i-й ячейке памяти похож на текущее состояние рецепторно-эффекторных матриц. Если Qi=0, то различия отсутствуют. (3) Qi=Ki/sqrt(3*dUi)=sqrt(((Ri1-R1)^2+(Ri2-R2)^2+(Ri3-R3)^2)/(3*Ui)) б) Учитывает информацию поступающую из 3.1. Для этого рассчитывается коэффициент влияния массива Eтекущее на будущий облик эффекторной матрицы. Он рассчитывается как среднее арифметическое значений коэффициентов Qi ячеек памяти: Q1+Q2+Q3+Q4 (4) Q0=────────────── 4 Это позволяет вносить в процесс формирования матрицы эффекторов необходимый компонент случайности. в) Формируется образ эффекторной матрицы Em - расчет каждого компонента, j=1..3: (5) Emj=( (Eтекущееj)/Q0+(E1j)/Q1+(E2j)/Q2+(E3j)/Q3+(E4j)/Q4 )* *( 1/Q0+1/Q1+1/Q2+1/Q3+1/Q4 )^(-1)= ┌ 4 ┐ ┌ 4 ┐^(-1) │ ____ │ │ ____ │ │ \ Eij │ │ \ 1 │ = │ > ─────│*│ > ─────│ = │ /___ Qi │ │ /___ Qi │ │ i=0 │ │ i=0 │ └ ┘ └ ┘ E0j*Q1*Q2*Q3*Q4+E1j*Q0*Q2*Q3*Q4+E2j*Q0*Q1*Q3*Q4 = ──────────────────────────────────────────────────────────── + Q1*Q2*Q3*Q4+Q0*Q2*Q3*Q4+Q0*Q1*Q3*Q4+Q0*Q1*Q2*Q4+Q0*Q1*Q2*Q3 E3j*Q0*Q1*Q2*Q4+E4j*Q1*Q2*Q3 + ──────────────────────────────────────────────────────────── Q1*Q2*Q3*Q4+Q0*Q2*Q3*Q4+Q0*Q1*Q3*Q4+Q0*Q1*Q2*Q4+Q0*Q1*Q2*Q3 Видно что если, например Q4=0, то Ej=Ej4, т.е. на матрицу эффекторов будет передано без изменения состояние образа эффекторной матрицы из 4-й ячейки памяти. г) Чтобы избежать появления коллизий с 3.1, нужно перезаписать Eтекущее значением Em: Eтекущее := Em ------------------------------Производство шага------------------------------- 9. Производится шаг - матрица эффекторов переводится в состояние Em. Перейти на пункт 1. --------> Конец алгоритма Комментарии к алгоритму: - формула (2) реализует функцию т.н. ИЗБИРАТЕЛЬНОГО ЗАБЫВАНИЯ. В среде функционирования 3.2 может быть множество логических доменов, поэтому при переходе в область другого логического домена зависимость E=M(R,F) претерпит изменения: реальная взаимосвязь U=M(R,F) будет другой, чем образы эффекторно-рецепторных матриц в памяти, оставшиеся со старого домена - может случиться так, что Ri будет примерно равным R, а при попытке скопировать Ei в E, dU станет совсем другим чем dU. Поэтому при переходе в новый домен желательно побыстрее заполнить память новой информацией. Поскольку заполнение памяти происходит путем записи информации в ячейки с минимальным dUi, то процесс забывания должен обеспечить в уменьшение dUi в зависимости от степени похожести текущего состояния рецепторно-эффекторных матриц с i-й ячейкой. В пределе получается такая зависимость: dUi=dUi/H, при Ki=бесконечность (т.е. когда вообще нет никакого сходства) dUi=0, при Ki=0 (100%-е сходство) - в памяти отсутствуют значения с dUi<=0, запоминаются только удачные шаги - так же как и в случае с объектом класса 3.1, приведенные схемы и алгоритм работы не являются описание способа достижения цели. Они говорят лишь о последовательности срабатывания блоков и только. Объект 3.2 фактически проводит интерполяцию/экстраполяцию поведения внешнего мира по узловым точкам - ячейкам памяти. - Из (5) очевидно что в памяти не должно быть 2-х или более ячеек памяти с Qi=0, поскольку возникает деление на 0. - ГС формирует E0 по принципу: каждому физически элементарному объекту, слагающему E0, приписывается случайное значение. - Описанный алгоритм является упрощенным и неоптимизированным. Он лишь показывает принцип работы. В нем не учитываются многие возможные варианты (например когда в памяти присутствует образ с Qi=0 и ГС тоже сформировал E0 с Q0=0). Поскольку учет всех возможных вариантов сделал бы алгоритм сложным, непонятным и нечитабельным, было решено ограничиться простым. - Так же как и в случае с объектом класса 3.1 приведенный алгоритм работы - это не алгоритм достижения цели. Он просто отражает последовательность срабатывания блоков. Точно так же как не существует у животных жесткого детального алгоритма их повседневного поведения, но есть логика общего стремления к цели (например выживаемости вида, борьбы за существование). Если убрать из среду существования 3.2 логические домены и универсальный интерфейс, то цель не будет достигнута, несмотря на оставшийся неизменным алгоритм работы. В конце пункта "Треугольная схема объекта класса 3.1" мы поднимали вопрос управления объектами Z, Zтекущее и Zпредыдущее. В случае если они представляют собой логические домены, процедура их копирования несколько упрощается. Рассмотрим два похожих логических домена A и B. Изменение глобальных параметров логического домена A вызывает соответствующие изменения в слагающих его более мелких доменах Ai. Если теперь произвести примерно такие же изменения глобальных параметров домена B, то можно утверждать что возникшие в результате этого изменения составляющих его доменов Bi будут аналогичны изменениям Ai. Таким образом благодаря схожести логических доменов A и B, для приближенного управления ими необязательно иметь в формальных моделях полную картину. Следовательно, создателю объекта 3-го порядка нужно лишь чтобы Z, Zтекущее и Zпредыдущее были похожими логическими доменами. Кроме этого в объекте класса 3.2 возможно считывать состояния объектов 1-го порядка эффекторной матрицы (что и происходит в пунктах "1", "3.1 а)", "6" рассмотренного алгоритма). Это имеет смысл, поскольку: во-первых в отличие от объекта Z каждый их слагающих эффекторную матрицу объект 1-го порядка связан с средой функционирования достаточно слабо; во-вторых заполнение памяти также требует наличия возможности считывать состояние E. Таково устройство наиболее простой разновидности объекта 3.2. Однако в таком виде он малопригоден для практического использования.
newpoisk.narod.ru, 21 марта 2005 года глубинный вибратор для бетона