logo
Методическое пособие КИТ_3_Лекции

Экспертная система должна за приемлемое время (достаточно малое) найти решение, которое было бы не хуже, чем то, которое может предложить специалист в этой предметной области.

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

    В настоящее время существует несколько определений экспертных систем (их иногда называют также «инженерия знаний» или «системы, основанные на знаниях»).

    Одним из наиболее популярных определений экспертной системы яв­ляется следующее:

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

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

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

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

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

    Базовая структура экспертной системы показана на рис.1.

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

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

    Важность экспертных систем состоит в следующем:

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

    • ЭС будут играть ведущую роль во всех фазах проектирования, разработки, производства, распределения, продажи, поддержки и оказания услуг;

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

    Использовать ЭС следует только тогда, когда разработка ЭС возможна, оправдана и методы инженерии знаний соответствуют решаемой задаче. Применение ЭС может быть оправдано одним из следующих факторов:

    • решение задачи принесет значительный эффект, например экономический;

    • использование человека-эксперта невозможно либо из-за недостаточного количества экспертов, либо из-за необходимости выполнять экспертизу одновременно в различных местах;

    • использование ЭС целесообразно в тех случаях, когда при передаче информации эксперту происходит недопустимая потеря времени или информации;

    • использование ЭС целесообразно при необходимости решать задачу в окружении, враждебном для человека.

    При разработке реальных экспертных систем в большинстве случаев используют так называемые языки искусственного интеллекта типа ЛИСП и ПРОЛОГ.

    Рассмотрим различные способы классификацииЭС.

    По назначению ЭСделятся на:

    • ЭС общего назначения.

    • Специализированные ЭС:

    1. проблемно-ориентированные для задач диагностики, проектирования, прогнозирования

    2. предметно-ориентированные для специфических задач, например, контроля ситуаций на атомных электростанциях.

    По степени зависимости от внешней средывыделяют:

    • Статические ЭС, не зависящие от внешней среды.

    • Динамические, учитывающие динамику внешней среды и предназначенные для решения задач в реальном времени. Время реакции в таких системах может задаваться в миллисекундах, и эти системы реализуются, как правило, на языке С++.

    По типу использования различают:

    • Изолированные ЭС.

    • ЭС на входе/выходе других систем.

    • Гибридные ЭС или, иначе говоря, ЭС интегрированные с базами данных и другими программными продуктами (приложениями).

    По сложности решаемых задачразличают:

    • Простые ЭС - до 1000 простых правил.

    • Средние ЭС - от 1000 до 10000 структурированных правил.

    • Сложные ЭС - более 10000 структурированных правил.

    По стадии созданиявыделяют:

    • Исследовательский образец ЭС, разработанный за 1-2 месяца с минимальной БЗ.

    • Демонстрационный образец ЭС, разработанный за 2-4 месяца, например, на языке типа LISP, PROLOG, CLIPS

    • Промышленный образец ЭС, разработанный за 4-8 месяцев, например, на языке типа CLIPS с полной БЗ.

    • Коммерческий образец ЭС, разработанный за 1,5-2 года, например, на языке типа С++, Java с полной БЗ.