Пупков К.А., Коньков В.Г. Интеллектуальные системы (1-е изд., 2001) (1245264), страница 22
Текст из файла (страница 22)
30. Блок-схема моделирующего комплекса.В состав комплекса входят:j 1,K,6.r rЗдесь V , - векторы относительной скорости и дальности соответственно;r rI1 , I 2 - главные тензоры инерции космических аппаратов; ai , - векторылинейных и угловых ускорений, обусловленных действием всех активныхr rвнешних сил и моментов; 1 , 2 - векторы угловых скоростей; Ai -матрицынаправляющих косинусов; 1 , 2 - матрицы, зависящие от угловых скоростейrr rr r r1, 2 ; r j , r ja , l j - кинематические параметры; K1, K 2 -коэффициенты; C вектор командных сигналов управления на исполнительные сервоприводыдинамического стенда.72Вычислительный алгоритм был запрограммирован на языке ОССАМ-2,отлажен, откомпилирован и реализован на 4-х транспьютерной вычислительнойсреде, причем один из транспьютеров был использован в качествеинтерфейсного адаптера с HOST-компьютером. Такая конфигурация оказаласьдостаточной для обеспечения необходимого быстродействия с учетомтребований синхронизации модельного и реального времени.Результаты моделирования на комплексе показали высокуюэффективность его мультитранспьютерной организации и вычислительнуюэффективность разработанных программных средств.732.5 Нейросетевые технологии интеллектуальных систем.Программные технологии, применяемые в системах управления могутбыть подразделены на традиционные, использующие обычные вычислительныепроцедуры, и подпадающие под определение “систем искусственногоинтеллекта”, или интеллектуальных систем [59].
Типичными примерамипоследних являются экспертные системы и нейронные сети. В общем случаевопрос выбора типа программного обеспечения (ПО) зависит непосредственноот требований предметной области и от стоимости разработки ПОопосредованно. Так, например, система U-2, использующая весь спектрсовременных информационных технологий, позволяет решать достаточнаширокий круг задач управления, но ее применение становится проблематичнымпри решении задач прикладного характера не столько по причине высокойстоимости системы, сколько из-за высоких требований к вычислительнымресурсам. Широко известная система СИАМ, использующая традиционныевычислительные процедуры, к сожалению позволяет решать только задачимоделирования в достаточно узких пределах, что ограничивает возможности еёприменение в основном рамками учебного процесса.
Более мощная системамоделирования MATLAB+SIMULINK дает возможность работать с широкимклассом объектов и методологических подходов, в том числе с использованиемэлементов искусственного интеллекта (NEURAL NETWORK TOOLBOX,FUZZY LOGIC TOOLBOX). Трудности, связанные с сопряжением системы среальными объектами и отдельными программными модулями, ограничиваютобластьприменениясистемызадачамимоделирования.Помимовышеназванных, создан ряд компактных программно-аппаратных комплексов,использующих как традиционные методы, так и элементы искусственногоинтеллекта для решения прикладных задач управления.Однако, существует ряд задач управления, в которых информация об объектеможет быть неполной, неточной или нечеткой, когда применение традиционныхвычислительных алгоритмов становится проблематичным и не дает желаемогорезультата.
Кроме того, связь между входными и выходными параметрамиможет быть настолько сложна, что моделирование в традиционном смыслестановится мало эффективным а порой просто невозможным. В таких ситуацияхжелаемый результат может принести применение нейросетевых технологий.Наибольший эффект использование нейросетевых технологий дает в такихобластях как распознавание образов, анализ данных, моделирование иуправление. Перечень типичных задач, решаемых с помощью нейросетейприведен в таблице.Парадигмы нейросетевой технологии.
Искусственные нейронныесети индуцированы биологией, так как они состоят из элементов,функциональные возможности которых аналогичны большинству элементарныхфункций биологического нейрона. Эти элементы затем организуются поспособу, который может соответствовать (или не соответствовать) анатомиимозга. Несмотря на такое поверхностное сходство, искусственные нейронныесети демонстрируют удивительное число свойств, присущих мозгу. Например,они обучаются на основе опыта, обобщают предыдущие прецеденты на новыеслучаи и извлекают существенные свойства из поступающей информации,содержащей излишние данные.Свойства нейронных сетей.
Обучение. Искусственные нейронные сетимогут менять свое повеление в зависимости от внешней среды. Этот фактор вбольшей степени, чем какой -либо другой, ответствен за интерес, который они74вызывают.Послепредъявлениявходныхсигналов(возможноссоответствующими выходами), нейронные сети самонастраиваются, чтобыобеспечить требуемую реакцию.Обобщение. Отклик сети после обучения может быть до некоторойстепени нечувствителен к небольшим изменениям входных сигналов.
Этавнутренне присущая способность видеть образ сквозь шум и искаженияпозволяет преодолеть требования строгой точности, предъявляемое обычнымкомпьютерам. Важно отметить, что нейронная сеть делает обобщенияавтоматически благодаря своей структуре, а не с помощью “человеческогоинтеллекта”, представленного в форме специально написанных компьютерныхпрограмм.Абстрагирование.
Некоторые из нейронных сетей обладаютспособностью извлекать сущность из входных сигналов, т.е. оперировать сданными, которые не возникали в процессе обучения.Нейронные сети и другие виды программного обеспечения.Традиционные программы выполняют точно установленные инструкции вопределенный момент времени. Например, выполняя вычисления, программапроизводит шаг за шагом последовательность действий пока не будет полученнекоторый результат. Прохождение данных по нейронной сети напротив неможет быть заранее определено по причине иерархической структуры сети ираспределенности по связям весовых коэффициентов. Кроме того, входныеданные могут быть недоопределены или определены нечетко, что втрадиционных программах не представляется возможным.
Поставленная задачаможет быть решена нейросетью даже если входная информация нерассматривалась ранее при обучении, при условии, что данные не выходят запредъявляемые к ним ограничения. Нейронные сети занимают небольшойобъем памяти, так как сохраняется лишь структура нейронной сети. Нейронныесети идеально подходят для решения задач управления, так как обеспечиваютблагодаря параллельной структуре чрезвычайно высокую скорость выполненияопераций.Для решения таких прикладных задач, как прогнозирование и выдачарекомендаций (управление) на основе анализа данных могут быть использованыкак экспертные системы, так и нейронные сети. Но основное преимуществонейронных сетей заключается в возможности избежать традиционнойпроцедуры программирования и сбора информации или знаний при помощиэкспертов или конечных пользователей. При создании экспертных систем,наоборот, требуется проводить “интервью” с экспертами для получения“правил” поведения системы или объекта при определенных условиях, чтотребует значительного времени и материальных вложений и порой не приноситжелаемого эффекта, так как нет гарантии что все необходимые правила будутполучены и что экспертная система будет работать в различных условиях.Дополнительное преимущество нейронных сетей состоит в способностивыделять общие принципы (обобщение) при предъявлении некоторого набораобучающих векторов с неполным набором данных (абстрагирование).
Такжестоит выделить способность получать желаемый выход в случае неполного илинечеткого набора данных в случае, когда работа множества традиционныхкомпьютерных программ завершается ошибкой.Способностьнейронныхсетейвыделятьвзаимосвязивэкспериментальных данных и достигать желаемого результата к сожалениюсвязана с невозможностью проследить, каким образом этот результат достигнут.То есть нейронная сеть представляет собой если не “черный ящик”, то , покрайней мере, ящик с полупрозрачными стенками.
Однако, при сравнениивходных данных и откликов нейронной сети, некоторые тенденции могут бытьпрослежены и получено объяснение того или иного поведения нейросети.Не следует недооценивать трудоемкости процедуры обучения нейронной сети.Набор обучающих векторов должен быть составлен таким образом, чтобы точноописать задачу и граничные условия обучения нейросети.
Так же как и приобучении человека, именно качество примеров, на которых производитсяобучение, определяет дальнейшую работоспособность системы.Процедура обратного распространения. Наиболее часто применяются12 - 15 различных нейросетевых архитектур, представляющих собой вариации 6основных парадигм [60]. Самой популярной из них является “back propagation” архитектура сети с обратным распространением ошибки. Сети этого типа могутработать как с двоичными, так и с десятичными данными и могут бытьиспользованы для решения более широкого, чем у других сетей , круга задач.Рис. 31.75Процесс разработки нейронной сети можно разделить на следующиеэтапы: создание архитектуры сети; генерирование и предварительная обработкаданных; обучение; тестирование.Архитектура сети. На рис.31 представлена схема искусственногонейрона, используемого в качестве основного строительного блока в сетяхобратного распространения.На нейрон подается множество сигналов (о1 ..
оn), идущих либо извне,либо от предшествующего слоя. Каждый из них умножается на вес (wi), ипроизведения суммируются. Сумма NET , вычисляемая для каждого нейронасети, модифицируется с помощью активационной функции F(NET), давая,таким образом, сигнал OUT.Активационная функция, используемая для обратного распространенияимеет вид (рис32):Рис. 32.OUT = 1/(1+e-NET)(107)Сигмоид, который называют также логистической или сжимающей функцией,сжимает диапазон изменения NET так, что значение OUT лежит между нулем иединицей.Для алгоритма обратного распространения необходимо. чтобы активационнаяфункция была дифференцируема.
Сигмоид удовлетворяет этим требованиям.Кроме того, он обеспечивает автоматический контроль усиления.На рис.33 изображена многослойная сеть, которая может обучаться припомощи процедуры обратного распространения.рис.3376При проектировании архитектуры нейронной сети необходимоопределить число слоев нейронов и количество нейронов в каждом слое.Процедура обратного распространения применима к сетям с любым числомслоев, но традиционно рассматриваются сети, содержащие входной, выходной искрытый слой. Число нейронов в выходном и входном слоях определяется,соответственно количеством выходов и входов системы. В общем случае, чемменьше нейронов в выходном слое, тем быстрее сеть обучается.