- •Системы искусственного интеллекта
- •Лекция 1
- •Лекция 2
- •Лекция 3
- •Лекция 4
- •Восходящее и нисходящее проектирование пс.
- •Базовые управляющие структуры.
- •Общие правила структурного построения пс.
- •Лекция 5
- •Лекция 6
- •Лекция 7 Лекция 8
- •Лекция 9
- •Лекция 10
- •Лекция 11
- •Лекция 12
- •2.1 Процесс решения задач в системе семантического моделирования
- •2.2 Представление знаний о предметной области в виде вычислительных метасетей
- •2.3 Средства проектирования и реализации интеллектуальных пакетов прикладных программ
- •Лекция 13
- •2.1. Назначение, особенности и области применения экспертных систем
- •2.2. Классификация экспертных систем
- •Лекция 14
- •2.3. Структура экспертных систем
- •2.4. Основные режимы работы экспертных систем
- •2.5. Технология и средства разработки экспертных систем
- •2.6. Модели представления знаний
- •2.7. Механизм обработки знаний
- •2.8. Средства приобретения знаний
- •Лекция 15
- •2.9. Направления развития экспертных систем
Лекция 13
2.1. Назначение, особенности и области применения экспертных систем
Экспертная система (ЭС) - это программное обеспечение, которое выполняет функции эксперта при решении какой-либо задачи в области его компетенции. ЭС, как и эксперт-человек, в процессе своей работы оперирует со знаниями. Знания о предметной области, необходимые для работы ЭС, определенным образом формализованы и представлены в памяти ЭВМ в виде базы знаний, которая может изменяться и дополняться в процессе развития системы.
ЭС выдают советы, проводят анализ, выполняют классификацию, дают консультации и ставят диагноз.
Главное достоинство ЭС - возможность накапливать формализованные знания, сохранять их длительное время, обновлять (актуализировать) и автоматически применять для решения прикладных задач. Накопление знаний ЭС позволяет повышать квалификацию специалистов, работающих на предприятии, используя наилучшие, проверенные решения.
Знания, которыми обладает специалист в какой-либо области, можно разделить на формализованные и неформализованные. Формализованные знания формулируются в книгах и руководствах в виде общих и строгих суждений (законов, формул, моделей, алгоритмов и т. п.), отражающих универсальные знания. Эти знания образуют формальную систему:
F = <A, P, X, I>,
где A – алфавит (набор символов, из которых строятся предложения формальной системы),
P – синтаксические правила (правила построения предложений из алфавита A; предложения, соответствующие синтаксическим правилам, называются правильно построенными формами - ППФ),
X – аксиомы (тождественно истинные ППФ),
I – семантические правила, или, правила вывода (правила построения истинных ППФ из аксиом; ППФ, соответствующие семантическим правилам, называются теоремами).
Неформализованные знания, как правило, содержатся в книгах и руководствах в описательной словесной форме, не используют какой-либо математический аппарат и поэтому не могут быть применены автоматически. Они, обычно, обладают конкретностью, субъективностью и приблизительностью. Знания этого рода являются результатом обобщения многолетнего опыта работы и интуиции специалистов. Они обычно представляют собой многообразие эмпирических (эвристических) приемов и правил.
В зависимости от того, какие знания преобладают в той или иной предметной области, ее относят к формализованным или к неформализованным описательным областям. Задачи, решаемые на основе формализованных знаний, называют формализованными, а задачи, решаемые с помощью неформализованных знаний, - неформализованными. Речь идет не о неформализуемых, а о неформализованных задачах, т. е. о задачах, которые, возможно, и формализуемы, но эта формализация пока неизвестна.
Процедурное программирование в качестве основы для разработки программы использует алгоритм, т. е. формализованное знание и напрямую не подходит для решения неформализованных задач.
К неформализованным задачам относятся те, которые обладают одной или несколькими из следующих особенностей:
алгоритмическое решение задачи неизвестно (хотя, возможно, и существует) или не может быть использовано из-за ограниченности ресурсов ЭВМ (времени, памяти);
задача не может быть определена в числовой форме (требуется символьное представление);
цели задачи не могут быть выражены в терминах точно определенной целевой функции.
Как правило, неформализованные задачи обладают неполнотой, ошибочностью, неоднозначностью и (или) противоречивостью знаний (как данных, так и используемых правил преобразования).
Экспертные системы не отвергают и не заменяют традиционного подхода к программированию, они отличаются от традиционных программ тем, что ориентированы на решение неформализованных задач и обладают следующими особенностями:
алгоритм решений не известен заранее, а строится самой ЭС с помощью символических рассуждений, базирующихся на эвристических приемах;
ясность полученных решений, т. е. система «осознает» в терминах пользователя, как она получила решение;
способность анализа и объяснения своих действий и знаний;
способность приобретения новых знаний от пользователя-эксперта, не знающего программирования, и изменения в соответствии с ними своего поведения;
обеспечение «дружественного», как правило, естественно-языкового (ЕЯ) интерфейса с пользователем.
Обычно к ЭС относят системы, основанные на знаниях, т. е. системы, вычислительная мощность которых является в первую очередь следствием их наращиваемой базы знаний (БЗ) и только во вторую очередь определяется используемыми методами. Методы инженерии знаний (методы ЭС) в значительной степени инвариантны тому, в каких областях они могут применяться. Области применения ЭС весьма разнообразны: военные приложения, медицина, электроника, вычислительная техника, геология, математика, космос, сельское хозяйство, управление, финансы, юриспруденция и т. д. ЭС используются при решении задач следующих типов: принятие решений в условиях неопределенности (неполноты), интерпретация символов и сигналов, предсказание, диагностика, конструирование, планирование, управление, контроль и др.
Перед тем как приступить к разработке ЭС, инженер по знаниям должен рассмотреть вопрос, следует ли разрабатывать ЭС для данного приложения. В обобщенном виде ответ может быть таким: использовать ЭС следует тогда, когда разработка ЭС возможна, оправдана и методы инженерии знаний соответствуют решаемой задаче. Ниже будут уточнены использованные понятия «возможно», «оправдано», «соответствует».
Чтобы разработка ЭС была возможной (для данного приложения), необходимо одновременное выполнение по крайней мере следующих требований:
существуют эксперты в данной области, которые решают задачу значительно лучше, чем начинающие специалисты;
эксперты должны сходиться в оценке предлагаемого решения, иначе нельзя будет оценить качество разработанной ЭС;
эксперты должны уметь выразить на естественном языке (вербализовать) и объяснить используемые ими методы, в противном случае трудно рассчитывать на то, что знания экспертов будут «извлечены» и вложены в ЭС;
задача, возложенная на ЭС, требует только рассуждений, а не действий (если требуются действия, то необходимо объединять ЭС с роботами);
задача не должна быть слишком трудной, ее решение должно занимать у эксперта несколько часов, а не дней или недель;
задача, хотя и не должна быть выражена в формальном виде, но все же должна относиться к достаточно «понятной» и структурированной области, т. е. должны быть выделены основные понятия, отношения и известные (хотя бы эксперту) способы получения решения задачи;
решение задачи не должно в значительной степени использовать «здравый смысл» (т. е. широкий спектр общих сведений о мире и о способе его функционирования, которые знает и умеет использовать любой нормальный человек), так как подобные знания пока не удается (в достаточном количестве) вложить в системы ИИ.
Использование ЭС в данном приложении может быть возможно, но не оправдано. Применение ЭС может быть оправдано одним из следующих факторов:
решение задачи принесет значительный эффект, например использование ЭС для поиска полезных ископаемых в случае успеха может принести доход в сотни миллионов рублей;
использование человека-эксперта невозможно либо из-за недостаточного количества экспертов, либо из-за необходимости выполнять экспертизу одновременно в различных местах;
при передаче информации к эксперту происходит недопустимая потеря времени или информации;
при необходимости решать задачу в окружении, враждебном для человека.
Приложение соответствует методам ЭС, если решаемая задача обладает совокупностью следующих характеристик:
может быть естественным образом решена посредством манипуляции с символами (т. е. с помощью символьных рассуждений), а не с числами (как принято в математических методах и в традиционных программах);
должна иметь эвристическую (не алгоритмическую) природу, т. е. ее решение должно сводиться к применению эвристических правил; задачи, которые могут быть гарантированно решены (с соблюдением заданных ограничений) с помощью некоторых формальных процедур, не подходят для применения ЭС;
должна быть достаточно сложной, чтобы оправдать затраты на разработку ЭС, однако не должна быть чрезмерно сложной (решение занимает у эксперта часы, а не недели), чтобы ЭС могла ее решить;
должна быть достаточно узкой, чтобы решаться методами инженерии знаний, и практически значимой.