Смекни!
smekni.com

1. 1 "Фон-Неймановские" и "не-Фон-Неймановские" архитектуры (стр. 8 из 10)

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

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

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

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

Итак, пусть исходная ситуация характеризуется вектором X = {x1, ..., xm}. По значению X, т.е. по его компонентам, принимается решение Y, также представляющее собой вектор, Y = {y1, ..., yn}.

(Значения X и Y могут определяться целыми и вещественными, булевыми. Изначально они могут иметь нечисловую природу: "темнее — светлее", "правее — левее", "ласковее — суровее" и т.д. Мы не будем рассматривать проблему численной оценки качественных или эмоциональных категорий.)

Предположим, для любых двух значений X1 и X2, а также Y1 и Y2 определено отношение xi(1)

xi(2) (или наоборот), yj(1)
yj(2) (или наоборот).

Структура ассоциативной памяти и общий вид ее обработки показаны на рисунке 4.2.1.

Рис. 4.2.1 Структура и обработка ассоциативной памяти

Пусть поступила входная ситуация X, для которой необходимо найти решение Y. В АП находятся два вектора X1 и X2, минимально отличающиеся по всем координатам от вектора X. для Для этих векторов там же записаны векторы решения Y1 и Y2 соответственно. Однако если для компоненты xi выполняется условие xi

xi(1)(xi
xi(1)), то должно выполняться условие xi
xi(2)(xi
xi(2)), i = 1, ..., m. Таким образом, отыскивается "вилка", которой принадлежит входная ситуация. Тогда, опираясь на известные решения на границах этой вилки, необходимо выдать промежуточное решение для данной ситуации. Это можно сделать методом той же обобщенной интерполяции

r(X,X2) и r(X1,X2) (находится аналогично) — расстояния между векторами X и X2, а также X1 и X2.

Если известно, что точность Y достаточна, принципиально возможно дополнение АП новой строкой

т.е. информацией о новом полученном опыте.

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

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

Рис. 4.2.2 Самообучающаяся система управления

4.3 ВС Connection Machine

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

К такому опыту можно отнести семейство ВС, разработанное фирмой Thinking Machine. Оно является единственной крупной коммерческой реализацией идей ОВС. СМ-1 выпущена в 1986 г. Через год была выпущена СМ-2 с удвоенной производительностью в 2,5 млрд.оп./с. О ней следует говорить в связи с попытками воспроизвести ее в нашей стране на архитектурном уровне.

СМ-2 комплектуется (рис. 4.3.1) из блоков параллельной обработки по 16 К узловых одноразрядных процессоров (элементарных процессоров — ЭП) каждый. В комплекс входят до 8 фронтальных ЭВМ, на которых реализуется вычислительный процесс. (Следовательно, как в ПС-2000, собственно блоки СМ образуют интеллектуальный терминал для выполнения операций по заявкам фронтальных (там — мониторной) ЭВМ.)

Рис. 4.3.1 Схема масспроцессорной системы Connection Machine

Узловой (матричный) коммутатор обеспечивает связь фронтальных ЭВМ с секвенсорами блоков параллельной обработки в соответствии с вычислительным процессом и заявками пользовательских задач. Подсистема ввода-вывода связывает блоки параллельной обработки с периферийными устройствами массовой памяти и графическими дисплеями.

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

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

Память (RAM — прямоадресуемая, с произвольным доступом) распределенная. Каждый ЭП имеет 64 Кбит. Т.е. общий объем памяти — 512 Мбайт (в 64 К-процессорном варианте). Ассемблер обеспечивает богатый набор от простых арифметических и логических операций до высокоуровневых APL-подобных операций (APL — параллельный PL, ЯВУ). Реализован микропрограммно в секвенсорах, и, как говорилось выше, этим обеспечивается преобразование потока высокоуровневых команд и аргументов на языке Paris в последовательность элементарных операций обрабатывающих процессоров.

4.4 Нейронные сети и нейрокомпьютеры

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

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

Предварительным знакомством с системами ИИ можно считать рассмотрение ассоциативных ВС. Характерно то, что исследование и воспроизводство нейросетей первоначально проводились в рамках решения задачи построения ассоциативной памяти в совокупности с операциями ее заполнения, ведения и использования.

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

Фрагмент нейросети представлен на рис. 4.4.1

Рис. 4.4.1 Фрагмент нейронной сети

Либо каждый нейрон управляем извне, либо сети строятся по принципу самоуправления, используя обратные связи. А именно, можно регулировать значения весов синапсических связей {wi} и значения порогов hi. Функции f бывают различны, но просты по объему вычислений.