1 / Наволоцкий_1374
.pdfМИНОБРНАУКИ РОССИИ САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ ЭЛЕКТРОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ “ЛЭТИ” ИМЕНИ В.И. УЛЬЯНОВА (ЛЕНИНА) Кафедра ИС
Отчет по лабораторной работе №1
по дисциплине «Методы искусственного интеллекта» Тема: «Простые онтологии»
Студент гр.1374 |
Наволоцкий И.Р. |
|
|
Преподаватель |
Ананьева В.Я. |
|
|
Санкт-Петербург
2024
Задание на работу
Создать простую онтологию:
1.Которая будет включать в себя минимум 4 класса (минимум 1 из которых дочерний).
2.У классов должны быть отношения (object properties) и свойства (data properties). В онтологии должны быть использованы минимум 4 различных характеристики отношений (Functional, Inverse functional, Transitive, ...).
3.Должны быть представлены экземпляры, у которых будут заданы свойства и которые будут связаны отношениями с другими экземплярами.
4.Должны быть заданы условия (минимум 2 отличающихся по смыслу) (см. http://protegeproject.github.io/protege/class-expression-syntax/ +
файлы).
5.Должен быть показан запуск Reasoner, который либо сделает вывод, либо выдаст ошибку по каждому из условий.
Цель
Разработать простую онтологию в Protégé, включающую классы,
свойства и отношения, а также создать экземпляры и условия.
2
ВЫПОЛНЕНИЕ РАБОТЫ
Описание классов
Онтология состоит из восьми классов:
Описание отношений
Онтология состоит из шести отношений:
1) hasAppointment
Субъект: Patient
Объект: Appointment
Patient hasAppointment Appointment
Отношение является:
Обратно функциональным Ассиметричным Иррефлексивным
2) hasDentist
Субъект: Patient Объект: Dentist
Patient hasDentist Dentist
Отношение является:
Функциональным
Ассиметричным
Иррефлексивным
3) hasMedicalRecord
Субъект: Patient
3
Объект: MedicalRecord
Patient hasMedicalRecord MedicalRecord
Отношение является:
Функциональным
Ассиметричным
Иррефлексивным
4) hasTreatment
Субъект: Appointment Объект: Treatment
Appointment hasTreatment Treatment
Отношение является:
Ассиметричным
Иррефлексивным
5) IsLocatedIn
Субъект: Appointment
Объект: DentalClinic
Appointment IsLocatedIn DentalClinic
Отношение является:
Функциональным
Транзитивным
Ассиметричным
Иррефлексивным
6) treats
Субъект: Dentist Объект: Patient
Dentist treats Patient
Отношение является:
Обратно Функциональным Ассиметричным Иррефлексивным
Описание свойств
В онтологии имеется 5 свойств:
clinicName
Является свойством для класса DentalClinic
Является типом xsd:string.
date
Является свойством для класса Appointment
4
Является типом xsd:dateTime.
name
Является свойством для класса Person Является типом xsd:string.
procedureName
Является свойством для класса Appointment Является типом xsd:string.
recordDetails
Является свойством для класса Appointment
Является типом rdf:langString.
Описание экземпляров, их отношений и свойств
В онтологии 13 экземпляров:
Рассмотрим некоторые их них:
Appointment1
Является экземпляром класса Appointment
Описание экземпляра:
ClinicA
Является экземпляром класса Clinic
Описание экземпляра:
DrJones
Является экземпляром класса Dentist
Описание экземпляра:
5
JaneSmith
Является экземпляром класса Patient Описание экземпляра:
Procedure1
Является экземпляром класса Procedure
Описание экземпляра:
Record1
Является экземпляром класса Record Описание экземпляра:
Treatment1
Является экземпляром класса Treatment
Описание экземпляра:
6
Описание условий
Для класса Appointment есть условие: Appointment должен иметь ровно одну дату. Условие изображено на рисунке:
Для класса DentalClinic есть условие: DentalClinic должен иметь ровно одно
название. Условие изображено на рисунке:
Для класса MedicalRecord есть условие: MedicalRecord должен иметь хотя бы одного
пациента. Условие изображено на рисунке:
Для класса Person есть условие: Person должен иметь одни имя. Условие изображено на рисунке:
Для класса Treatment есть условие: Treatment должен иметь одно название. Условие
изображено на рисунке:
7
Онтограф онтологии
Результирующий онтограф выглядит следующим образом:
8
Результат работы ризонера:
Случай с ошибкой: если в свойство date указать неверный тип (либо оставить пустым):
Случай без ошибок: если же свойству date назначить тип xsd:dateTime, то ризонер
запустится без ошибок и будет предлагать свои варианты дополнения онтологии в
соответствии с его рассчетами (для примера приведу пару случаев):
для экземпляра Appointment1:
9
для экземпляра DrJones (врач):
Как видно, ризонер предлагает некоторые варианты, подсвечивая их желтым цветом
10
