Публикую тут идею, зерно которой было посажено в мой разум много лет назад игрой Механоиды и дозревшей, наконец, до полноценной концепции.
Концепция интеллекта Разработка собственной концепции искусственного интеллекта была вызвана моим несогласием с самой сутью подходов, практикующихся на данный момент: учёные пытаются создать устройство, внешне и функционально имитирующее автомобиль, в то время как я считаю, что нужно разрабатывать средство передвижения. В этом, по моему мнению, заключается основная ошибка всех подходов: вместо создания самого интеллекта мы пытаемся создать набор эмуляторов его проявлений. В результате видим такие достижения, как "учёные создали робота, способного говорить!" или "учёные научили робота ходить!" и пр. По моему мнению, даже совокупность всех этих отдельных функциональностей не будет настоящим разумным существом, т.к. рамки его способностей ограничиваются создателями.
Я же решил не обгрызать пирог интеллектуальных проявлений по краям, а укусить прямо в центр, задавшись вопросом, что такое интеллект вообще. Т.к. любое действие разумного существа имеет Цель, то я считаю, что рассматривая интеллект как средство достижения целей, использующее опыт для эффективного выполнения поставленных задач, можно создать разум, который проявит все возможные аспекты интеллектуальной деятельности, наблюдаемые у человека.
Для определения понятия Интеллекта я задался вопросом: «для чего человек пользуется разумом и в чём собственно функция интеллекта?». Вывод, к кторому я пришёл звучит просто: «Интеллект – это средство достижения Целей». Цели могут быть любые – нахождение пищи, ночлега, партнёра и пр. В отличие от примитивных животных человек способен накапливать опыт и использовать его для более эффективного достижения целей, в то время как животные руководствуются лишь изначально заложенными инстинктами и демонстрируют консервативное и предсказуемое поведение.
Цели, стоящие перед интеллектом редко могут быть напрямую достигнуты простыми моторными функциями самого организма, поэтому достижение целей требует взаимодействия с окружающим миром посредством определённой последовательности действий, осуществляемой при определённых условиях. Определение требуемых условий и правильной последовательности действий требует опыта.
Всё в окружающем нас мире взаимосвязано. Опыт – это знание об этих взаимосвязях. Оно позволяет использовать изученную интеллектом механику взаимоотношений событий и объектов окружающего мира для достижения своих целей. К примеру, мы устали и хотим поспать (цель). Мы знаем, что для этого нам нужно создать затемнение (опыт). Мы знаем, что свет выключается с помощью выключателя (опыт). Поэтому мы щёлкаем выключателем (действие, приводящее к достижению цели).
Однако сам по себе опыт не накапливается – это требует целенаправленного изучения окружающего мира, что есть также одна из Задач интеллекта (под Задачей будем понимать совокупность целей определённой тематики). Наблюдение и пытливость – деятельность, через которую проявляется такая задача как изучение взаимосвязей в окружающем мире. Воздействие на ощущаемые организмом объекты с помощью моторных функций и наблюдение результата таких действий – наиболее важная часть процесса изучения, т.к. без знания функционала собственного тела невозможно планирование действия. Следует добавить, что опыт, необходимый для достижения такой цели, как накопление опыта, уже заложен в нас изначально в виде готовых рефлексов, как например фиксирование взгляда на объектах.
В практическом смысле Цель – это необходимость (не)ощущения некоторого объекта, события или состояния внутреннего или внешнего мира. Отсутствие чувства голода, холода, боли, ощущение сытости, безопасности и пр. – примеры целей, составляющих такую задачу нашего интеллекта как самосохранение. Необходимый для выполнения этой задачи опыт заключается в изучении обстоятельств, связанных с этими ощущениями. Конкретно, необходимо знание о том, какая последовательность или комбинация событий приводит к возникновению целевого ощущения и при каких обстоятельствах этого не происходит. Соответственно, при ощущении чувства боли, холода или голода от интеллекта требуются действия, направленные на устранение условий возникновения этого чувства. Если же целью является ощущение чувства сытости или безопасности, то деятельность направляется на создание условий, при которых это чувство возникает и устранение условий, при которых требуемое чувство исчезает.
Определение последовательности использования моторных функций, которая в конечном итоге приведёт к достижению цели – это и есть функция интеллекта, называющаяся планированием действия. Её механика заключается в замене невыполнимой цели выполнимыми: если целевое ощущение не может быть достигнуто моторной функцией, то условия возникновения этого ощущения становятся целями. Такое переопределение продолжается до тех пор, пока целевыми ощущениями не будут определены те, которые вызываются моторными функциями организма.
Следует пояснить, что под ощущением понимается элементарная единица воспринимаемой информации, будь то ситуация, характеристика, объект или событие окружающего или внутреннего мира: ромашка, гроза, падение, рисую, сладость, буква, запах, пять утра, больно и т.д. Ощущениями являются не только воспринимаемые сенсорами единицы информации или их частовстречаемые комбинации, но и комбинации других ощущений, и при этом все ощущения гомогенны, т.е. не делятся на классы или типы в зависимости от того, чему в реальности соответствуют, т.к. в практическом плане это не имеет значения – для достижения цели необходимо лишь знание о закономерностях появления ощущений.
Реализация интеллекта
Ч.1: построение картины взаимосвязейФизическая реализация интеллекта – Мозг – содержит в себе виртуальное отражение мира, представленное в виде элементов, соответствующих каждому воспринимаемому ощущению. Несмотря на неизменное количество сенсоров входящей информации, количество воспринимаемых ощущений растёт по мере накопления опыта. Каждое ощущение представляет из себя как минимум единожды встреченную комбинацию других ощущений или сенсорных данных. Под комбинацией ощущений понимается не только событие их одноврменного восприятия (как видение дуги и цилиндра в некоторой взаимоориентации может означать наблюдение за кружкой), но также и определённая временная зависимость между восприятиями определённых ощущений (как последовательность слышимых фонем является словом). Первый вариант – лишь редкий частный случай второго. Таким образом накопление опыта практически означает выявление временной корреляции между восприятиями ощущений. Знание этой закономерности позволяет переопределить восприятие любого ощущения как определённую временную комбинацию событий восприятия коррелирующих ощущений. При условии наличия корреляционной зависимости между целевым ощущением и ощущением исполнения моторной функции (вне зависимости от того, сколько ощущений имеется в цепи ощущений-посредников) достижение цели возможно.
С учётом требования фиксирования ощущений, являющихся комбинацией других ощущений во времени, становится очевидно, что максимальное количество воспринимаемых ощущений, а значит и элементов мозга стремится к бесконечности. Поскольку это не реализуемо практически, то помимо создания необходим также алгоритм слияния элементов с близкими условиями восприятия (обобщение) или уничтожения элементов по критериям невостребованности (ощущение не имеет практического значения для выполнения целей) или неповторяемости (велика возможность восприятия события случайно совпавших не связанных между собой ощущений).
Каждый элемент может находиться в двух состояниях – активном (ощущение воспринимается) или пассивном (условия возникновения ощущения не удовлетворены). При переходе в активное состояние элемент сохраняет время этого события. Помимо штампа времени последней активации элемент хранит значение своего потенциала (1.0 и выше приводит к активации элемента) и массив данных, характеризующий свойства корреляции с каждым иным элементом (будем называть все элементы, отличные от данного «Эх»). Структура данных о связи с Эх имеет следующие поля:
1а) Минимальное и максимальное значения временного интервала (диапазон разброса значений, от 0 до бесконечности) между активацией Эх и активацией данного элемента.
1б) Количество успешных замеров временных интервалов, на котором базируются эти значения.
2) Штамп времени активации Элемента Х, который был прочтён в момент предыдущей активации данного элемента: сравнение с текущим значением штампа позволяет определить, активировался ли Эх с тех пор. Если Эх не активировался, то данные 1аб не обновляются. Если же активация случалась, величина 1б возрастает на 1, а диапазон разброса (1а) уточняется: его рамки корректируются новым замером, после чего сужаются, стремясь приблизить среднее значение диапазона разброса к значению нового замера. Величина изменения рамок диапазона разброса обратно пропорциональна количеству успешных замеров (1б), поэтому при большом их числе вносимая новым замером корректировка минимальна. Практический смысл такой операции – более точное определение временной корреляции между ощущениями, что позволит планировать действия, основанные на этих взаимосвязях с меньшей погрешностью.
Данные связей несут в себе следующую смысловую нагрузку:
1а показывает минимальное и максимальное время, которое может пройти от восприятия ощущения Элементом Х, прежде чем проявится ощущение, воспринимаемое данным элементом, т.е. 1а определяет рамки временного диапазона, внутри которого может восприниматься данное ощущение.
С учётом того, что при каждой активации данного элемента проводится анализ каждой связи, и величина 1б увеличивается на единицу лишь для связей с коррелирующими ощущениями (по алгоритму, описанному выше), то сравнение величин 1б разных связей позволяет оценить коэффициент корреляции для каждой связи: максимальное значение 1б среди всех связей соответствует единице, т.е. максимуму корреляционной зависимости. Таким образом можно определить коэффициент корелляции каждой связи в пределах между 0.0 и 1.0 (для этого нужно поделить 1б данной связи на максимальное значение 1б среди всех связей).
Активация связи происходит в ответ на истечение минимального срока с момента активации соответствующего Эх (минимум из 1а) и продолжается вплоть до максимума 1а. Активность связи приводит к увеличению потенциала активации зависимого элемента на величину, равную коэффициенту корреляции связи. Очевидно, что любая отдельная связь с высоким коэффициентом корреляции (1.0) однозначно приведёт элемент в активное состояние, в то время как активация слабокоррелирующими ощущениями требует их большого числа и правильной последовательности возникновения. На практике единичный коэффициент корреляции встречаться будет в основном лишь у новосозданных элементов, фиксирующих картину ощущений на момент своего создания.
Создание и удаление элементов – два конкурирующих динамических процесса. Новые элементы создаются постоянно, фиксируя каждую встреченную комбинацию ощущений. В то же время элементы с близким характером активации сливаются воедино, а статистически неактивные элементы удаляются.
Создание нового элемента происходит в ответ на активацию какого-либо из существующих элементов или сенсорных входов, т.е. при качественном изменении картины ощущений. Новосозданный элемент получает связи со всеми существующими элементами и сенсорными входами, а все существующие элементы дополняются связью с новосозданным. Новый элемент создаётся в активном состоянии и фиксирует временные интервалы, прошедшие со времени активации каждого существующего элемента и сенсорного входа, запоминая таким образом общую ситуацию как условия своей активации. Задачей нового элемента является выявление закономерности, приведшей к активации элемента, в ответ на которую был создан данный. Очевидно, что эта закономерность может быть выявлена лишь при последующих активациях исследуемого элемента и сравнении условий. После первой активации допустимо предположить лишь то, что исследуемый элемент активируется при точно такой же картине активности остальных элементов. Для осуществления подобной функции необходима неравнозначность новосозданных связей: коэффициент корреляции связи с исследуемым элементом должен изначально быть равен 1.0 (т.е. однозначно приводить к активации нового элемента), в то время как суммарный коэффициент корелляции всех остальных связей равен 1.0, т.е. для каждой связи он равен 1.0/n, где n – общее число связей. Таким образом повторная активация нового элемента произойдёт как при активации исследуемого элемента, так и при аналогичной картине активности иных элементов (подобная ситуация). Очевидно, что с каждой новой активацией исследуемого элемента лишь связанные с этим события будут повышать коэффициент корреляции соответствующих связей, поэтому по мере накопления статистического опыта и условии наличия корреляции активация нового элемента будет требовать всё меньшего количества активных связей (выявление сути из набора избыточных данных).
Теперь рассмотрим механизм слияния элементов. Логический смысл данной операции в том, что для восприятия каждого ощущения или близких по характеру ощущений достаточно одного элемента. Близость характеров активации практически определяется путём поиска связей с коэффициентом корреляции близким к 1.0. Если активность элемента П (допустим, он воспринимает ощущение-Причину) однозначно приводит к активности элемента С (Следствие), то достаточно ограничиться элементом С, избавившись от П. При этом все входящие связи удалённого элемента П должны быть унаследованы элементом С (временные интервалы полученных связей необходимо скорректировать согласно исчезнувшей задержке, вносимой удалённой связью П-С).
Все связи, являющиеся ссылками на удалённые элементы удаляются.
Таким образом происходит построение картины взаимосвязей событий окружающего и внутреннего мира в виде временной корреляционной зависимости между событиями восприятия ощущений. На базе этих знаний возможно планирование целенаправленных действий, а также предсказание последствий наблюдаемых событий и собственных действий ещё до момента их физического осуществления.
Ч.2: использование картины взаимосвязей для достижения целей Для достижения целей необходима составленная картина взаимосвязей между событиями и объектами окружающего и внешнего мира, т.е. палитра воспринимаемых ощущений и характеристики их взаимокорреляции. Результаты собственных действий являются частью этой картины. Практически, под результатом собственных действий понимается взаимосвязь ощущений, связанных с ощущением применения собственных моторных функций.
Напомню, что целью практически является необходимость восприятия некоторого ощущения или избегание возможности такого восприятия, т.е. требование (не)активности некоторого элемента – это постановка цели. Однако лишь элементы ответственные за моторные функции (что является неизменной изначально заложенной характеристикой определённых элементов на протяжении всей жизни организма) могут отвечать собственной активацией на подобный запрос. Все остальные элементы перенаправляют запрос активации другим элементам – тем, с которыми они имеют связи.
Рассмотрим механизм работы подобного переопределения цели немоторными элементами. Очевидно, что требование активации такого элемента может быть рассмотрено как требование активности корреляционно связанных элементов в определённые промежутки времени, что приведёт к активности данного элемента по законам корреляции, выражающимся в связях с данными элементами. Требование неактивности данного элемента – это наоборот, требование неактивности этих элементов в такие промежутки времени. Запросы (не)активации должны быть отправлены по всем связям, но на этот раз в обратную сторону, «снизу вверх» (т.е. от данного элемента к каждому Эх). Каждый запрос имеет три характеристики, две из которых основаны на характеристике связи:
1) Идентификатор начальной цели – все запросы, являющиеся следствием перенаправления, наследуют идентификатор пришедшего запроса, т.е. начальной цели. Это позволит одновременно планировать решение нескольких целей, параллельно обрабатывая запросы с разными идентификаторами.
2) Сила запроса – величина, равная коэффициенту корреляции данной связи, умноженному на силу полученного запроса, подвергаемого перенаправлению (сила имеет знак: положительный для запроса активации и отрицательный для требования неактивности). Таким образом наибольшую по модулю силу имеют запросы, отправленные по сильнокоррелирующим связям.
3) Границы действия запроса: временные штампы начала и конца временного интервала, на протяжении которого указывается требуемый характер активности связи.
В ответ на принятие элементом запроса по каждой связи отправляется три новых запроса. Механизм формирования перенаправленных запросов следующий. Сперва элементу необходимо определить временной промежуток, для которого должна быть составлена картина требуемой активности данной связи: для активации элемента необходима активность рассматриваемой связи лишь на определённом участке данного интервала. Для определения общей длины интервала достаточно объединить границы разброса временных задержек каждой из связей и определить абсолютные значения минимума и максимума. Затем на полученный интервал нанести границы диапазона разброса временной задержки данной связи. Полученному отрезку присваивается положительное значение силы запроса («тут активность требуется»), а двум крайним – отрицательное («там активность не нужна»). Затем три полученных отрезка извлекаются как индивидуальные запросы. Однако перед отправкой каждого запроса следует расширить («размыть») границы его действия границами действия изначального запроса.
Обратите внимание на проблему постепенного расширения границ времени действия запросов по мере их перенаправления. На конечной стадии формирования алгоритма действий интервалы всех запросов, полученных каждым из моторных элементов будут нанесены на временную линию и математически объединены для полученния требуемого временного паттерна активности и неактивности, выражающегося посредством знака на каждом полученном промежутке. Модуль значения силы на каждом таком участке будет тем выше, чем больше «уверенность» в правильности принятия решения об активности моторного элемента на данном промежутке. Очевидно, что наложение разнознаковых запросов на один и тот же участок временной линии приведёт к ослаблению принятия решения о применении моторной функции в данном промежутке времени (неопределённость действия, конфузная ситуация), в то время как пересечение диапазонов действия однознаковых запросов будет однозначно определять характер активности моторного элемента на данном интервале.
Очевидно также, что продолжительная пересылка таких запросов ведёт к геометрическому росту их числа (особенно при неиерархичной структуре связей элементов), поэтому целесообразно отсеивать запросы, получающие минимальную силу по сравнению с остальными, однако это приведёт к погрешности и возможной ошибке в конечном алгоритме действий.
Что касается условий активации моторных элементов, играющей роль урн для сбора запросов, то очевидно, что их активность не должна проявляться моментально при получении первого же запроса активации, т.к. существует вероятность, что некоторые из последующих запросов (более зрелые мысли, являющиеся результатом продолжительного мышления над проблемой) будут требовать противоположного действия, либо более ранней активации, поэтому для правильного порядка действий требуется некоторое время принудительной неактивности моторных элементов, отводимое для процесса планирования действия.
Определение времени мышления, после которого запланированный алгоритм действий приводится в исполнение, зависит от результата предсказания действий, проходящему параллельно с планированием – когда мысленная симуляция результатов запланированного действия приводит к активации целевого элемента в требуемый срок, планирование останавливается и моторные элементы начинают исполнение собранных и объединённых запросов. Если же мысленное исполнение запланированного действия не приводит к требуемому результату, планирование продолжается.
Для определения времени исполнения действия проводится анализ временной линии каждого моторного элемента: находится точка абсолютного минимума (соответствует первой активации начальной моторной функции), и с учётом того, что временной штамп самого первого запроса был равен условному 0, то время от начала действия до достижения цели будет равно разности этих значений.
Процесс параллельного анализа запланированных действий и остановка процесса планирования строго в тот момент, когда результат симуляции действий указывает на достижение цели необходим для нахождения наиболее рационального решения, т.е. самого быстрого решения, приводящего к достижению цели, т.к. продолжительное мышление будет приводить к нахождению всё более сложных и, соответственно, более длительных операций.
Человеческий мозг способен концентрироваться лишь на одной цели, в то время как очевидно, что вполне возможна параллельная обработка алгоритмов действий для достижения множественных целей (т.е. независимая параллельная обработка запросов с разными идентификаторами), но лишь при условии, что составленные алгоритмы применения моторных функций для каждой отдельной цели не противоречат друг другу, однако возможность интерференции действий или результатов их непредсказуемого взаимовлияния слишком велика.
Заключение На данный момент теория ещё не опробована на практике, поэтому у меня пока нет оснований подозревать наличие в ней ошибок. Однако я допускаю наличие в документе неясностей и неполное описание отдельных аспектов функционирования данного принципа, вызванных, опять же, отсутствием практического приложения для более глубокого и детального исследования этой теории, что пока лишь в стадии планировки.
Сила интеллекта, созданного по такому принципу, я считаю, должна как минимум соответствовать уровню человеческого, и спектр решаемых задач, соответственно, неограниченный. Ожидаемый недостаток – необходимость обучения с нуля подобно младенцу, т.е. изначальная нефункциональность до момента накопления достаточного для решения поставленной задачи опыта. Принципиальное отличие от человеческого разума – возможность определения любой желаемой разработчиком цели или их совокупности (т.е. не обязательно привычные выживание и размножение, а что-то иное, например сбор информации, совершенствование технологий, захват вселенной или просто исполнение команд разработчика). Телом робота может быть выбрана любая платформа с любым количеством функций, однако необходима некоторая изначальная структуризация системы элементов и алгоритм тестирования моторных функций, который позволит роботу определить собственный функционал на начальной стадии самообучения, а также базовые рефлексы и алгоритм постановки целей для осуществления исследовательской активности (способствование процессу накопления опыта).
Автор: Четвериков Ян Вадимович,
yandersen@list.ruSkype: yandersen
Версия документа: 2.1 (7 Апреля 2013г.)