- •Интеллектуальные информационные системы
- •Введение
- •1. Логика предикатов первого порядка
- •1.1. Основы логики предикатов первого порядка
- •1.2. Основы Пролога
- •Примеры использования дизъюнкции в Прологе
- •1.3. Назначение и основные возможности swi-Prolog
- •Некоторые операции и предикаты swi-Prolog
- •1.4. Лабораторная работа № 1 Представление фактов и правил в Прологе
- •1.5. Лабораторная работа № 2. Рекурсия в Прологе
- •1.6. Лабораторная работа № 3. Обработка списков в Прологе
- •Списки и их составные части
- •2. Онтологии
- •2.1. Онтологии и семантическая паутина
- •2.2. Краткие сведения о спецификациях семантической паутины
- •Стандартные пространства имен
- •Классы rdf/rdfs
- •Свойства rdf/rdfs
- •2.3. Лабораторная работа № 4 Построение онтологической модели в Protégé. Создание классов
- •2.4. Лабораторная работа № 5 Построение онтологической модели в Protégé. Создание экземпляров классов
- •2.5. Лабораторная работа № 6 Выполнение sparql-запросов в Protégé
- •Модификаторы
- •3. Эвристические алгоритмы
- •3.1. Методы поиска решений с использованием графов
- •Сравнительная характеристика методов
- •3.2. Лабораторная работа № 7 Решение оптимизационной задачи с использованием эвристического алгоритма
- •Характеристика дополнительных ограничений скорости и мероприятий по их устранению
- •Варианты заданий на выполнение лабораторной работы
- •4. Нечеткие множества
- •4.1. Основы теории нечетких множеств и нечеткой логики
- •4.2. Лабораторная работа № 8. Решение прикладной задачи с использованием нечетких множеств
- •5. Генетические алгоритмы
- •5.1. Эволюционные вычисления
- •5.2. Лабораторная работа № 9. Решение оптимизационной задачи с использованием генетического алгоритма
- •Исходная популяция
- •Популяция после скрещивания
- •Расчет значений целевой функции
- •Популяция после редукции
- •Варианты заданий
- •6. Искусственные нейронные сети
- •6.1. Распознавание образов
- •6.2. Лабораторная работа № 10. Распознавание образов с использованием искусственной нейронной сети
- •Варианты заданий на выполнение лабораторной работы
- •Заключение
- •Библиографический список
- •Оглавление
- •Интеллектуальные информационные системы
- •6 80021, Г. Хабаровск, ул. Серышева, 47
- •Интеллектуальные информационные системы
2. Онтологии
2.1. Онтологии и семантическая паутина
Онтология – раздел философии, изучающий фундаментальные принципы бытия: категории, сущности, структуру, свойства и закономерности сущего8. В настоящее время онтологии широко используются в обучении, различного рода исследованиях и информационных технологиях. Как своеобразная форма представления некоторой области знаний (предметной области) онтологии применяются при создании семантической паутины9, систем искусственного интеллекта, а также прикладных информационных систем. В частности, одним из ключевых компонентов создаваемой и внедряемой в ОАО «РЖД» Интеллектуальной системы управления на железнодорожном транспорте является «онтология ИСУЖТ».
Среди языков описания онтологий следует выделить:
OWL (англ. Web Ontology Language) – язык описания онтологий для семантической паутины (http://www.w3.org/TR/owl2-overview). Основан на более ранних языках OIL и DAML+OIL, которые, в свою очередь, базируются на RDF и RDFS:
OIL (англ. Ontology Inference Layer или Ontology Interchange Language) – онтологический слой (уровень) логического вывода или онтологический язык обмена;
DAML (англ. DARPA Agent Markup Language) – язык разметки агента DARPA10;
RDF (англ. Resource Description Framework) – среда описания ресурса (http://www.w3.org/TR/rdf11-concepts);
RDFS (англ. RDF Schema) – схема RDF (http://www.w3.org/TR/rdf-schema);
RIF (англ. Rule Interchange Format) – формат обмена правилами (http://www.w3.org/TR/rif-core);
KIF (англ. Knowledge Interchange Format) – формат обмена знаниями (http://www.ksl.stanford.edu/knowledge-sharing/kif), разработанный в «Лаборатории искусственного интеллекта» Стэндфордского университета;
CL (англ. Common Logic) – общая логика, представляющая собой основу для семейства логических языков и предназначенная для обмена и передачи знаний в компьютерных системах. Является преемницей KIF и носит статус международного стандарта (ISO/IEC 24707:2007 «Information technology – Common Logic (CL): a framework for a family of logic-based languages»).
CycL (англ. Cyc Language, от англ. encyclopedia) – онтологический язык, использующийся в проекте искусственного интеллекта Дугласа Лената Cyc (http://www.cyc.com).
В рамках создания семантической паутины W3C11 активно продвигает онтологические языки и спецификации, представленные на следующем рисунке (http://www.w3.org/2001/sw).
Рис. 8. Слои семантической паутины
В соответствии с концепцией Всемирной паутины каждый ресурс должен иметь унифицированный идентификатор ресурса (англ. Uniform Resource Identifier, URI) или интернационализированный идентификатор ресурса (англ. Internationalized Resource Identifier, IRI). В терминах семантической паутины под ресурсом понимается реальная (машина, дом, Вася) или абстрактная (любовь, отношение, тип) сущность, включая информационные объекты (сайт, файл, ящик электронной почты).
В общем виде онтология представляет собой набор элементов четырех типов:
понятия (классы) – концептуальные сущности (машина, дом, любовь);
экземпляры (индивиды) – конкретные представители понятий (Вася, www.google.com, 123);
отношения (предикаты) – связи между понятиями или экземплярами (таксономические, родственные, производственные), а также свойства сущности (цвет, длина, вкус);
аксиомы – очевидные утверждения, связывающие понятия, экземпляры и отношения.
В качестве синтаксических конструкций для онтологического описания и обмена знаниями в виде RDF, RDFS и OWL могут использоваться спецификации (нотации):
адаптированные:
XML (англ. eXtensible Markup Language) – расширяемый язык разметки (http://www.w3.org/TR/rdf-syntax-grammar);
JSON-LD (англ. JavaScript Object Notation for Linked Data) – объектная нотация JavaScript для связывания данных (http://www.w3.org/ TR/rdf-json);
специализированные:
N-Triples – RDF-тройки (http://www.w3.org/TR/n-triples);
Turtle (англ. Terse RDF Triple Language) – краткий язык RDF-троек (http://www.w3.org/TR/turtle). Расширение нотации N-Triples;
TriG – TriG (http://www.w3.org/TR/trig). Расширение нотации Turtle;
N-Quads – RDF-четверки (http://www.w3.org/TR/n-quads). Дополнение к нотации N-Triples.
Процедурная обработка (добавление, удаление, вывод) знаний, содержащихся в онтологии, выполняется с помощью различных диалектов RIF (продукции, фреймы, логика предикатов первого порядка, немонотонная F-логика).
Декларативная обработка знаний в стиле SQL12-запросов к базам данных осуществляется посредством SPARQL13.
