Логические нейронные сети

         

Какую задачу мы хотим решить?


Рассмотрим принципы построения управляемых видимых объектов в трехмерной памяти компьютера. Для имитации их движения используем "мышцы" и шарниры. Мышцы воспринимают команды на сокращение. Предложим эмпирические формулы для переноса содержимого ячеек памяти при имитации движения. Движение может задаваться программно. Однако подсоединение объектов к логической нейросети открывает большие возможности непредсказуемости реакции объектов на внешние факторы. Это, в свою очередь, открывает перспективу применения реагирующих объектов в сфере игр, развлечений, сценических постановок, в интеллектуальных системах отображения и в других видах искусства и бизнеса.

Во всех предыдущих лекциях в качестве примеров возможного применения обсуждается построение систем с элементами искусственного интеллекта, которые можно отнести к области искусства и развлечений. Фантазия легко связывает создание монстров, объектов компьютерных игр, имитацию их реакции на внешнюю среду или другие предлагаемые им объекты и ситуации с такими "мероприятиями", как парк фантасмагорий, Disneyland, цирк марионеток, распознавание "свой — чужой", сетевые зрелищно-рекламные демонстрации и т.д. Такие системы могут представлять как искусство, так и бизнес.

Существуют два направления реализации указанных систем ИИ: натурное и компьютерное.

В современном парке (культуры и отдыха) можно в натуральном виде встретить не одно существо, мало отличающееся от живого и совершающее действия и движения по заложенной программе. Технологии их построения можно считать отработанными, имитация движений, включая работу "мышечного" аппарата, вполне совершенна. Отсутствие элементов ИИ, предполагающих непредсказуемость реакции, — основной недостаток таких объектов.

Компьютерная реализация сегодня ограничена мультимедийными средствами двумерной и трехмерной графики. Возможности создаваемых этими средствами систем и образов огромны. Достаточно отметить такое средство, как 3D-MAX, позволяющее создавать целые кинофильмы.
Однако основной недостаток всех известных систем кроется в априорном знании возможных сцен, сглаживание перехода через которые в реальном времени имитирует движение. Это подобно табличному заданию огромного количества значений функции многих переменных при игнорировании непосредственного расчета.

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

В этом случае желательно при построении объекта (монстра, человека и др.) снабжать его управляемыми органами движения (модификации, деформации, имитирующей улыбку, движение руки и т.д.), подобными мышцам. Их необходимо соединить с управляющим элементом — жестко заданной программой. Однако такая программа может предполагать анализ ситуации или внешних воздействий. Это уже напрямую требует применения аппарата логических нейронных сетей, одновременно и в разной степени реализующих ряд отношений вида "если …, то …", что наиболее близко к поведению живого существа.

Таким образом, построение реального объекта в памяти компьютера, а не его математического образа, задание ряда рычагов — "мышц", которые способны деформировать или видоизменять объект в соответствии с формируемыми извне командами, использующими коэффициент сжатия, позволяют имитировать любое, в том числе непредсказуемое, движение объекта. (Ниже будет отмечена необходимость механизмов перемещения и вращения.)

Становятся видными новые возможности для создания кинофильмов, сценических постановок и других видеосценариев.

Построение реальных объектов требует имитации объемной, трехмерной памяти и введения основных процедур ее преобразования.

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


Клип-моделирование интеллектуального отображения


Программная реализация клип-модели реагирующего объекта создана в среде системы визуального объектно-ориентированного программирования Delphi [6].

Внешний вид экрана для работы пользователя с моделью представлен на рис. 15.18.


увеличить изображение
Рис. 15.18.  Вид экрана для работы с клип-моделью

Область рисования вводимых для показа компьютерному персонажу объектов реализована в виде простого графического редактора на основе примера, приведенного в [6]. Данный графический редактор позволяет создавать контурные рисунки в области рисования с помощью набора предлагаемых инструментов (карандаш, ластик) и заливать замкнутые контуры выбранным из палитры цветом с помощью инструмента "кисть".

Блок анализа внешней обстановки модели, имитирующий работу "органов зрения" компьютерного персонажа, запускается нажатием кнопки "ЧТО ЭТО?". Прежде всего осуществляется сканирование области рисования. При обнаружении в этой области какого-либо изображения производится нахождение границ изображения. Для этого вокруг него строится прямоугольная рамка, которая затем разбивается на число клеток, соответствующее размеру рецепторного слоя нейронной сети с учетом пропорций изображения. Таким способом в модели реализовано "фокусирование взгляда" компьютерного персонажа на объекте, и поэтому размер изображения в области рисования не имеет значения, что очень важно при распознавании.

Размер рецепторного слоя нейронной сети, т.е. разрешающая способность "зрения" компьютерного персонажа, является параметром данной модели. В данном примере он выбран 20?20, т.е. 400 рецепторов.



Область демонстрации клипов, показывающих реакцию компьютерного персонажа, реализована с помощью компонента Animate из библиотеки компонент Delphi5. Данный компонент обладает свойством FileName, которое позволяет программным способом указывать имя файла, содержащего требуемый для проигрывания клип. Кроме того, у компонента Animate имеется метод Play с параметрами FromFrame (начальный кадр), ToFrame (конечный кадр) и Count (число повторений анимации).
Таким образом, вдоль контура формируется полоса допуска для учета "дрожания руки" при рисовании. Далее вычисляется значение передаточной функции и формируется строка матрицы следования. Затем вся информация об объекте запоминается в базе данных. Так происходит обучение компьютерного персонажа.


увеличить изображение
Рис. 15.20.  Реакция на знакомое съедобное

Когда компьютерный персонаж уже обучен, т.е. база данных не пуста, то при нажатии на кнопку "ЧТО ЭТО?" после сканирования области рисования и "фокусирования зрения" запускается блок распознавания. В нем сначала осуществляется закрашивание клеточек вдоль контура рисунка, а затем производится перебор эталонов базы данных и попытка "уложить предъявленный" образ в границы эталонов, хранимых в базе данных; при этом формируется список эталонов, в границы которых вписывается предъявленный образ. Если список пуст, то образ не узнан. В противном случае в качестве узнанного выбирается эталон в соответствии с максимальным возбуждением нейрона выходного слоя. В поле названия записывается имя эталона, указывается значение качественного признака (съедобное, несъедобное) и запускается клип реакции компьютерного персонажа. Пример такого результата показан на рис. 15.20.

***

Изложенный в лекции материал имеет скорее принципиальный характер, затрагивая широкий спектр вопросов экспериментального моделирования. Несомненно, что задача "живого" моделирования, как и проблема создания на основе реагирующих объектов интеллектуальной надстройки для оперативного отображения состояния сложных управляющих систем, а также систем предупреждения, является актуальной в большей степени, чем задача рынка бизнеса и развлечений (хотя применение в сфере бизнеса сулит немалый успех).

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

Тогда возникает и проблема отображения коллективного разума. Это может быть актуально как для систем вида "человек — модель ИИ", так и для систем взаимодействующих моделей ИИ. При компьютерной реализации реагирующих объектов можно проделать следующий эксперимент: образовать круг мониторов (снабженных средствами видеовхода каждый) рабочих станций локальной вычислительной сети, чтобы реализованные на этих станциях объекты "видели" других членов "коллектива" [26]. Можно понаблюдать, как они будут реагировать друг на друга — придет ли система в умиротворенное состояние или, все более возбуждаясь, потребует постороннего вмешательства.



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

В модели введены ограничения на качественные характеристики изображаемых объектов. Объекты могут быть только двух видов: съедобными и несъедобными. Соответственно компьютерный персонаж имеет только три реакции на внешнюю среду: 1 — состояние ожидания, оно же — если предмет незнакомый, 2 — состояние удовольствия, если узнан съедобный предмет, 3 — состояние неудовольствия, если узнан несъедобный предмет.

Для демонстрации достаточно, чтобы база данных содержала всего один клип, созданный с помощью программы Flash4 [17]. Данный клип содержит четыре фрагмента, разделенных ключевыми кадрами, и демонстрирует переходы компьютерного персонажа из состояния ожидания в состояние удовольствия, затем снова в состояние ожидания, затем переход в состояние неудовольствия, затем снова в состояние ожидания.

Первоначально компьютерный персонаж "ничего не знает", т.е. база данных, где хранятся матрицы следования, значения передаточных функций и качественные признаки эталонов изображаемых объектов, пуста. Данная программная реализация модели позволяет сразу начать "обучение" компьютерного персонажа.

На рис. 15.19

показан результат предъявления необученному компьютерному персонажу изображения цветка.


Рис. 15.19.  Реакция на предъявлении цветка до обучения

Видно, что реакция отсутствует, а в поле названия написано "Не знаю, что это". Теперь, если в поле названия написать "Цветок", указать признак "несъедобное" и нажать кнопку "ЗАПОМНИТЬ", то начинает работать блок обучения модели. Прежде всего, вдоль контура рисунка производится закрашивание тех клеточек, которые захватываются контуром, затем каждая закрашенная клетка обрамляется закрашенными клетками справа, слева, сверху и снизу.

Командно-программное управление объектами


Необходимо помнить, что объекты в трехмерной памяти создаются для их визуального восприятия. Система визуализации может базироваться на проецировании видимой поверхности всех объектов, включая фон, на плоскость z = 0 в центральной системе координат. Эта плоскость и представляет экран. Значит, каждая прямая, исходящая из точки xi, yi, 0 и перпендикулярная экрану, продолжается (здесь рассматриваем только прозрачную среду) до первого пересечения с одним из объектов или с фоном. Полученная точка обеспечивает изображение в данной текущей точке экрана.

Для получения различных срезов (подобно томографии) экран может формироваться и в других плоскостях вида z = a > 0.

Для получения различных ракурсов центральная система координат должна быть преобразована.

Введение мышц, шарниров, объектовых систем координат позволяет программировать действия объектов и их взаимное расположение. Программа создается на базе командного языка, содержащего команды вида

<сократить мышцу m с l = 0,8>; <повернуть объект Р по матрице S>; <приблизить объект Р>; <перенести объект Р>; <показать срез z = 5> и т.д.

Таким образом, могут планироваться и исполняться сцены, основанные на имитации движения объектов, их мимики, преобразования и т.д.

Как каждая управляющая система, работа рассматриваемой системы тактируется. Поскольку видео — основное ее назначение, то тактовую частоту целесообразно совместить с частотой следования кадров. (Если хватит производительности! Иначе придется получать промежуточные кадры путем интерполяции.) Тогда программа ориентируется на имитацию движения в отдельном кадре в системе реального времени. Это значит, что если дан приказ сократить мышцу в 0,6 раза, то движение растягивается во времени на несколько кадров. Например, в отдельном кадре мышца сокращается лишь в 0,98 раз. Тогда в течение нескольких кадров необходимое сокращение будет достигнуто. По-видимому, необходимо задавать то количество кадров, в течение показа которых движение должно быть выполнено.

Эмпирические зависимости для такого дробления целесообразно получить экспериментально.

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

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



Логические нейронные сети в основе управления трехмерными компьютерными объектами


Занимаясь "живым" моделированием на основе компьютерных и информационных технологий, следует быть приверженным точным наукам, в которых любые построения начинаются с исчерпывающих, непротиворечивых определений.

Что есть жизнь? Какое существо можно назвать живым?

Живое существо адекватно реагирует на внешние раздражители.

Адекватность реакции живого существа подчиняется критерию "хорошо — плохо".

В качестве комментариев отметим, что даже внутренние болезни имеют внешние причины: экологические, политические, наследственные, бактериологические и т.д. В то же время философски уместно говорить о жизни существа не в абсолютном аспекте, а в аспекте моделирования: вся жизнь представляет собой игровую модель, а задачей любого моделирования является минимизация целевой функции, в конечном итоге отделяющей понятие "хорошо" от понятия "плохо". К сожалению, для каждого индивидуума эти понятия различны и на нейросетевом (мозговом) уровне обусловлены обучением — генетическим или практическим.

Посчитаем достаточными положения 1 и 2 для настоящего уровня решения задачи "живого" моделирования. Однако мы понимаем, что достичь такого уровня обучения, когда система сама начинает осознавать, что хорошо, а что плохо, на основе индуктивного и дедуктивного мышления, вряд ли сейчас возможно практически. Мы вынуждены решать задачу-минимум, требуя, в основном для культурно-развлекательных целей, адекватности реакции. Степень этой адекватности в соответствии с означенным критерием мы уж предусмотрим сами.

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

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

Пусть сотворенный объект (

рис. 15.7 ) в компьютерном или материальном воплощении наделен некоторым фоновым поведением, реализуемым программно.

"Запустить программу приветствия"; "В квадрате i, j преобладает коричневый цвет"


"Запустить программу презрения"; "В квадрате i, j преобладает желто-оранжевый цвет"


"Запустить программу радостного возбуждения" и т.д.

Тогда обученная для реализации данного алгоритма однослойная логическая нейронная сеть представлена на рис. 15.8.


Рис. 15.8.  Нейросеть для "живого" моделирования

Логическая нейронная сеть составлена по методике, обоснованной ранее. Это определило единичные значения весов синапсических связей, не указанных на рисунке.

Здесь нейрон-рецептор 1 принимает значение достоверности высказывания "В квадрате преобладает зеленый цвет" как величину возбуждения.

Рецептору 2 сообщается значение достоверности высказывания "Отсутствуют резкие переходы в оттенках".

Рецептор 3 принимает значение достоверности высказывания "Наблюдаются резкие переходы в оттенках".

Рецептор 4 возбуждается на величину достоверности высказывания "В квадрате преобладает голубой цвет".

Рецептор 5 принимает значение достоверности высказывания о похожести на полет птиц.

Рецептор 6 возбуждается на преобладание красного цвета.

Рецептор 7 возбуждается на величину достоверности обнаружения круга телесного цвета.

Рецептор 8 принимает значение достоверности преобладания коричневого цвета.

Рецептор 9 принимает значение достоверности преобладания желто-оранжевого цвета.

И так далее — по расширяемому на основе бесконечного совершенствования количеству используемых факторов.



Например, такое поведение может быть аналогичным поведению зверя в клетке, нервно дефилирующего вдоль решетки. Целесообразно в программе использовать и элементы случайности на основе ДСЧ — датчика случайных чисел. Это может ввести разнообразие в фоновое поведение объекта: внезапный поворот головы, смена направления движения и т.д. Такое поведение уже само по себе является занимательным для зрителя.

Однако представим себе, что фоновая программа предусматривает периодическое прерывание для включения "внимания" объекта к внешней обстановке — к "картинке", циклически вводимой в его память с помощью видеоввода.

Включается программа анализа "картинки", питающая рецепторный слой нейросети. Алгоритмы такого анализа, как подготовительного этапа решения задачи распознавания, представляют собой отдельное направление исследований. На этом этапе "картинка" отображается в пространстве признаков, обоснованных для распознавания и принятия решений. На самом простом практическом уровне может производиться подсчет различных оттенков цветов в элементарном квадрате "картинки", обнаружение резких цветовых границ, наличие линий, кругов определенного цвета и т.д. Такие идеи реагирования на цвет рассматриваются в лекции 16.


Рис. 15.7.  Возможный объект натурного моделирования

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

"В квадрате i, j преобладает зеленый цвет"
"отсутствуют резкие переходы в оттенках"


"Запустить программу умиротворения"; "В квадрате i, j преобладает зеленый цвет"
"наблюдаются резкие переходы в оттенках"


"Запустить программу тоски по лесным далям"; "В квадрате i, j преобладает голубой цвет"
"наблюдаются темные вкрапления"


"Запустить программу приветствия"; "В квадрате i, j преобладает красный цвет"




" Запустить программу повторного обзора квадрата"
"Запустить программу гнева"; "В квадрате i, j обнаружен круг с преобладанием телесного цвета"


"Запустить программу приветствия"; "В квадрате i, j преобладает коричневый цвет"


"Запустить программу презрения"; "В квадрате i, j преобладает желто-оранжевый цвет"


"Запустить программу радостного возбуждения" и т.д.

Тогда обученная для реализации данного алгоритма однослойная логическая нейронная сеть представлена на рис. 15.8.


Рис. 15.8.  Нейросеть для "живого" моделирования

Логическая нейронная сеть составлена по методике, обоснованной ранее. Это определило единичные значения весов синапсических связей, не указанных на рисунке.

Здесь нейрон-рецептор 1 принимает значение достоверности высказывания "В квадрате преобладает зеленый цвет" как величину возбуждения.

Рецептору 2 сообщается значение достоверности высказывания "Отсутствуют резкие переходы в оттенках".

Рецептор 3 принимает значение достоверности высказывания "Наблюдаются резкие переходы в оттенках".

Рецептор 4 возбуждается на величину достоверности высказывания "В квадрате преобладает голубой цвет".

Рецептор 5 принимает значение достоверности высказывания о похожести на полет птиц.

Рецептор 6 возбуждается на преобладание красного цвета.

Рецептор 7 возбуждается на величину достоверности обнаружения круга телесного цвета.

Рецептор 8 принимает значение достоверности преобладания коричневого цвета.

Рецептор 9 принимает значение достоверности преобладания желто-оранжевого цвета.

И так далее — по расширяемому на основе бесконечного совершенствования количеству используемых факторов.

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


Иначе говоря, в логическом описании создаваемой системы исходные высказывания имеют значение ИСТИНА. Переход от булевых переменных к действительным, к достоверности высказываний, порождает модель ассоциативного мышления.

Практически за эту достоверность можно принимать частоту появления или "удельный вес" определенного цвета (соответствующих пикселей) в анализируемом квадрате. Подавая значения достоверности на рецепторный слой, с помощью передаточной функции находим величины возбуждения нейронов выходного слоя. Эти величины служат параметрами запускаемых программ.

Рекомендуемая передаточная функция имеет вид



Порог h целесообразно выбрать достаточно высоким, например h = 0,5, так, чтобы объект не выглядел слишком "нервным", возбуждаясь понапрасну из-за малой причины возбуждения.

Таким образом, "живое" моделирование — это экспериментальное направление, позволяющее проверить и осуществить все достижения на пути развития технологий искусственного интеллекта. Это реальный путь воплощения новых направлений в искусстве, в шоу-бизнесе, в учебной, игровой и развлекательной деятельности.

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

Прежде всего это задача оценки современных компьютерных возможностей реализации столь большого объема работ в реальном времени. Очевидно, что лишь высокопараллельная архитектура, подобная мозгу, может эффективно исполнять функции видеонейрокомпьютера.

Следует проанализировать эффективность применения современных суперкомпьютеров, таких, например, как Эльбрус-E2k.

Анализ приведенных выше математических построений говорит в пользу SPMD-архитектур, т.е. архитектур типа "одна программа — много потоков данных". Актуальна постановка задачи разработки специальной параллельной приставки к персональному компьютеру (рабочей станции) — видео-нейрокомпьютера, "врезанного" в современные популярные операционные системы.Наконец, широкое привлечение сетевых технологий позволит создавать значительные распределенные сюжеты с коллективным участием многих взаимно влияющих "живых" объектов.

Реализация трехмерной памяти , при которой моделируемые объекты оказываются воплощенными не с помощью своего математического образа, а пространственно, также ставит новые технические задачи. Одна из них заключается в отображении содержимого памяти в некоторой экранной трехмерной среде. Это явилось бы новым решением задачи формирования стереоизображений.


Моделирование трехмерной памяти


Поскольку компьютер, реализующий "живую" модель, несомненно, должен обладать рядом свойств, обнаруживаемых в процессе дальнейшего изложения, справедливо назвать его видеонейрокомпьютером (ВНК). Это тем более справедливо, что обработка большого числа ячеек памяти предъявляет те же требования к распараллеливанию, что и обработка большого числа нейронов сети.

Отметим, что современные персональные компьютеры (РС) и рабочие станции, реализующие системы мультимедиа, вполне способны выполнять функции такого нейрокомпьютера. Однако потребность интеграции памяти нескольких компьютеров может потребовать применения локальной вычислительной сети, удовлетворяющей требованиям работы в реальном времени. И уж без сомнения, параллельная вычислительная система SPMD-архитектуры [9] c большой оперативной памятью в наибольшей степени адекватна рассматриваемой задаче.

Назовем ячейку, занятую элементом объекта, клеткой этого объекта. Как видно далее, клетка минимально должна содержать информацию о цвете (пиксель), коэффициенте освещенности, указателе вершины стека.

Пусть адресное пространство ВНК при сквозной линейной адресации ячеек определяется N разрядами. Адрес разбивается на четыре части (рис. 15.1).


Рис. 15.1.  Преобразование линейного адреса в трехмерный

Здесь x, y, z — координаты клетки в трехмерной памяти; s разрядов отводятся для адресации стека, сопровождающего каждую клетку. Стек необходим для сохранения информации в случае сжатия объекта — для более точного его восстановления. Таким образом, адресное пространство хранения клеток объекта или целой сцены составляет 2N-s

, что говорит о необходимом весьма большом значении N. Значение s практически может быть не более трех.

Трехмерная память — это перспективная разработка. Она предполагает непосредственный (невиртуальный) доступ пользователя на этапе программирования как к памяти, так и к адресам данных при указанной структуре адреса.

При моделировании трехмерная память в виртуальной памяти современного компьютера задается трехмерным массивом S[0:P; 0:P; 0:P] переменных S[i, j, k], где значения индексов являются координатами соответственно x, y, z. Тогда задача деформации или перемещения объектов преобразуется в задачу нахождения новых значений этих индексов для каждой переменной, являющейся клеткой объекта — для выполнения соответствующего переноса.

При этом линейный адрес переноса или текущего нахождения клетки объекта находится так:

<S[i, j, k]> = C + i + jP + kP2.

Здесь С — базовый адрес массива.

Стек моделировать нецелесообразно. Информация, потерянная при сжатии объекта, может быть восстановлена с помощью интерполяции.



"Мышца" и ее сокращение


Пусть объект в трехмерном пространстве задан своей оболочкой. Каждый элемент оболочки является клеткой. Оболочка формируется при создании объекта. В общем случае объект может быть заполнен значащей информацией и внутри, если его вид в разрезе интересует пользователя.

"Мышца" (далее кавычки опустим) как рычаг управления деформацией объекта задается пользователем-разработчиком в центральной системе координат координатами начала и конца, а также точкой неподвижности, относительно которой возможно сокращение мышцы. Точка неподвижности может совпадать с началом или концом мышцы. (Конечно указанные точки обозначаются мышью; координаты при этом выставляются автоматически.) По умолчанию точка неподвижности является серединой мышцы. Мышца не обязательно связывает точки оболочки. В общем случае она может располагаться внутри и даже вне объекта, принадлежа ему и влияя на его деформацию.

Мышцы объекта являются невидимыми, входящими в список мышц данного объекта и допускающими реакцию на приказы извне.


Рис. 15.2.  Применение мышцы

Таким образом, мышца (рис. 15.2) — это невидимый отрезок АВ, связывающий точки A(x1, y1, z1) и B(x2, y2, z2) , отображающий некоторое геометрическое место клеток объекта. Этот отрезок связан с объектом и может сокращаться при подаче управляющих импульсов и восстанавливаться при их отсутствии. Такое изменение отрезка производится относительно некоторой принадлежащей ему точки М(xM, yM, zM) . Сокращение мышцы сопровождается пространственным переносом (уплотнением) клеток объекта, которые принадлежат (с точностью до дискретности адресации) отрезку, обозначающему эту мышцу.

Параметрическая система уравнений, описывающих отрезок АВ, имеет вид

(15.1)

Напоминаем, что координаты точек объекта совпадают с адресами памяти, по которым находятся соответствующие клетки, так что систему уравнений (15.1) с точностью до целочисленной дискретности адресации можно рассматривать относительно трехмерных адресов . Это и подразумевается в дальнейших выкладках.


Пусть l — коэффициент сжатия мышцы. Тогда отрезок АМ необходимо преобразовать в отрезок А*М с длиной l·|А*М|, а отрезок МВ — в отрезок МВ* с длиной l· |МВ*|.

Рассматривая по каждой координате отдельно, убеждаемся, что отрезок x1xM

необходимо преобразовать в отрезок x1* xM

с длиной l(xM- x1) , отрезок xMx2

необходимо преобразовать в отрезок xMx2* c длиной l(x2

- xM) . Аналогично отрезок y1yM

должен быть преобразован в отрезок y1* yM

с длиной l(yM - y1) и т.д.

Это, в частности, означает, что клетка с координатой x1

должна быть переслана в ячейку, определяемую соответствующей составляющей адреса l(xM

- x1) и т.д.



Здесь граничное значение цикла определяется максимальным значением точек переноса по всем координатам, равным ?А + 1. Программно перенос производится с конца отрезка к его началу — чтобы не уничтожать еще не перенесенную информацию. Тогда адреса переноса отдельно по координатам находятся как



(15.2)
В указанном порядке рассчитаем адреса переноса отдельно по координате x, не допуская при округлении выхода адресов из адресного пространства мышцы:

051 - 1 · 0,610 · 0,510 = 051 051 - 2 · 0,610 · 0,510 = 050 051 - 3 · 0,610 · 0,510 = 050 051 - 4 · 0,610 · 0,510 = 050 051 - 5 · 0,610 · 0,510 = 047 051 - 6 · 0,610 · 0,510 = 047 051 - 7 · 0,610 · 0,510 = 046 051 - 10 · 0,610 · 0,510 = 046 051 - 11 · 0,610 · 0,510 = 046

Рассчитаем координату у:

461 - 1 · 0,610 · 1 = 460 461 - 2 · 0,610 · 1 = 460 461 - 3 · 0,610 · 1 = 457 461 - 4 · 0,610 · 1 = 456 461 - 5 · 0,610 · 1 = 456 461 - 6 · 0,610 · 1 = 455 461 - 7 · 0,610 · 1 = 454 461 - 10 · 0,610 · 1 = 453 461 - 11 · 0,610 · 1 = 452

Адреса переноса по координате z:

716 - 1 · 0,610 · 0,2510 = 716 716 - 2 · 0,610 · 0,2510 = 716 716 - 3 · 0,610 · 0,2510 = 716 716 - 4 · 0,610 · 0,2510 = 716 716 - 5 · 0,610 · 0,2510 = 715 716 - 6 · 0,610 · 0,2510 = 715 716 - 7 · 0,610 · 0,2510 = 715 716 - 10 · 0,610 · 0,2510 = 715 716 - 11 · 0,610 · 0,2510 = 715

Найдены адреса, по которым необходимо осуществить пересылку при сокращении левой части мышцы.

Аналогично, для правой части мышцы, для отрезка МВ, найдем адресные расстояния ?Ax

= -4 , ?Ay = -10 = -810

, ?Az

= -2 , ?А = -810

. По (15.2) для адресов переноса по x, y, z находим

051 + 1 · 0,610 · 0,510 = 051 461 + 1 · 0,610 · 1 = 462 716 + 1 · 0,610 · 0,2510 = 716 051 + 2 · 0,610 · 0,510 = 052 461 + 2 · 0,610 · 1 = 463 716 + 2 · 0,610 · 0,2510 = 716 051 + 3 · 0,610 · 0,510 = 052 461 + 3 · 0,610 · 1 = 463 716 + 3 · 0,610 · 0,2510 = 716 051 + 4 · 0,610 · 0,510 = 052 461 + 4 · 0,610 · 1 = 464 716 + 4 · 0,610 · 0,2510 = 716 051 + 5 · 0,610 · 0,510 = 053 461 + 5 · 0,610 · 1 = 464 716 + 5 · 0,610 · 0,2510 = 717 051 + 6 · 0,610 · 0,510 = 053 461 + 6 · 0,610 · 1 = 465 716 + 6 · 0,610 · 0,2510 = 717 051 + 7 · 0,610 · 0,510 = 053 461 + 7 · 0,610 · 1 = 465 716 + 7 · 0,610 · 0,2510 = 717 051 + 10 · 0,610 · 0,510 = 054 461 + 10 · 0,610 · 1 = 466 716 + 10 · 0,610 · 0,2510 = 717 051 + 11 · 0,610 · 0,510 = 054 461 + 11 · 0,610 · 1 = 466 716 + 11 · 0,610 · 0,2510 = 717



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

Свяжем перебор искомых точек с тем же параметром цикла организации пересылки



(15.3)
Найдем отдельно для x, y, z отрезка АМ адреса пересылаемых точек:

051 - 1 · 0,510 = 050 461 - 1 · 1 = 460 716 - 1 · 0,2510 = 716 051 - 2 · 0,510 = 050 461 - 2 · 1 = 457 716 - 2 · 0,2510 = 715 051 - 3 · 0,510 = 047 461 - 3 · 1 = 456 716 - 3 · 0,2510 = 715 051 - 4 · 0,510 = 047 461 - 4 · 1 = 455 716 - 4 · 0,2510 = 715 051 - 5 · 0,510 = 046 461 - 5 · 1 = 454 716 - 5 · 0,2510 = 715 051 - 6 · 0,510 = 046 461 - 6 · 1 = 453 716 - 6 · 0,2510 = 714 051 - 7 · 0,510 = 045 461 - 7 · 1 = 452 716 - 7 · 0,2510 = 714 051 - 10 · 0,510 = 045 461 - 10 · 1 = 451 716 - 10 · 0,2510 = 714 051 - 11 · 0,510 = 045 461 - 11 · 1 = 450 716 - 11 · 0,2510 = 714

Для отрезка МВ находим

051 + 1 · 0,510 = 052 461 + 1 = 462 716 + 1 · 0,2510 = 716 051 + 2 · 0,510 = 052 461 + 2 = 463 716 + 2 · 0,2510 = 716 051 + 3 · 0,510 = 053 461 + 3 = 464 716 + 3 · 0,2510 = 716 051 + 4 · 0,510 = 053 461 + 4 = 465 716 + 4 · 0,2510 = 716 051 + 5 · 0,510 = 054 461 + 5 = 466 716 + 5 · 0,2510 = 716 051 + 6 · 0,510 = 054 461 + 6 = 467 716 + 6 · 0,2510 = 716 051 + 7 · 0,510 = 055 461 + 7 = 470 716 + 7 · 0,2510 = 716 051 + 10 · 0,510 = 055 461 + 10 = 471 716 + 10 · 0,2510 = 716 051 + 11 · 0,510 = 055 461 + 11 = 471 716 + 11 · 0,2510 = 716

"Склеим" координатные части адресов и обозначим ее окончательно в двух столбцах: в левом — пересылку для левой части мышцы, в правом — для правой.

(050 460 716)
051 460 716 (052 462 716)
051 462 716 (050 457 715)
050 460 716 (052 463 717)
052 463 716 (047 456 715)
050 457 716 (053 464 717)
052 463 716 (047 455 715)
050 456 716 (053 465 717)
052 464 716 (046 454 715)
047 456 715 (054 466 717)
053 464 717 (046 453 714)
047 455 715 (054 467 720)
053 465 717 (045 452 714)
046 454 715 (055 470 720)
053 465 717 (045 451 714)
046 453 715 (055 471 720)
054 466 717 (045 450 714)
046 452 715 (055 471 720)
054 466 717



В строках 2 и 3, в 6 и 7, а также в 8 и 9 видно формирование стеков при неоднократной записи в одну клетку.

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

Сокращение мышцы можно использовать для деформации объекта на стадии его создания. После этого мышца может быть исключена из списка объекта или переопределена вновь в измененных границах.

Таким образом, каждый перенос клетки мышцы или объекта в целом сопровождается анализом на значимость этой клетки.


Основы построения модели системы интеллектуального отображения для "плоской" анимации


Целью моделирования является:

Обоснование возможности создания на основе нейросетевой технологии реагирующих объектов — объектов, созданных в памяти компьютера, обрабатываемых средствами анимации по сценарию, ход которого зависит от внешней, динамически поступающей информации.

Демонстрация возможностей практического применения нетрудоемкого аппарата логических нейронных сетей.

Создание, исследование и развитие средств плоской анимации, динамически учитывающей внешние факторы.

Конкретизация области применения реагирующих объектов.

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

Обоснование необходимости разработки средств построения реагирующих объектов в модели трехмерной памяти для повышения эффективности компьютерного и натурного их моделирования.

Основная часть экрана для работы пользователя с моделью интеллектуального отображения представлена на

рис. 15.9 .


Рис. 15.9.  Экран модели

Основными элементами этого экрана являются два поля: поле показываемых (создаваемых) с помощью мыши образов (ПО) и поле реагирующего объекта (РО).

Если ПО пусто или контурно нарисованный в нем объект не узнан РО, последний находится в состоянии покоя, т.е. показа некоторого нейтрального или начального состояния, например первого показанного на рис. 2 "нулевого" кадра.

Если в реальном времени, независимо от текущего состояния РО, на ПО сформирован рисунок, похожий на один из эталонов, которые знает РО, то в соответствии с запомнившейся реакцией на этот образ РО начнет переходить в состояние, обусловленное ассоциациями. Например, результатом его реакции на показанное яблоко может быть кислая гримаса огорчения, как изображено на рисунке.

Однако этот переход может быть прерван показом нового образа на поле ПО. Тогда, если предъявленный объект узнан, переход в новое состояние осуществляется из достигнутого текущего состояния. Если объект не узнан, но прошлое содержимое ПО потеряно, РО стремится вернуться в начальное состояние.


Этот переход осуществляет аниматор. Он отображает на демонстрационном экране кадры сюжетного ряда и промежуточные, рассчитанные им кадры. Промежуточные кадры рассчитываются в соответствии со временем перехода от одного ключевого кадра к другому и с необходимой частотой показа кадров, достаточной для комфортного зрительного восприятия.

Для облегчения понимания перейдем к рассмотрению "видимых" объектов — образов: букв, фруктов, зверей и т.д. В общем случае очевидно, что каждую точку в факторном пространстве, характеризующем сложную систему, можно интерпретировать как некий образ, изображение которого в определенной конфигурации возбуждает рецепторы нейронной сети. Так что проблема распознавания образов в рамках проблемы компьютерного зрения [4], актуальная, например, в системах игр и развлечений, вовсе не подменяет проблему интеллектуального отображения в факторном пространстве, служа лишь наглядности.

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

С каждым объектом, которые система "знает", связан свой сюжетный ряд ключевых кадров. Например, показ лимона соответствует выбору сюжетного ряда , приводящего к реакции "кисло", показ морковки — к реакции "сладко" и т.д. Необходимо обеспечить именно динамическое, асинхронное, независимое задание образов. При этом переход к новому сюжетному ряду ключевых слов осуществляется от только что показанного кадра — промежуточного или ключевого.

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

Ее рецепторный слой определяется клетками экрана образа, т.е. выбранной разрешающей способностью. Размер выходного слоя определяется количеством различных реакций. (Допустимое развитие на этапе высокой актуальности демонстраций пока не рассматривается.)

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



В ограниченной демонстрационной реализации логическая нейронная сеть, обученная на этапе ее построения, или совершенствуемая в статическом режиме, реализует алгоритм, аналогичный распознаванию букв по конфигурации засветки клеток экрана в соответствии с множеством известных эталонов, как рассмотрено в лекции 2.

Увеличение числа клеток экрана ПО (повышение разрешающей способности) служит увеличению возможного числа эталонов и вероятности распознавания.

Для имитации настроения РО разрабатывается база данных — набор ключевых кадров, например, показанных на

рис. 15.10
.

На основе этих кадров формируются сюжетные ряды — последовательности ключевых кадров, ведущие, при их реализации, к отображению определенных реакций объекта: к состоянию радости, огорчения и т.д.


Рис. 15.10.  Образы для комплектации сюжетных рядов

Динамическая подстановка сюжетных рядов в реальном времени, в соответствии с показанным рисунком и вызываемыми ассоциациями, является основной функцией модели, вызывающей изменяемую во времени реакцию объекта.

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

Функциональная схема модели показана на рис. 15.11.


Рис. 15.11.  Функциональная схема модели

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

Поведение реагирующего объекта отображается на демонстрационном экране.

Каждая реакция (веселье, огорчение и т.д.) приводит к медленному, в реальном времени, переходу к соответствующему выражению лица. Для этого выделяется текущий сюжетный ряд ключевых кадров, определяющий постепенный (однако через значительные промежутки времени, например, через одну секунду) переход к конечному выражению — к последнему ключевому кадру этого ряда.



Этот переход осуществляет аниматор. Он отображает на демонстрационном экране кадры сюжетного ряда и промежуточные, рассчитанные им кадры. Промежуточные кадры рассчитываются в соответствии со временем перехода от одного ключевого кадра к другому и с необходимой частотой показа кадров, достаточной для комфортного зрительного восприятия.

Для облегчения понимания перейдем к рассмотрению "видимых" объектов — образов: букв, фруктов, зверей и т.д. В общем случае очевидно, что каждую точку в факторном пространстве, характеризующем сложную систему, можно интерпретировать как некий образ, изображение которого в определенной конфигурации возбуждает рецепторы нейронной сети. Так что проблема распознавания образов в рамках проблемы компьютерного зрения [4], актуальная, например, в системах игр и развлечений, вовсе не подменяет проблему интеллектуального отображения в факторном пространстве, служа лишь наглядности.

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

С каждым объектом, которые система "знает", связан свой сюжетный ряд ключевых кадров. Например, показ лимона соответствует выбору сюжетного ряда , приводящего к реакции "кисло", показ морковки — к реакции "сладко" и т.д. Необходимо обеспечить именно динамическое, асинхронное, независимое задание образов. При этом переход к новому сюжетному ряду ключевых слов осуществляется от только что показанного кадра — промежуточного или ключевого.

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

Ее рецепторный слой определяется клетками экрана образа, т.е. выбранной разрешающей способностью. Размер выходного слоя определяется количеством различных реакций. (Допустимое развитие на этапе высокой актуальности демонстраций пока не рассматривается.)

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


Новый сюжетный ряд становится текущим.

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

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

На рис. 15.12

показаны связи, отображающие запоминание эталона "яблоко". Для упрощения выбран экран в 6?4 клеток. Покрываемые эталоном клетки закрашены.


Рис. 15.12.  Обучение яблоку

После обучения яблоку, т.е. после фиксации введенных связей, введем эталон "морковка". Отдельно его расположение на экране может быть проиллюстрировано на рис. 15.13.


Рис. 15.13.  Расположение морковки на экране

Закрепим за морковкой нейрон выходного слоя и свяжем его со всеми закрашенными клетками экрана.

Совместное запоминание двух эталонов показано на рис. 15.14.


Рис. 15.14.  Совместное запоминание эталонов яблока и морковки

Нейросеть представлена матрицей следования на рис. 15.15. Здесь рецепторы — клетки экрана наделены сквозной нумерацией вдоль строк и по строкам.


Рис. 15.15.  Матрица следования нейросети, обученной двум эталонам

Однако очевидно, что при сквозной нумерации рецепторов однослойной нейросети достаточно хранить и анализировать лишь строки, соответствующие нейронам выходного слоя, т.к. остальные строки — нулевые. В данном случае это две последние строки.

Выберем передаточную функцию. А именно, величину Vi

возбуждения нейронов выходного слоя считаем





где ?(х) — не раз используемая функция отклонения отрицательных значений.

Здесь j принимает значение номеров рецепторов, участвующих с единичными весами (поэтому веса не указаны в передаточной функции) в запоминании эталона, Gj

— число таких рецепторов. Делением на Gj

производится приведение всех величин возбуждения по эталонам в один диапазон изменения. Это необходимо для того, чтобы "большие" образы, частично засвеченные вследствие возмущения "маленьких" образов, не подавляли эти последние. Так, в данном примере "морковка" засвечивает 16 клеток, а "яблоко" — только 13.

Порог h определяет предел допустимости вывода.

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

Однако в любом случае величина возбуждения должна преодолеть порог на тот случай, если это и не морковка, и не яблоко, а также при большом "зашумлении".

Алгоритм обработки выделенных строк матрицы следования однослойной сети примитивен.

Последовательно просматриваются строки, соответствующие нейронам выходного слоя, и для каждой строки рассчитывается значение передаточной функции. Для этого используются значения возбуждения тех рецепторов, в столбцах которых находятся единицы. Затем выделяется максимально возбужденный нейрон.

Работа модели, как системы реального времени, тактируется в соответствии с темпом выдачи кадров, т.е. с частотой, обеспечивающей комфортное восприятие.

Проблема анимации заключается в выдаче промежуточных кадров по ключевым кадрам с частотой восприятия.


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

С целью демонстрации потенциальных возможностей воспользуемся упрощенным алгоритмом плоской анимации по контрольным точкам и разрезам.

А именно, при формировании промежуточных кадров будем руководствоваться смещением контрольных точек и разрезов в системе координат, связанной с объектом. Список координат контрольных точек, а также координат точек начала и конца каждого разреза, сопровождает каждый ключевой кадр. Между кадрами сохраняется соответствие их контрольных точек и разрезов.

На рис. 15.16

показаны два смежных ключевых кадра : кадр K и кадр L. Однако кадр К в общем случае — некоторый начальный (ключевой или промежуточный) кадр i (значению i = 0 соответствует кадр К), от показа которого необходимо плавно, через показ ряда промежуточных кадров, перейти к показу кадра L. Тогда следующий, i+1-й кадр, выдаваемый в следующем такте работы модели, должен быть получен на основе одного шага изменения кадра i.

Пусть на рисунке К1-К5

— исходные контрольные точки (конечно, невидимые), заданные своими координатами (xKj, yKj) ; L1-L5

- соответствующие им контрольные точки (xLj, yLj) в результирующем кадре L, j = 1, …, 5.


Рис. 15.16.  Кадры анимации

Контрольные точки Kj

через N тактов должны перейти в контрольные точки Lj

, увлекая за собой некоторую окрестность ?j

. Причем моделируется свойство "вязкости", при котором более удаленные от центра (Kj) точки смещаются меньше. Более того, если область ?j

пересекается разрезом, то перенос точек по другую сторону разреза не производится (см. открытие рта). В примере задан такой отрезок [A1, A2] , который должен перейти в отрезок [B1, B2] .

Алгоритм



Производится начальная загрузка в буфер показа БП "нулевого" кадра, т.е. фонового, нейтрального выражения объекта в состоянии ожидания.

Реализуется временной режим работы модели, поддерживающий показ кадров — ключевых или промежуточных — с частотой 20 Гц.


Он вхолостую вырабатывает остаток времени, оставшийся от работы программ, до ближайшего значения, кратного 50 мс.

Демонстрируется очередной кадр из БП и производится обращение к Программе обработки ситуации, рассмотренной ранее.

Выполняется после возврата из Программы обработки ситуации. Анализируется: был ли показанный кадр ключевым или промежуточным? Если показанный кадр был промежуточным, выполняется 7.

Если показанный кадр был ключевым, анализируется: иссяк ли сюжетный ряд, т.е. выработала ли Программа оценки ситуации продолжение сюжетного ряда, как реакцию на внешние факторы (рисунок)? Если сюжетный ряд иссяк, управление передается 1 для загрузки "нулевого" кадра, который будет показываться, пока не выработается новый сюжетный ряд. Если сюжетный ряд не иссяк, выполняется 6.

Производится подготовка формирования промежуточных кадров между только что показанным К и следующим L. Взводится счетчик показа промежуточных кадров СПК. Для упрощения демонстрационной модели считаем, что между любыми двумя смежными ключевыми кадрами следует показать 19 промежуточных. То есть выполняется операция СПК := 20.

СПК уменьшается на единицу для показа очередного промежуточного кадра.

Если в результате 7 СПК достиг нуля, показ промежуточных кадров считается законченным, следующим показываемым кадром должен быть кадр L. Выполняется 9. Если СПК не равно нулю, выполняется 10.

Кадр L загружается в БП, далее выполняется 2.

Если СПК не равно нулю, организуется цикл по j (шаги 11-16) перебора контрольных точек объекта. По окончании цикла организуется переход к 20.

Для контрольной точки Kj (xKj, yKj) отыскивается соответствующая ей точка Lj

(xLj, yLj) из СКТ кадра L. Отыскивается область ?j

радиуса Rj

с центром в точке Kj

, включающая точку Lj

(ее проекцию на кадр К). Радиус Rj

вычисляется из соотношения

2Rj = r(Kj, Lj) + l,

где r — расстояние, l — поправка, подбираемая экспериментально.



Организуется цикл перебора точек P(x, y) из окрестности ?j

контрольной точки Kj



. Этот перебор осуществляется "циклом в цикле":



По окончании перебора выполняется 17.



Проверяется, разделены ли точки P и L разрезами. Данная проверка производится в результате решения следующей задачи.

Пусть на рис. 15.17

точки P(x, y) и L(xL, yL) (индекс j опустим) находятся по разные стороны отрезка [A, B], где A = (xA, yA) , B = (xB, yB) , так, что отрезки [P, L] и [A, B] пересекаются. (Именно этот случай запрещает перемещение точки Р за разрез — в окрестность точки L.)


Рис. 15.17.  Анализ разреза

Рассмотрим параметрическое описание этих отрезков и запишем уравнения для нахождения точки пересечения (?, ?).





Или:



Отсюда



\begin{array}{l} k_1 = \cfrac{(x-x_A) (y_B-y_A) - (y-y_A) (x_B-x_A)}{ (x_B-x_A) (y_L-y) - (y_B-y_A) (x_L-x)} \\ k_2 = \cfrac{(x-x_A)}{ (x_B-x_A)}+ k_1\cfrac{(x_L-x)}{(x_B-x_A)}. \end{array} " width="361" height="92">

Если отрезки пересекаются, выполняется условие 0
k1
1, 0
k2
1. В противном случае отрезки не пересекаются, и перемещение точки Р в направлении к точке Lj

допустимо. Если точки P и L разделены разрезом, производится переход к 12. В противном случае выполняется 14.



Рассчитываются координаты переноса точки Р при формировании очередного промежуточного кадра К*:



Здесь учитывается удаление точки Р от центра — от точки Kj

. Так, на окружности радиуса Rj

перенос затихает вовсе. Текущее значение СПК характеризует оставшуюся часть смещения.



Проверяется, является ли перенесенная точка контрольной или границей разреза. Если не является, выполняется 12.

Если перенесенная точка является контрольной или границей разреза, фиксируются новые значения координат перенесенной точки (ее образом становится точка Kj* , если это была контрольная точка) в СКТ промежуточного кадра K*. Далее выполняется 12.

Выполняется по окончании цикла перебора точек из ?j

окрестности (шаг 12). Формируется цикл обработки разрезов, оказавшихся в этой окрестности. По окончании цикла выполняется 10. Организуется перебор точек P(x, y) этой окрестности, подобно организованному в блоке 12.



Проверяется, является ли очередная анализируемая точка "пустой" вследствие деформации (растяжения) объекта. При отрицательном результате анализа выполняется 20.

Если точка "пустая", находится ее усредненное значение на основе непустых окружающих ее точек:



где P(x, y) отождествляется с точкой P(xn, ym) для отображения окружающих точек, S — число таких "непустых" точек.



Организуется цикл обработки разрезов кадра К*. После обработки всех разрезов выполняется 24.

Для каждого разреза формируется некоторая окрестность, опирающаяся на разрез, и организуется цикл перебора точек P(x, y) , образованного прямоугольника.

Проверяется: точка P(x, y) — "пустая"?

Если да, отыскивается точка Q(x, y) в кадре L (с теми же координатами) и налагается на точку Р: P(x, y) := Q(x, y).

Далее выполняется 20.



После анализа всех разрезов (шаг 20) считается, что кадр К* полностью сформирован. Производится загрузка сформированного кадра в буфер показа БП и управление передается 2 для продолжения работы модели.


Перемещение, поворот и вращение


До сих пор рассматривалось поведение объекта в единственной системе координат. Взаимодействие многих объектов требует наличия центральной системы координат, в которой происходят все перемещения объектов относительно друг друга, и систем координат, связанных с каждым объектом — объектовых систем координат. Объект создается в его объектовой системе координат. Его движения "относительно себя" — сокращение мышц, повороты, вращение — удобнее наблюдать в связанной с ним объектовой системе координат. Таким образом, центральная система координат должна быть связана со многими объектовыми системами возможностями пересчета. Объектовые системы не занимают неизменное место в ней, а могут перемещаться и поворачиваться вместе с объектами.

Это означает, что каждая n-я объектовая система координат связана с центральной системой матрицей пересчета:

(15.19)

Здесь элементы матрицы — направляющие косинусы углов между осями, xn0, yn0, zn0

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

Отсюда важная рекомендация: чтобы имитировать относительное движение объектов, необходимо плавно, в реальном времени, давать приращения направляющим косинусам и смещениям так, чтобы сохранялись основные соотношения, связывающие декартовы системы координат. А именно, сумма квадратов элементов строк и столбцов должна быть равна единице.



Постановка задачи


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

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

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

Для такой предварительной, грубой оценки применимы принципы ситуационного управления [23]. Однако информацией для реагирующего объекта является чрезвычайно большое количество данных разнообразной природы и типов. Задача осуществления реакции становится трудно формализуемой. Ее решение возможно только с применением средств искусственного интеллекта. Множество зависимостей вида "если …, то …" в основе решения этой задачи приводит к выводу о целесообразности применения логических нейронных сетей.

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

лекции 12
, разбиты по характеру влияния на значимые интервалы, отдельные объекты, дискретные значения или булевы переменные (вида "есть — нет"), позволяющие оценить достоверность значения каждого фактора, что может быть использовано для возбуждения рецепторного слоя нейросети. На основе накапливаемого опыта, экспертных оценок или теоретических исследований строится обученная, развиваемая в процессе эксплуатации, логическая нейронная сеть — основа поведения реагирующего объекта .

На данном этапе утверждения важности данного направления не следует брать на себя смелость заявления о самообучении, тем более — об автоматическом обобщении опыта, т.е. об имитации индуктивного мышления. Несомненно, это задачи будущего развития технологии применения реагирующих объектов .

Модели реагирующих объектов могут быть трех типов:



натурная модель, выполненная, в частности, в соответствии с известными технологиями робототехники или театра кукол;

компьютерная (электронная) модель, использующая графические технологии — двумерные и трехмерные; компьютерная (электронная) модель на основе клип-технологий.

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

Натурная модель, ввиду значительного применения элементов механики, электротехники и других технологий, по-видимому, имеет ограниченное применение в сфере развлечений или при медленно изменяющихся факторах (реакция на прогноз погоды) и др.

Электронная графическая модель при кажущейся доступности технологий требует критического рассмотрения и развития достаточно разнообразных современных средств для реализации динамики их поведения, как реакции на входные сигналы.В этом случае решающую роль играет проблема управляемой анимации в реальном времени — проблема "живого" моделирования.

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

Тем не менее все возможности должны быть экспериментально исследованы на моделях.

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


Построение объектов в трехмерной памяти


Для построения объектов целесообразно воспользоваться тремя координатными проекциями, подобно 3D-MAX. Сначала в одной из проекций рисуется пока неточный, предполагаемый разрез объекта. На других проекциях автоматически сформируются отрезки — боковые проекции этого разреза. На разрезе определяется точка для дальнейшей деформации объекта в двух других проекциях. Проекция этой точки высвечивается на двух других проекциях.

Подведя мышь к одной из проекций точки, следует повести ее (мышь) вверх или вниз, формируя выпуклость вслед за этим движением так, чтобы первоначально заданная плоская поверхность образовала выпуклость. Так сформируется объемное изображение. Если при этом придерживать клавишу control (или другим способом), плоская поверхность сохранится для замкнутости объема или для последующей аналогичной деформации в ту или другую сторону.

Повороты получившейся объемной фигуры позволяют производить указанным способом различные деформации.

Такой способ формирования объектов может быть признан основным. Однако выше указывалось на возможность "ваяния" с помощью временно создаваемых мышц и инструментов внешнего воздействия или проникновения.



Шарнирно-мышечное соединение


Координаты шарнира задаются условно (ячейка не занимается) точкой O(x0, y0, z0) внутри объекта (рис. 15.6). Мышца АВ связывает лучи (элементы скелета), исходящие из точки О. Сокращение мышцы должно вызывать видимость движений, характерных при ходьбе, движении рук и т.д. Это требует таких деформаций объектов, при которых его клетки, облегающие эти лучи, или только клетки оболочки, несущие в себе данные лучи, сближаются вместе с лучами, не приводя к дополнительной деформации.


Рис. 15.6.  Деформация объекта вокруг шарнира

Практический интерес представляет случай, когда неподвижная точка мышцы совпадает с одним из ее концов. Это соответствует направлению движения конечности относительно неподвижного тела. (Хотя следование известным соотношениям о количестве движения или третьего закона механики не представляет трудностей.)

По аналогии с (15.1), луч ОА описывается параметрической системой уравнений

(15.12)

Если 0

k
1, то уравнения отображают отрезок ОА. Нас же интересует вся прямая, исходящая из точки О.

Отобразим сокращение мышцы переносом клетки А в клетку А' (x1', y1', z1' ), в упрощенной форме воспользовавшись (15.2) и (15.3). Этим установим новое положение ОА'луча ОА.

Уравнения этого луча имеют вид

(15.13)

Если 0

k'
1, то уравнения отображают отрезок ОА'. Однако точка А' не отображает факт вращения луча ОА вокруг точки О. При этом вращении точка А должна переместиться в точку А1

, отстоящую от О на расстояние, равное длине отрезка ОА. Найдем координаты этой точки на луче ОА' из соотношения

(x11 - x0)2

+ (y11 - y0)2 + (z11

- z0)2 = r2 = (x1 - x0)2

+ (y1 - y0)2 + (z1 - z0)2.

В параметрической форме представления (12) точке (x11, y11, z11) соответствует некоторое значение k1' параметра. Подставим вместо координат этой точки их параметрическое представление:

(k1')2((x1' - x0)2 + (y1' - y0

)2 + (z1' - z0)2) = r2

.

Откуда

(15.14)

Очевидно, k1' > 0 . Таким образом, точка А1

переноса конца А мышцы найдена.

Для синхронных действий при переносе всех клеток объекта, подлежащих перемещению вокруг шарнира, запишем уравнения луча ОА1


в зависимости от того же параметра k, определяющего положение (15.12) луча ОА



(15.15)
Пусть (xj, yj, zj) — точка (клетка), подлежащая переносу, в соответствии с сокращением мышцы, в точку с тем же радиусом относительно точки О, но с исключением других деформаций объекта. Чтобы найти координаты (xj(OA), yj(OA), zj(OA)) проекции этой точки на луч ОА, решим задачу минимизации расстояния между этой точкой и лучом ОА, описанным системой (15.12):

(xj - k(x1 - x0)- x0)2 + (yj - k(y1 - y0) - y0)2 + (zj - k(z1 - z0) - z0)2
min.

Приравняв производную по k нулю, получим

(xj - k(x1 - x0) - x0)(x1 - x0) + (yj - k(y1 - y0) - y0 )(y1 - y0) + (zj - k(z1 - z0) - z0)(z1 - z0) = 0.

Отсюда



(15.16)
Подставим (15.16) в (15.12) и найдем координаты (xj(OA), yj(OA), zj(OA)) искомой проекции.

Вычислим разности координат точки (xj, yj, zj) и найденной ее проекции на луч ОА, определяющие смещение этой точки:



(15.17)
Подстановкой (15.15) в (15.14) найдем координаты (xj(OA1), yjOA1), zj(OA1)) "образа" точки (xj(OA), yjOA), zj(OA))

при повороте луча. Тогда координаты x

j пер , yj пер, zj пер

переноса точки (xj, yj, zj) отыскиваются так:



(15.18)
Организовав цикл по j - по всем точкам объекта (или оболочки) в окрестности луча ОА, выполним требуемую имитацию движения.


Сокращение "твердого" объекта


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

Пусть, как и ранее, задано значение 0

l

1 , приводящее к сокращению объекта в направлении мышцы АВ (рис. 15.3). Объект должен преобразиться, как показано на рисунке пунктиром. Мышца описывается системой параметрических уравнений (15.1). М, как и прежде, — неподвижная (относительно неподвижного объекта) точка мышцы. Однако эта точка теперь определяет плоскость М, перпендикулярную мышце, относительно которой слева и справа все значащие клетки объекта должны сместиться в направлении к этой плоскости, т.е. параллельно мышце, с коэффициентом смещения (сжатия), равным l.


Рис. 15.3.  Сокращение твердого тела

Плоскость М описывается уравнением

(15.4)

Пусть точка (xj, yj, zj) — текущая клетка объекта с адресом xjyjzj

, подлежащая указанному переносу. Найдем координаты xj(M), yj(M), zj(M)

ее проекции на плоскость М. Так как точка с этими координатами принадлежит плоскости М и минимизирует квадрат расстояния точки (xj, yj, zj) до этой плоскости, задача такой условной минимизации формулируется так:

найти значение xj(M), yj(M), zj(M)

, удовлетворяющее требованию

(xj(M) - xj )2

+ (yj(M) - yj)2 + (zj(M)

- zj)2

min

при условии

(xj(M) - xM)(x1

- xM) + (yj(M) - yM)(y1

- yM) + (zj(M) - zM)(z1

- zM) = 0.

Решим данную задачу, используя уравнение Лагранжа

(xj(M) - xj)2

+ (yj(M) - yj)2 + (zj(M) - zj)2 + ?[(xj(M)

- xM)(x1 - xM) + (yj(M) - yM)(y1

- yM) + (zj(M) - zM)(z1 - zM)]

min.

Дифференцируя по всем переменным, включая ?, и приравнивая производные нулю, получим систему линейных уравнений

2(xj(M) - xj) + ?(x1 - xM) = 0

2(yj(M) - yj) + ?(y1 - yM) = 0

2(zj(M) - zj) + ?(z1 - zM) = 0

(xj(M) - xM)(x1 - xM) + (yj(M) - yM)(y1 - yM) + (zj(M) - zM)(z1 - zM) = 0.

Решая систему, находим

(15.5)

Таким образом, получена мышца с началом в точке (клетке) с координатами xj, yj, zj

и с концом в точке xj(M), yj(M), zj(M)

. Эта же точка является неподвижной. Тогда по (14.2) и (14.3) имитируется сжатие мышцы. Цикл по j охватывает все значащие клетки объекта.



Сокращение вязкого тела


Вязкое тело, внутри которого сокращается мышца, характеризуется "затуханием" величины смещения клетки объекта с увеличением ее расстояния до мышцы (рис. 15.4).

Найдем квадрат r2 кратчайшего расстояния между произвольной текущей точкой объекта или только его оболочки xj, yj, zj) и мышцей. Это расстояние определяется с помощью проекции xj0, yj0, zj0) данной точки на мышцу (на рисунке — две точки, проектируемые правее А), или ее удаленностью от концов мышцы (на рисунке — точка левее А).


Рис. 15.4.  Сокращение вязкого тела

Предполагая, что данная проекция принадлежит мышце, найдем с помощью параметрического описания (15.1) соответствующее ей значение kmin из соотношения

(15.6)

Значение kmin, которое определяет клетку мышцы, соответствующую искомому минимальному расстоянию, вычисляется с помощью нулевого значения производной по k:

(xj0 - x1 - k(x2

- x1)(x2 - x1) + (yj0

- y1 - k(y2 - y1)(y2 - y1) + (zj0 - z1 - k(z2

- z1)(z2 - z1) = 0

Откуда

(15.7)

Если выполняется условие 0

kmin
1, искомая проекция действительно принадлежит мышце. Тогда r2 отыскивается в результате подстановки (15.7) в (15.6). Если kmin < 0, ближайшей точкой мышцы является А. В этом случае

r2 = (x1 - xj)2

+ (y1 - yj)2 + (z1 - zj)2.

Если kmin > 1, ближайшей точкой мышцы является В:

r2 = (x2 - xj)2

+ (y2 - yj)2 + (z2 - zj)2.

Чтобы определить направление переноса клетки (xj, yj, zj) , необходимо по (15.5) найти ее проекцию на плоскость М. Тогда для нахождения адресов циклической пересылки значащих клеток объекта воспользуемся формулами

(15.8)

Здесь ? — коэффициент вязкости и R2

— заведомо большое число, ограничивающее значение r2

, где смещение полностью затухает.

Перебор клеток объекта для пересылки выполняется по (15.3). Пересылка выполняется для обоих полупространств, разделяемых плоскостью М.



Сокращение вязкого тела с "выпучиванием"


Сокращение вязкой и упругой среды, такой как резина, губка, упитанные щеки и др., обычно сопровождается явлением, которое можно назвать попыткой сохранения объема в результате выпучивания. При сокращении мышцы это означает, что перенос клеток объекта вдоль мышцы обретает перпендикулярную составляющую, тем меньшую, чем больше расстояние до мышцы.

Пусть, как и прежде, xj, yj, zj

— составляющие адрес координаты текущей клетки вязкого объекта, для которого выше сформированы выражения (15.8) для определения адреса переноса. Дополним их указанной перпендикулярной составляющей (рис. 15.5).


Рис. 15.5.  Сокращение тела с "выпучиванием"

По (15.7), подставив вместо xj0, yj0, zj0

значение найденной по (15.8) точки переноса (xj пер, y

j пер , zj пер) , найдем kmin

и, невзирая на его значение, найдем проекцию (xj0пер, yj0пер, zj0пер) на мышцу или ее продолжение влево или вправо.

(Заметим, что уравнения (1) при 0

k
1 определяют собственно мышцу, другие значения k
[-?, 0], k
[0, ?] определяют точки прямой, которой принадлежит отрезок — мышца.)

Запишем систему параметрических уравнений прямой, проходящей через точки (xj пер, y

j пер , zj пер) и (xj пер0, yj пер0, zj пер0) :

(15.9)

Задав малое приращение ?m > 0, зависящее от r2пер = (xj пер0

- xj)2 + (yj пер0 - yj)2

+ (zj пер0 - zj пер)2

, и приняв m = 1 +?m , получим окончательно точку переноса (xj пер*, yj пер*, zj пер*) , отстоящую от точки переноса, найденной по (15.8), и смещенную в перпендикулярном направлении от мышцы.

Эмпирическую зависимость коэффициента смещения ?m от указанного выше расстояния можно выбрать как

(15.10)

Тогда из (9) находим

(15.11)

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



Внешнее "механическое" воздействие на объект


Такое воздействие необходимо не только при определенном взаимодействии различных объектов, но и на уровне формирования, "ваяния" объекта. Идея такого ваяния заключается в следующем.

Пусть в память введена некоторая заготовка, имеющая наиболее близкую форму для желаемого объекта. (Например шар — для формирования головы.) Приближая к заготовке объект-"инструмент", например молоток, необходимо потребовать, чтобы при угрозе прикосновения к объекту, ближайшие его клетки отступали, и оболочка, продавливаясь, принимала форму проникающего инструмента. Эта операция напоминает ковку или штамповку. Таким многократным воздействием с разных сторон можно добиться любой формы объекта.

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

Если не деформировать оболочку, а позволить инструменту проникать в объект, то подобное действие сравнимо с действием ножа. Таким образом от объекта могут отсекаться части, — для последующего уничтожения или для создания новых объектов.

Роль подобных инструментов могут играть объекты друг для друга. Это позволит, например, имитировать некоторые разрушительные события.



Диагностика


Представляется, что диагностика – самое прямое назначение рассматриваемых логических нейросетей. Действительно, именно в этой области непосредственно проявляется принцип логического мышления на основе причинно-следственных связей вида "если …, то …".


Рис. 16.5.  Диагностика

Это относится как к техническим, так и к медицинским системам. Более того, практически всегда отсутствующая полнота информации, зачастую ее противоречивость, нечеткость проявлений, "зашумленность", приводят к актуальности принципа ассоциативного мышления, основанного на опыте коллектива экспертов (в медицине – консилиума).

Рассмотрим фрагмент проекта системы диагностики, которая призвана решить пример, предложенный в разделе 5.3 (рис. 16.5).

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

Итак, рассмотрим жалобу {болит голова, болит живот, болит левый указательный пальчик}.

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

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

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

Данный пример свидетельствует о той грандиозной и только коллективной, технически оснащенной глубине познаний человечества, воплощенной в столь несложной обученной нейронной сети.



Графический диспетчер движения поездов


Ранее мы рассмотрели замечательную железнодорожную игру, основанную на современных воспитательных ценностях катастроф и насилий. Ну а серьезно?

Традиционно, расписание движения поездов через перегон, контролируемый одним диспетчером, составляется графически (рис. 16.7), в виде "картинки" с подразумеваемой системой координат. Горизонтально – время, вертикально – расстояние от одного крайнего пункта до другого, с указанием промежуточных. Тогда график движения каждого поезда – наклонная линия, с переменным углом наклона, с учетом остановок. Общий угол наклона линии соответствует направлению движения поезда через перегон. Несколько поездов, следующих через перегон, порождают сложную "картинку" их обслуживания с учетом приоритета (литера), возможного схождения путей в один, длины поезда (с учетом длины путей станций), необходимой скорости следования, запрета остановок.

Диспетчер должен уметь "развести" все поезда так, чтобы за счет ожиданий одних поездов на пунктах перегона провести другие поезда, выдержав приоритет: скорый, пассажирский, сквозной, сборный и т.д., – по возможности избежав столкновений и остановок вне раздельных пунктов.

На рисунке показан график движения поездов на однопутном перегоне. Здесь кривая 1 соответствует скорому поезду, кривые 2 и 3 – двум сквозным поездам. Эти три поезда следуют в одном направлении, из пункта А перегона. Кривая 4 соответствует сборному поезду, следующему в противоположном направлении из пункта В.

Составление расписания – оптимизационная задача (оптимизируются известные технико-экономические показатели) значительной трудоемкости. Поэтому до сих пор диспетчер фактически работает "вручную", хотя разработаны некоторые эвристические алгоритмы. Можно представить себе мастерство, интуицию и опыт диспетчера, демонстрирующего действительное искусство.


Рис. 16.7.  Синтез расписания движения поездов

Мы имеем дело с трудно формализуемой задачей и с необходимостью расширения интеллектуальных возможностей диспетчера.
Конструируя нейросеть, мы должны выделить основные события, характеризующие исходную ситуацию. Относительно этих событий у нас должен быть ясный ответ вида "да – нет", "1 – 0".

Как бы мы могли автоматизировать решение этой задачи (к сожалению – для каждого конкретного перегоа), на основе богатого опыта диспетчера-эксперта?

Во-первых, мы должны определить понятие "ситуация", выделив и систематизировав все ее показатели и характеристики: максимальное количество поездов, следующих через перегон в разных направлениях, и допустимые интервалы следования, типы поездов, различные сочетания этих типов, установленные скорости движения и допустимые отклонения, разрешенные остановки, длину состава (при известной длине резервных путей на пунктах перегона). Мы должны научиться задавать входные ситуации на входном слое нейросети.

Во-вторых, мы должны выделить эталонные ситуации и, подобно эксперту, сопоставить им картинки, похожие на представленную на рисунке. То есть за каждой картинкой мы должны закрепить нейрон выходного слоя сети и проложить трассу – опорный путь возбуждения от каждого эталона к соответствующей картинке.

Нейросеть позволит нам уйти от статики экспертной системы (фактически, таблицы) к динамике, позволяющей по любой случайной ситуации получать ответ на вопрос: "какая картинка в большей степени следует этой ситуации?"

Однако такой простой ответ не может исключить аварии. Т.е. на этом анализ ситуации закончить нельзя. Мы не использовали пока всю информацию, которую нам сообщила нейросеть.

Какую же информацию нам следует использовать?

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


Эти величины возбуждения нейронов образуют веса, с которыми должны быть учтены соответствующие этим нейронам картинки.

Во-вторых, должна быть решена проблема формирования "средней" картинки по нескольким картинкам с их весами, где основные элементы картинок должны сместиться в некоторое среднее положение. Только тщательное экспериментальное исследование может ответить на вопрос о возможности и конкретной практической применимости такого решения проблемы.

Например, на обозреваемом отрезке времени поезд появляется на контролируемом перегоне. Вопросы:



Сколько поездов на обслуживании

n = 1?n = 2? ………n = nmax?



Момент появления поезда

t = 1?t = 2?………t = tmax?



Направление движения

от пункта А?от пункта В?



Тип поезда

скорый?товарный? и т.д.



Так – по всем поездам на отрезке времени планирования. Таким образом, на основе обстановки, которая ожидается на период планирования, необходимо составить сложную "картинку" – график движения.

Однако мы говорим об ассоциативном мышлении, реализуемом нейросетью, о возможности нейросети интерполировать принимаемое решение. Что означает такой ответ нейросети: "На 60 из 100 это – "картинка" А, но на 30 из 100 это – "картинка" В, а на 8 из 100 это – "картинка" С"?

Такой ответ наводит на мысль о возможности автоматического выполнения операций над "картинками". Но возможность операции (в данном случае – получение "средней картинки") должна быть строго обоснована непрерывностью основных параметров, отсутствием скачков. Например, кажущаяся непринципиальной разница в один вагон может привести к тому, что на станции Пырловка поезд не впишется в длину запасного пути.

"Средняя картинка" может быть получена на основе, например, зависимости



где "+" – условная операция наложения "картинок", "?" – применяется с весом данной "картинки" и определяет долю ее участия в формировании "картинки"-результата.

Графически это может означать направление смещения, растяжения и сжатия, в общем – деформации основных общих элементов "картинок" А, В, С для получения результата.

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

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

А потому всегда должно быть предусмотрено окончательное принятие решения человеком!


Экстренное торможение локомотива


В разделе 2.1 рассматривался простейший пример применения логической нейросети для распознавания букв. Было указано на обобщение принципа персептрона Розенблата. Действительно, распознавание выполняется методом "голосования" по суммарной величине возбуждения рецепторов, на которое "ложится" эталон.

Что, если такой принцип положить в основу распознавания препятствия на железнодорожном пути? Ведь на прямолинейном участке (а именно здесь скорость максимальна!) локомотив "видит" перед собой одну и ту же картинку: сходящиеся в бесконечности рельсы. Всякое нарушение этого однообразия требует если не экстренного торможения, то хотя бы снижения скорости.

Если на пути возникает преграда, то картинка напоминает букву А. При этом задача облегчается тем, что картинка строго привязана в пространстве, буква А отцентрирована и отмасштабирована, т.е. фокусировка уже произведена.

Представим себе некоторый экран (рис. 16.9), образованный рецепторами нейронной сети, подобно рассмотренной выше задаче распознавания текста.


Рис. 16.9.  Система экстренного торможения

Рецепторы, возбуждение которых необходимо выделить, связаны с нейроном выходного слоя. Передаточная функция основана на простом голосовании: величины возбуждения складываются, и если образующаяся сумма превышает порог, формируется сигнал тревоги, по которому включается тормозная система.

Принцип крайне прост, однако упирается в хорошее "зрение". Требуется обеспечение высокой контрастности изображения как рельсов, так и препятствия. Что, если препятствие настолько светлое, что значение возбуждения выходного нейрона, наоборот, снижается? Следует поставить "ловушки" как для превышения суммарного сигнала, так и для низкого значения этого сигнала, т.е. ввести два порога. Тогда передаточная функция имеет вид

Исследуемая картинка предполагает увеличение, приближение вида вдаль – для упреждения реакции. При этом детализация удаленных объектов должна быть выше объектов близких.
Это означает, что рецепторы на экране, закрепленные за удаленным изображением (верхняя часть экрана), должны располагаться гуще.

Для большей определенности, по-видимому, следует анализировать как позитивное, так и негативное изображение, формируя результирующий сигнал.

Видимая картинка разбивается на области "захвата", в которых предполагается нахождение интересующего объекта. Тогда та же картинка может использоваться для анализа сигналов семафора, для детального распознавания типа препятствия, для обслуживания поворота и т.д. Области захвата должны быть достаточно "тесными", в идеале включающими, например, только рельсы с незначительным отклонением.

Если путь совершает поворот, то в действие может быть введен другой эталон.

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


Компьютерный человечек КОМПИ


Мы видим, какое значение компьютерным играм придает самый богатый человек планеты Гейтс, потрясая игровой приставкой нового поколения перед миллиардами телезрителей. Мы вволю наигрались в холодную войну и можем себе тоже позволить подумать о радости и удовольствии, а также – о бизнесе!..

С этим человечком мы уже встречались в лекции 2. Сформулируем идею окончательно.

… Все чаще посещает нас мечта жизни: пора объединить все разнообразие направлений творческого применения компьютера как средства, инструмента и объекта искусства. Это может быть материализовано виртуальной структурой под названием Computer Art Studio и отражать следующие направления: трехмерная и плоская анимация, графика и живопись; туристические объекты и исторические реконструкции; нейрокомпьютерные игры и анимация; литературный и музыкальный дизайн; фантастика и др.

Как видите, вполне справедливо, что благодаря логической цепочке "интеллект

моделирование
искусство", нейросетевые технологии должны занять подобающее им место в рядах Великого Искусства…

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

В "окне" появляется милая, упитанная мордашка (рис. 16.4). Тут же, в углу экрана, "мышкой" или "джойстиком" наш "хорошист" с английским уклоном не очень твердо, но вполне узнаваемо рисует ананас. Мордашка, в которой мы узнаем КОМПИ – популярного (пока неизвестного) героя компьютерного монитора, приходит в неописуемый восторг и радость. Все мышцы его лица, ведающие мимикой и жестами соответствующего морально-психологического состояния, приходят в движение.


Рис. 16.4.  КОМПИ

Тогда наш юный джентльмен стирает рисунок. КОМПИ постепенно успокаивается, приходя в состояние недоуменного ожидания. И вот, после некоторых размышлений, художник изображает … велосипед.

"Что это такое?" – вопрошает КОМПИ.

"Это – велосипед, на нем катаются", – следует ответ.


Дальнейшая пауза свидетельствует о том, что происходит обучение нейросети. Ситуация, которая введена на нейроны входного слоя, образующие экран для рисования, связывается (возможно, методом опорного пути) с нейроном выходного слоя (или – коры). Этот нейрон будет теперь соответствовать эталону – велосипеду. Этот же нейрон, в свою очередь, должен определить возбуждение нейрона, ведающего действием "то, на чем катаются". Запускаются программы, имитирующие действия КОМПИ, и он неуклюже, конечно же, неправильно и смешно – как его учили, например, обращаться с осликом, – подминает под себя копию введенного изображения – велосипед.

Возникает потребность расширения (в условиях, конечно, производящей компании) возможности игры, введя специальные программы имитации красивого велосипеда (распознанного по корявому эталону) и всех действий КОМПИ по езде на нем.

Средствами трехмерной графики, например 3D Studio MAX, производя деформации объема в направлении сокращающихся мышц, можно имитировать действия и мимику. Состав же программных процедур, включаемых в каждом такте управления для такой деформации, и их параметры определяются возбуждением нейронов выходного слоя сети при распознавании заданной ситуации – рисунка на экране. Мы еще не установили точно, может ли это МАХ. Однако ясно, что эти действия достигаются средствами двумерной и трехмерной компьютерной графики, на основе управления деформацией объектов. Мы не исключаем, что здесь потребуется разработка новых систем компьютерной графики, основанных на "мышечной" деформации, о чем поговорим далее.

Например, создав объект в плоской или трехмерной памяти, мы можем, дважды "топнув" мышкой, задать точку начала и точку конца "мышцы", зафиксировав в списке эту "мышцу" как новый невидимый объект. Затем мы можем сокращать и растягивать "мышцу", что сопровождается расчетом адресов такой пересылки информации, при которой мы увидим, например, сокращение или растяжение рта в улыбке и другие движения.



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

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

Можно представить себе и более широкое полотно…

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

И это не только весело. Это – серьезный и важный принцип управления, который может быть использован во многих производственных и зрелищных приложениях.

Дерзайте, предприниматели-программисты! Мы раздаем идеи бесплатно!..


Парк фантасмагорий


Представим себе парк развлечений, в который мы заходим, желательно – группой под руководством гида-экскурсовода. Намотавшись по аттракционам и желая наконец протянуть отекшие ноги, мы вступаем (по приглашению коварного гида!) в дивный тенисто-прохладный, ласково журчащий уголок с причудливым ландшафтом. И вдруг!..

… Выползают (рис. 16.2) из-за трепещущих кустов и камней монстры-крокодилы, вздымаются головы ящеров и тянутся к нам. Лохматый неандерталец ладит каменное орудие, привязанное жилой к сучковатой палке. Подымается на свои курьи лапы избушка.


Рис. 16.2.  Парк фантасмагорий

Гигантской головой оживает скала, покрытая нежными незабудками. Деревья и кусты трясут ветками – радуясь или возмущаясь. Фонтаны воды преследуют нас… Наше замешательство, паническое движение вызывают ответную реакцию: "население" смеется, сердится, радуется, угрожает. Явно проявляются симпатии и антипатии…

Рассмотрим возможный принцип действия отдельного "объекта" (

рис. 16.3 ).


Рис. 16.3.  Действия "объекта"

Объект контролирует сектор обзора. Электронно-оптическое устройство "зрения" может быть не обязательно расположено в глазах, а упрятано в более неподвижных "органах", например на груди.

Весь сектор обзора разбит на элементарные сегменты, образованные телесными углами в 1-2 градуса.

До последующих усовершенствований, первоначально должна быть предусмотрена реакция только на преобладающий цвет в элементарном сегменте обзора, на это – "Каждый Охотник Желает Знать, Где Сидят Фазаны". Например, красный цвет должен приводить к запуску комплекса программ обращения в ярость и к повторному обзору строки, чтобы усилить эту ярость при последующем раздражении. (– Женщина в красной кофте! Отойдите от крокодила немедленно!..)

Желтый цвет может вызывать кокетство и эротическое возбуждение. Зеленый – умиротворение. Коричневый – ритмичный шаг и салютование головой. Голубой – благочинное умиление с возведенными глазами и т.д.


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

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

(– И технологии позволяют… Видал в парке Горького мастодонта-звероящера? А гориллу рядом? Если такую макаку, да не к магнитофону, а – к компьютеру!.. А передачу "Куклы" глядишь регулярно?..)

Как ранее говорилось (лекция 2), в одном такте могут запускаться несколько программ, инициирующих движения "от текущего" состояния. Это должно имитировать суммарную сложную реакцию на ситуацию в секторе обзора с его изменением, обеспечивать ее непредсказуемость, неожиданность и восторг публики. А если представить себе, что таким свойством реакции наделены деревья, скалы, воды и ветры, то такой фантасмагорический фейерверк получится!..

(– С этого ж такие бабки можно поиметь!..)

Что ж, ваше слово, товарищ спонсор!


Печать рукописи


Даже в пору, когда чистописание было одним из главных предметов первоклассника, воспитывающих красоту и порядок (несомненно, стимулирующий внутренний порядок) владения пером № 86 с нажимом, разбор рукописного текста был проблемой для развитого воображения. Мы содрогаемся, видя, с каким разнообразием извращений приемов владения современными изобразительными средствами студенты конспектируют мудрость своих наставников.

По прошествии некоторого времени мы с трудом понимаем собственные каракули, не говоря уж о чужих. А если Время поработало капитально, и ваши старания сравнимы с прочтением Кумранских рукописей? Ясно, что только ассоциативное мышление способно восстановить рукописный текст.

Поэтому автоматизация воспроизведения написанного является актуальной задачей.

… И окончательно впадая в детство, мы видим в основе распознавания по признакам все ту же методику чистописания.

Еще в лекции 2 мы обратили внимание на "признаковое" определение букв: а – кружочек с палочкой справа, заканчивающейся хвостиком вправо, б

– кружочек с хвостиком сверху, вверх и вправо, ц – палочка с хвостиком вправо, к нему примыкает палочка, а к ней, справа внизу, странный специфический крючок, позволяющий сказать "что-то странное, но обязательно существующее", и т.д.

Представим себе "окно просмотра", сканирующее текст (

рис. 16.8 ).


Рис. 16.8.  Распознавание буквы по признакам

Оно "наложено" на входной слой нейросети. Связи нейронов входного слоя – рецепторов – соединяют их (скорее всего, на следующем же слое) с нейронами промежуточного выходного слоя (или на коре), закрепленными за признаками. Это соединение выполнено так, чтобы "захватить" случайно (в зависимости от почерка) отклоненную от эталона в букваре букву и выявить в ней отдельные признаки. Комбинация выявленных признаков на следующем (следующих) окончательно выходном слое определяет распознаваемую букву.

Возможно, что при наложении очередной буквы, ожидаемой в сложной вязи письма, нам понадобится процедура разглядывания: увеличение/уменьшение, наклон влево/вправо, – до тех пор, пока при некоторой фиксации образа не начнется их действительное распознавание.
Поэтому, в дополнение к попытке "захвата", изображение располагается в " окне просмотра" так, что его "центр тяжести" совмещается с центром окна. Далее, изображение растягивается или сжимается, наклоняется влево или вправо так, чтобы максимально совпасть по размеру и углу наклона с размером и углом наклона эталонов, подававшихся в процессе обучения. Впрочем, это растяжение/сжатие и наклон могут осуществляться динамически, на основе проб, в процессе распознавания в поисках лучшего угадывания буквы.

Для выявления всех признаков и их относительного положения "окно просмотра" необходимо разбить на сектора, определяющие понятия "слева", "справа", "вверху", "внизу", "внизу справа" и т.д.

Определенную трудность представляют пропуски и пробелы. Например, как определить разрыв окружности буквы с от полной окружности буквы о? Ведь может возбудиться "полный кружок", только с меньшим значением величины возбуждения.

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

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

… Выслушав данное (да и другие) соображение, мы не стали разочаровывать дядю Рамзая тем, что это давно известно, делается, и существует обширная литература. Мы привели его для иллюстрации естественной взаимной вытекаемости идей, базирующихся на одном основании, стараясь менторски наставить молодое поколение – рекомендовать и заинтересовать.


Сивилла-прорицательница


В век всеобщей информатизации мы, нетерпеливо пропуская конкретику и детали, жадно ловим правду "между строк", ассоциативно формируя предвидение и прогноз: что будет с нами завтра, каковы тенденции и что предпринять?

Формализация обработки огромных потоков информации, в основном в СМИ (а это – оперативная информация), все более привлекает специалистов по прогнозу. Здесь огромные возможности для шарлатанов, и кажется удивительным, как незамеченными остаются "прогнозы" авторитетных, не сходящих с телеэкрана "предсказателей", данные ими несколько лет назад и не заставляющие их покраснеть сегодня.

Поставить прогноз на научную основу – задача современных и честных ревнителей перспективы.

Основой прогнозирования является состав и частота появления слов и выражений, характеризующих политический этап или целый исторический период. Далее следует анализ исторического опыта, определяющий, к чему это приводило в прошлом и к чему может привести впредь…

… История помнит замечательные, навязчиво мелькающие, "новые" слова и выражения. Например – "конвергенция", выражающее сомнение и крах режима, "интернациональный долг" – саморазрушающая агрессия, "консенсус" – псевдодемократический, криминальный обвал, "экстрадиция" – мировой процесс очистительной ловли тараканов, "суверенитет" – самостоятельный выход из окружения. А что дальше? Дальше – слова "наркомания", "терроризм", "сепаратизм", "курс доллара", "приватизация", "прожиточный минимум", "коррупция" и т.д.


Рис. 16.11.  Предвидение

Комбинации и частота следования слов (рис. 16.11) образовывали критическую массу для неотвратимой цепной реакции…

Итак, как в фантасмагорическом парке: появление каждого "судьбоносного" слова добавляет определенное настроение нейросети. Результирующее настроение определяется распределением возбуждений нейронов выходного слоя – его максимумом, значением среднего, предпочтительным рядом.
Частота их появления меняется во времени, обязательно определяя знаменательные события: развал Союза, путч, расстрел Белого Дома, вехи экономического краха, социальные и региональные беспорядки...

– Но ведь подобная методика применялась при определении святости слов Святого Писания!

– Вот посмотрите только заголовки единственно выписываемого мною во все времена "АиФ" № 8 за февраль 2001 года, – послюнил палец дядя Рамзай.

Оптимистический рядПессимистический ряд всех оттенков


Мантимер Шаймиев: Не будем строить то, что однажды развалилось*) (стр. 3)


Апокалипсис в одной отдельно взятой стране (стр. 2)


На ХХI век нефти хватит (стр. 6)


Новая версия скандального ареста госсекретаря союза России-Белоруссии (стр. 4)


Пятьдесят регионов уже приняли свои земельные законы (стр. 6)


Батальоны просят рубля, Не плачь, мальчонка!, Ордера на мундирах, Эликсир под "кирзу" (стр. 7)


Даже у "исконно русского" КВНа обнаружился зарубежный аналог*) (стр. 10)


Ежегодно в России пропадают 40 тыс. граждан (стр. 12)


Реклама*) (стр. 5, 8, 9, 11 и далее)


Наши видеопираты всех достали (стр. 12)


Репрессии песни "Ландыши" длились 23 года *) (стр. 13)


Каков современный поп, таков и приход (стр. 13)


Хорошей колбасы должно быть много, главное, чтобы она была не из мяса бешенных коров *) (стр. 16)


Станет ли Россия братским "могильником"? (стр. 18)


"Не блатной" кроссворд (стр. 21)


Хлебный рынок столицы далек от цивилизации,

На улицах – непроходняк,

Что делать с бомжами? и т.д. и т.п.

*) Может, мы ошиблись колонкой?

(– А ты что ж, дядя, хотел бы вернуться к дутому оптимизму?

– Нет, браток, – и внушительный палец метнулся ввысь, – я хочу лишь сказать, что демократия не объявляется, демократия воспитывается, воспитывается долго и жестоко! Ты можешь представить себе немца, англичанина, француза, которому по полгода не платят зарплату? А? Вот то-то!)

…Наша задача – не только формально, скажем, по частоте использования тех или иных слов и выражений, но и на основе ассоциативного восприятия воспроизвести динамику социально-экономического, политического и морально-психологического движения общества.



(– Как, в натуре, замелькают слова "наведение должного порядка", "приоритет образования", "показательный процесс с конфискацией", "восстановление государственного сектора экономики", "антикриминальный террор" и другая лабуда, так сразу и поймешь: "Ну, – [конец], пора рвать когти, пока не дошло до катаклизмы…")

Например, желая вскрыть динамику, таким же способом, деля на оптимистический и пессимистический ряды, обработаем "АиФ" № 45 за ноябрь 2006 года.

Оптимистический ряд

Пессимистический ряд


Грузия. "Дорогим друзьям" – дорогой газ (стр. 2)


Кто заражает армию дедовщиной (стр. 3)


"Градом" по миру. Южная Осетия готова к свободе, а Грузия – к войне (стр. 4)


Игра в бутылочку. Кто спасет Россию от спаивания (стр. 6)


Полезный совет. Помогите спасти мужа (стр. 5)


Я не понимаю ... почему министр финансов самый бедный? (стр. 7)


М. Жванецкий: Какие дети от секса, а какие – от любви? (стр. 10)


Наболевшее. Наш бизнес порочат грязные деньги (стр. 8)


Кальций без гипноза. У кого не болят кости (стр. 11)


"Гитлер умер в ... 1964 году" – утверждает автор скандального бестселлера (стр. 16)


В. Шумаков: Пересадить мозг можно, но... (стр. 12)


Лес рубят и будут рубить (стр. 21)


А. Нечаев: "Храните доллары в рублях" (стр. 13)


Почем гаражи для народа (стр. 22)


День без взяток (стр. 15)


В столице могут появиться обманутые собственники (стр. 25)


Рак предстательной железы – не приговор (стр. 17)


Головоломка от Создателя, или секреты женского организма (стр. 27)


Как дать сдачи учителю? (стр. 19)


Не торопитесь отдавать долги (стр. 37)


Богатство в курсе (стр. 20)


Дыба и кнут все перетрут (стр. 39)


Трансгены – вон из столицы! (стр. 23)


Дареному вождю в зубы (стр. 39)


"Зебру" – пешеходам (стр. 26)


Горькая пилюля поддельщикам (стр. 45)


Залейте в бак... навоза (стр. 40)


Скрытая угроза всему человечеству (стр. 47)


Секрет долгожителей (стр. 49)


Хлеб – удар по почкам? (стр. 48)


Наследство – дар ясновидения. Тайна третьего глаза (стр. 50)


Потный мужик с сигарой ей не нужен. А. Пугачева. Стилист? Юморист? Вот и пойте (стр. 56)


Еж + уж = ? Но не метр колючей проволоки (стр. 53)


Гус Мутко не товарищ? (стр. 58)


Миома... испаряется (стр. 61)


Мобильная импотенция? (стр. 64)
Как видим, обработка этого номера не вселяет больше оптимизма, чем пять лет назад. Так что опасения дяди Рамзая пока беспочвенны.

…И мы испытываем светлое "чувство глубокого удовлетворения" теми Великими Преобразованиями, которые, несомненно, объявлены Высшим Разумом, но пока недоступны нашему пониманию. И только Третий Глаз, черпая энергию Непознанного, продолжает сообщать нам радостные и тревожные, а порой – вещие видения-сны, связывая нас с Бытием…



Как видим, обработка этого номера не вселяет больше оптимизма, чем пять лет назад. Так что опасения дяди Рамзая пока беспочвенны.

…И мы испытываем светлое "чувство глубокого удовлетворения" теми Великими Преобразованиями, которые, несомненно, объявлены Высшим Разумом, но пока недоступны нашему пониманию. И только Третий Глаз, черпая энергию Непознанного, продолжает сообщать нам радостные и тревожные, а порой – вещие видения-сны, связывая нас с Бытием…
<

Служба безопасности


После долгого бдения и дележа средств в Международном Фонде Вспомоществования Семьям Жертв Российской Науки Прошлого Века (МФВСЖРНПВ), утомленный и удовлетворенный, вы возвращаетесь среди ночи домой. Тихо, крадучись, вы открываете дверь квартиры и включаете свет в прихожей. Но вы совсем забыли о той встрече, которая ждет вас с Несимпатичным Искусственным Существом (рис. 16.1), включенным в электросеть и выставленным для охраны Ваших близких от непрошеных ночных гостей-грабителей! "Здравствуй, папа! – произносит мощный железный голос. – А почему у тебя на лице губная помада?!"


Рис. 16.1.  Охрана

Да, охрана покоя семьи, противодействие взломщикам-грабителям, – актуальная задача нашего сложного времени. Мы справедливо предполагаем развитие рынка средств автоматического распознавания "свой – чужой", находящего все большее число покупателей-приверженцев, по мере роста объявленного благосостояния народных масс.

Как же может быть устроено такое средство охраны-предупреждения?

Отбросив эстетическую наружную часть, несомненно, выполненную со вкусом и выдумкой, заглянем в "нутро".

Основой логической деятельности Существа, конечно же, является нейросеть (хотя обработка видеоввода может оказаться гораздо сложнее).

Представим себе многоуровневую нейросеть, первый логический уровень которой подбирает "словесный портрет" на основе признаков изображения, поступившего на его экран. Не следует удивляться приемам криминалистики, в совершенстве овладевшей подходом к идентификации преступника. В результате анализа, возможно, с двух точек – анфас и в профиль, на этом уровне может быть установлено:

волосы присутствуют, черные, шевелюра пышная, на 5 баллов;лоб высокий, залысины есть, поперечные морщины есть;брови густые, с разлетом, сросшиеся на переносице, № 8;нос орлиный, № 4 и т.д.

Конечно, баллы и номера не выставляются. Они означают только, какой нейрон промежуточного выходного слоя возбудится максимально. Да и это нам знать ни к чему.
Просто произойдет какое- то распределение возбуждений между нейронами промежуточного выходного слоя той части нейросети, что обучена распознаванию признаков. Возбуждение этих нейронов, как нейронов входного слоя второй части нейросети, второго логического уровня, должно в результате обучения привести к существенному отличию "папы" от "слесаря дяди Юры", приходившего днем проверить нетекущий кран. То есть должно привести к идентификации – кто это (или это "свой", или "чужой"). Можно предусмотреть и побочные признаки: чрезмерно красный нос, подозрительные красные пятна на овале лица вне носа и др. При формировании составного ответа голосом (на третьем логическом уровне?) могут быть учтены и эти дополнительные признаки, как это мы и предположили вначале.

И мы видим путь, по которому можно гнать и гнать лошадь фантазии, соревнуясь во все более и более фантасмагорических предложениях.

Например, мы можем представить себе медведя с золотым блюдом в дверях шикарного ресторана, приветствующего завсегдатаев словами: "Дорогой и любезный Иван Иванович! Отстегни от щедрот своих, пожертвуй, душа, на хлеб насущный российской науке!"

А увлекшись окончательно, мы можем представить себе парк фантасмагорий, населенный чудовищами, реагирующими на Ваше появление, ваш облик и ваше поведение. "Оживлены" могут быть и фонтаны, и элементы ландшафта, и т.д. и т.д. – так, как это рассмотрено ниже.


Тестирование в сфере образовательных услуг


Работникам высшего образования хорошо известны насущные проблемы в условиях их деятельности:

общественно низкая значимость труда, выражающаяся в презрительной кличке "бюджетник";

отсутствие непосредственного влияния уровня образования на надежды, связанные с будущим жизненным успехом студента;

профанация идеи платного образования, поставившего преподавателя в зависимость от милости студента-"платника" (рис. 16.6); предельное повышение нагрузки и т.д. и т.п.

В этих условиях "головная боль" не покидает несчастного преподавателя весь день такой его благородной, творческой и гуманистической деятельности.

Понимая преходящий характер исторических трудностей, мы спешим на помощь. Мы хотим хоть как-то снизить психологическую нагрузку доцента-профессора, дать ему простой и ясный механизм для формализованного, единственно верного принятия разнообразных решений. Помочь хотя бы при проведении тестирования, в том числе – в период экзаменационной сессии.

(Мы не собираемся строить систему принятия решений. Мы освещаем и без того светлые идеи дяди Рамзая.)


Рис. 16.6.  В защиту платного образования

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

А = {множество студентов, согласно списка группы}; В = {студент-"бюджетник", студент-"целевик", студент-"платник"}; С = {множество тестов, упорядоченных по невозрастанию сложности} D = {множество возможных баллов, получаемых студентами на прошедшей ранее аттестации}.

Множество принимаемых решений по тестированию студента:

Какой по сложности тест предложить студенту (в заданной точке факторного пространства) первым?

Что делать, если он: а) ответил правильно, б) ответил неправильно? Указывает ли это на то, какую стратегию опроса продолжать далее?

Здесь три возможности:

закончить тестирование;продолжить тестирование в сторону повышения сложности тестов;продолжить тестирование в сторону понижения трудности тестов.

Какая оценка должна быть зафиксирована в зависимости от обрабатываемой точки факторного пространства и от результата тестирования?

Представляется, что адекватная логическая нейронная сеть является однослойной. Однако длительный процесс тестирования диктует необходимость обратных связей (подобно системе диагностики). Действительно, если вы нечаянно задали студенту-"платнику" трудный тест, вам на это должны мягко, но непреклонно указать. Система может с помощью обратной связи снизить допустимую сложность теста на входе, потребовать смены теста. Аналогично, в этом же случае она должна ограничить ваше рьяное стремление докопаться до истины и оценить знания по заслугам.

Несомненно, стратегия тестирования успевающего студента должна отличаться от стратегии тестирования "середнячка". И т.д. и т.д.

Как видим, подобная СПР не только позволяет скрыть за формальной оболочкой наши вынужденные неправедные действия, но и значительно поднять настроение философским отношением к действительности.



Защита информации


Мы знаем, какой важностью обладает сегодня информация. "Взломать" финансовую, коммерческую или транспортную систему является делом чести уважающего себя хакера. А информация о движении грузов на железнодорожном транспорте! Не говоря о информации, составляющей государственную тайну…

Защита информации от несанкционированного доступа – исключительно важная задача, актуальность которой все возрастает с развитием сетевых компьютерных и телекоммуникационных технологий. Высокие затраты на ее решение окупаются с лихвой, сопровождаясь тайной воплощения средств.

Однако ширятся и средства "взломщика". Сегодня ему нет нужды "взламывать". Он просто врывается (рис. 16.10) в ваш офис, и под дулом автомата Калашникова, купленного у прапорщика Н-ской воинской части, вы становитесь покорным исполнителем его желаний.

Однако, как бы вы ни старались мобилизовать свои артистические способности, моральное состояние выдает вас чуткому серверу, на расстоянии выполняющему заявки с вашего компьютера в режиме "клиент-сервер".

Наряду со сложной системой паролей, ограничения функций и доступа с вашего терминала, успешно преодоленных (с вашей помощью!) насильником, предпринимателем и террористом, остается что-то непреодолимое, воплощенное в средствах идентификации пользователя и аутентификации. Это – ваш образ, выражающийся в "почерке", в выявленных чертах вашего характера, в общей предпочитаемой стратегии вашей работы. То есть – в ваших индивидуальных чертах, протестированных системой защиты. Система защиты хранит ваш "образ" и периодически сверяет характер вашей работы с этим образом.

"Образы"-эталоны находятся персонально для каждого пользователя на основе тестирования. Какие особенности работы пользователя могут составить его "почерк"? Это могут быть:

скорость ввода символов на клавиатуре;длительность пауз между порциями символов;длина порций символов;

частота использования клавиши delete;

частота выполнения специфических операций, связанных с деятельностью пользователя (обращение к механизмам таблиц, формул, рисунков, вставок и пр.); частота выдачи запросов к базе данных;средняя длительность сеанса связи и т.д.


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

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

Сервер (или специальный процессор контроля) с высоким приоритетом должен решать основные задачи контроля доступа к БД, связанные с системой паролей и др. На этом уровне обрабатывается определенная, точно заданная информация, не допускающая приблизительной оценки. Однако на уровне фоновой задачи он постоянно должен анализировать ту статистику на основе сложившейся ситуации, которая формируется динамически, при работе многих пользователей.

Пусть Y = {y1, …, ym} – множество параметров "образа" пользователя. Эти параметры описываются величинами различных типов и структуры: Boolean, integer, real, array и т.д.

Перейдем к использованию понятия "событие" следующим образом.

Величины типа Boolean определяют высказывание о наступлении или отсутствии события.

Переменные типа real требуют разбиения всего диапазона их изменения на отрезки. Тогда принадлежность величины этой переменной некоторому отрезку является событием.

Если тип переменной – integer, то каждое возможное значение этой переменной является событием. Однако при большом диапазоне изменения, как и в предыдущем случае, этот диапазон может быть разбит на отрезки.

Если переменная задана массивом (например, множеством допущенных к работе пользователей), то ее равенство элементу множества является событием и т.д.

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



Так формируется факторное пространство событий для множества параметров Y, определяющих "образ" пользователя. Точки этого пространства определяют ситуации.

Теперь необходимо провести тестирование множества пользователей P = {P1, …, Pp} , а также сообщить им персонально дополнительные контрольные действия. Так, каждому пользователю ставится в соответствие та "правильная", эталонная ситуация, соответствующая его "почерку", секретной сигнализации и ограничениям доступа.

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


Рис. 16.10.  Идентификация и аутентификация

Тогда нейронная сеть строится следующим образом.

Создаются нейроны-рецепторы, которые соответствуют каждому возможному событию, связанному с параметром y1

. Добавляются нейроны-рецепторы, которые соответствуют каждому событию, связанному с параметром y2, и т.д. Так создается рецепторный слой нейронной сети.

Для построения единственного (выходного) слоя, необходимо исследовать влияние каждого фактора на процесс принятия решений и выяснить, какие решения должны приниматься по результатам работы нейронной сети. Большая часть решений выносится за рамки нейронной сети и возлагается на дополнительный анализ.

Например, что делать, если в результате проверки выяснилось, что за терминалом № 5 работает не м-р Иванов, а м-р Петров?

По-видимому, целесообразно ограничить нейронную сеть лишь решением о том, на чей "почерк" более всего похож "почерк", реализуемый на данном терминале.

Тогда количество нейронов выходного слоя равно количеству пользователей, а каждый нейрон закрепляется за одним из них.

С каждым нейроном пользователя связываются те нейроны-рецепторы, которые участвуют в эталонной ситуации, характеризующей правильную работу этого пользователя.


Таким образом, нейронная сеть оказывается совершенной.

Теперь предположим, что сервер или специально выделенный компьютер периодически, по статистически накопленной информации, производит проверку каждого терминала, за которыми работают "клиенты". При этом известно, кто из множества допущенных лиц должен работать за проверяемым терминалом.

На основе статистических данных формируется исходная информация на рецепторном слое. Ее смысл – достоверность (вероятность) каждого предусмотренного события.

Например, пусть нейроны-рецепторы y11, …, y1S

закреплены за диапазонами времени между моментами использования клавиши delete. А именно, y11

закреплен за диапазоном 0–5 [мин.], y12

закреплен за диапазоном 5–10 [мин.], y13

– за диапазоном 10–15 [мин.] и т.д. Пусть на основе текущего анализа частоты обращения к клавише delete найдена вероятность реального попадания пользователя в соответствующие диапазоны: Р11 = 0,2 , Р12 = 0,7 , Р13

= 0,1 . Тогда величина fy11

возбуждения нейрона y11

полагается равной Р11

= 0,2 , аналогично fy12 = P12 = 0,7 , fy13 = P13 = 0,1 .

После формирования значений величин возбуждения нейронов рецепторного слоя с помощью заданной передаточной функции и в соответствии со связями рассчитываются значения возбуждения нейронов выходного слоя. Если более других возбудился нейрон, соответствующий правильно работающему пользователю, сервер (в режиме фоновой задачи) приступает к проверке следующего терминала. Если более всех возбудился нейрон, соответствующий другому пользователю из числа допущенных, или возбуждение всех нейронов не преодолело порог (что свидетельствует о несанкционированном доступе), формируется сигнал тревоги.

Сигнал тревоги может подаваться не только тогда, когда вместо вас работает кто-то другой, но и тогда, когда ваше моральное состояние порождает серьезное отклонение от запечатленного образа. При этом, как говорилось выше, целесообразно использовать и тайные сигналы, наподобие точек в условном месте, сигналы, подобные завитушкам ответственного каллиграфа и т.д.Возможно периодическое случайное анкетирование на основе единственного вопроса, требующее ответа "да – нет" и способствующее утверждению сложившегося образа.

Возникает вопрос: а при чем здесь нейросеть? Ведь все эти проверки можно делать старым, "традиционным" способом. И здесь мы еще яснее осознаем, что нейросеть – это средство параллельного выполнения сложных логических предикатов! Параллельного – значит, быстрого! А современный сервер – это многопроцессорная вычислительная система, которая успешно может выполнять роль нейрокомпьютера. Кроме того, осуществляя ассоциативное мышление, по принципу "на что это похоже", мы допускаем (конечно, в каких-то пределах) неполные и неточные данные, заставляющие нас по крайней мере встревожиться и послать администратора или даже охрану с проверкой.


Интеллектуальное отображение


Затронув вопрос о перспективных разработках в предыдущем разделе, следует остановиться на проблеме интеллектуального отображения, основанного на построении реагирующих объектов [34, 35].

Управление и контроль состояния современных систем, таких как транспортные, энергетические, социальные, столь сложны, трудоемки и мало обозримы, что требуют начальной грубой, приблизительной, но оперативной оценки. Целью такой оценки является вывод о правильности в целом работы системы или об ее отказе, начальная информация по диагностике, предупреждение о возможной опасной ситуации и т.д. Взгляд оператора на поведение реагирующего объекта – на монитор компьютера или на объект натурного моделирования – может быть достаточным для дальнейшего спокойствия или принятия срочных действий.

Реагирование объекта осуществляется на основе логической нейронной сети, иллюстрации к которой приведены в разделе 4. Простейшее решение при этом может заключаться в анимации, управляемой значением возбуждения рецепторов. Для такой анимации создается база данных – система ключевых кадров, отображающих основные результирующие реакции объекта. Ключевой кадр, который должен быть показан, выбирается динамически с помощью нейронной сети в реальном времени по состоянию контролируемой системы. Система анимации формирует промежуточные кадры для обеспечения плавного восприятия при переходе объекта от текущего состояния в требуемое.

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


Ключевые кадры



Из истории вычислительной техники


В данном разделе представлены рисунки, использованные (без указания авторства) в 2006 году в международном студенческом конкурсе на лучший сайт по истории вычислительной техники [36]. Конкурс проводился (и, по-видимому, будет проводиться ежегодно) в рамках структуры известной международной организации IEEE (Institute of Electrical and Electronics Engineers). Куратор команды МАТИ выбрал тему из истории счет – тех самых колесиков в раме, на которых мы в детстве пытались кататься с горки.

Сайт www.schoty.ru занял первое место (в мире!) и завоевал приз, по общему признанию, благодаря странице юмора, сделавшей решение неординарным.

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

Рисунки не только демонстрируют компьютерную технологию редактирования. Они, скорее демонстрируют те высокие требования, которые сегодня предъявляются к Интернет-изданиям по обеспечению полноты и доходчивости образного восприятия, даже не без развлекательных элементов. Об этом можно судить по тому, что данный сайт предлагается как образец для следующего аналогичного конкурса.

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

Рисунок "Герберт Аврилакский", по содержанию более подходящий к данному разделу, дополняет булгаковедческие исследования [35], объясняя появление Воланда в Москве.


Аудит


Боллид


На верфи


Дорожка


Каток


Охота


Калькулятор


Шторм


Гуманитарная миссия


Десант


Музыканты


Врата рая


Герберт Аврилакский (папа Сильвестр II)



Юмористический рисунок в основе методологии литературных исследований


Посильно способствуя литературным исследованиям [32, 33, 34] накануне 111-летия М.А. Булгакова, автор представил несколько шаржированных рисунков, подвергшихся компьютерному редактированию. Некоторые "заказные" рисунки (для налогового инспектора: бесплатно!) представлены здесь.

Внимательное рассмотрение рисунка "Голгофа" иллюстрирует долгие поиски образов Иешуа и М. Булгакова: где-то видны элементы несовпадения фактуры волос и др.

Рисунок "Арцибальд" иллюстрирует смелое предположение исследователя о том, что образ Арцибальда Арцибальдовича навеян М. Булгакову такими "рамочными" образами, как И. Сталин и пират Сильвер Р.Л. Стивенсона ("Остров Сокровищ").

Развитие литературоведческих поисков привело к раскрытию фактов эксплуатации образов М. Булгакова. Так, не менее смелое, чем выше, предположение было высказано (и подкреплено рисунком автора) относительно известного столпа социалистического реализма. Дескать, он в героях "эпохального" романа воплотил аналог всех центральных героев романа "Мастер и Маргарита".

Последний "заказной", но пока не опубликованный рисунок этой серии иллюстрирует тот факт, что Н.К. Крупская читала умирающему В.И. Ленину известный рассказ Д. Лондона, а И.В. Сталин, якобы, играл свою, известную нам роль.


Голгофа


Композиция


Маргарита


Арцибальд


Чего же ты хочешь?


Любовь к жизни



Нейронные сети – аппарат искусственного интеллекта


В данном разделе представлены рисунки – продукт непосредственной научной и преподавательской деятельности автора [11, 37, 38]. Несмотря на юмористический характер представленных рисунков, они исключительно серьезны. Как говорилось ранее, их назначение – увести читателя с пути мистического мышления, объяснить с помощью шутки принцип работы того, к чему мы боимся прикасаться, сделать это доступным воплощению.

Многие рисунки, являясь иллюстративным материалом, содержат в явном виде схемы и объяснение. Однако все рисунки будят фантазию созидания, добиваются впечатления о простоте воплощения тех принципов, на основе которых живое существо считается живым. И не следует задумываться глубже! Это опасно...

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

Рисунок "Бабушка" сопровождает рассказ о том, как с помощью нейронной сети – аналогичной мозгу, можно создать памятку пожилому человеку (систему принятия решений), определяющую его действия во все времена дня и года.

Ряд рисунков этой серии, так или иначе, служат проекту создания ПАРКА ФАНТАСМАГОРИЙ на основе уже научно и технологически доступного нейросетевого "живого" моделирования.

Представьте себе парк, подобный Дисней-ленду, в который вы заходите – самостоятельно купив билет или под руководством гида. И вдруг!

… Выползают из-за трепещущих кустов и камней монстры - крокодилы, вздымаются головы ящеров и тянутся к вам. Лохматый неандерталец ладит каменное орудие, привязанное жилой к сучковатой палке. Подымается на свои курьи лапы избушка. Гигантской головой оживает скала, покрытая нежными незабудками. Деревья и кусты трясут ветками - радуясь или возмущаясь.
Фонтаны воды преследуют вас… Ваше замешательство, паническое движение вызывают ответную реакцию: "население" парка смеется, сердится, радуется, угрожает. Явно проявляются симпатии и антипатии…

До последующих усовершенствований, - первоначально, должна быть предусмотрена реакция каждого объекта только на преобладающий цвет в элементарном сегменте обзора. Например, красный цвет должен приводить к запуску комплекса программ обращения в ярость и к повторному обзору строки, чтобы усилить эту ярость при последующем раздражении.

(- Женщина в красной кофте! Отойдите от крокодила немедленно!..)

Желтый цвет может вызывать кокетство и эротическое возбуждение. Зеленый - умиротворение. Коричневый - ритмичный шаг и салютование головой. Голубой - благочинное умиление с возведенными очами и т.д.

Согласитесь, что это бизнес, достойный перспективных разработок.


Бабушка


Парк фантасмагорий


Реакция на угрозу


Реакция на ласку


Способ разглядывания 1


Способ разглядывания 2



Фонтаны воды преследуют вас… Ваше замешательство, паническое движение вызывают ответную реакцию: "население" парка смеется, сердится, радуется, угрожает. Явно проявляются симпатии и антипатии…

До последующих усовершенствований, - первоначально, должна быть предусмотрена реакция каждого объекта только на преобладающий цвет в элементарном сегменте обзора. Например, красный цвет должен приводить к запуску комплекса программ обращения в ярость и к повторному обзору строки, чтобы усилить эту ярость при последующем раздражении.

(- Женщина в красной кофте! Отойдите от крокодила немедленно!..)

Желтый цвет может вызывать кокетство и эротическое возбуждение. Зеленый - умиротворение. Коричневый - ритмичный шаг и салютование головой. Голубой - благочинное умиление с возведенными очами и т.д.

Согласитесь, что это бизнес, достойный перспективных разработок.


Бабушка


Парк фантасмагорий


Реакция на угрозу


Реакция на ласку


Способ разглядывания 1


Способ разглядывания 2


Способ разглядывания 3


Узнавание


Нейродегустатор


Предмет исследований


Запомнила?


Намек на обучение


Железнодорожная рулетка


Служба безопасности


Компьютерный человечек КОМПИ


Профанация


Защита информации


Технология компьютерного рисунка


Компьютерные технологии все увереннее проникают в сферу искусства. Мультимедиа породило шедевры, поражающее впечатление и создающие ощущение колоссальных возможностей в будущем. Компьютерные макеты и декорации, спецэффекты и анимация – все это, по-видимому, лишь начало бурного вторжения Компьютера в Искусство. (Утверждается термин Computer Art.) А что обещает скорое нашествие средств и методов искусственного интеллекта?!

И уж тем более, приверженцы точных наук, для которых компьютер – основное орудие и объект труда, обладающие хотя бы зачатками пространственного воображения, используют компьютерные технологии для самовыражения и образной поддержки своих исследований.

Какова же техника современного рисунка на основе применения компьютерных технологий?

В основе рисунка лежит акварель. Акварель – не в смысле присущего ей тонкого, элегантного, воздушного, светлого воплощения. Речь идет, скорее об "оформительском" варианте, грубо ограничивающем использование палитры, но ни в коем случае не исключающем ее.

Можно выразиться строго: начальное приближение рисунка выполняется с помощью карандаша и школьных акварельных красок.

Однако уже на этом уровне "художник" вправе выразить свою "индивидуальность". Например, предпочтение автора, направленное на юмористический стиль – стиль карикатуры, уделяется четкому контурному выделению объектов рисунка и даже их штриховке – преимущественно с помощью черной шариковой ручки. Таким образом, необходимое оттенение может выполняться как цветом, так и штрихом.

Затем рисунок сканируется для дальнейшего редактирования и развития. Автор убедился в достаточности такой системы, сопровождающей любую современную версию операционной системы Windows, как Paintbrush. Его привлекательность – в доступности, простоте и в отсутствии необходимости длительного предварительного изучения. Тем более, что речь идет не о создании художественных объектов, а только о их редактировании.

Основной недостаток Paintbrush заключается в том, что он использует растровые файловые форматы JPEG и BMP.
Это главным образом приводит к тому, что линии, отличные от вертикальных и горизонтальных, имеют ярко различимую ступенчатую структуру.



Говоря о редактировании, следует вернуться на уровень рисования. Еще на этом уровне, для сокращения трудоемкости, повышения точности воспроизведения и уменьшения степени зависимости от возможностей средств редактирования, может быть предусмотрена компоновка рисунка на основе его фрагментов. При этом могут быть использованы свойства симметрии, многократной повторяемости элементов, вариантности, масштабируемости.



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

Рассмотрим некоторые "Библейские" исследования (и это уже не юмор).

Например, Храм Иерусалимский (Ирода) "собран" на основе следующих элементов:

золотой капитель коринфского ордера (найденный на Храмовой Горе, возможно, - от храма Юпитера, воздвигнутого позже) для золотой колонны;этот же капитель, "растянутый" для внешней мраморной колонны;собственно колонна, породившая золотой и мраморный варианты;повторяющийся фрагмент обрамления входа золотой лозой;фрагмент гроздей винограда над входом;фрагмент верхней плиты с орнаментом;херувим и фрагмент центральной пальмы для верхней плиты;шпиц в единственном экземпляре;рисунок половины Храма без приведенных выше элементов, ограниченный осью симметрии, на фоне галереи, а также с учетом жертвенника спереди.


Храм



Оно коснулось лишь самого Храмового комплекса, где требовалось миниатюрное исполнение деталей. Чтобы исключить неточности в горизонтальной ориентации, несовпадения размеров и окраски одних и тех же деталей рисунка, например, колоннад и окон, целесообразно использовать возможность выделения фрагментов и их переноса – размножения. Такой перенос исключает разнобой в изображении, вносит элемент регулярности и соблюдения основных пропорций и направлений. Внимательно вглядевшись в рисунок, можно выделить основные фрагменты, его образующие. Однако основная часть рисунка полностью сохраняет изначальный замысел.

Говоря об истории этого рисунка, следует отметить, что первоначально Храмовое здание было другим. Уточнение представления об этом здании с малой трудоемкостью привело к замене соответствующего фрагмента.

В более значительной степени подобную замену иллюстрируют рисунки, посвященные захвату Храма римлянами. На первом из них фигурирует раннее представление о здании Храма, на втором – окончательное. Рисунок изменен с помощью компьютерной технологии все в том же Paintbrush.


Вид на Храмовую Гору


Битва за Храм (вариант)


Битва за Храм

Рисунок "Святая Святых" выполнен на основе следующей "калькуляции":

тело херувима на пьедестале – одно;крыло херувима – одно;Ковчег Завета на постаменте – половина;общая декорация (задник, ступени, пол) – половина.

Еще раз следует подчеркнуть, что при редактировании всех рисунков активно используется возможность переноса, отображения, наклона и масштабирования выделенных фрагментов для создания композиционной взвешенности и законченности. При этом образующиеся в результате сдвига пустые пространства заполняются также подходящими полями рисунка.


Святая Святых

Следует остановиться и на возможности комбинированной компоновки рисунка на основе фрагментов различного происхождения. Например, в композиции Святого Места (внутреннего Храмового Двора) использована фотография выполненного автором макета Храмового здания, врезанная в рисунок.Качество исполнения не следует считать удачным (слишком разняться цвета, хотя в здании преобладает золото), но технология вполне иллюстрируется. Это позволяет задуматься о создании соответствующих декораций.


Святое Место

И, наконец, последний рисунок серии демонстрирует полное отсутствие необходимости компьютерного редактирования.


Сражение

Если речь идет о рисунке юмористическом, диктующем стиль исполнения, то возможностей Paintbrush иногда бывает вполне достаточно, как показано на следующем рисунке. Он выполнен исключительно с помощью "мыши", по живому окну монитора компьютера.


Вождь


Раки любят, чтобы их варили


Раки любят, чтобы их варили живыми.Л.Н. Толстой. Дневники. Ноябрь, 1897.Приемы естественных наук, основывающие свои выводы на фактах, самые неудачные приемы. Фактов нет. Есть наше восприятие их. И потому научен только тот прием, который говорит о восприятии, о впечатлениях.Там же. Май, 1903.
Научная и, в особенности, преподавательская деятельность убеждают в важности средств адекватного восприятия материала, в важности создания впечатлений и ассоциаций, способствующих пониманию и запоминанию. Это – задача современного представления иллюстративного материала, основанного на применении информационных технологий изобразительных средств, средств мультимедиа и даже кино. Современный учебный курс немыслим, и это зафиксировано в требованиях, без средств мультимедийного воплощения. Лекции читаются и демонстрируются с помощью мультимедийных дисков. Подготовка средств дистанционного обучения через Интернет требует комплексного применения всех возможных средств видео-воздействия. Условия применения, несомненно, предъявляют требования и ставят задачи по развитию изобразительных средств на основе информационных технологий.
Любая идея применения таких средств начинается с рисунка. С помощью рисунка вырабатывается образ, рисунок подсказывает сюжет, технику его воплощения, да и весь сценарий доходчивого изложения материала. Таким образом, рисунок, сам являясь продуктом методологического подхода, развивает этот подход, выдвигая дальнейшие задачи. Здесь, конечно, многое зависит от ученого – преподавателя, от того, насколько он смог развить в себе образное, ассоциативное мышление, каким примерам он стремится следовать.
Творческая жизнь ученого, ученого результативного, оставляющего след и память, не страдает однообразием и узостью интересов. Чаще такие ученые – увлекающиеся люди, обладающие не просто "хобби", а имеющие вторую, а то и третью профессию. Можно перебрать много великих ученых, одновременно, - писателей, музыкантов, художников. Что сказать о великом А.П. Бородине? Бесконечно восхищает Де-Сент-Экзюпери, воплотивший две "противоположные" профессии: утонченный писатель-философ – за штурвалом самолета! Ведь и в той, и в другой профессии он стал первопроходцем. (Кстати: можно ли представить себе "Маленького принца" без "непрофессиональных" рисунков автора?)


Но оттолкнемся от уровня школьного сочинения (а то еще вынесет на художника Адольфа Шикльгрубера), и подчеркнем следующую мысль: отдельные направления деятельности ученого не служат лишь благотворному переключению его внимания для снятия нагрузки и отдохновения, подобно пиликанью Шерлока Холмса на скрипочке. Для этого достаточно просто лечь в постель, - спать. Нет: все его увлечения, включая основное, все направления его деятельности питают друг друга, а в значительной степени - одно превалирующее направление. В конечном счете, они служат единой цели. Поддерживают ее с разных сторон. Разнообразным подходом они способствуют решению тех основных задач, которым, по общественному признанию, посвятил себя ученый. Тогда его усилия в познании нового возрастают многократно. Так что не напрасно Шерлок Холмс пиликает на скрипочке в минуты напряженного раздумья, и его автор прекрасно это понимал.
Бытует представление о приверженцах точных наук: дескать, сухие, заформализованные люди – психические уроды. Слагают анекдоты о их рассеянности, непрактичной зауми. Очень часто это относится к тем "ученым", что играют роль таковых.
Однако "царица" точных наук, математика, справедливо признана естественной наукой. Да, она самая естественная из всех естественных наук, ибо отображает все реалии жизни – как прошлой, так и будущей, и без явственного представления жизненных аналогий она действительно мертва! И продуктивно работать в области, где основой является математика, может лишь человек с богатым воображением.
Все математические объекты имеют реальные аналогии.
...И роятся в голове исследователя странные геометрические фигуры, зацепляясь или отталкиваясь, шумя, бурля и подскакивая... Вот уж фантастические образы теснят и высовываются средь них... Растет напряжение мысли... Широко раскрывается глаз куда-то в сторону... Уже нет слов, только видение подменило вашу цель, вашу задачу... Вы напрягаетесь, вы подталкиваете его, вы торопите его сложиться так, как нужно, чтобы получить ответ...


Фу, черт, - гоните вы наваждение, понимая грань возможностей нормального психического здоровья.
Но надо, надо... И основная жизнеутверждающая догадка осеняет вас: "Без здорового чувства юмора здесь работать опасно. Если все эти движущиеся модели, эти связанные веревками бруски, эти монстры и крокодилы с зачатками мышления, эти летающие болванки будут еще и смешными, возможно, "крыша поедет" не скоро".
Да здравствует спасительное чувство юмора – "вечно живое и всепобеждающее учение"!..
Подчеркнем еще раз, что рисунок, в особенности - юмористический, несомненно, передает динамику, но он статичен. Однако статический рисунок лежит в начале технологической цепочки, определяя свое дальнейшее развитие на основе применения средств анимации и мультимедиа, пробуждая фантазии по созданию кинофильмов – от научно-популярных до игровых. Пройдя такое развитие, рисунок может вернуться на свой исходный рубеж, и на новом уровне стать основой мультимедийных средств иллюстративной и развлекательной поддержки учебного процесса.
Представленные ниже рисунки, использованные уже не только автором в учебном процессе, в книгах и статьях, сгруппированы по темам с необходимыми объяснениями.

в статье, носят постановочный характер.


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