Малышенко А.М. Лекции по искусственному интеллекту и нейросетевому управлению - файл n8.doc

Малышенко А.М. Лекции по искусственному интеллекту и нейросетевому управлению
скачать (859 kb.)
Доступные файлы (12):
n1.doc203kb.16.01.2009 00:58скачать
n2.doc240kb.18.02.2009 11:26скачать
n3.doc44kb.22.01.2009 01:05скачать
n4.doc85kb.22.01.2009 04:22скачать
n5.doc107kb.26.01.2009 01:06скачать
n6.doc68kb.13.01.2009 01:26скачать
n7.doc82kb.29.01.2009 00:52скачать
n8.doc440kb.06.02.2009 15:29скачать
n9.doc347kb.12.02.2009 09:49скачать
n10.doc244kb.19.02.2009 02:30скачать
n11.doc337kb.26.02.2009 01:05скачать
n12.doc91kb.19.03.2009 02:41скачать

n8.doc

Лекция 3

    1. Функциональная структура использования

систем искусственного интеллекта
Эта структура состоит из трех комплексов вычислительных средств (рис. 1).


Рис. 1. Функциональная структура искусственного интеллекта

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

Третьим комплексом средств, с помощью которых организуется взаимодей-ствие первых двух, является база знаний, обеспечивающая использование вычислительными средствами первых двух комплексов целостной и независимой от обрабатывающих программ системы знаний о проблемной среде. База знаний (БЗ) занимает центральное положение по отношению к остальным компонентам вычислительной системы в целом. Через БЗ осуществляется интеграция средств вычислительной системы, участвующих в решении задач.
2. СИСТЕМЫ УПРАВЛЕНИЯ С НЕЧЕТКОЙ ЛОГИКОЙ

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

Значительное продвижение в этом направлении сделано 40 с лишним лет тому назад профессором Калифорнийского университета (Беркли) Лотфи А. Заде (Lotfi A. Zadeh). Его работа "Fuzzy Sets", появившаяся в 1965 году в журнале Information and Control, № 8, заложила основы новой математической теории – нечёткой логики.

Лотфи А. Заде своими научными работами:

▪ расширил классическое канторовское понятие множества, допустив, что характеристическая функция (функция принадлежности элемента множеству) может принимать любые значения в интервале (0;1), а не только значения 0 либо 1. Такие множества были названы им нечеткими (fuzzy);

▪ определил ряд операций над нечеткими множествами и предложил обобщение известных методов логического вывода;

▪ ввёл понятие лингвистической переменной, допустив, что в качестве ее значений (термов) выступают нечеткие множества,

▪ создал одну из базисных основ аппарата для описания процессов интеллек-туальной деятельности, включая нечеткость и неопределенность выражений;

▪ вместе со своими последователями в дальнейшем заложил прочный фунда-мент новой теории (нечёткой логики) и создал предпосылки для внедрения методов нечеткого управления в инженерную практику.

Уже к 1990 году по этой проблематике было опубликовано свыше 10000 работ, а число исследователей достигло 10000, причем в США, Европе и СССР по 200–300 человек, около 1000 – в Японии, около 3000 – в Индии и около 5000 исследователей в Китае.

В последние два десятилетия началось широкое использование новых методов, и систем нечёткой логики (СНЛ) в промышленности и других сферах.

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

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

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

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

Примеры практического применения нечеткой логики:

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

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

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


2.2. Основные идеи нечёткой логики

Основная идея, используемая в СНЛ, заключается во введении «опыта эксперта» (человека-оператора; лица, принимающего решение (ЛПР)) в разработку схемы, управляющей некоторым динамическим процессом.

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

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

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

2.2. Лингвистические переменные и их использование

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

Формально лингвистическая переменная задается набором {X,T(X),G,M}, где X — название этой переменной; Т(Х) — терм-множество переменной X, т.е. множе-ство ее значений; G — синтаксическое правило, порождающее названия значений переменной X; М — семантическое правило, которое ставит в соответствие каждому значению лингвистической переменной ее смысл.

Например:

переменная «возраст» может включать термы: молодой, пожилой, старый.

В отличие от классической теории множеств, оперирующей понятием принадлежности и непринадлежности элемента множеству, теория нечетких множеств допускает различную степень принадлежности к ним, определяемую функцией принадлежности элемента, значения которой изменяются в интервале [0,1].

Таким образом, смысл лингвистического значения X характеризуется некоторой функцией принадлежности µ: U = [0,1], которая каждому элементу u  U ставит в соответствие число из интервала [0,1].

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

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

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

Например, переменная <дистанция> может принимать любое значение из диапазона от нуля до бесконечности, а для её термов так, как показано на рис. 2.1.



Рис. 2.1. Лингвистическая переменная и функция принадлежности
Согласно положениям теории нечетких множеств, в таком случае каждому значению расстояния из указанного диапазона может быть поставлено в соответствие некоторое число от нуля до единицы, которое определяет степень принадлежности данного физического расстояния (допустим 40 см) к тому или иному терму лингвистической переменной дистанция.
Степень принадлежности определяется так называемой функцией принадлежности М(d), где d – расстояние до помехи. В нашем случае <расстоя-нию> 40 см. можно задать степень принадлежности к терму <очень близко>, равную 0,7 , а к терму <близко> – 0,3.
Конкретное определение степени принадлежности может проходить при работе с экспертами.
Переменной <направление>, которая может принимать значения в диапазоне от 0 до 360 градусов, зададим термы <левое>, <прямо>  и <правое>.
Теперь необходимо задать выходные переменные. В рассматриваемом примере достаточно одной, которая будет называться <рулевой угол>. Она может содержать термы: <резко влево>, <влево>, <прямо>, <вправо>, <резко вправо>.

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



Рис. 15.2. Таблица нечетких правил

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

Если <ДИСТАНЦИЯ БЛИЗКО> и <НАПРАВЛЕНИЕ ПРАВОЕ>, тогда <РУЛЕВОЙ УГОЛ РЕЗКО ВЛЕВО>.

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

▪ данные с сенсоров о расстоянии до помехи и направлении на нее должны быть фаззифицированы,

▪ обработаны согласно табличным правилам,

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

1) добавление входных переменных увеличивает сложность логических выражений экспоненциально;

2) как следствие предыдущего пункта, увеличивается база правил, что приводит к трудной её разработке и восприятию.

2.3. Операции над нечёткими множествами

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

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

   ;

(2.1)

=    ;

(2.2)

 =   ;

(2.3)

 =  .

(2.4)

Графически с помощью «колоколообразной» функции принадлежности эти отношения представлены на рис. 2.3.

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






Рис. 2.3. Основные операции над нечеткими множествами

На рис. 2.3: а — отношение вложения (АВ); б — дополнительное нечеткое множество (); в — пересечение нечетких множеств (AВ); г — объединение нечетких множеств (АВ).

Пусть имеются нечеткие подмножества А, В, С в множестве X.  Тогда для них будут справедливы следующие соотношения, представленные в табл. 2.1. Но закон комплементарности для этих множеств не выполняется, т.е. в случае нечеткого множества имеет место выполнение следующего соотношения:

A0,    AX,

(2.5)

причем равенство не удовлетворяется, что видно из рисунка 2.4.



Рисунок 2.4. Невыполнение закона комплементарности

Таблица 2.1
Операции над нечеткими множествами и их свойства

Операции над нечеткими множествами

Свойства операций

АВ=ВА
AB=BA

Коммутативность

(AB)С=A(BC)
(AB)C = A(BC)

Ассоциативность

AA = A
AA = A

Идемпотентность

A(BC) = (AB)(AC)
A(BC) = (AB)(AC)

Дистрибутивность

(A) = A

Двойное отрицание

(AB) = АB
(AB) = АB

Теоремы де Моргана для нечетких множеств

2.4. Основная структура и принцип работы системы нечёткой логики

Типовая структура CHЛ, представленная на рисунке 2.5, состоит из четырех главных компонентов: входной преобразователь четкой переменной в нечеткую (другое название блок фаззификации, от слова fuzzy — нечеткий), база правил нечеткой логики, блок нечеткого логического вывода и выходной преобразователь из нечеткой переменной в четкую (блок фаззификации)



Рисунок 2.5. Типовая структура системы управления с нечёткой логикой

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

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

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

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

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

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

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



(2.6)

,

(2.7)

где xi – входные лингвистические переменные  образуют нечеткое множество пространство входов U=U1U2...Un,

уi – выходные лингвистические переменные образуют нечеткое множество – пространство выходов V = V1V2...Vm.

Из уравнений (2.6) и (2.7) следует, что входная лингвистическая переменная хi  в предметной области Ui характеризуется  и  где  — множество термов для хi, т.е. множество имен значений лингвистической переменной хi, связанных с каждым из значений.

Например, если хi означает скорость, то  может означать {«очень медленно», «медленно», «средне», «быстро» и т.д.}.

Аналогично, выходная лингвистическая переменная yi связана с множеством  и .

Размер (или мощность) множества термов || = ki определяет число нечетких разбиений входного пространства на подмножества в соответствии с выбранной степенью детализации описания объекта управления. На рис. 2.6, а изображены три нечетких подмножества на интервале [-1, +1]. Случай семи нечетких пересекающихся подмножеств представлен на рис. 2.6, б.

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

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



Рисунок 15.6 – Графическое представление нечеткой декомпозиции:

а — грубая нечеткая декомпозиция с тремя нечеткими подмножествами: N — отрицательный, Z — ноль, Р — положительный;

б — более детальная нечеткая декомпозиция с семью компонентами: NB — отрицательный большой, NM — отрицательный средний, NS — отрицательный маленький, ZE — ноль, PS — положительный маленький, РМ — положительный средний, РВ — положительный большой.

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

В реальных СНЛ наблюдаемые данные обычно являются четкими (хотя они могут быть зашумлены). Естественный и простой метод входного преобразования заключается в том, чтобы преобразовать четкое значение х0 в нечеткий синглетон (singleton) A.

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

База правил нечеткой логики. Правила нечеткой логики представляются набором нечетких «IF-THEN» конструкций, в которых предпосылки и заключения подразумевают использование лингвистических переменных.
Этот набор управляющих правил нечеткой логики (или нечетких управляющих утверждений) характеризует связь входа системы с ее выходом. Общая форма представления правил нечеткой логики для случая СНЛ с множеством входов и одним выходом (MISO — «multi-input-single-output») такова:

Ri : IF х is Ai,...,AND у is Вi THEN z = Ci,    i = ,

(2.8)

где х,...,у и z —лингвистические переменные, представляющие переменные состояния некоторого управляемого процесса и управляющие переменные соответствено;

Ai,..,Bi и Сi — лингвистические значения переменных х,...,у и z в предметных областях U,...,V и W соответственно. Вариант другой формы представления правил нечеткой логики подразумевает, что заключение представляется как функция переменных состояния управляемого процесса х,...,у, т.е.

Ri : IF х is Ai,...,AND у is Вi THEN z = ,    i = ,

(2.9)

где  — функция переменных х,...,у  состояния управляемого процесса.

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

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

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

Предположим, что знание эксперта А В отражает нечеткое причинное отношение предпосылки и заключения, которое называется нечетким R:  R = AB.

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

,

(2.10)

где X = {х12,...,хn] —область посылок;


Y = {у12,...,уm) —область заключений;


 — функция принадлежности  нечеткому отношению R:


[0,1], а знак означает совокупность (объединение) множеств.











Рисунок 2.7. Иллюстрация получения итогового результата нечеткого вывода

по Ларсену

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

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

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

       в общем случае        

(2.11)

Стратегия дефаззификации ММ предусматривает подсчет всех тех z, чьи функции принадлежности достигли максимального значения. В этом случае (для дискретного варианта) получим



(2.12)

где z — выходная переменная, для которой функция принадлежности достигла максимума; m — число таких величин.

Из этих двух наиболее часто используемых стратегий дефаззификации, стратегия ММ дает лучшие результаты для переходного режима, а ЦТ — в установившемся режиме из-за меньшей среднеквадратической ошибки.

2.5. Пример использования системы с нечёткой логикой

Рассмотрим основные моменты нечеткого вывода по Мамдани.

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

Правило 1: IF x is A1 AND у is В1 THEN z is С1;

Правило 2: IF x is A2 AND у is В2 THEN z is C2.

Предположим, что величины х0 и у0, считываемые датчиком, являются четкими входными величинами для лингвистических переменных х и у и что заданы следующие функции принадлежности для нечетких подмножеств А1 А21212 этих переменных:













Предположим, что в момент времени t1 были считаны значения датчиков х0(t1)=4 и y0(t1)=8. Проиллюстрируем, как при этом будет вычисляться величина выходного сигнала.

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

(x0=4)=2/3   и   (y0=8)=1;

(x0=4)=1/3   и   (y0=8)=2/3.

Затем в соответствии с правилом вывода по Мамдани (выбор минимального значения функций принадлежности) определяем:

 = min((x0), (y0)) = min(2/3, l) = 2/3;

 = min((x0), (y0)) = min(1/3, 2/3) = 1/3;

Результат применения вычисленных значений  и  к консеквентам правила 1 (для С1) и правила 2 (для С2) показан на рисунке 2.8.

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



Рисунок 2.8. Иллюстрация нечеткого вывода по Мамдани

в рассматриваемом примере

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

 .

При использовании метода максимума подсчитаем число значений z, при которых было достигнуто максимальное значение функций принадлежности . Их три — 3, 4 и 5 (со значением функции принадлежности 2/3). Таким образом,








Лекция 3 Функциональная структура использования
Учебный материал
© nashaucheba.ru
При копировании укажите ссылку.
обратиться к администрации