Структурирование знаний в программах

Рассмотрим, каким образом знания структурированы в програм­мах, т.е. способы представления знаний. Существует много стандартных способов представления знаний, и при построении ЭС может быть использован любой из них, сам по себе или в сочетании с другими. Каждый способ позволяет получить программу с некоторы­ми преимуществами — делает ее более эффективной, облегчает ее понимание и модификацию. Широкий обзор наиболее важных спосо­бов можно найти в «Справочнике по искусственному интеллекту». В современных ЭС чаще всего используются три самых важных метода представления знаний: правила (самый популярный), семантические сети и фреймы.

Представление знаний, основанное на правилах, построено на ис­пользовании выражений вида ЕСЛИ (условие) — ТО (действие). На­пример:

Если пациент был по профессии изолировщиком до 1988 г., то пациент непосредственно работал с асбестом.

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

Когда текущая ситуация (факты) в задаче удовлетворяет или со­гласуется с частью правила ЕСЛИ, то выполняется действие, опреде­ляемое частью ТО. Это действие может оказаться воздействием на окружающий мир (например, вызовет распечатку текста на термина­ле пользователя), или же повлиять на управление программой (например, вызвать проверку и запуск некоторого набора правил), или может сводиться к указанию системе о получении определенного заключения (например, необходимо добавить новый факт или гипо­тезу в базу данных).

Сопоставление частей ЕСЛИ правил с фактами может породить так называемую цепочку выводов. Цепочка выводов, образованная по­следовательным применением правил 1 и 2. Эта цепочка показывает, как система использует правила для вывода о том, насколько серьезную дозу канцерогенного вещества пациент получил при работе с асбестом.

Правила обеспечивают естественный способ описания процесс управляемых сложной и быстро изменяющейся внешней средой. Через правила можно определять, как программа должна реагировать на изменение данных; при этом не нужно заранее знать блок-схем) управления обработкой данных. В программе традиционного типа схема передачи управления и использования данных предопределена в самой программе. Обработка здесь осуществляется последовательными шагами, а ветвление имеет место только в заранее выбранных точках. Этот способ управления хорошо работает в случае задач, допускающих алгоритмическое решение, если к тому же при этом данные меняются достаточно медленно, например, при решении систем линейных уравнений. Для задач, ход решения которых управляется самими данными, где ветвление скорее норма, чем исключение, это способ малоэффективен. В задачах такого рода правила дают возможность на каждом шаге оценить ситуацию и предпринять соответствующие действия. Использование правил упрощает объяснения того, что и как сделала программа, т. е. каким способом она пришла к конкретному заключению.

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

Добавить комментарий