УДК 004.652.3, 004.652.8
ОБЪЕКТНО-АТРИБУТНАЯ БАЗА ДАННЫХ ДЛЯ ОПИСАНИЯ ПРОСТРАНСТВЕННО-ВРЕМЕННЫХ ОТНОШЕНИЙ ОБЪЕКТОВ1314
Салибекян Сергей Михайлович, к.т.н., доцент Национального исследовательского университета «Высшая школа экономики», Московский институт электроники и математики, Москва,
Петрова Светлана Борисовна, студент Национального исследовательского университета «Высшая школа экономики», Московский институт электроники и математики, Москва, [email protected] Дени^ва Юлия Андреевна, магистрант Национального исследовательского университета «Высшая школа экономики», Московский институт электроники и математики, Москва, [email protected]
В настоящее время большое внимание научной общественности обращено к системам ориентации технических объектов в пространстве: автоматические системы управления транспортными средствами, компьютерные игры, автоматические межпланетные системы (луноход, марсоход и т.п.), гибкие производственные линии, техническое зрение. В нашей статье мы предложим методику описания пространственно-временных и причинноследственных отношений между объектами, которые можно будет использовать в подобных системах.
Изначально наша работа была связана с созданием формата базы данных (БД) для описания смысла, извлеченного из текста на естественном языке. БД должна была иметь возможность описывать достаточно широкую предметную область, вплоть до всего окружающего мира (на тематику текста не накладывается никаких ограничений). И т.к. в реальном тексте довольно часто присутствует описание пространственно-временных и причинно-следственных отношений, возникла необходимость разработать методику их описания и анализа. В дальнейшем мы расскажем о формате всей БД, и более подробно остановимся на способе описания пространственно-временных и причинно-следственных отношений, являющейся частью БД.
Основой методики создания БД стали, во-первых, объектно-атрибутный (ОА) подход к организации вычислительного процесса и структур данных [1,2], позволяющий создавать БД сетевого (графового) типа и позволяющий производить динамическое преобразование структур данных без опасности нарушить их целостность. Во-вторых, структурная грамматика [3] (в частности, теория синтаксических ролей Ч. Филлмора [4], и теория семантических валентностей [5]), которая позволяет описывать смысл текста в виде графа, узлы которого ассоциируются с объектами или действиями, а дуги - со смысловыми связями между ними. Каждая часть речи имеет определенный набор связей (валентностей), с помощью которых она может порождать смысловые связи с другими словами. Валентностями они называются по аналогии с химией: как у атома имеются несколько валентностей, с помощью которых он может объединяться с другими атомами и образовывать молекулу, так и языковые единицы (в частности, слова), могут «сцепляться» с другими словами и образовывать смысловые конструкции. Например, глагол имеет следующие валентности: субъект (тот, кто производит действие), объект (над кем производится действие), инструмент, адресат и т.д. ОА-подход, для которого разработана математическая модель [6], позволил формализовать структурную грамматику и дал возможность реализовать ее на ЭВМ. В результате граф, отражающий объекты, играющие определенные синтаксические роли, и смысловые связи между ними, был реализован в виде семантического ОА-графа (базы данных (БД) сетевого (графового) типа) [7]. Фрагмент
13
Исследование осуществлено в рамках Программы фундаментальных исследований НИУ ВШЭ в 2015 год
14 Статья рекомендована к опубликованию в журнале "Прикладная информатика"
146
семантического ОА-графа приведен на рис. 1. В данном примере узлами являются описания объектов, их свойств и отношений между объектами. Семантические связи реализуются с помощью информационных пар (ИП), в нагрузках которых располагаются указатели на информационные капсулы, ассоциированные с объектами, свойствами и отношениями.
Рис. 1 - Семантический ОА-граф
В данной статье мы не касаемся методики преобразования исходного текста в семантический ОА-граф, которая описана в [7], а останавливаемся на структуре самого семантического ОА-графа и методике его анализа. Итак, ОА-граф, используемый для описания смысла текста, можно разделить на четыре уровня (рис. 2): объектов, свойств и состояний, пространственно-временных и причинно-следственных отношений, а также чисел и измерений. Каждый уровень делится на три подуровня: описание множества, список элементов множества, элементы множества. Такое деление на подуровни необходимо для того, чтобы описывать множества объектов, состояний или локативов (точек в пространстве-времени). Например, выражение «Объект1 и Объект2» обозначает неупорядоченное множество типа «И», т.е. множество из нескольких объектов, присутствующих одновременно. «Объект1 или Объект2» - это неупорядоченное множество типа «ИЛИ» (один из объектов или два объекта одновременно»). А «Сначала Объект1 потом Объект2» -упорядоченное множество. В множество могут объединяться не только объекты, но и их свойства и состояния («Шел и нёс груз.», «большой и сильный»), пространственновременные и причинно-следственные отношения объектов, числа и измерения («10 или 15 метров», «5 или 10 объектов»). Такой формат БД позволяет описывать широкий класс предметных областей и производить семантический поиск информации в ней [8].
Теперь остановимся подробнее на третьем уровне ОА-БД, для которого нам пришлось разработать некое подобие псевдофизической логики (т.е. способа описания пространственно-временных и причинно-следственных отношений и способа вывода из имеющейся сведений новой информации). Псевдофизические логики делятся на: временную, пространственную (топологические (описание взаимного расположения объектов без метрики) и метрическую (когда задается расстояние между объектами)), направления, и каузальную (причинно-следственную). Для описания какой-либо ситуации с помощью естественного языка, необходимо применять все вышеперечисленные виды псевдофизической логики. Причем логика должна быть реализована на базе сетевой (графовой) модели, чтобы ее можно было вписать в семантический ОА-граф. Из литературных источников известны логики в основном на основе функциональной модели, например, [9]; поэтому нам пришлось разрабатывать свою уникальную сетевую (графовую) псевдофизику.
147
Рис. 2 - Формат ОА-базы данных
Основными понятиями разработанной псевдофизики являются «локатив» и «трек». Локатив обозначает точку в пространстве-времени, а трек описывает множество взаимосвязанных локативов. Треки могут быть нескольких типов: динамический (описывает перемещение объекта), направление (указывает вектор направления в пространстве), топологический (взаимное расположение объектов как с метрикой, так и без), формы (форма и габариты объекта). Для их описания в ОА-графе выделено три подуровня (рис. 2). Первый - описание самого трека, где, например, указываются длина маршрута, время движения по маршруту, начало координат, тип множества локативов и т.д. На следующем уровне (список локативов) располагается капсула, в которой находятся указатели на локативы трека. На третьем уровне находятся информационные капсулы (ИК), задающем локатив (в такой ИК могут находится две ИП, с описанием места (Place) и времени (Time)).
Приведем пример описания пространственных отношений, заданных в предложении «Он увидел машину через окно.». В данном случае используется логика направлений: описывается направление взгляда наблюдателя. Схема описанной в предложении ситуации приведена на рис. 3: чтобы задать направление, нам необходимы начало координат (ZeroPoint) - это локатив, где находится субъект действия; точка, через которую проходит координатный вектор (AxisPoint) - это место, где распложено «окно» (window); направления (Direction) - в нашем случае вперед (Forward), т.е. по направлению координатного вектора.
На рис. 4 представлен семантический ОА-граф, соответствующий ситуации на рис. 3. В данном случае уровень чисел и измерений не используется, т.к. в тексте описывается взаимное расположение объектов без метрики. Итак, на рисунке представлено описание трех объектов («наблюдатель» (Person), «окно» (Window) и «машина» (Car)). Каждый объект находится в определенном состоянии: «наблюдатель» в состоянии наблюдения (Look), а остальные два объекта просто существуют (поэтому в нагрузке ИП с атрибутом Act («действие»), находится нулевой указатель, т.е. действие неизвестно). В ОА-графе присутствует один трек направления, включающий в себя три локатива, описывающих место: «наблюдатель», «окно», «машина». В капсуле на подуровне описания трека помещены описания начала координат («наблюдатель») и точки, через которую проходит координатная ось («окно»), а также ИП с указателем на капсулу, содержащую множество
148
указателей на локативы трека; атрибут данной капсулы указывает на тип множества точек, в данном случае - SetOrder (упорядоченное множество), т.к. здесь существенен порядок элементов (локативов). Отметим, что для описания пространства-времени могут использоваться и другие типы множеств.
Рис. 3 - Пример описания пространственно-временных отношений предложения «Он увидел
машину через окно»
УРОВЕНЬ
ОПИСАНИЯ
ОБЪЕКТОВ
УРОВЕНЬ ОПИСАНИЯ СВОЙСТВ И СОСТОЯНИЙ
УРОВЕНЬ ОПИСАНИЯ ПРОСТРАНСТВЕННОВРЕМЕННЫХ И ПРИЧИННОСЛЕДСТВЕННЫХ ОТНОШЕНИЙ
Рис. 4 - ОА-БД для описания предложения «Он увидел машину через окно»
Разработанная псевдофизическая логика также описывает, во-первых, топологические отношения, т.к. в ОА-графе могут присутствовать треки типа «над», «под», «внутри», «снаружи». Такие треки содержат по два локатива. Отношение «между» задается с помощью трека, содержащего три элемента. Так, объект «Окно» на рис. 4 находится между наблюдателем и «машиной», этот вывод можно сделать потому, что множество локативов в
149
данном случае упорядоченное, и можно выделить объекты, находящиеся перед и после определенного объекта. Во-вторых, метрику. Метрика пространства задается двумя способами: абсолютной величиной («в 10 метрах от чего-то») и относительной («большой», «длинный» и т.п.). Время и временной интервал также бывают как абсолютными («через 10 минут после чего-то», «за неделю до того-то»), так и относительными («вскоре после чего-то», «достаточно долго»). В-третьих, причинно-следственные отношения (логика причинности), которые задаются посредством трека типа «Причина-следствие». В описании такого трека имеется ссылка на упорядоченное множество, в котором первый указатель ссылается на состояние какого-либо объекта, являющееся причиной, второй - на состояние другого объекта, являющееся следствием. В-четвертых, форму и габариты объектов. В-пятых, имеется возможность задать неопределенность информации - например, может указываться вероятность вхождения локативов в трек. Это позволит использовать аппарат нечетких множеств для поиска и анализа информации.
Разработанная псевдофизическая логика может использоваться не только для описания отношений объектов, но и для их анализа. В настоящее время для логики разработана методика информационного поиска, который заключается в нахождении подграфа-запроса, синтезированного из поискового запроса пользователя на естественном языке, в семантическом ОА-графе, сгенерированном из текста [7]. Методика основана на применении специальных поисковых алгоритмов при сравнении типов множеств, применяемых для описания пространства-времени и причины-следствия, в ОА-графе запроса и ОА-графе текста. Приведем некоторые из таких типов:
1. Set: неупорядоченное множество (например, для описания отношения «около»).
2. SerOrder: упорядоченное множество (для описания динамических треков).
3. SetToFro: упорядоченное в обоих направлениях (т.е. множество в зависимости от ситуации может быть упорядочено в одном или другом направлении).
4. Subset: неупорядоченное подмножество.
5. SubsetOrder: упорядоченное подмножество.
6. SubsetToFro: упорядоченное в обоих направлениях подмножество.
7. SubsetOrderNotFull: упорядоченное неполное подмножество.
8. SetHead: первый элемент упорядоченного множества (начало трека).
9. SetTail: последний элемент упорядоченного подмножества (конец трека).
Например, для того, чтобы узнать, является ли какой-либо локатив началом трека, в
ОА-графе запроса нам необходимо задать трек с множеством локативов типа SetHead; если необходимо узнать, совпадают ли два трека, то мы используем тип Set; если надо узнать, является ли какой-то динамический трек частью другого динамического трека, то используется тип множества SubsetOrder и т.п. При поиске подграфа алгоритм сравнения капсул с описанием множеств локативов отличается от алгоритмов сравнения других капсул семантического ОА-графа: конкретный алгоритм выбирается в зависимости от типов сравниваемых множеств локативов. Так, если сравниваются два упорядоченных множества, то для их совпадения нужно, чтобы количество элементов этих двух множеств совпадали, и чтобы каждому элементу из одного множества соответствовал такой же элемент из другого множества с тем же номером. Необходимость такого сравнения может возникнуть, чтобы сравнить два динамических трека. Если необходимо проверить, располагается ли «окно» между «наблюдателем» и «машиной», то в запросе надо задать множество, упорядоченное в обоих направлениях (SubsetToFro), т.к. отношению «между» будет удовлетворять как упорядоченное множество {«Наблюдатель», «Окно», «Машина»}, так и множество {«Машина», «Окно», «Наблюдатель»}. Эти две ситуации можно описать с помощью конструкции SubsetToFro={«Машина», «Окно», «Наблюдатель»}. В этой ситуации будет проверяться совпадение локативов как в прямом, так и в обратном направлении. Для того,
150
чтобы определить, является ли локатив «машина» концом маршрута, в запрос помещается следующая конструкция SubsetTail={«машина»}, в этом случае будет проверяться, совпадает ли элемент множества с последним локативом из БД текста.
В заключение заметим, что разработанная псевдофизическая логика охватывает практически все аспекты восприятия действительности субъектом, где может присутствовать и нечеткое описание пространственно-временных отношений. Псевдофизика может применяться как для информационного поиска, так и для других целей: определение оптимального маршрута движения объекта (например, робота), вывода новой информации из уже известного. Последние две области заслуживают большого внимания, и их исследование стоит в ближайших планах на будущее.
Литература
1. Салибекян С. М., Панфилов П. Б. Объектно-атрибутная архитектура - новый подход к созданию объектных систем // Информационные технологии. 2012. № 2. С. 8-13.
2. S.M. Salibekyan, P.B. Panfilov. Object-attribute architecture for design and modeling of distributed automation system. Automation and remote control, Volume 73, 2012, Number 3, pp. 587-595.
DOI: 10.1134/S0005117912030174
3. Е. В. Рахилина Лингвистика конструкций / Отв. ред. Е. В. Рахилина. — М.: «Издательский центр «Азбуковник», 2010. — 584 с.
4. Филлмор Ч. Дело о падеже // Новое в зарубежной лингвистике. М.: Прогресс, 1981. Вып. Х. С. 369-495.
5. Тестелец, Я.Г. Введение в общий синтаксис / Я.Г. Тестелец. — М.: Издательство РГГУ, 2001. — 800 с.
6. Салибекян С.М., Панфилов П.Б. Формализация dataflow-модели вычислительного процесса // Объектные системы - 2013: материалы VII Международной научно-практической конференции (Ростов-на-Дону, 10-12 мая 2013 г.) / Под общ. ред. П.П. Олейника. - Ростов-на-Дону: ШИ (ф) ЮРГТУ (НПИ), 2013. c. 87-93
7. Салибекян С.М., Халькина С.Б., Тиновицкий К.Д. Объектно-атрибутный подход для семантического анализа естественного языка // Объектные системы - 2014: материалы VIII Международной научно-практической конференции (Ростов-на-Дону, 10-12 мая 2014 г.) / Под общ. ред. П.П. Олейника. - Ростов-на-Дону: ШИ (ф) ЮРГПУ (НПИ) им. М.И. Платова, 2014. Стр. 80-86
8. Салибекян С.М., Белоусов А.Ю. Сетевая база данных, построенная по объектно- атрибутному принципу // Объектные системы - 2014 (Зимняя сессия): материалы IX Международной научно- практической конференции (Ростов-на-Дону, 10-12 декабря 2014 г.) / Под общ. ред. П.П. Олейника. - Ростов-на-Дону: ШИ (ф) ЮРГПУ (НПИ) им. М.И. Платова, 2014. с. 70-76
9. Кандрашина Е.Ю., Литвинцева Л.В., Поспелов Д.А. Представление знаний о времени и пространстве в интеллектуальных системах / Под ред. Д.А. Поспелова. - М.: Наука. Гл. ред. физ.-мат. лит. 1989. - 318 с.
151