1. Структура систем интеллектуального управления.
2. Экспертные системы.
3. Нейронные сети. Нейро-нечеткие модели.
4. Генетические алгоритмы.
1. Структура систем интеллектуального управления
Построение структуры системы интеллектуального управления связано в первую очередь с построением модели системы, в которой должны быть определены как традиционные элементы системы управления, так и модели обработки знаний, реализуемые интеллектуальной системой.
В интеллектуальной системе управления новыми элементами по сравнению с традиционной системой управления являются все интеллектуальные преобразования или элементы управления знаниями, которые связаны с реализацией искусственного интеллекта, т.е. с использованием технологий экспертных систем, базы знаний, принятия решений, ассоциативной памяти, нечеткой логики, семиотических сетей, управления структурной динамикой и т.п.
Анализируя принятые структуры систем управления с решающими устройствами можно и для обобщенной интеллектуальной системы использовать аналогичную структуру (рис. 5.1), которая взаимодействует с внешней средой и в процессе ее получения от нее необходимой информации формирует цель действия и анализирует воздействия на систему (физические и информационные). Определяющими элементами системы управления в этом случае являются: интеллектуальный преобразователь и базовая система управления.
Можно заметить, что использование интеллекта человека строиться на основе рассмотренной структуры, когда человек участвует в управлении в качестве интеллектуального преобразователя, согласованного с внешней средой через специализированные датчики и реализующий воздействие на систему управления через ручку управления или интерфейс взаимодействия с компьютером. В практике управления подвижными объектами такие системы получили специальное название.
Системы управления подвижными объектами (в авиации, в космической технике, автомобиле и других транспортных средствах) получили название систем полуавтоматического управления, когда используется способность человека наблюдать и оценивать ситуации, возникающие при движении объектов, и формировать непрерывное управление ими. В системах ручного управления на человека – оператора возлагаются дополнительные функции по управлению движением подвижным объектом, связанные с тем фактом, что он осуществляет полностью функции базового управления и воздействует на органы управления. В ручных системах управления человек – оператор рассматривается как звено управления, формирующее закон и программу управления.
Рис. 5.1. Обобщенная схема системы интеллектуального управления
В автоматизированных системах управления (автоматизированным управлении космическим кораблем, атомной электростанцией и других подобных системах управления) человек – оператор оказывает воздействие на базовую автоматическую систему через вычислительные системы, что адекватно может быть описано предлагаемой структурой.
В случае использования в системе управления искусственного интеллекта в качестве интеллектуального преобразователя реализуются:
– экспертные системы;
– ситуационное управление;
– управление структурной динамикой сложных технологических и другие интеллектуальные системы и их элементы.
Интересным примером использования интеллектуального преобразователя в системе управления является использование динамической экспертной системы, структура которой предложенного в виде двух блоков: синтеза и реализации цели (рис. 5.2).
Математическая модель интеллектуальной системы управления состоит из трех частей:
– интеллектуального преобразователя (экспертной системы, включающей базы данных и знаний);
– объекта управления;
– управляющее устройства системы (вычислительных и преобразующих и исполнительных устройств).
Интеллектуальный преобразователь представляет из себя логико-преобразующее устройство, который преобразовывает информацию о внешней среде и объекте управления трансформирует в сигналы Y, в сигналы воздействия на управляющие устройства системы. Математическая модель интеллектуального преобразователя описывается в оператором виде:
Y = F(x, u, w, p, z), (5.5)
где F(.) – некоторый оператор интеллектуального преобразования, характеризующий структуру или и работу интеллектуального преобразователя; x – вектор состояния системы управления; u – вектор управления; w – вектор воздействий внешней среды; p – вектор сигналов цели; z – вектор параметров объекта.
Рис. 5.2. Структурная схема системы интеллектуального управления
с динамической экспертной системой
Объект управления в достаточно общем случае описывается уравнениями вида:
x = f(x, u, w, z, t), y = C(x), x(t0) = x0, t ≥ t0, (5.6)
где f(.) – вектор – функция, описывающая объект управления; С(.) – заданная функция выходных сигналов; t – координата времени; y – вектор выхода или измерений.
Управляющее устройства системы (вычислительных и преобразующих и исполнительных устройств) формируют управляющие воздействия на объект управления u из множества его возможных значений в соответствие с решаемой задачей для достижения сформированной интеллектуальным преобразователем цели.
Для формирования воздействий на систему управления объектом в интеллектуальном преобразователе используется блок принятия решения, который может быть рассмотрен как самостоятельный элемент. Блок принятия решений формируется на основе теории принятия решений.
2. Экспертные системы
Экспертные системы (ЭС) – это сложные программные комплексы, аккумулирующие знания специалистов в конкретных предметных областях и тиражирующие этот эмпирический опыт для консультаций менее квалифицированных пользователей.
Экспертная система – это программа для компьютера, которая оперирует со знаниями в определенной предметной области с целью выработки рекомендаций или решения проблем.
Следует учесть, что реальные экспертные системы могут иметь более сложную структуру, однако блоки, изображенные на рисунке, непременно присутствуют в любой действительно экспертной системе, поскольку являют собой негласный канон на структуру современной экспертной системы.
Определим основные термины в рамках данной лекции.
Обобщенная структура экспертной системы представлена на рис. 5.5.
Пользователь – специалист предметной области, для которого предназначена система. Обычно его квалификация недостаточно высока, и поэтому он нуждается в помощи и поддержке своей деятельности со стороны ЭС.
Инженер по знаниям – специалист по искусственному интеллекту, выступающий в роли промежуточного буфера между экспертом и базой знаний. Синонимы: когнитолог, инженер-интерпретатор, аналитик.
Интерфейс пользователя – комплекс программ, реализующих диалог пользователя с ЭС как на стадии ввода информации, так и получения результатов.
База знаний (БЗ) – ядро ЭС, совокупность знаний предметной области, записанная на машинный носитель в форме, понятной эксперту и пользователю (обычно на некотором языке, приближенном к естественному). Параллельно такому «человеческому» представлению существует БЗ во внутреннем «машинном» представлении.
Решатель – программа, моделирующая ход рассуждений эксперта на основании знаний, имеющихся в БЗ. Синонимы: дедуктивная машина, блок логического вывода.
Рис. 5.3. Предметная область,
не пригодная для создания
экспертной системы
Рис. 5.4. Предметная область, пригодная
для создания экспертной системы
Рис. 5.5. Структура экспертной системы
Подcucmeмa объяснений – программа, позволяющая пользователю получить ответы на вопросы: «Как была получена та или иная рекомендация?» и «Почему система приняла такое решение?» Ответ на вопрос «как» – это трассировка всего процесса получения решения с указанием использованных фрагментов БЗ, т.е. всех шагов цепи умозаключений. Ответ на вопрос «почему» – ссылка на умозаключение, непосредственно предшествовавшее полученному решению, т.е. отход на один шаг назад.
Интеллектуальный редактор БЗ – программа, представляющая инженеру по знаниям возможность создавать БЗ в диалоговом режиме. Включает в себя систему вложенных меню, шаблонов языка представления знаний, подсказок («help» – режим) и других сервисных средств, облегчающих работу с базой.
В коллектив разработчиков ЭС входят как минимум четыре человека: эксперт; инженер по знаниям; программист. Возглавляет коллектив инженер по знаниям, это ключевая фигура при разработке систем, основанных на знаниях.
Эксперты – это высококвалифицированные специалисты в данной предметной области, знания которых нужно передать экспертной системе.
Задачей инженеров знаний является формализация знаний экспертов и приведение их к виду, пригодному для занесения в базу знаний.
3. Нейронные сети. Нейро-нечеткие модели
В отношении систем искусственного интеллекта вообще и экспертных систем, в частности, иногда можно услышать следующие критические замечания.
– Такие системы слишком «хрупкие» в том смысле, что, встретившись с ситуацией, не предусмотренной разработчиком, они либо формируют сообщения об ошибках, либо дают неправильные результаты. Другими словами, эти программы довольно просто можно «поставить в тупик».
– Они не способны непрерывно самообучаться, как это делает человек в процессе решения возникающих проблем.
Еще в середине 1980-х годов многие исследователи рекомендовали использовать для преодоления этих (и других) недостатков нейронные сети. В самом упрощенном виде нейронную сеть можно рассматривать как способ моделирования в технических системах принципов организации и механизмов функционирования головного мозга человека. Согласно современным представлениям, кора головного мозга человека представляет собой множество взаимосвязанных простейших ячеек – нейронов, количество которых оценивается числом порядка 1010. Технические системы, в которых предпринимается попытка воспроизвести, пусть и в ограниченных масштабах, подобную структуру (аппаратно или программно), получили наименование нейронные сети.
Нейрон головного мозга получает входные сигналы от множества других нейронов, причем сигналы имеют вид электрических импульсов. Входы нейрона делятся на две категории – возбуждающие и тормозящие. Сигнал, поступивший на возбуждающий вход, повышает возбудимость нейрона, которая при достижении определенного порога приводит к формированию импульса на выходе. Сигнал, поступающий на тормозящий вход, наоборот, снижает возбудимость нейрона. Каждый нейрон характеризуется внутренним состоянием и порогом возбудимости. Если сумма сигналов на возбуждающих и тормозящих входах нейрона превышает этот порог, нейрон формирует выходной сигнал, который поступает на входы связанных с ним других нейронов, т.е. происходит распространение возбуждения по нейронной сети.
Было обнаружено, что время переключения отдельного нейрона головного мозга составляет порядка нескольких миллисекунд, т.е. процесс переключения идет достаточно медленно. Поэтому исследователи пришли к заключению, что высокую производительность обработки информации в мозге человека можно объяснить только параллельной работой множества относительно медленных нейронов и большим количеством взаимных связей между ними. Именно этим объясняется широкое распространение термина «массовый параллелизм» в литературе, касающейся нейронных сетей.
Независимо от способа реализации, нейронную сеть можно рассматривать как взвешенный ориентированный граф. Узлы в этом графе соответствуют нейронам, а ребра – связям между нейронами. С каждой связью ассоциирован вес – рациональное число, который отображает оценку возбуждающего или тормозящего сигнала, передаваемого по этой связи на вход нейрона-реципиента, когда нейрон-передатчик возбуждается.
Поскольку нейронная сеть носит явно выраженный динамический характер, время является одним из основных факторов ее функционирования. При моделировании сети время изменяется дискретно, и состояние сети можно рассматривать как последовательность мгновенных снимков, причем каждое новое состояние сети зависит только от предыдущего цикла возбуждения нейронов.
Для выполнения обработки информации с помощью такой сети необходимо соблюдение определенных соглашений. Для того чтобы сеть стала активной, она должна получить некоторый входной сигнал. Поэтому некоторые узлы сети играют роль «сенсоров» и их активность зависит от внешних источников информации. Затем возбуждение передается от этих входных узлов к внутренним и таким образом распространяется по сети. Это обычно выполняется посредством установки высокого уровня активности входных узлов, которая поддерживается в течение нескольких циклов возбуждения, а затем уровень активности сбрасывается.
Часть узлов сети используется в качестве выходных, и их состояние активности считывается в конце процесса вычислений. Но часто интерес представляет и состояние всей сети после того, как вычисления закончатся, либо состояние узлов с высоким уровнем активности. В некоторых случаях интерес может представлять наблюдение за процессом установки сети в стабильное состояние, а в других – запись уровня активизации определенных узлов перед тем, как процесс распространения активности завершится.
На рис. 5.6 показан фрагмент нейронной сети, состоящий из четырех сенсорных узлов S1–S4, возбуждение от которых передается другим узлам сети.
Рис. 5.6. Фрагмент нейронной сети с возбуждающими и тормозящими связями
Один узел, R, является выходным. Если веса связей в сети неизвестны, то узел R будет возбужден тогда, когда будут возбуждены узлы S1 и S4. Но если будут возбуждены также узлы S2 и S3, это приведет к подавлению возбуждения R даже при возбужденных узлах S1 и S4. Будет ли узел R действительно возбужден при таком состоянии сигналов на входах сенсорных узлов, зависит от весов связей в сети.
Количество возможных конфигураций сети такого типа очень велико. Велико и количество способов вычисления состояния нейрона при заданной сумме состояний на его входах. Эти детали теории нейронных сетей выходят за рамки данного учебного пособия. Далее мы будем следовать идеям Роуза (Rose) и рассмотрим относительно простую модель нейронной сети, в которой любой узел может быть связан с любым другим узлом и в которой выходом узла является его состояние активности (т.е. не делается различия между активностью нейрона и сигналом на его выходе).
Для более строгой формулировки такой модели введем следующие обозначения:
– wij – вес связи от узла j к узлу i,
– neti = Zjwij – состояние в текущий момент времени входов узла l, связанного с другими узлами сети.
При любом определении нейронной сети необходимо принимать во внимание и фактор времени, поскольку состояние любого нейрона в некоторый момент времени зависит от его предыдущего состояния и от предыдущего состояния нейронов, связанных с его входами.
Определение. Сеть связности (connectionist network) может рассматриваться как взвешенный ориентированный граф, в котором для каждого узла i выполняются следующие требования:
1. Состояние активности узла в любой момент времени t является действительным числом (будем обозначать его как ai(t)).
2. Вес связи, которая связывает узел i с любым другим узлом у сети, является действительным числом wij.
3. Активность узла в момент t + 1 является функцией от его активности в момент времени t, ai(t); взвешенной суммы сигналов на входах в момент времени t, neti{f}; произвольного внешнего входного сигнала xi(t).
Простая функция вычисления состояния активности узла i, удовлетворяющая требованию (3) приведенного выше определения, имеет вид:
Это, однако, не единственно возможный способ определения активности. Функции других видов включают добавление термов, соответствующих росту или спаду активности, или имеют вид нелинейных дифференциальных функций
При конструировании сети веса связей могут быть назначены априори или изменяться со временем. В последнем случае изменение весов является одним из следствий активности сети. Веса можно рассматривать как отражение знаний, а процесс их настройки и уточнения – как процесс обучения системы. Поскольку веса существенно влияют на распространение активности по сети, от них во многом зависит и поведение сети, а следовательно, изменяя веса, можно изменять поведение сети в желаемом направлении.
Как отмечено выше, знания в сети связности представлены неявно, поскольку нельзя выделить один определенный структурный элемент сети, который представлял бы отдельное правило или сущность предметной области. Знание отражено именно во взвешенных связях между мириадами отдельных элементов сети. Таким образом, в данном случае мы имеем дело с распределенными знаниями, которые нельзя представить в виде простого перечисления числовых или символических элементов. По этой причине часто можно встретить утверждение, что в нейронных сетях выполняется субсимволическая обработка информации.
В сетях связности знания сохраняются не в декларативном виде, а потому они не могут быть доступны для интерпретации со стороны какого-либо внешнего процессора. Доступ к знаниям и процесс логического вывода могут быть описаны только в терминах активности сети.
Нейро-нечеткие сети и модели
Объединение возможностей нейронных сетей и нечеткой логики является наиболее перспективным подходом к организации систем интеллектуального анализа данных. Системы нечеткой логики компенсируют две основные «непрозрачности» нечетких систем (НС) в представлении знаний и объяснений результатов работы интеллектуальной системы, т.е. нечеткая логика (НЛ) наилучшим образом дополняет нейронные сети.
Нечеткая логика позволяет формализовать качественную информацию, полученную от экспертов-экономистов для конкретной сферы применения, и представить совокупность полученных знаний в виде системы нечетких правил логического вывода, позволяющих анализировать заключения, полученные в процессе работы гибридной интеллектуальной системы.
Нейронные сети дают возможность отобразить алгоритмы нечеткого логического вывода в структуре НС, вводя в информационное поле нейронной сети информацию, полученную от экспертов-экономистов.
Сформированная подобным образом база знаний автоматически корректируется в процессе обучения нейро-нечеткой сети исходя из реальных значений анализируемых экономических показателей и результаты коррекции могут быть подвергнута последующему анализу.
Нейро-нечеткие сети используют нечеткий логический вывод на основе системы нечетких правил, которая описывает опыт экспертов конкретной предметной области, представленный на качественном уровне:
П1: 〈если х есть А1, то у есть В2〉;
П2: 〈если х есть A2, то у есть В2〉;
…………………………………….;
Пn: 〈если х есть An, то у есть Вn〉,
где х и у, соответственно, нечеткая входная переменная (посылка) и нечеткая выходная переменная.
Важной особенностью нейро-нечетких сетей является способность автоматически генерировать систему нечетких правил, извлекая скрытые закономерности изданных обучающей выборки.
Под названием адаптивной нейро-нечеткой системой вывода – ANFIS (Adaptive Neuro-Fuzzy Inference System) известна специализированная пейросетевая структура, характеризующаяся хорошей сходимостью и ориентированная на извлечение знаний в виде системы нечетких правил из данных обучающей выборки. ANFIS – функциональный эквивалент нечеткой модели вывода по алгоритму Sugcno.
Таким образом, знания квалифицированных специалистов для конкретной предметной области, представленные в форме нечетких правил логического вывода, могут быть прозрачным способом отражены в структуре нейро-нечеткой сети. Обучение нечеткой НС позволяет не только настроить веса связей (т.е. откорректировать достоверность нечетких правил логического вывода), но и устранить противоречивость системы нечетких правил в целом. В случае отсутствия исходной информации по данной предметной области, но при достаточном объеме обучающей выборки нейро-нечеткая сеть автоматически преобразует скрытые в анализируемых экономических показателях закономерности в базу знаний в виде системы правил нечеткого логического вывода.
Анализ перспективных интеллектуальных средств подтвердил, что при решении задач управления и принятия решений, для которых характерно наличие неполной и недостаточно достоверной информации, хорошо зарекомендовали себя системы интеллектуального анализа данных. Нейронные сети, системы нечеткой логики являются обязательным инструментом интеллектуального поиска и извлечения знаний, т.к. обладают способностью выявления значимых признаков и скрытых закономерностей в анализируемых производственных показателях.
Нейро-нечеткие модели могут быть реализованы несколькими способами. В простейшем случае совместную модель можно рассматривать, как препроцессор, где механизм обучения искусственной нейронной сети (ANN) определяет правила нечеткого вывода (FIS). Как только параметры FIS определяются, ANN работает в обычном режиме (рис. 5.7). Функции принадлежности обычно аппроксимируются нейронной сетью из обучающих данных.
Рис. 5.7. Совместная нейро-нечеткая модель
Другой подход в реализации нейро-нечетких моделей – это параллельная модель, которой нейронная сеть помогает нечёткой системе определить требующиеся параметры, особенно если входные переменные системы не могут быть непосредственно измерены. Обучение происходит только в нейронной сети, и нечёткая система остаётся неизменной.
В некоторых случаях нечёткие выходы не могут быть непосредственно применены к процессу. В этом случае нейронная сеть может действовать как постпроцессор нечётких выходов. На рис. 5.8 представлена параллельная нейро-нечёткая модель, в которой входные данные подаются на нейронную сеть, а выход из нейронной сети дополнительно обрабатывается с помощью нечёткой системы.
Рис. 5.8. Параллельная нейро-нечёткая модель
Наиболее распространенной являются интегрированные модели, в которых обучающий алгоритм нейронной сети используется для определения параметров системы нечёткого вывода. Нечёткая система вывода и соответствующие функции принадлежности базируются на априорных знаниях системы. С другой стороны, механизм обучения нейронной сети не зависит от априорной информации, а является стандартным для выбранной архитектуры искусственной нейронной сети.
4. Генетические алгоритмы
Генетический алгоритм – это простая модель эволюции в природе, реализованная в виде компьютерной программы. В нем используются как аналог механизма генетического наследования, так и аналог естественного отбора (рис. 5.9). При этом сохраняется биологическая терминология в упрощенном виде.
Рис. 5.9. Структура генетического алгоритма
Генетический алгоритм – новейший, но не единственно возможный способ решения задач оптимизации. С давних пор известны два основных пути решения таких задач – переборный и локально-градиентный. У этих методов свои достоинства и недостатки, и в каждом конкретном случае следует подумать, какой из них выбрать.
Рассмотрим достоинства и недостатки стандартных и генетических методов на примере классической задачи коммивояжера (TSP – travelling salesman problem). Суть задачи состоит в том, чтобы найти кратчайший замкнутый путь обхода нескольких городов, заданных своими координатами. Оказывается, что уже для 30 городов поиск оптимального пути представляет собой сложную задачу, побудившую развитие различных новых методов (в том числе нейросетей и генетических алгоритмов).
Каждый вариант решения (для 30 городов) – это числовая строка, где на j-м месте стоит номер j-го по порядку обхода города. Таким образом, в этой задаче 30 параметров, причем не все комбинации значений допустимы. Естественно, первой идеей является полный перебор всех вариантов обхода.
Переборный метод наиболее прост по своей сути и тривиален в программировании. Для поиска оптимального решения (точки максимума целевой функции) требуется последовательно вычислить значения целевой функции во всех возможных точках, запоминая максимальное из них. Недостатком этого метода является большая вычислительная стоимость. В частности, в задаче коммивояжера потребуется просчитать длины более 1030 вариантов путей, что совершенно нереально. Однако, если перебор всех вариантов за разумное время возможен, то можно быть абсолютно уверенным в том, что найденное решение действительно оптимально.
Второй популярный способ основан на методе градиентного спуска. При этом вначале выбираются некоторые случайные значения параметров, а затем эти значения постепенно изменяют, добиваясь наибольшей скорости роста целевой функции. Достигнув локального максимума, такой алгоритм останавливается, поэтому для поиска глобального оптимума потребуются дополнительные усилия.
Градиентные методы работают очень быстро, но не гарантируют оптимальности найденного решения. Они идеальны для применения в так называемых унимодальных задачах, где целевая функция имеет единственный локальный максимум (он же – глобальный). Легко видеть, что задача коммивояжера унимодальной не является.
Типичная практическая задача, как правило, мультимодальна и многомерна, то есть содержит много параметров. Для таких задач не существует ни одного универсального метода, который позволял бы достаточно быстро найти абсолютно точное решение.
Однако, комбинируя переборный и градиентный методы, можно надеяться получить хотя бы приближенное решение, точность которого будет возрастать при увеличении времени расчета.
Генетический алгоритм представляет собой именно такой комбинированный метод. Механизмы скрещивания и мутации в каком-то смысле реализуют переборную часть метода, а отбор лучших решений – градиентный спуск. На рис. 5.10. показано, что такая комбинация позволяет обеспечить устойчиво хорошую эффективность генетического поиска для любых типов задач.
Если на некотором множестве задана сложная функция от нескольких переменных, то генетический алгоритм – это программа, которая за разумное время находит точку, где значение функции достаточно близко к максимально возможному. Выбирая приемлемое время расчета, мы получим одно из лучших решений, которые вообще возможно получить за это время.
Итак, генетические алгоритмы – это универсальные алгоритмы поиска эффективного решения, основанные на принципе развития, наблюдаемого в природе, сочетают в себе лучшие качества известных методов оптимизации, такие как высокая скорость работы при независимости от свойств используемого критерия оптимизации (например, гладкости функции). Они обеспечивают поиск оптимального значения параметров в широкой области их значений. Название – Генетические Алгоритмы – связано с тем, что они работают аналогично естественному отбору в природе. Поэтому в описаниях этих алгоритмов используются термины из биологии и генетики, такие как – Ген, Хромосома, Фитнесс, Популяция и другие.
Рис. 5.10. Эффективность алгоритмов для различных типов задач
Работа алгоритма напоминает случайный перебор, методом Монте-Карло. Но, в отличие от метода Монте-Карло, перебор делается не совсем случайно, а целенаправленно. Задача алгоритма получить некоторое количество экземпляров (популяцию) с наилучшими значениями фитнесса (критерия оптимизации). Работу генетического алгоритма можно рассматривать как «выращивание» наилучшей популяции систем, наиболее приспособленных к успешной и устойчивой работе, согласно заданному нами критерию-фитнессу. Для множества проблем, генетические алгоритмы очень часто могут находить хорошие решения (почти оптимальные) приблизительно в 100 поколениях. Это во много раз быстрее чем полный перебор. Например, хромосома, содержащая 32 двойных гена имела бы 4 294 967 296 возможных комбинаций при использовании полного перебора. С помощью генетического алгоритма такая же проблема будет решена перебором 5000 возможных комбинаций (100 эпох, с размером 50).
Генетический алгоритм – это в первую очередь эволюционный алгоритм, другими словами, основная фишка алгоритма – скрещивание (комбинирование). Как несложно догадаться идея алгоритма взята у природы, путем перебора и самое главное отбора получается правильная «комбинация».
Алгоритм делится на три этапа:
– Скрещивание.
– Селекция (отбор).
– Формирования нового поколения.
Если результат нас не устраивает, эти шаги повторяются до тех пор, пока результат нас не начнет удовлетворять или произойдет одно из ниже перечисленных условий:
– Количество поколений (циклов) достигнет заранее выбранного максимума.
– Исчерпано время на мутацию.
Создание новой популяции. На этом шаге создается начальная популяция, которая, вполне возможно, окажется не кошерной, однако велика вероятность, что алгоритм эту проблему исправит. Главное, чтобы они соответствовали «формату» и были «приспособлены к размножению».
Размножение. Тут все как у людей, для получения потомка требуется два родителя. Главное, чтобы потомок (ребенок) мог унаследовать у родителей их черты. При этом размножаются все, а не только выжившие (эта фраза особенно абсурдна, но так как у нас все в сферическом вакууме, то можно все), в противном случае выделится один альфа самец, гены которого перекроют всех остальных, а нам это принципиально не приемлемо.
Мутации. Мутации схожи с размножением, из мутантов выбирают некое количество особей и изменяют их в соответствии с заранее определенными операциями.
Отбор. Тут начинается самое главное, мы начинаем выбирать из популяции долю тех, кто «пойдет дальше». При этом долю «выживших» после нашего отбора мы определяем заранее руками, указывая в виде параметра. Как ни печально, остальные особи должны погибнуть.
Заключение. В данном подраздлеле приведена структура систем интеллектуального управления. Представлена математическая модель интеллектуального преобразователя. Дана структурная схема системы интеллектуального управления с динамической экспертной системой. Описаны экспертные системы. Представлена структура и описаны основные блоки экспертной системы. Рассмотрены нейронные сети, нейро-нечеткие модели, описана адаптивная нейро-нечеткая система вывода – ANFIS, совместная нейро-нечеткая модель, параллельная нейро-нечёткая модель и генетические алгоритмы.
Контрольные вопросы
1. Структура систем интеллектуального управления.
2. Математическая модель интеллектуального преобразователя.
3. Структурная схема системы интеллектуального управления с динамической экспертной системой.
4. Экспертные системы.
5. Структура и основные блоки экспертной системы.
6. Нейронные сети.
7. Нейро-нечеткие модели.
8. Адаптивная нейро-нечеткая система вывода – ANFIS.
9. Совместная нейро-нечеткая модель.
10. Параллельная нейро-нечёткая модель.
11. Генетические алгоритмы.