Рассуждение по аналогии (Case based reasoning, CBR)
CBR-системы представляют собой реализацию методологии искусственного интеллекта, применяемую при построении компьютеризированных консультационных систем, которые базируются на накопленном опыте. В отличие от классических экспертных систем, действующих на основе логических правил, CBR-системы хранят успешные решения ряда реальных проблем, называемых примерами или прецедентами, и при появлении новой проблемы находят по определенному алгоритму (зачастую при помощи машины логического вывода, с количественной оценкой) наиболее подходящие (похожие) прецеденты, после чего предлагает соответственно модифицированную комбинацию их решений. Если новая проблема оказывается таким образом успешно решенной, это решение заносится в базу прецедентов для повышения эффективности работы системы в будущем. Главный недостаток CBR-систем состоит в том, что они не создают моделей или правил, обобщающих накопленный опыт.
Байесовские сети доверия
Как уже было сказано, байесовская сеть – это вероятностная модель, представляющая собой множество переменных и их вероятностных зависимостей. Например, байесовская сеть может быть использована для вычисления вероятности того, чем болен пациент по наличию или отсутствию ряда симптомов, основываясь на данных о зависимости между симптомами и болезнями. Существуют эффективные методы, которые используются для вычислений и обучения байесовских сетей. Байесовские сети используются для моделирования в биоинформатике (генетические сети, структура белков), медицине, классификации документов, обработке изображений, обработке данных и системах принятия решений.
Нейронные сети
Нейронная сеть (НС) – это распределенный параллельный процессор, состоящий из элементарных единиц обработки информации, накапливающих экспериментальные знания и предоставляющих их для последующей обработки. Она представляет собой действующую модель нервной системы и сходна с мозгом с двух точек зрения:
– Знания поступают в нейронную сеть из окружающей среды и используются в процессе обучения.
– Для накопления знаний применяются связи между нейронами, называемые синаптическими весами.
Использование нейронных сетей обеспечивает следующие полезные свойства систем:
• Нелинейность. Это качество нейронной сети особенно важно в том случае, если сам физический механизм, отвечающий за формирование входного сигнала, сам является нелинейным (например, человеческая речь).
• Адаптивность. Нейронные сети обладают способностью адаптировать свои синаптические веса к изменениям окружающей среды. Для работы в нестационарной среде могут быть созданы нейронные сети, изменяющие синаптические веса в реальном времени.
• Контекстная информация. Знания представляются в самой структуре нейронной сети. Каждый нейрон сети потенциально может быть подвержен влиянию всех остальных ее нейронов.
• Отказоустойчивость. Аппаратно реализованные нейронные сети потенциально отказоустойчивы. Это значит, что при неблагоприятных условиях их производительность падает незначительно. Например, если поврежден какой-то нейрон или его связи, извлечение запомненной информации затрудняется. Однако, принимая в расчет распределенный характер хранения информации в нейронной сети, можно утверждать, что только серьезные повреждения структуры нейронной сети существенно повлияют на ее работоспособность.
Некоторые проблемы, решаемые применением нейронных сетей:
• Классификация образов. Задача состоит в указании принадлежности входного образа, представленного набором признаков, одному или нескольким предварительно определенным классам. К известным приложениям относятся распознавание букв, распознавание речи, классификация сигнала электрокардиограммы и т.п.
• Кластеризация/категоризация. Кластеризация основана на подобии образов: НС размещает близкие образы в один кластер. Известны случаи применения кластеризации для извлечения знаний, сжатия данных и исследования свойств данных.
• Аппроксимация функций. Задача аппроксимации состоит в нахождении оценки некоторой искаженной шумом функции, генерирующей обучающую выборку.
• Предсказание/прогноз. Задача прогнозирования состоит в предсказании некоторого значения для заданного момента времени на основании ряда значений, соответствующим другим моментам времени.
• Оптимизация. Задачей оптимизации является нахождение решения, которое удовлетворяет системе ограничений и максимизирует или минимизирует целевую функцию.
• Ассоциативная память. Данная сфера применения НС состоит в организации памяти, адресуемой по содержанию, позволяющей извлекать содержимое по частичному или искаженному образцу.
Дальнейшее повышение производительности компьютеров все в большей степени связывают с НС, в частности, с нейрокомпьютерами, основу которых также составляют аппаратно реализованные нейронные сети.
Нечеткие системы
Направление базируется на принципах нечеткой логики и теории нечетких множеств – раздела математики, являющегося обобщением классической логики и теории множеств. Данные понятия были впервые предложены американский ученым Лотфи Заде в 1965 г. Основной причиной появления новой теории стало наличие нечетких и приближенных рассуждений при описании человеком процессов, систем, объектов. В общем случае механизм логического вывода в рамках нечеткой логики включает в себя четыре этапа: введение нечеткости (фазификация), нечеткий вывод, композиция и приведение к четкости или дефазификация.
Алгоритмы нечеткого вывода различаются главным образом видом используемых правил, логических операций и разновидностью метода дефазификации.
Нечеткая логика оказала сильное влияние на другие парадигмы искусственного интеллекта. Объединение ее принципов с методами иных направлений породило такие новые направления, как:
• Нечеткие нейронные сети;
• Адаптивные нечеткие системы;
• Нечеткие запросы;
• Нечеткие ассоциативные правила;
• Нечеткие когнитивные карты;
• Нечеткая кластеризация.
Альтернативные методы искусственного интеллекта дополняют методологию нечеткой логики и используются в различных комбинациях для создания гибридных интеллектуальных систем.
Эволюционные вычисления
Генетический алгоритм, составляющий основу эволюционных вычислений, – это эвристический алгоритм поиска, используемый для решения задач оптимизации и моделирования путем последовательного подбора, комбинирования и вариации искомых параметров с использованием механизмов, напоминающих биологическую эволюцию. Сущность алгоритма состоит в следующем. Задача кодируется таким образом, чтобы ее решение могло быть представлено в виде вектора (такой вектор называется хромосомой). Случайным образом создается некоторое количество начальных векторов (начальная популяция). Они оцениваются с использованием т. н. функции приспособленности, в результате чего каждому вектору присваивается определенное значение (приспособленность), которое определяет вероятность выживания организма, представленного данным вектором. После этого с использованием полученных значений приспособленности выбираются вектора (селекция), допущенный к скрещиванию. К этим векторам применяются т. н. генетические операторы (в большинстве случаев – скрещивание и мутация), создавая таким образом следующее поколение. Особи следующего поколения также оцениваются, затем производится селекция, применяются генетические операторы и т. д.
Так моделируется эволюционный процесс, продолжающийся несколько жизненных циклов (поколений), пока не будет выполнен критерий останова алгоритма.
Генетические алгоритмы служат, главным образом, для поиска решений в очень больших, сложных пространствах поиска, и применяются для решения следующих задач:
• Оптимизация функций;
• Разнообразные задачи на графах (задача коммивояжера, раскраска, нахождение паросочетаний);
• Настройка и обучение нейронной сети;
• Задачи компоновки;
• Составление расписаний;
• Игровые стратегии;
• Аппроксимация функций;
• Искусственная жизнь;
• Биоинформатика.