Система представления и обработки знаний ЭЗОП
Е.М. Бениаминов, Д.М. Болдина
РГГУ
1. Основные положения
Разрабатываемая система основана на категорном подходе к представлению знаний [1], который является естественным развитием реляционного подхода к базам данных, дополненного идеями, возникшими в программировании в связи с применением алгебраических методов к типам данных в программировании. В категорном подходе используются развитые математические средства математической теории категорий и достижения теории категорий в ее приложениях к математической логике [2].
В основе категорного подхода к представлению знаний лежит предположение, что определение всякого понятия может быть представлено в виде наборов областей, функций из одних областей в другие, отношений, констант, переменных и соотношений между ними в виде аксиом.
Это предположение является общим для систем, в основе которых лежит логическое моделирование. При разработке системы ЭЗОП предполагается учет стандартного языка межмашинного обмена знаниями KIF [3] для систем подобного рода.
Широта принятого тезиса подтверждается тем, что схемы базы данных и абстрактные типы данных являются примерами таких понятий. Эксперименты показывают (см., например, [4]), что так представляются понятия многих предметных областей знаний.
Для представления сложных понятий в категорном подходе предполагается, что внутри общих понятий не все элементы областей могут быть известны, и они могут уточняться в других понятиях, использующих данное общее понятие. В системе представления понятий применяются основные принципы объектно-ориентированного программирования. Кроме того, при формировании понятий используются стандартные категорные операции, строящие новые области, преобразования и отношения из имеющихся. Особенностью категорных операций является, например, возможность построения новых областей таких, как декартово произведение, из областей, не все элементы которых известны. Имеется стандартный набор таких операций, разработанный в рамках теории категорий.
Применение системы ЭЗОП ориентировано, главным образом, не на программирование отдельных задач, а на создание автоматизированной информационной системы о знаниях в некоторой предметной области и, затем, на автоматизированную поддержку постановок и решений многочисленных задач, для формулировок которых используются понятия и задачи, уже представленные в этой системе. В этом отношении проектируемая система близка к системе Ontolingua[4,5]. Предполагается, что система ЭЗОП создаст более удобную среду и язык, чем система Ontolingua, для формирования библиотек онтологий по различным областям знаний специалистам в области этих знаний и обеспечит перевод в стандартный формат по межмашинному обмену знаниями с системами обработки знаний.
Важный компонент предлагаемого подхода, наиболее существенный с точки зрения приложений, - это языковые средства ЭЗОП. Так как этот язык разрабатывается для использования проблемными специалистами, возможно не являющимися профессиональными программистами, то к удобству его использования должны предъявляться особые требования. В основе построения языка системы ЭЗОП положены принципы открытого языка представления знаний [6].
Средства представления знаний должны обеспечить возможность проблемным специалистам представлять понятия своей предметной области для автоматизированной обработки, выражать условия задачи и вопросы к миру задачи, используя введенные понятия и языковые шаблоны, принятые в области знаний проблемного специалиста.
Язык ЭЗОП является языком представления знаний и языком программирования задач, расширяемым шаблонами языка приложений по мере пополнения базы понятий системы. Процесс программирования на языке ЭЗОП - это диалог с системой программирования ЭЗОП, в котором специалист формирует постановки задач проблемной области, используя уже введенные понятия, как модули, или вводит новые понятия и шаблоны языка.
2. Общее описание состава и функций системы
Система представления знаний ЭЗОП состоит из взаимодействующих баз данных, машины (программы) логического вывода и подсистем, поддерживающих некоторые специальные функции системы.
В каждый момент времени в системе выделяется текущее понятие (задача), с которым работает пользователь или которое он формирует. Текущее понятие может пополняться данными других понятий, редактироваться в процессе диалога с пользователем.
Состояние текущего понятия описывается в системе в виде базы данных понятия. Схема базы данных единая для всех понятий (не зависит от представляемого понятия) определяется составом основных категорных операций системы. В базе данных текущего понятия представляется определение и аппроксимация категории понятия. Вопрос к аппроксимации представляется в виде запроса к базе данных текущего понятия.
Система поддержки диалога с пользователем организует взаимодействие с пользователем, осуществляет анализ предложений пользователя и за счет взаимодействия подсистем по предложениям пользователя и состоянию системы, обеспечивает выдачу информации, которая может быть использована в системах текстовых редакторов или передана для обработки специализированным системам.
3. Состояние разработки. Направления возможного использования результатов
В настоящее время разработан математический аппарат категорного подхода к представлению знаний, в котором с каждым представляемым понятием связываются:
- категорное представление определяемого понятия - алгебраический объект, отражающий полное знание о понятии, которое вытекает из определения понятия;
- конечная аппроксимация объекта, отражающая непосредственно доступные системе знания о понятии в текущий момент.
Определены операции над аппроксимациями, которые строят аппроксимации новых понятий, определяемых через имеющиеся понятия, и расширяют аппроксимации текущих понятий. Разработаны основные структуры открытого языка и системы представления знаний ЭЗОП. Разработан вариант системы ЭЗОП на языке программирования Visual Prolog.
Предлагаемая система автоматизированного представления и обработки знаний наиболее эффективна для представления хорошо структурированных областей знаний. Можно выделить следующие направления использования разработки:
- создание справочных систем по отдельным курсам школьных знаний таких, как физика, химия и т.д.;
- создание и поддержка баз непроцедурных знаний о предметных областях в экспертных системах;
- проектирование и описание схем баз данных на языке высокого уровня;
- создание и генерации проблемно-ориентированного языка конкретной предметной области и создание библиотек формальных онтологий для данной предметной области знаний.
Литература
- Бениаминов Е.М. Основания категорного подхода к представлению знаний. Категорные средства - Изв. АН СССР Техн. кибернетика N 2, 1988.
- Голдблатт Р. Топосы. Категорный анализ логики. М.: Мир 1983.
- Genesereth M. R., Fikes R.E. (Editors). Knowledge Interchange Format, Version 3.0 Reference Manual. //Computer Science Department, Stanford University, Technical Report Logic-92-1, June 1992.
- Farquhar A, Fikes R, Rice J. The Ontolingua Server: A Tool for Collaborative Ontology Construction. // Knowledge Systems Laboratory, KSL-96-26, September 1996 (http://ontolingua.stanford.edu/).
- Бениаминов Е.М., Болдина Д.М. Система представления знаний Ontolingua - принципы и перспективы. // НТИ, Сер.2, 1999, № 10.
- Бениаминов Е.М., Манушина М.Ю. Принципы построения открытого языка шаблонных выражений в системе представления знаний.//НТИ, Сер.2, 2000,№ 7.