Починский И.А. Использование гиперграфов для представления онтологии сетевого оборудования. // Проблемы информатики в образовании, управлении, экономике и технике: Сб. статей XI Междунар. научно-техн. конф. – Пенза: ПДЗ, 2011. – С. 74-78. ИСПОЛЬЗОВАНИЕ ГИПЕРГРАФОВ ДЛЯ ПРЕДСТАВЛЕНИЯ ОНТОЛОГИИ СЕТЕВОГО ОБОРУДОВАНИЯ И.А. Починский Пензенский государственный университет, г. Пенза, Россия, i.pochinskiy@yandex.ru Рассматривается использование гиперграфов для представления концептуальных знаний (онтологий) и их применение в разработке прикладной онтологии. Pochinskiy I.A. Usage of hypergraphs for network equipment ontology representation. The usage of hypergraphs for conceptual knowledge representation and its application in the development of application-oriented ontology is considered. В последние годы разработка онтологий переходит из мира лабораторий по искусственному интеллекту на рабочие столы экспертов по предметным областям [5]. Во всемирной паутине онтологии стали обычным явлением. Онтологии в сети варьируются от больших таксономий, категоризирующих web-сайты (как на сайте Yahoo!), до категоризации продаваемых товаров и их характеристик (как на сайте Amazon.com). Согласно [5], это формальное явное описание терминов предметной области и отношений между ними. Как следует из [1], это иерархические концептуальные структуры, которые формируются аналитиком на основе изучения и структурирования потоков информации, протоколов извлеченных знаний и других источников. В [4] это иерархически структурированное множество терминов и связей между ними, описывающих предметную область, которое может быть использовано как исходная структура для базы знаний. Для разных предметных областей и задач существует спектр языков представления знаний. Обзоры некоторых из них даны в [1]. На наш взгляд, для системы, основанной на знаниях, наиболее адекватным языком представления знаний является язык гиперграфов, используемых в качестве расширения семантических сетей. Согласно [2] гиперграф, H V , E есть пара, где V – множество вершин , а V vi , i I 1, 2, ..., n E – множество ребер ; каждое E e j , j J 1, 2, ..., m ребро представляет собой подмножество V . Вершина v и ребро e называются инцидентными, если v e . Для v V через d v обозначается число ребер, инцидентных вершине v ; d v называется степенью вершины v . Степень ребра e – число вершин, инцидентных этому ребру, обозначается через r e . Гиперграф H является r-однородным, если все его ребра имеют одинаковую степень r . Различают ориентированные и неориентированные гиперграфы. Рёбра неориентированного гиперграфа называются звеньями. В случае ориентированно- го гиперграфа (оргиперграфа) ребро e E называется гипердугой (для краткости дугой) и представляется как упорядоченная пара h, T , где h V , T V \ h , T . При этом вершина h называется началом дуги e , а каждая вершина из T – конечной вершиной дуги e . Если элементам гиперграфа приписаны символы (или цепочки символов) из некоторого множества, то он является раскрашенным гиперграфом или гиперграфом с помеченными вершинами и ребрами. Цепочки символов – это имена понятий и отношений онтологии, представленной раскрашенным, частично ориентированным гиперграфом. В [3] такой гиперграф предлагается называть семантическим и использовать его в качестве расширения семантических сетей. Процесс разработки онтологии будем производить в соответствии с методологией, предложенной в [5]. Допустим, разрабатываемая онтология будет использоваться в телекоммуникационной компании в качестве базы знаний об оборудовании и клиентах. Соответственно она должна включать в себя знания о сетевом оборудовании и клиентах, а также отвечать на следующие вопросы: a. Какой клиент подключен к определенному порту? b. К какому устройству подключен определенный клиент? c. Сколько клиентов подключено к устройству? d. Сколько свободных клиентских портов на заданном устройстве? e. В каком сегменте сети находится клиент? f. К каким устройствам подключено данное устройство? Будем считать, что соответствующих онтологий еще не существует, и начнем разрабатывать онтологию с нуля. Основными терминами, которыми должна оперировать онтология для ответа на вышеназванные вопросы, являются: устройство, плата, порт, клиент, коммутатор, маршрутизатор, VLAN. В соответствии с этими терминами можно определить следующие классы: устройство (device) (наследники: коммутатор (switch) (наследники: домовой коммутатор (hswitch), ATM-коммутатор (dslam)), маршрутизатор (router)), плата (board), порт (port), клиент (client). Связь между классами следующая: класс port является частью (отношение a_part_of – apo) класса board, класс client находится в отношении registered_on с классом port (клиент зарегистрирован на определенном порту). Поскольку плата включается в устройство, можно определить отношение apo между классами device и board, но в таком случае для получения ответа на вопросы b-f от программиста потребуется гораздо больше трудозатрат на этапе реализации базы знаний и от пользователя онтологии на этапе ее эксплуатации. В данной ситуации альтернативным решением является использование гиперграфов для описания отношения has_struct между классами device, board и port. Таким образом, данное отношение связывает класс device одновременно с классами board и port, находящимися в отношении a_part_of. Для ответа на вопрос a онтология должна обладать информацией о клиенте. Была выбрана следующая информация, определенная в качестве свойств класса client: ФИО клиента (name), его адрес (address) и контактный номер телефона (ph_num), идентификационные данные в сети провайдера (логин (login) и пароль (password)), а также приоритет обслуживания (prty). Для определения порта онтология должна оперировать такими его свойствами, как номер порта (num), назначенная порту внутренняя VLAN (vlan), номер (slot_num) и модель (model) платы, на которой расположен данный порт, и устройство (отношение has_struct с классом device), в которое включена эта плата. Для ответа на вопрос b онтология должна содержать сведения о клиенте (обозначены выше) и об устройстве, к которому он подключен. Предлагается использовать следующие свойства класса device: идентификатор (id), производитель (vendor) и модель (model) устройства, а также его MAC-адрес (mac) и, если это экземпляр класса router, его IP-адрес (ip). Для ответа на вопросы c и f в онтологии должны содержаться сведения о типе порта (клиентский или туннельный) и текущем его состоянии (занят или свободен). Для этого в класс port введены свойства destination и state соответственно. Для ответа на вопрос d онтология должна «знать» об общем количестве портов на платах устройства (свойство port_cnt класса board) и типе и состоянии каждого порта (эти свойства определены выше). Для ответа на вопрос e в онтологию должны быть заложены сведения о внешней VLAN устройства (свойство evlan класса device) и внутренней VLAN порта, к которому подключен клиент (эти сведения определены выше). Структура разработанной онтологии, описанная с помощью языка гиперграфов, представлена на рис. 1. vendor model num dev evlan elo dr _b _ by y identified_with g se m en vlan d te a switch ak mb se g has_struct state device ko model nu er ed me n in_s ip destination co nn ted e h apo nti port_cnt a as _ frnu ide fie d slot_num m _w i th id o client has_a has add _a is password _a name ph_num identified_with a dslam s_ o ak board registered_on login hswitch port to d_ cte logaddr_by ak a is_ th tate o router _w i r_b y address ha id ad ped ph is_ a mac prty Рис. 1. Структура разработанной онтологии, описанная с помощью гиперграфа Важной особенностью представления знаний в предметной области с помощью онтологии является возможность наличия процедур дополнения и сопоставления знаний [3, 6]. Процедура дополнения подразумевает зависимость наличия семантических связей между понятиями от входных данных. Процедура сопоставления может производиться либо как сравнение по образцу (pattern matching), либо поиск изоморфизма гиперграфов, т.е. сопоставление семантического представления входных данных со структурными фрагментами предметной онтологии [6]. На рис. 2 представлена структура онтологии с образованными новыми семантическими связями (выделены жирным). Такие связи могли быть образованы после введения следующих входных запросов: «По какому IP-адресу производится управление коммутатором?», «На какой номер телефона зарегистрирован порт?», «Образует ли клиент в сети широковещательный домен?». vendor model num dev evlan elo dr _b _by id ad ped ph y identified_with is_ a mac g se m en create_b d te vlan rdomen a ak mb se g has_struct state device ko model nu er ed me n in_s router ip destination co nn is_ th ted port e board a frnu ide to d_ cte port_cnt _a has apo tate o switch _w i nti fie d slot_num m _w i th id ak o logaddr_by ak o registered_on manged_by hswitch registered_on dslam manged_by login client has_a add _a name s_ a _a r_b y address ha has is password ph_num identified_with prty Рис. 1. Образование новых семантических связей в структуре онтологии Библиографический список 1. Башмаков И.А., Башмаков И.А. Интеллектуальные информационные технологии. – М.: Изд-во МГТУ им. Н.Э. Баумана, 2006. – 302 с. 2. Зыков А.А. Гиперграфы // Успехи математических наук. – 1974. – Т. 29. – Вып. 6. – С. 89–154. 3. Хахалин Г.К. Прикладная онтология на языке гиперграфов // Труды II Всероссийской конференции «Знания – Онтологии – Теории». – Новосибирск, 2009. 4. Добров Б.В., Иванов В.В., Лукашевич Н.В., Соловьев В.Д. Онтологии и тезаурусы: модели, инструменты, приложения: учебный курс Интернетуниверситета информационных технологий. – URL: http://www.intuit.ru/department/expert/ontoth/2/ 5. Noy N., McGuinness D. Ontology Development 101: A Guide to Creating Your First Ontology. – Knowledge Systems Lab, Stanford. 6. Хахалин Г.К. Использование гиперграфов в лингвистической трансляции // Труды Международного семинара «Диалог'99» по компьютерной лингвистике и ее приложениям. – М., 1999. – С. 315-320.