Диссертация (1090633), страница 7
Текст из файла (страница 7)
Необходим язык, максимально приближенный к языкупрограммирования, с возможностью его использования экспертами, незнакомыми с программированием. Представляется целесообразным разработатьязык моделирования абстрактной семантической сети. В формирования языкабудем использовать алгебраический подход для описания онтологий,предложенный в [42].В алгебраическом подходе онтология рассматривается как теория,высказывания которой формируются на основе множества имен типов и именопераций, называемого сигнатурой Σ=(S,OP), где S – множество типов, OP –28множество операций. Вводится Σ-алгебра для сигнатуры как семейство Aмножеств As (носителей), заданных для каждого сорта s из S и отношения наносителях: Отношение: A×A→A.
Иначе говоря, на семействе множеств,представляющих в Σ-алгебре типы, имена которых заданы в множестве S,задаются отображения, имена и типы которых заданы в множестве Σ. Каждаятакая Σ-алгебра представляет собой модель вычисления, заданную на именахтипов и операций, перечисленных в сигнатуре. В свою очередь, любой тип s принеобходимости может быть представлен как новая сигнатура, со своиммножеством типов и операций. Для абстрактной семантической сетиминимальное множество типов включает типы «Узел сети» и «Связь междуузлами».Сигнатуры определяются задачами, выполняемыми над онтологиями, амножество имен типов формируется из множества концептов онтологий.Операции представляют средства как для построения отношений междуобъектами, так и для построения новых понятий (типов) из уже существующих.Смысл операций задается соотношениями между ними, выраженными в видеравенств.Назовем термом выражение вида σ(T1, T1,…, Tn),где σ ϵ Σ – имя операции; T1, T1,…, Tn – либо переменные соответствующих типов,либо термы, сформированные из имен операций данной сигнатуры тем жеспособом.Термы определяют формальное представление знаний, конкретное знаниеполучается при замене имен типов именами объектов.
Терм @ используется дляпредставления высказывания «любой из множества», терм «.» для разделениятерма имени класса или объекта от имени атрибута, терм «:» — для указания типазначения, терм {} определяет множество элементов. Определим множестватипов языка S={TC, TR} и множество операций Σ. Типы классовTC= {Onto, OCls, Ind, XMLSchemeDatetype},гдеOnto представляет семантическую сеть;OCls определяет понятие онтологии;Ind экземпляр понятия онтологии.Класс XMLSchemeDatetype= {string, int,float...} предназначен дляопределения множеств типов значений.Структура сети определяется термами:@Onto={@OCls}@OCls.SubClsOf=@OCls – описание отношения тип-подтип;@Ind.IsInstanceOf=@OCls – отношение класс-объект класса.Типы связейTR={DatProp, ObjProp, ClsDatProp, ClsObjProp, IndDatProp, IndObjProp}29задают классы, определяющие связи между узлами сети. Здесь типы связейDatProp, ObjProp являются бинарными, и определяют связи между классамионтологий, представленными атрибутами Domain и Range, причем:ObjProp=<Title, Domain:{@OCls}, Range:{@OCls}>;DatProp=<Title, Domain:{@OCls}, Range:{@XMLSchemeDatetype}>.Связи DatProp, ObjProp представляют мультидуги в мультиграфе,представленном классом с типом Ontology.
Они задают отношения общегохарактера для всей семантической сети. Мощность отношений задаетсяатрибутами minCardinality и maxCardinality.Типы ClsDatProp, ClsObjProp, IndDatProp, IndObjProp задают отношениямежду классами и объектами классов, специализируя классы с типами DatProp,ObjProp. Эти типы связей являются унарными:ClsObjProp=<Title, Range:{@OCls}>ClsDatProp=<Title, Range:{@ XMLSchemeDatetype}>.Они интерпретируются только в контексте узла сети и задаются как атрибутыкласса или объекта:@Cls.@ClsDatProp.Range=@XMLSchemeDatetype@Cls.@ClsObjProp.Range=@OCls;@Ind.@IndDatProp.Range=@XMLSchemeDatetype@Ind.@IndObjProp.Range=@Ind.Специализация определяется атрибутом SubPropertyOf:@TR.SubPropOf=@TR.Введем термы, определяющие некоторые общие атрибуты типов имя узлаили связи сети:@TC.title:string;идентификатор узла:@{OCls, Ind}.id:string;адрес, определяющий положение узла в сети:@{OCls, Ind}.url:string.С использованием термов можно определять операции над семантическойсетью.
Определим ряд шаблонов выражений, определяющих операции надклассами и отношениями:1. Создание онтологии:AddOntology(title:string).Например, онтология навигации ONav создается командой:ONav=AddOntology(“ONav”),класс онтологии командой:AddOntoClass (имя_онтологии: string, имя_ класса_ родителя: string).Таким образом, запись:Project=AddOntoClass(“ISO24744”,“WorkProduct”)30означает, что в онтологии ISO2474 создан класс Project, для которогородительским классом является класс WorkProduct. Факт наличия родительскогокласса для класса и объекта может быть также определен заданием связи:Project.SubClassOf=WorkProduct.2.
Создание объекта для класса онтологии:Object=AddIndividual(имя_онтологии, имя_ класса_ родителя, имя_объекта,идентификатор)3. Операция определения направленного отношения между классом –источником и классом-целью:Отношение_Класса=ClassObjectProperty(имя_отношения,класс_цель)Выражение:имеет_примитив_моделирования = Модель.ClassObjectproperty( )означает, что установлено отношение «имеет_примитив_моделирования» длякласса Модель без указания класса-цели. Класс-цель может быть определен либофункциональным способомМодель.Имеет_примитив_моделирования(примитив);либо прямым указанием класса:Модель.Имеет_примитив_моделирования =примитив.4.
Операция определения направленного отношения для объекта-источника:Имя_отношения=Объект_источник_отношения.IndObjectProperty( ).Множество классов типа ClassObjectProperty и ClassDataProperty, связанноес классом типа OntoClass, определяет его граф. Аналогичным образом, множествоклассов типа IndObjectPropertyиIndDataProperty, связанное с объектом класса,определяет граф объекта.2.1.3. Объектно-ориентированное представление семантических моделейКаждая из онтологий может быть, как БЗ, предоставляющей структуру знаний некоторой предметной области, так и хранилищем ее актуальных объектов[43].
С другой стороны, при разработке инструментария для семантического моделирования в основном используется объектно-ориентированные методологии итехнологии, использующие для формального представления информационных ресурсов понятия объектно-ориентированных классов и объектов.При этом возникает задача представление онтологии в виде объектно-ориентированной модели, отражающей представление онтологии в памяти вычислителя.
Обычно создается некоторая СМ в рамках некоторой онтологии, ее примитивы и результаты моделирования представлены в виде RDF-триплетов, хранимых в реляционной БД. При обработке знаний в соответствии с традиционнойтехнологией объектно-реляционного отображения каждому онтологическомуклассу, представленному набором триплетов, ставится в соответствие объектноориентированный класс, что связано с трудоемкой разработкой, все еще, плохоподающейся автоматизации.31Для повышения эффективности необходимо, чтобы каждой семантическойконструкции когнитивного уровня рассуждения был сопоставлен наборунифицированных объектов, размещенный в памяти соответствующегоинструмента, как оперативной, так и долговременной.
В этом случае появляютсявозможности: проектирование компьютерных систем можно осуществлять на основеунифицированных логико-семантических моделей, рассматривая разработкулогико-семантической модели проектируемой системы как первый этап еепроектирования обеспечить модульную (компонентную, крупноблочную) разработкулогико-семантических моделей компьютерных систем на основе библиотексовместимых типовых многократно используемых компонентов (онтологий,логических операций и т.д.); рассматривать различные варианты технической реализациикомпьютерных систем как различные способы интерпретации унифицированныхлогико-семантических моделей компьютерных систем, что дает возможностьразрабатывать такие интерпретаторы независимо от проектирования конкретныхсистем и включать эти интерпретаторы в состав среды проектирования; обеспечить полную совместимость средств проектирования спроектируемыми системами – среда проектирования строится какинтеллектуальная система на основе унифицированных логико-семантическихмоделей; включить в состав среды проектирования компьютерных систем комплексинтеллектуальных help-систем, ориентированных на повышение квалификацииразработчиков; ориентироваться на методику поэтапного эволюционного проектированиякомпьютерных систем на основе быстрого создания прототипов.