На Горох
Информатика, 11 класс

§ 23. Экспертные системы

"Информатика (базовый и углублённый уровни) (в 2 частях)", Поляков К.Ю., Еремин Е.А.

Объяснение темы В оглавлении: § 23. Экспертные системы

Кратко о теме

Экспертная система — программа, которая использует знания специалистов и логические правила для решения задач в определённой области. Она нужна там, где недостаточно подставить числа в готовую формулу: например, при поиске причины неисправности или оценке ситуации. Факты и правила хранятся отдельно от программы, поэтому знания можно обновлять. Механизм вывода сопоставляет правила с известными фактами и строит заключения. Ответ системы зависит от того, насколько полна и точна её база знаний.

Объяснение темы

Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.

Определения и обозначения

Экспертная система — программа, которая использует знания специалистов и правила логического вывода, чтобы решать задачи в определённой предметной области. Это не универсальный ответчик, а инструмент для ограниченного круга ситуаций. Он нужен, когда решение опирается на опыт и множество условий, а не только на вычисление по формуле.

База знаний — часть экспертной системы, в которой хранятся факты и правила о предметной области. Факты описывают известные сведения, а правила связывают условия с возможными выводами. Такое разделение позволяет обновлять знания, не переписывая всю программу.

Правило вывода — формализованное условие вида «если …, то …», позволяющее получить новое заключение из известных фактов. Например: если устройство не включается и индикатор питания не горит, то возможна проблема с электропитанием. Правила превращают опыт специалистов в форму, которую программа может применять последовательно.

Механизм логического вывода — компонент, который сопоставляет факты с правилами и определяет, какие заключения можно получить. Он проверяет, выполнены ли условия правила, и использует подходящие правила для дальнейшего рассуждения. Благодаря ему система не просто хранит знания, а применяет их к конкретной задаче.

Как это устроено

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

Знания предметной области отделяют от программы: факты и правила помещают в базу знаний, чтобы их можно было изменять без переписывания всей системы. Это удобно, потому что сведения могут устаревать или уточняться, а логика работы программы при этом остаётся прежней. Специалисты могут добавлять правила и исправлять факты независимо от разработчиков алгоритма. Такое разделение также помогает проверять сами знания отдельно от работы механизма вывода.

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

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

При обратном выводе система проверяет гипотезу: ищет правила, способные её подтвердить, и выясняет, известны ли необходимые для них факты. Если нужных сведений пока нет, их можно запросить у пользователя или проверить через другие правила. Такой подход подходит, когда требуется ответить на конкретный вопрос, а не перечислить все возможные заключения. Он помогает не проверять факты, не связанные с выбранной гипотезой.

Компоненты экспертной системы и их назначение

КомпонентЧто содержит или делаетПример
База знанийХранит факты и правила предметной области.Правила диагностики неисправностей.
Рабочая памятьСодержит исходные факты и промежуточные сведения о текущей задаче.Признаки, сообщённые пользователем.
Механизм логического выводаСопоставляет факты с условиями правил и получает заключения.Определяет возможную причину сбоя.
Интерфейс пользователяПринимает сведения и показывает вопросы и результаты.Форма для ввода симптомов.
Компонент объясненияПоясняет, какие факты и правила привели к результату.Показывает цепочку рассуждений.

Чтобы понять устройство системы, проследи путь сведений: пользователь вводит данные, они попадают в рабочую память, а механизм вывода обращается к базе знаний. Затем система показывает заключение и, если предусмотрен компонент объяснения, его основания. Таблица помогает отличать хранение знаний от их обработки и взаимодействия с пользователем.

Разбор задач

1. Вывод по набору фактов и правил

Даны факты: датчик показывает высокую температуру и вентилятор не работает. Правила такие: «если температура высокая, то проверить охлаждение» и «если температура высокая и вентилятор не работает, то возможен отказ вентилятора». Нужно определить заключения системы. Будем считать, что других правил и фактов нет.

  1. Проверяем первое правило: факт о высокой температуре известен, значит его условие выполнено. Добавляем заключение «проверить охлаждение».
  2. Проверяем второе правило: высокая температура и неработающий вентилятор присутствуют среди фактов. Значит, можно добавить заключение «возможен отказ вентилятора».
  3. Сравниваем условия остальных правил с новым набором сведений. Других правил в задаче нет, поэтому продолжать вывод не с чем.

Ответ: система получит заключения «проверить охлаждение» и «возможен отказ вентилятора». Второе заключение выражает возможность, а не доказанную причину. Такой результат показывает, какие правила сработали на известных фактах.

2. Цепочка прямого вывода

Исходный факт: на улице мороз. Правило 1: «если на улице мороз, то температура ниже нуля». Правило 2: «если температура ниже нуля, то вода на открытом воздухе может замёрзнуть». Выясним, можно ли получить вывод о возможном замерзании воды. Важно не перескакивать через промежуточное заключение.

  1. Сначала сопоставляем факт «на улице мороз» с условием правила 1. Условие выполнено, поэтому добавляем новый факт: «температура ниже нуля».
  2. Теперь используем полученное заключение как факт. Оно совпадает с условием правила 2, поэтому добавляем вывод: «вода на открытом воздухе может замёрзнуть».
  3. Проверяем, появились ли новые факты, подходящие к другим правилам. В условии задачи дополнительных правил нет, значит цепочка завершена.

Ответ: заданный вывод получить можно. Цепочка имеет вид: мороз → температура ниже нуля → вода может замёрзнуть. Промежуточное заключение потребовалось, потому что оно связывает исходный факт с условием второго правила.

3. Проверка гипотезы обратным выводом

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

  1. Начинаем с гипотезы и ищем правила, в заключении которых она указана. Здесь подходят оба правила, поэтому гипотезу можно проверять по двум вариантам.
  2. Для первого правила нужны два факта: насос не включается и питание исправно. Ни один из них не известен, значит их следует запросить или проверить.
  3. Для второго правила известен слабый поток, но неизвестно, шумит ли насос необычно. Нужно выяснить этот факт; если он подтвердится, условия второго правила будут выполнены.
  4. Оцениваем оба пути отдельно. Невыполнение одного правила не исключает другое, потому что гипотезу могут подтверждать разные сочетания условий.

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

Типичные ошибки

Смешивать базу знаний и механизм вывода. База хранит сведения и правила, а механизм их обрабатывает; подмена одного другим приводит к путанице между данными и действиями программы. Такую ошибку допускают, потому что оба компонента участвуют в получении результата. Проверь себя: спроси, отвечает ли часть системы на вопрос «что известно?» или «как получить вывод?».

Применять правило при выполнении только части условий. Если в условии правила соединены словом «и», нужны все перечисленные факты. Ошибка возникает, когда заметен один подходящий признак и его принимают за достаточное основание. Перед выводом выпиши условия правила и отметь каждое из них; заключение допустимо только при полном совпадении.

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

Путать прямой и обратный вывод. При прямом рассуждают от фактов к заключениям, а при обратном начинают с гипотезы и ищут нужные для неё условия. Путаница появляется из-за того, что оба способа используют одни и те же правила. Проверь направление: если сначала известны данные и ищут результат — вывод прямой; если проверяют утверждение — обратный.

Связь с другими темами

Для понимания экспертных систем полезны знания об алгоритмах, условных конструкциях и логических условиях: правила устроены так, что программа проверяет их условия. Тема связана с базами данных, поскольку сведения нужно хранить и организовывать, и с искусственным интеллектом, поскольку система применяет знания для решения задач. Представление знаний и логический вывод пригодятся при изучении интеллектуальных систем, систем поддержки принятия решений и других методов искусственного интеллекта.

Что запомнить

  • Экспертная система решает задачи в ограниченной предметной области.
  • База знаний хранит факты и правила.
  • Механизм вывода применяет правила к известным фактам.
  • Прямой вывод движется от фактов к заключениям.
  • Обратный вывод проверяет гипотезу через необходимые для неё условия.
  • Качество ответа зависит от полноты и точности базы знаний.

Частые вопросы по теме

Чем экспертная система отличается от обычной программы?

Обычная программа обычно выполняет заданный алгоритм, а экспертная система применяет правила и знания о конкретной предметной области. Она может объяснять, на каких фактах основан вывод. Её решения ограничены тем, что записано в базе знаний.

Может ли экспертная система обучаться сама?

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

Что произойдёт, если в базе знаний нет нужного правила?

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

Чем прямой вывод отличается от обратного?

Прямой вывод начинается с известных фактов и применяет подходящие правила, чтобы получить новые заключения. Обратный вывод начинается с гипотезы и выясняет, какие условия нужны для её подтверждения. В первом случае ищут возможные результаты, во втором — проверяют конкретный.

Почему экспертная система может дать неправильный ответ?

Вывод может быть неверным, если факты или правила в базе неполны, устарели либо ошибочны. Ошибку также может вызвать неточно введённая пользователем информация. Поэтому результат системы зависит от качества знаний и исходных данных.

Спросить по теме параграфа

§ 23. Экспертные системы

Эта же тема в других учебниках

Учебник

Оглавление →
Предмет
Информатика
Класс
11 класс
Учебник
"Информатика (базовый и углублённый уровни) (в 2 частях)", Поляков К.Ю., Еремин Е.А.