"Информатика (изд. "БИНОМ. Лаборатория знаний")", Угринович Н.Д.
Экспертная система распознавания химических веществ помогает определить вещество по результатам наблюдений и опытов. Она хранит сведения о характерных признаках и правила, связывающие эти признаки с возможными выводами. Механизм вывода сопоставляет факты с правилами, а система может объяснить, как получила ответ. Один признак не всегда достаточен: для надёжного распознавания иногда нужны дополнительные реакции и наблюдения.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Экспертная система — программа, которая использует знания специалистов и правила логического вывода для решения задач в определённой области. Иными словами, она не просто выдаёт заранее заданный ответ, а применяет накопленные сведения к конкретным данным. Это нужно, чтобы решать задачи, для которых важны опыт и специальные знания, например распознавать вещества.
База знаний — совокупность сведений о химических веществах и правил, связывающих наблюдаемые признаки с возможными выводами. В ней могут храниться описания результатов реакций и условия, при которых допустимо сделать заключение. База знаний нужна системе как источник сведений, с которыми она будет сравнивать результаты опыта.
Факт — исходное или полученное в ходе работы системы утверждение, например о результате качественной реакции. Факт описывает то, что известно системе: например, что при добавлении реактива образовался осадок. Представление наблюдений в виде фактов позволяет однозначно сопоставлять их с условиями правил.
Механизм вывода — часть экспертной системы, которая сопоставляет факты с правилами и получает заключение. Он проверяет, выполняются ли условия правил, и использует подходящие заключения при дальнейшей проверке. Благодаря этому система может пройти от отдельных наблюдений к возможному ответу.
Распознавание вещества начинается с наблюдений или результатов опытов: изменения цвета, образования осадка, выделения газа и других признаков. Эти признаки важны, потому что химическое вещество нельзя определить только по его названию, если название неизвестно: нужно получить данные о его свойствах. Чтобы результаты можно было сравнивать, наблюдения должны быть зафиксированы достаточно точно.
Наблюдения переводятся в факты, которые система может сопоставить с условиями правил из базы знаний. Например, словесный результат опыта записывают как утверждение «появился осадок». Такой перевод нужен, чтобы система работала не с неопределённым описанием, а с фактами, сформулированными в том же виде, что и условия правил.
Правило связывает признаки с возможным выводом: если выполнены его условия, система добавляет заключение к известным фактам. Его можно представить словами: «если наблюдается признак А, то возможен вывод Б». Заключение не обязательно сразу означает окончательное распознавание: оно может подсказать, какие варианты следует проверить дальше. Поэтому правило — не само наблюдение, а способ рассуждать на его основе.
Механизм вывода последовательно проверяет применимые правила, пока не определит вещество или не установит, что имеющихся данных недостаточно. На каждом шаге он сравнивает известные факты с условиями правил и учитывает полученные заключения. Если для выбора между несколькими веществами не хватает признаков, система не должна угадывать ответ. Вместо этого она может запросить новые данные или указать на неопределённость.
Экспертная система объясняет распознавание цепочкой использованных фактов и правил, поэтому её вывод можно проверить. Пользователь видит, какие наблюдения были учтены и какие условия привели к заключению. Это помогает обнаружить ошибку ввода, неполные данные или неподходящее правило. Объяснение особенно полезно, когда нужно понять не только ответ, но и причину выбора.
Таблица показывает путь от наблюдения до объяснённого заключения. В графе с примером результата указано, что может появиться на соответствующем шаге, а не конкретный ответ для неизвестного опыта. Пользуйтесь строками последовательно: каждый следующий этап зависит от данных предыдущего.
| Этап | Что поступает в систему | Что делает система | Пример результата |
|---|---|---|---|
| Ввод наблюдений | Описание результата опыта | Принимает данные о признаках | «Появился осадок» |
| Формирование фактов | Записанные наблюдения | Представляет наблюдение как факт | Факт: образовался осадок |
| Проверка условий правил | Набор известных фактов | Сопоставляет факты с условиями правил | Найдено подходящее правило |
| Получение вывода | Подтверждённые условия правил | Добавляет заключение или отмечает нехватку данных | Возможный вариант вещества |
| Объяснение вывода | Полученное заключение и ход проверки | Показывает использованные факты и правила | Цепочка рассуждения для проверки |
В пробирке при добавлении реактива образовался осадок. Покажем, как система должна использовать это наблюдение для распознавания вещества. Само по себе условие не сообщает, какой именно осадок получен и какие правила есть в базе знаний, поэтому нельзя назвать конкретное вещество. Наша задача — правильно пройти первые шаги рассуждения.
Ответ: наблюдение нужно внести как факт и сопоставить с правилами базы знаний. Назвать вещество по одному этому признаку нельзя без сведений о реактиве, возможных веществах и правилах.
Теперь требуется выбрать вещество из нескольких предложенных по двум результатам качественных реакций. Здесь важно учитывать не только совпадения, но и противоречия: вещество должно согласоваться со всеми введёнными фактами. Удобно проверять варианты по очереди, используя одни и те же данные и правила.
Ответ: следует выбрать единственный вариант, согласующийся с обоими фактами и правилами. Без конкретных результатов реакций и списка веществ определить название невозможно.
В третьей задаче система не смогла однозначно определить вещество. Дополнительный опыт нужно выбирать не наугад, а так, чтобы его возможные результаты различались у оставшихся вариантов. Тогда новый факт поможет системе применить правило, которое отделит один вариант от другого.
Ответ: нужен опыт, результат которого различает оставшиеся варианты; его конкретный вид зависит от веществ и имеющихся правил. Без списка вариантов и данных базы нельзя указать определённый реактив.
Ошибка — считать наблюдение готовым выводом о веществе. Её допускают, когда один яркий признак кажется характерным, хотя он может встречаться у разных веществ. Проверьте себя: записан ли только результат опыта или уже сделано заключение, и подтверждено ли оно правилом?
Ошибка — игнорировать часть результатов опыта. Тогда система может выбрать вариант, который подходит одному факту, но противоречит другому; так бывает, если данные вводят не полностью или проверяют только первое подходящее правило. Перед выводом сверьте список фактов с исходными наблюдениями и убедитесь, что учтён каждый результат.
Ошибка — путать факт и правило. Факт сообщает, что наблюдалось, а правило связывает условия с возможным заключением; их смешивают, когда формулировку наблюдения сразу принимают за объяснение. Для самопроверки задайте два вопроса: «Что произошло в опыте?» — это факт; «При каком условии какой вывод возможен?» — это правило.
Ошибка — считать отсутствие вывода доказательством отсутствия вещества. Такое заключение неверно, потому что в базе может не быть нужного правила или системе может не хватать данных; эти причины часто упускают, ожидая от программы ответ на любой вопрос. Проверьте, хватает ли фактов и есть ли подходящие правила, прежде чем делать вывод о самом веществе.
Для понимания экспертных систем нужны знания об алгоритмах, условиях и логических высказываниях: правила работают как условия, по которым выбирается дальнейший вывод. Представление знаний в виде фактов и правил показывает, как компьютер использует сведения, а не только выполняет вычисления. В химии распознавание опирается на качественные реакции и характерные признаки веществ, которые дают системе исходные факты. Похожие идеи применяются в диагностике и технической поддержке, когда решение принимают на основе правил и опыта специалистов.
Чем экспертная система отличается от обычной программы?
Экспертная система хранит знания о конкретной области в виде фактов и правил, а затем использует их для получения заключения. Обычная программа тоже выполняет заданный алгоритм, но не обязательно содержит базу знаний или объясняет вывод цепочкой правил.
Что хранится в базе знаний экспертной системы?
В ней хранятся сведения о веществах, их признаках и правила, которые связывают условия с возможными заключениями. Например, правило может описывать, какой вывод допустим при определённом результате качественной реакции.
Как результат химического опыта становится фактом для системы?
Результат опыта записывают как понятное системе утверждение: например, «образовался осадок» или «выделился газ». Такое утверждение добавляют к исходным фактам и используют при проверке правил.
Почему одного признака может быть недостаточно для распознавания вещества?
Одинаковый признак может наблюдаться у разных веществ, поэтому он не всегда позволяет выбрать единственный вариант. Система сопоставляет несколько результатов и проверяет, какие вещества согласуются со всеми фактами.
Что означает, если экспертная система не смогла сделать вывод?
Это не доказывает, что вещества нет: системе может не хватать наблюдений или подходящего правила в базе знаний. Нужно проверить введённые факты и, если возможно, провести опыт, который различит оставшиеся варианты.
2.7. Экспертные системы распознавания химических веществ