Building a knowledge base for autonomous control of unmanned vehicles
- Authors: Romanov A.A.1, Rubtsov I.A.1, Svyatov K.V.1, Filippov A.A.1
-
Affiliations:
- Ulyanovsk State Technical University
- Issue: Vol 14, No 1 (2024)
- Pages: 94-106
- Section: ONTOLOGY ENGINEERING
- URL: https://journals.ssau.ru/ontology/article/view/27801
- DOI: https://doi.org/10.18287/2223-9537-2024-14-1-94-106
- ID: 27801
Cite item
Full Text
Abstract
This article presents an approach to building and using a knowledge base for autonomous control of unmanned vehicles (UV). Agriculture is presented as a subject area which features and limitations must be considered. The lack of a sufficient number and level of qualifications of machine operator leads to equipment downtime, a decrease in crop yields and the efficiency of using chemical fertilizers. The use of UV makes it possible to reduce the influence of these factors and the harmful effects on people working in agriculture. The article focuses on taking into account the features and limitations of the subject area when constructing the trajectory of unmanned vehicles and controlling processing facilities. An approach is proposed that consists of separate stages of designing a knowledge base schema, automating the process of filling the knowledge base and organizing the logical inference function. For each stage, developed models and algorithms are presented that help to form and use a knowledge base when solving the problem of autonomous control of unmanned vehicles. The article contains examples and illustrations designed to increase the clarity of the proposed approach.
Full Text
Введение
Применение интеллектуальных систем (ИС) для автоматизации бизнес-процессов позволяет снизить интеллектуальную нагрузку на специалистов большого числа предметных областей (ПрО). Широкое распространение получили ИС, в основе которых лежат методы машинного обучения (МО) и нейросетевые модели. МО высоко ценится разработчиками ИС из-за широких возможностей адаптации к решению задач при наличии достаточной обучающей выборки. Однако пока не решён вопрос объяснимости результатов, полученных с помощью МО.
В ряде работ рассматриваются вопросы построения ИС на основе методов инженерии знаний. Например, в работах [1-5] разрабатываются базы знаний (БЗ) и средства поддержки их жизнеспособности. В отличие от МО БЗ позволяют формализовать знания об особенностях ПрО в форме, которая одинаково понятна как человеку, так и вычислительной машине. В БЗ знания эксперта представлены в явном виде.
В данной работе рассмотрен подход к построению и использованию БЗ для автономного управления беспилотными транспортными средствами (БПТС) в сельском хозяйстве (СХ).
1 Постановка задачи
Задача управления БПТС является актуальной [6-10]. Применение БПТС в СХ позволяет повысить производительность труда, снизить нагрузку и воздействие вредных веществ на персонал. Можно выделить два основных подхода к управлению БПТС, это использование:
- набора географических координат, по которым передвигается БПТС;
- систем машинного зрения.
Для применения БПТС в СХ требуется построение гибридной системы, объединяющей оба подхода, а также включающей подсистему управления средствами обработки СХ полей и культур. Поле является объектом с известными границами, и на нём не предполагается оживлённое движение других объектов. Необходимо построить траекторию движения БПТС с учётом особенностей ПрО. Существует вероятность, что на поле может оказаться посторонний объект, поэтому БПТС должно иметь возможность корректировки траектории. Необходимо также управлять средствами обработки для эффективного расходования удобрений и химикатов. Таким образом, требуется решение следующих подзадач:
- оснащение транспортного средства оборудованием для автономного управления;
- формирование БЗ для построения траектории движения БПТС и управления средствами обработки с учётом особенностей ПрО;
- разработка алгоритма построения траектории движения БПТС;
- разработка модели машинного зрения;
- сбор обучающей выборки для тренировки подсистемы машинного зрения для корректирования траектории движения БПТС;
- сборка системы управления БПТС и средствами обработки.
2 Модель БЗ задачи построения траектории движения БПТС
В работе [11] отмечено, что одной из проблем построения эффективного алгоритма управления БПТС является необходимость учёта особенностей ПрО. Можно выделить следующие особенности ПрО СХ:
- параметры поля: координаты границы поля, характеристики почвы, показатели урожайности СХ культур, история использования поля, наличие вредителей и др.;
- особенности обрабатываемых СХ культур: требования к почве, требования к процессам обработки, требования к удобрениям и химикатам, влияние вредителей и др.;
- особенности процесса обработки: траектория обработки поля, периодичность обработки, требования к средствам обработки, требования к БПТС и др.;
- параметры и особенности БПТС: габариты, угловая скорость, вес, мощность двигателя, поддерживаемые средства обработки, принцип установки средств обработки и др.;
- параметры средств обработки: способ обработки, объём резервуара для химикатов, требования к мощности двигателя БПТС, требования к способу крепления на БПТС и др.
Для формирования БЗ при решении задачи управления БПТС в работах [12-14] предлагается использовать онтологии, основанные на дескрипционной логике (ДЛ) [15]. Это позволяет использовать машины логического вывода для получения новых знаний и проверки логической целостности и непротиворечивости содержимого БЗ с учётом ограничений ПрО. Онтологии позволяют описывать знания в виде продукционных правил. Известны онтологии для ПрО СХ разных уровней [3, 16-19].
Теоретико-множественное представление модели БЗ имеет вид:
Модель БЗ задачи автономного управления БПТС является фрагментом модели БЗ и представляет собой набор аксиом ДЛ, которые определяют модель знаний БЗ с учётом ограничений и особенностей ПрО решаемой задачи. Таблица 1 содержит операторы ДЛ, которые используются для формализации модели БЗ решаемой задачи.
Таблица 1 – Операторы ДЛ и их соответствие операторам языка OWL
ДЛ | OWL | Описание |
| owl:Thing | Класс верхнего уровня |
| owl:Nothing | Пустой класс |
| A owl:SubClassOf B | Включение классов (родитель-потомок) |
| [A, B] owl:DisjointClasses | Непересекающиеся классы |
| [A, B] owl:equivalentClasses | Эквивалентные классы |
| A and B | Пересечение (конъюнкция) классов |
| R only A | Универсальное ограничение |
| R some A | Экзистенциальное ограничение |
| R exactly n A | Ограничение кардинальности |
TBox модели БЗ формируется администратором БЗ вместе с экспертом данной ПрО.
Для удобства классу
Основные классы сущностей модели БЗ для описания особенностей ПрО:
Все представленные классы являются потомками класса
ФС класса
где
ФС класса
где
ФС специфичные для определённых классов средств обработки
где
классы
Свойства класса
где
Класс
где
Свойства класса
где
Свойства класса
где
Модель БЗ может уточняться и дополняться в процессе логического вывода с помощью набора продукционных правил.
3 Разработка БЗ для задачи построения траектории движения БПТС
Определены следующие требования к средствам построения и формирования БЗ для задачи автономного управления БПТС. В частности, необходимо наличие средств для:
- формирования схемы (
) БЗ для описания особенностей ПрО; - создания продукционных правил, описывающих правила и закономерности ПрО;
- автоматизации формирования содержимого (
) БЗ на основе схемы ( ); - проверки непротиворечивости и целостности знаний, а также получения новых знаний и их интерпретации на основе механизма логического вывода.
3.1 Формирование схемы БЗ и продукционных правил
Для формирования схемы БЗ и продукционных правил на языке SWRL использован редактор онтологий Protégé [21]. Данный редактор основан на библиотеке OWL API, позволяет создавать и редактировать продукции на языке SWRL с помощью библиотеки SWRL API и может использовать машину логического вывода Pellet.
В результате схема БЗ и множество продукций на языке SWRL представляются в виде онтологии на языке OWL.
3.2 Средства для автоматизации формирования содержимого БЗ
Для автоматизации процесса формирования содержимого (
В качестве хранилища разработанного приложения используется графовая система управления базами данных (СУБД) Neo4j [22]. Данная СУБД не использует реляционную модель данных и не накладывает ограничения на модель данных, что позволяет загружать в Neo4j данные любой структуры в виде графа без предварительной подготовки. Для выполнения запросов к содержимому Neo4j необходимо знать структуру метаданных. Основным преимуществом использования СУБД Neo4j является поддержка транзакций, что делает возможной коллективную работу по заполнению БЗ несколькими экспертами. Neo4j имеет специальный язык запросов Cypher, который ориентирован для работы с графом и позволяет создавать эффективные запросы к хранилищу.
В качестве источника для получения метаданных используется схема БЗ (
- генерировать экранные формы для ввода данных с необходимым набором элементов управления;
- накладывать ограничения на тип и наличие данных для отдельных элементов управления;
- формировать запросы на добавление и извлечение данных из Neo4j.
Теоретико-множественное представление метаданных имеет вид :
где E – множество сущностей ПрО (классы БЗ); A – множество свойств сущностей; R – множество отношений, которые связывают сущность и её свойства; Enum – множество перечислений, которые используются в качестве допустимого множества значений отдельных свойств.
Множество сущностей имеет вид:
Множество атрибутов сущностей можно записать как:
где
Тип данных
Например, для свойства
Множество перечислений можно представить в виде следующего выражения:
где
Множество отношений R имеет вид:
Для получения метаданных на основе схемы БЗ используется функция вида:
Функция
- для каждого перечисления схемы БЗ выполнить преобразование:
- для каждого класса схемы БЗ выполнить преобразование:
- для каждого свойства i-го класса схемы БЗ выполнить преобразование:
Рисунок 1 – Пример экранной формы для ввода информации о поле
Тип данных атрибута определяется на основе ограничений и типов данных соответствующего свойства схемы БЗ: если у свойства есть экзистенциальное ограничение (
Итоговый тип данных определяется на основе множества допустимых типов значений из схемы БЗ. Признак обязательности заполнения значения атрибута определяется на основе ограничений схемы БЗ: если у свойства есть универсальное ограничение (
Для автоматизации процесса заполнения БЗ клиентская часть приложения получает метаданные для генерации интерфейса и данные для отображения в нём. Генерация интерфейса осуществляется следующей функцией:
Например, необходимо ввести данные о некотором экземпляре класса
<div class="mb-3">
<label for="hasName" class="form-label">Название</label>
<input type="text" class="form-control" id="hasName" required value="данные">
</div>
Как видно из примера разметки, для задания ограничения типа данных используется атрибут type, а для указания обязательности заполнения значения атрибут required тега input. Данные задаются через атрибут value тега input.
Для атрибута
<div class="mb-3">
<label for="hasBorderCoordinate" class="form-label">Координаты</label>
<br />
<button class="btn btn-primary" type="button">Добавить</button>
<div id="hasBorderCoordinate" class="list-group mt-2"
role="listbox" aria-required="true">
<div class="list-group-item list-group-item-action d-flex flex-row">
<span class="flex-grow-1 align-self-center">данные</span>
<a href="#"><i class="bi bi-trash3"></i></a>
</div>
…
<div class="list-group-item list-group-item-action d-flex flex-row">
<span class="flex-grow-1 align-self-center">данные</span>
<a href="#"><i class="bi bi-trash3"></i></a>
</div>
</div>
</div>
Так как метаданные содержат все требуемые сведения, при необходимости можно легко заменить шаблоны для генерации элементов управления и представлять коллекции значений в виде таблицы.
Для работы с хранилищем данных Neo4j используются следующие функции:
Функция
Алгоритм работы функции
- создание узла для добавляемого экземпляра сущности. Например, для объекта класса
: MERGE (e1:Field{name: 'Поле'}). - поиск атрибутов с типом данных, ссылающихся на экземпляр другой сущности. Например, для класса
это атрибуты и . Далее создаются команды для записи в хранилище связанных сущностей. Для атрибута :
MERGE (e2:Coordinate{name: 'Координата'})
MERGE (e2a1:Value{value: '54.19'})
MERGE (e2a2:Value{value: '48.22'})
MERGE (e2)-[:latitude]->(e2a1)
MERGE (e2)-[:longitude]->(e2a2).
- создание узлов для атрибутов, которые не ссылаются на другие сущности:
MERGE (e1a1:Value{value: 'Поле1'}).
- организация связи между экземпляром сущности и его атрибутами:
MERGE (e1)-[:hasName]->(e1a1)
MERGE (e1)-[:hasBorderCoordinate]-(e2).
В результате выполнения представленного запроса сформирован фрагмент графа, показанный на рисунке 2.
Рисунок 2 – Пример содержимого БЗ
Как видно из рисунка 2, данные о поле записываются в БЗ в качестве фрагмента. Жирным начертанием выделена сущность
Функция
MATCH p=(f:Field)-[r*..]->(v) RETURN p.
Для получения конкретного поля будет сформирован следующий запрос:
MATCH p=(f:Field)-[r*..]->(v) WHERE ID(f)=201 RETURN p.
Таким образом, автоматизация формирования содержимого (
3.3 Механизм логического вывода
Графовая СУБД Neo4j поддерживает механизм логического вывода, но возможности его ограничены. Следовательно, необходимо выполнять логический вывод средствами, разработанными специально для онтологий. Функция логического вывода реализуется с помощью библиотек OWL API, SWRL API и машины логического вывода Pellet.
Выполнение функций логического вывода позволяет гарантировать корректность содержимого БЗ, логическую целостность и непротиворечивость ограничениям ПрО. В результате логического вывода на основе множества продукционных правил на языке SWRL в БЗ формируются новые знания. Продукционные правила позволяют изменять логику работы с БЗ без изменения алгоритма автономного управления БПТС, что повышает гибкость алгоритма и его живучесть в процессе эксплуатации системы.
Для реализации логического вывода используются следующие функции:
Функция
Алгоритм работы функции
- получить множество классов
БЗ на основе метаданных M: . - для каждой сущности
из состава метаданных M выполнить запрос к Neo4j:
MERGE (o: )-[:hasName]->(name).
- создать аксиомы
БЗ для определения сущностей для i-го класса БЗ:
- получить множество свойств i-го класса
из модели метаданных M:
- для каждого j-го атрибута
сущности из состава метаданных M выполнить запрос к Neo4j: MERGE (o: )-[: ]->(value). - создать аксиомы
БЗ для определения j-го свойства сущностей для i-го класса БЗ: .
Далее запускается машина логического вывода Pellet, которая выполняет логический вывод по содержимому полученной OWL-онтологии. Выполнение множества SWRL-правил позволяет получать новые знания и использовать их для автономного управления БПТС. В случае возникновения ошибок пользователь должен внести исправления.
Например, SWRL-правило, которое позволяет добавить для класса
Новые свойства класса
Заключение
В статье рассмотрена задача формирования БЗ для автономного управления БПТС с учётом особенностей ПрО СХ.
Предложены информационная модель БЗ, позволяющая учитывать различные особенности и ограничения при решении задачи автономного управления БПТС, и автоматизированный способ формирования схемы БЗ. Для автоматизации процесса формирования содержимого БЗ предложена информационная модель метаданных, которая используется для генерации динамических экранных форм, позволяющих снизить нагрузку на эксперта и реализовать функцию коллективного заполнения БЗ.
Предложен подход к организации логического вывода для проверки логической целостности и непротиворечивости содержимого БЗ перед выполнением задачи автономного управления БПТС. Механизм логического вывода используется также для получения новых знаний на основе множества продукционных правил на языке SWRL, что делает алгоритм построения траектории более гибким.
About the authors
Anton A. Romanov
Ulyanovsk State Technical University
Email: romanov73@gmail.com
PhD, Head of the Department of Information systems, member of the Russian Association of Artificial Intelligence
Russian Federation, UlyanovskIvan A. Rubtsov
Ulyanovsk State Technical University
Email: ria0294@mail.ru
Master degree in Design and Technological Support, Head of the Laboratory of innovative technologies in mechanical engineering
Russian Federation, UlyanovskKirill V. Svyatov
Ulyanovsk State Technical University
Email: k.svyatov@gmail.com
PhD, Head of the Department of computer engineering
Russian Federation, UlyanovskAleksey A. Filippov
Ulyanovsk State Technical University
Author for correspondence.
Email: al.al.filippov@gmail.com
PhD, Associate Professor of the Department of information systems, member of the Russian Association of Artificial Intelligence
Russian Federation, UlyanovskReferences
- Gribova VV, Moskalenko FM, Timchenko VA, Shalfeeva EA. Building Viable Intelligent Systems with Managed Declarative Components [In Russian]. Information and mathematical technologies in science and management. 2018. 3(11). 6-17. doi: 10.25729/2413-0133-2018-3-01.
- Kuzmin VR, Zagorulko YA. Application of an agent-service approach in the development of intelligent decision support systems in the energy sector [In Russian]. Bulletin of Novosibirsk State University. Series: Information technology. 2020. 18(3). 5-18. doi: 10.25205/1818-7900-2020-18-3-5-18.
- Borgest NM, Budaev DV, Travin VV. Ontology of precision agriculture design: problem state, solution approaches [In Russian]. Ontology of designing. 2017. 4(26). 423-442. doi: 10.18287/2223-9537-2017-7-4-423-442.
- Begler AM, Kudryavcev DV, Gavrilova TA. Using ontologies to integrate empirical research data [In Russian]. Russian Conference on Artificial Intelligence (RCAI-2020). 2020. 3-11.
- Borisov VV, Trusov AS, Kulchitskiy PV, Izvozchikova VV. Automation of technical diagnostics of oil and gas equipment [In Russian]. Oil and gas production is the basis of scientific and technological progress and economic stability. 2020. 362-367.
- Xie B, Jin Y, Faheem M, Gao W, Liu J, Jiang H, Cai L, Li Y. Research progress of autonomous navigation technology for multi-agricultural scenes. Computers and Electronics in Agriculture. 2023; 211: 107963. doi: 10.1016/j.compag.2023.107963.
- Hu J, Gao L, Bai X, Li T, Liu X. Review of research on automatic guidance of agricultural vehicles. Transactions of the Chinese Society of Agricultural Engineering. 2015; 31(10): 1–10.
- Liu L, Lu S, Zhong R, Wu B, Yao Y, Zhang Q, Shi W. Computing systems for autonomous driving: State of the art and challenges. IEEE Internet of Things Journal. 2020; 8(8): 6469–6486. doi: 10.1109/JIOT.2020.3043716.
- Badue C, Guidolini R, Carneiro RV, Azevedo P, Cardoso VB, Forechi A, Jesus L, Berriel R, Paixão TM, Mutz F, de Paula Veronese L, Oliveira-Santos T, De Souza AF. Self-driving cars: A survey. Expert Systems with Applications. 2021; 165: 113816. doi: 10.1016/j.eswa.2020.113816.
- Bhalla A, Nikhila MS, Singh P. Simulation of self-driving car using deep learning. 2020 3rd International Conference on Intelligent Sustainable Systems (ICISS). IEEE, 2020. P.519–525. doi: 10.1109/ICISS49785.2020.9315968.
- Teeti I, Khan S, Shahbaz A, Bradley A, Cuzzolin F. Vision-based Intention and Trajectory Prediction in Autonomous Vehicles: A Survey. Proceedings of the Thirty-First International Joint Conference on Artificial Intelligence, IJCAI-22, Lud De Raedt, Ed. 2022; 7: 5630–5637.
- Chen W, Kloul L. An advanced driver assistance test cases generation methodology based on highway traffic situation description ontologies. International Joint Conference on Knowledge Discovery, Knowledge Engineering, and Knowledge Management. Springer, Cham, 2018. P.93–113. doi: 10.1007/978-3-030-49559-6_5.
- Ryu M, Cha SH. Context-awareness based driving assistance system for autonomous vehicles. Int. J. Control Autom. 2018; 11(1): 153–162. doi: 10.14257/ijca.2018.11.1.14.
- Syzdykbayev M, Hajari H, Karimi HA. An ontology for collaborative navigation among autonomous cars, drivers, and pedestrians in smart cities. 4th International Conference on Smart and Sustainable Technologies (SpliTech). IEEE, 2019. P.1–6. doi: 10.23919/SpliTech.2019.8783045.
- The description logic handbook: Theory, implementation and applications. F. Baader (ed.). UK, Cambridge: Cambridge university press, 2003. P.1–23.
- Bhuyan BP, Tomar R, Cherif AR. A Systematic Review of Knowledge Representation Techniques in Smart Agriculture (Urban). Sustainability. 2022; 14(22): 15249. doi: 10.3390/su142215249.
- Saraswathi D, Manibharathy P, Gokulnath R, Sureshkumar E, Karthikeyan K. Automation of hydroponics green house farming using IoT. IEEE International Conference on System, Computation, Automation and Networking (ICSCA). IEEE, 2018. P.1–4. doi: 10.1109/ICSCAN.2018.8541251.
- Urkude G, Pandey M. AgriOn: a comprehensive ontology for Green IoT based agriculture. Journal Green Eng. 2020; 10(9): 7078–7101.
- Jäger M, Nadschläger S, Phan TN, Küng J. Data, information & knowledge sources in the agricultural domain. 26th International Workshop on Database and Expert Systems Applications (DEXA). IEEE, 2015. P.115–119. doi: 10.1109/DEXA.2015.40.
- O'Connor MJ, Shankar RD, Nyulas C, Tu SW, Das AK. Developing a Web-Based Application using OWL and SWRL. AAAI spring symposium: AI meets business rules and process management. 2008. P.93–98.
- Protégé: A free, open-source ontology editor and framework for building intelligent systems: https://protege.stanford.edu.
- Neo4j Graph Database & Analytics: https://neo4j.com.
Statistics
Views
Abstract: 419
PDF (Russian): 124