Пупков К.А., Коньков В.Г. Интеллектуальные системы (1-е изд., 2001) (1245264), страница 23
Текст из файла (страница 23)
Число нейроновв скрытом слое и число скрытых слоев определяется прикладной задачей, ночаще всего подбирается методом проб и ошибок. Чем сложнее связь междувходными и выходными переменными, тем большее число нейронов в скрытомслое необходимо предусмотреть.Обзор обучения. Целью обучения сети является подстройка ее весовтаким образом, чтобы приложения некоторого множества входных векторовприводило к требуемому множеству выходов. При обучении предполагается ,что каждому вектору входа соответствует целевой вектор выхода. Передначалом обучения весам должны быть присвоены небольшие начальныезначения, выбранные случайным образом.Обучение сети обратного распространения требует выполненияследующих действий:1. Выбрать очередную обучающую пару из обучающего множества.
податьвходной вектор на вход сети.2. Вычислить выход сети.3. Вычислить разность между выходом сети и требуемым выходом (целевымвектором обучающей пары).4. Подкорректировать веса сети так, чтобы минимизировать ошибку.5. Повторять шаги 1-4 для каждого вектора обучающего множества до тех пор,пока ошибка на всем множестве не достигнет приемлемого уровня.Подробное описание процедуры обратного распространения приведено в [62].прогнозирование качества сварки с использованием предварительно обученнойнейросетевой модели по входному массиву данных о параметрах сборки стыка,записанных в протокольную часть реляционной базы данных - задачаимитационного моделирования.Применение нейросетей в системах управления.
Наиболее типичнымприкладным применением нейронных сетей является распознавание образов,т.е. анализ визуальных изображений, речи и других сигналов. Помимо этого,нейронные сети могут быть использованы для моделирования и управленияразличными систетемами и процессами. Функциональная схема аппаратнопрограммного комплекса АСУ ТП приведена на рис.34Программный модуль NEURAL NETWORK CONTROLS для разработкисистем управления. Программный модуль NEURAL NETWORK CONTROLSSOFTWARE разработан исследовательским центром Лэнгли (NASA).Программный модуль, получивший название NNET, предназначен дляпроектирования различных систем управления, например систем управленияполетом или АСУ ТП.
Пакет представляет собой платформу для разработкинейроконтроллеров. NNET основан на методе обратного распространения исостоит из четырех основных элементов: структурного представлениянейросети (архитектура нейросети), карты входов (определяет тип входовнейросети), блоков управления данными (определяют интерфейс междунейронной сетью и объектом) и средств общего назначения (средства генерациисигналов, дискретные фильтры, средства отображения информации). NNETСистема управления технологическим процессом сварки на основенейронной сети. В МГТУ им.Н.Э.Баумана ведется разработка АСУ ТП сварки сиспользованием нейросетевых технологий для решения следующих задач [60]:управление формированием шва в процессе сварки по обученной нейросетевоймодели, включенной в контур системы управления - управление по эталонноймодели.управление формированием шва по настраиваемой модели с идентификатором вцепи обратной связи - управление по адаптивной модели.В структуру аппаратно-программного комплекса для решения задачипрогнозирования качества и управления сварочными процессами входитмалогабаритный лазерный профилометр, формирующий структурированныйпоперечный луч, перемещаемый по периметру стыка на изделии.
Параметрыстыка считываются телекамерой и после предварительной обработкизаписываются в базу данных (БД) компьютера.Нейросеть построена по “feed forward” архитектуре и обучена поалгоритму “backpropagation”. Обученная нейросеть в структуре системыуправления рассматривается как “нейроконтроллер” с компактной базойданных, в котором установлены “скрытые” связи между входнымипеременными (параметры режима сварки, сборки и положения стыка) иуправляющими воздействиями (сварочный ток, скорости сварки и подачиприсадочной проволоки), компенсирующими отклонения показателей качествапри случайных возмущениях по входным параметрам.77использовался вооруженными силами США в системах управления вертолетамии в программе Space-Suttle.Нейросетевые технологии в настоящее время находятся на начальнойстадии развития.
Успешное продолжение работ в этой области связано сразработкой новых методов построения и обучения нейронных сетей.Несомненно, экспертные системы и нейронные сети позволяют достичьбольших результатов, чем традиционные вычислительные средства, но лишь внекоторых областях. Для задач, в которых объект или процесс представленчеткой математической моделью, традиционные методы несомненнооказываются предпочтительнее. Тем не менее, нейросетевые технологиизначительно расширяют возможности создания интеллектуальных системуправления.Рис. 34.78ГЛАВА III. ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВАИ РЕАЛИЗАЦИЯ ИНТЕЛЛЕКТУАЛЬНЫХ СИСТЕМ3.1.
Отображение интеллектуальной системы управления на архитектурумногопроцессорной вычислительной сети.Интеллектуальные системы управления (ИСУ) с разветвленнойструктурой характеризуются большим объемом перерабатываемой информациии высокой сложностью используемых алгоритмов обработки информации ипринятия решений. Наряду с этим предъявляются жесткие требования кнадежности ИСУ. Указанные характеристики ИСУ могут быть обеспеченытолько за счет использования многопроцессорных вычислительных сетей(МВС), например, транспьютерных систем [63].В данной статье рассматривается задача оптимального отображенияструктуры ИСУ на архитектуру МВС [64,65], заключающаяся в такомраспределении программ, реализующих подсистемы ИСУ, по процессорамМВС, которое минимизирует заданный критерий эффективности отображения.Широко известным приближенным методом решения задачотображения является метод балансировки загрузки (см., например, [66,67]).При этом программы назначают процессорам таким образом, чтобывычислительная загрузка последних была максимально одинаковой.Предлагается формализация задачи оптимального отображения структуры ИСУна архитектуру МВС в виде задачи глобальной балансировки загрузки [68].Подход, основанный на математическом программировании, позволяет свестизадачу балансировки к задаче булева линейного программирования.Основной целью работы является исследование эффективности методарешения задачи оптимального отображения структуры ИСУ на архитектуруМВС, в котором указанная задача булева линейного программированиярешается приближенно методом релаксации [69].
Идея заключается в решенииэтой задачи как задачи нецелочисленного линейного программирования(симплекс-методом) и в последующем булевом округлении результата.Целесообразность такого подхода основана на том, что задача булева линейногопрограммирования является NP - сложной, а задача нецелочисленноголинейного программирования – Р - сложной [69]. Заметим, что симплекс - методв большинстве случаев практически также обеспечивает полиномиальное времярешения.Постановка задачи. Пусть {Pi , i [1, n ]} - множество подсистем ИСУ;pi - вычислительная сложность (количество арифметических операций)программы, реализующейподсистему Pi; C {ci , j , ci , i 0, i , j [1, n ]} -коммуникационная матрица ИСУ, где ci,j - количество информации, в байтах,которое подсистема Pi передает подсистеме Pj.Пусть {Q , [1, N ]} - множество процессоров МВС; qv производительностьпроцессораD {d , , d , 0, , [1, N ]}Q;-коммуникационная матрица МВС, где d, - минимальное время передачи байтаданных от процессора Q процессору Q.Отображение подсистем ИСУ на процессоры МВС зададимотображающей матрицей X {x , i , [1, N ], i [1, n ]} X размером N x n, где1, если подсистема Pi выполняется на процессоре Q ,xv , i 0 в противном случае;X - множество допустимых отображений.Имеют место очевидные ограничения:x ,1 x , 2 K x , n n, x 1, i x 2, i K x N , i 1.(147)Критерий эффективности построим на основе вычислительной икоммуникационной загрузок процессоров.
Вычислительная загрузка WL (WorkLoad) процессора {Q , [1, N ]} определяется суммарным временемвыполнения назначенных ему программnWL q x , i pi .(148)i 1Коммуникационная загрузка CL (Communication Load) процессора Q это суммарное время обменов, которые должны выполнить программы,назначенные этому процессоруNn nCL ( X ) x , j x , i d , ci , j .(149)В качестве критерия эффективности отображениямаксимальную из суммарных загрузок процессоров МВСE ( X ) max E ( X ) max (WL ( X ) CL ( X ))используем 1 i 1 j 1 [1, N ] [1, N ](150)Ставится задача поиска отображающей матрицы X = X*, доставляющейминимум критерию эффективности (150)E* E ( X *) min E ( X )(151)X XЗаметим, что модель (147) - (151) не учитывает коммуникационнуюзагрузку процессоров МВС, обусловленную транзитными обменами;возможные задержки обменов из-за перегрузки каналов обмена;дополнительное время на организацию обменов.
Последнюю составляющую,79которая в транспьютерных сетях, например, может быть весьма существенной,легко учесть, если положитьd , ci, j l , t st ci , j tcom ,~ y0 0, E ( X ) y 0,n2 ~x , ij 1i , j 1где l, -«расстояние» между процессорами Q, Q ; tst - стартовое время; tcom время передачи байта данных между соседними процессорами МВС [66].Точное решение задачи.Входящая в соотношение (151)составляющая (148) линейна, а составляющая (149) нелинейна относительнокомпонентов отображающей матрицы X.
Введем вспомогательную~отображающую N2 x n2 – матрицу X , компоненты которой представляют собой~произведение компонентов матрицы X. С использованием матрицы Xвыражение запишется в видеN n n~CL ( X ) ~x , ij d , ci, j . 1 i 1 j 1~где ~x , ij - элемент матрицы X , находящейся в строке, соответствующей , ,и столбце, соответствующем i, j.Вычислительная загрузка (148) выражается через матрицу~WL ( X ) qв видеn2 ~x , ij ~pij .i , j 1где~p ( p1 0K0 0 p2 0K 0K 0 0K pn )T- (n2 x 1) - вектор.~Таким образом, критерий эффективности согласования E ( X ) оказывается~линейным относительно матрицы X .Стандартным приемом с помощью вспомогательных переменных~ ~ , Y { y0 , y1,K, y N } задача поиска отображающей матрицы X X * ,~доставляющей минимум критерию эффективности E ( X ) (см.