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