75
7.5. Онтологии и правила наследования отношений
Представление знаний – весьма сложный и творческий процесс. Основная
проблема здесь заключается в том, что создание базы знаний почти всегда
начинается «с нуля»; при этом отсутствуют т.н. знания начального уровня,
которыми человек обзаводится, начиная с раннего детства. Создание таких баз
бытовых знаний ведется уже более 25 лет компанией Cycorp. (www.cyc.com
),
однако, по признанию ее основателя Дагласа Лената (Douglas Lenat), машина
все еще нуждается в том, чтобы ей в явном виде сообщали, что родители
старше своих детей, и что люди перестают выписывать газеты, когда умирают.
Знания конкретной предметной области можно разделить на общие для всех
экземпляров и индивидуальные для каждого. Очевидно, что если
формализация
знаний для класса объектов будет выполнена один раз, то затем она может
использоваться другими авторами при описании отдельных экземпляров.
Таким образом, формализация знаний любой предметной области должна
базироваться на знаниях более общего уровня, описывающих основные
отношения между объектами и общие свойства объектов. Такие знания
называются онтологиями. Например, онтология для описания
класса
«человек», может содержать отношения “has part” с объектами «рука»,
«голова» и свойства «имеет имя», «имеет дату рождения» и т.п.
Применение таких знаний к объектам нижнего уровня осуществляется с
помощью правил наследования:
Если X AKO Y и Y AKO Z то X AKO Z – если X является
подмножеством Y, а тот, в свою очередь, частью еще большего множества Z, то
класс X является подмножеством Z.
Если X ISA Y и Y AKO Z то X ISA Z – если X является экземпляром
класса Y, а тот, в свою очередь, частью множества Z, то X является
экземпляром класса Z.
Если X has_part Y и Y has_part Z то X has_part Z – если X имеет в
своем составе Y, а тот, в свою очередь, имеет
составную часть Z, то X имеет в
своем составе Z.
Если X ISA Y и Y has_part Z то X has_part Z – если X является
экземпляром класса Y, а тот, в свою очередь, имеет составную часть Z, то
экземпляр X имеет в своем составе Z.
Если X AKO Y и Y has_part Z то X has_part Z – если X является
подмножеством Y, а тот, в свою очередь, имеет составную часть Z, то класс X
имеет в своем составе Z.
Если X ISA Y и Y has_a Z то X has_a Z – если X является экземпляром
класса Y, а тот, в свою очередь, имеет свойство Z, то экземпляр X имеет
свойство Z.
Если X AKO Y и Y has_a Z то X has_a Z – если X является
подмножеством Y, а тот, в свою очередь, имеет свойство Z, то класс X имеет