Московский государственный университет путей сообщения
Опубликован: 12.09.2011 | Доступ: свободный | Студентов: 3880 / 394 | Оценка: 4.67 / 4.33 | Длительность: 18:55:00
Специальности: Программист
Лекция 12:

Основы трехмерного "живого" моделирования

< Лекция 11 || Лекция 12: 1234 || Лекция 13 >

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

увеличить изображение
Рис. 12.3. Нейросеть для "живого" моделирования

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

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

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

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

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

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

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

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

V_{Вых}=\xi \left(\sum \limits_v \omega_v V_v - h \right)
\left(\xi (s)= \begin{cases}
s,{при\ s \ge 0}\\
0,{при\ s < 0}
\end{cases} \right)

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

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

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

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

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

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

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

< Лекция 11 || Лекция 12: 1234 || Лекция 13 >
Кирилл Артамонов
Кирилл Артамонов

"Тогда как задать возбуждение рецепторов, если инспектор точно установил, что скорость автомобиля при наезде на пешехода была равна 114 км/час?
По-видимому, он рассуждает на основе близости скорости к границам указанного интервала: "Достоверность того, что скорость автомобиля составляет 100 км/час, я найду как (114 – 100):(120 – 100), а достоверность того, что скорость автомобиля составляет 120 км/час, я найду как (120 – 114):(120 – 100). Следует обратить внимание на то, что сумма найденных достоверностей равна единице."

Вопрос по расчёту скорости и сумме достоверности: этот математический (приведенный выше в виде контекста из материала лекции 1, страницы 3) метод справедлив к скоростным показателям выходящим за рамки диапазона 100-120. 
То есть, практически применяв к расчёту, скорости из диапазона 114-155, к диапазону 100-120, получал в результате суммирования достоверностей единицу.
Это похоже на то, как я видимые разные скоростные показатели своим рецептором, буду воспринимать линейно с помощью одного диапазона, так как он универсален. 
Правильно ли это ? 
И как манипулировать данными показателями, если есть универсальный диапазон, по результату выводящий в сумме постоянно единицу на разных скоростных показателях стремящегося.

Владислав Гладышев
Владислав Гладышев

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