Эволюция разумна?

Приветствую, хабравчане! Сегодня речь пойдёт об одном, на мой взгляд, интересном варианте алгоритма для самообучающейся системы. Идея подобной статьи зрела давно, однако руки всё не доходили.

Рассматриваемую ниже модель можно спокойно отнести к областям эволюционного моделирования и роевого интеллекта, однако с заделом на дальнейшую интеграцию с существующими наработками в области нейросетей. Но, обо всём по порядку.

Мотивация

Началось всё с идеи, что восприятие мира нашим мозгом — образное. Каждому объекту реального мира, каждому явлению, с которым человек и его нервная система взаимодействуют, сознание ставит в соответствие некоторый ментальный образ, образ объекта из реального мира. Этот образ может быть как зрительным так и звуковым или тактильным. Стоит полагать, что в образе и в переходе к нему и содержится смысловая часть нашего восприятия.

image-loader.svg

Взаимосвязи между объектами в реальном мире аналогичным образом переходят во взаимосвязи между образами этих объектов в голове. Но это уже тема для отдельной статьи.

С такими образами дерева, мяча, листа бумаги, кошки всё понятно. Но как быть образами физических величин, спектр значений которых непрерывен? Суть проблемы поясню на примере. Допустим, человеку (будем звать его Василий) дают послушать звук частотой 500 Гц. Во время прослушивания в голове Василия появляется образ этого самого звука. Затем, Василию дают послушать другой звук, уже с частотой 600 Гц. И снова это приводит к появлению нового звуковой образа в голове нашего испытуемого. Теперь он способен отличать эти два звука между собой.

Но эксперимент продолжается. Василию дают слушать всё новые и новые звуки в промежутке от 500 до 600 Герц: 537, 571, 522.93, 586.128, 593.49245, … Каждый новый звук, который запомнит испытуемый, будет порождать новый образ в голове последнего. До каких пор это будет продолжаться? Как утверждает математика — до бесконечности. Ведь между любыми двумя вещественными числами найдётся как минимум ещё одно вещественное число.

Выходит, если Василий запоминает, всё подряд, всё, с чем взаимодействует, то его память банально переполнится бесконечным числом образов объектов из окружающего мира. Значит, восприятие работает несколько иначе (да, да, для кого-то это было очевидно), преобразуя непрерывную реальность в конечный набор дискретных образов.

Это в свою очередь порождает ряд вопросов:

  • Не ясен механизм выбора, что запомнить, а что нет.

  • Какова предельная точность распознания объектов? Именно мозгом, не органами чувств.

  • Можно заметить, что человек хорошо запоминает только ту информацию с которой он постоянно имеет дело. Другими словами, повторение способствует лучшему запоминанию. Как реализовать и это в рамках теории образов?

Странная жизнь клеток

Прежде чем, перейти к ответам на поставленные вопросы. Переместимся в воображаемый мир, где клетки живут ровно по тем правилам, которые мы придумаем.

Для начала определимся с пространством, в котором живут клетки. В игре «Жизнь», например, это дискретное пространство, состоящее из квадратных клеток. Мы же предоставим клеткам все радости жизни в непрерывномметрическом пространстве произвольной размерности.

Питание клетокПитание клеток

Также разберёмся со способом питания клеток. В пространстве постоянно в разных местах появляются питательные точки, потребляя которые клетка увеличивает свою массу. Можно придумать множество всяких вариантов принципа, определяющего, какая клетка сможет подкрепиться питательной точкой и сможет ли. Остановимся на довольно странном для обычных клеток механизме, когда питание получает ближайшая к источнику клетка. Почему странном? Потому что, даже если ближайшая к питательной точке клетка находится на расстоянии в сотни километров, она всё равное его моментально получит.

Таким образом клетки разбивают всё пространство на семейство областей с общими границами. Каждая такая область представляет собой множество точек, к которым одна из клеток будет ближайшей.

Деление. Здесь всё достаточно просто: клетка делится, если её масса становится критического значения M. Вопрос лишь в том, где будет располагаться дочерняя клетка. Самый простой вариант — где то в случайном месте неподалёку от родительской. Однако прибавим клеткам мобильности: пусть дочерняя клетка располагается на месте текущей питательной точки, которая и привела к делению материнской клетки.

Деление клетокДеление клеток

Что на счёт старения? Все клетки вне зависимости от положения и питания постоянно теряют небольшую долю своей массы. Это значение подобрано так, чтобы размер колонии оставался стабильным и число клеток было не сильно больше или меньше некоторого фиксированного числа (N). Как только масса клетки становится отрицательной, клетка удаляется с поля со статусом «мёртвая».

Все наши правила можно записать в виде следующих формул:

\forall \vec r \to \exists k(\vec r): \rho (\vec r_k, \vec r) = \min _{i \in 1..n} \rho (\vec r_i, \vec r)\forall i ≠ k \to  \Delta m_i = - {\mu \over N}; \Delta m_k = \mu - {\mu \over N}\Delta n = \theta(m_k - M)-\sum _{i=1} ^n \theta(- m_i)

где

© Habrahabr.ru