Алгоритм поиска оптимального варианта размещения компонентов ИС при проектировании информационных систем для управления автономными мобильными устройствами

УДК 681.3

АЛГОРИТМ ПОИСКА ОПТИМАЛЬНОГО ВАРИАНТА РАЗМЕЩЕНИЯ КОМПОНЕНТОВ ИС ПРИ ПРОЕКТИРОВАНИИ ИНФОРМАЦИОННЫХ СИСТЕМ ДЛЯ УПРАВЛЕНИЯ АВТОНОМНЫМИ МОБИЛЬНЫМИ УСТРОЙСТВАМИ

А.А. Рындин, С.В. Сапегин, Д.В. Долгих

Рассматриваются особенности оптимального размещения компонентов программного обеспечения между автономными мобильными устройствами и станциями их поддержки, соединенными беспроводной сетью и выполняющими различные действия, необходимые с точки зрения корпоративной ИС, включающей в себя АМУ

Ключевые слова: автономные мобильные устройства, дроны, беспилотные устройства, корпоративные ИС

ВВЕДЕНИЕ

Одной из наиболее быстро развивающихся технологий автоматизации хозяйственной деятельности в настоящий момент является использование автономных мобильных устройств, оснащенных механизмами передвижения, сбора и обработки информации, а также принятия решений в рамках заданной деятельности. К таким устройствам относятся беспилотные летательные аппараты (БПЛА) военного и гражданского назначения, наземные средства передвижения, сбора и обработки информации, перемещения грузов, телеприсутствия и т.д., надводные и подводные автоматические системы. Широкое использование подобного рода устройств в последние годы делает актуальным исследования в области интеграции локальных систем управления автономными мобильными устройствами (АМУ) с информационными системами (ИС),

обеспечивающими информационную поддержку бизнес-процессов предприятия, в число которых входят и потребности в использовании АМУ.

АНАЛИЗ ОБЛАСТЕЙ ПРИМЕНЕНИЯ

Анализ общих условий применения и задач, решаемых АМУ, позволяет очертить достаточно широкие области бизнес-процессов, в которых использование человека либо затруднено, либо обходится достаточно недешево по сравнению с альтернативными решениями. В настоящее время, в основном, это задачи, связанные с быстрым преодолением небольших расстояний по воздуху, получением и анализом видеоинформации с воздуха, транспортировкой небольших грузов. [1,4,5]

При этом, современное положение дел в области использования автономных мобильных средств характеризуется следующими

особенностями:

1. Существенное использование человеческого фактора для решения задач управления поведением

Рындин Александр Алексеевич - ВГТУ, д-р техн. наук, профессор, e-mail: alexandr.ryndin@icloud.com. Сапегин Сергей Владимирович - ВГУ, канд. техн. наук, доцент, e-mail: svsapegin@mail.ru

Долгих Дмитрий Викторович - ВГТУ, канд. техн. наук, доцент, e-mail: ddolgikh@bi-leasing.ru

автономных устройств, сбора и обработки информации, контроля за выполнением поставленных задач.

2. Большое разнообразие используемых в задачах управления, передачи и обработки данных стандартов и технологий.

3. Обособление задач, решаемых автономными средствами, в отдельное направление, слабо связанное с общим направлением деятельности производственных ИС.

Таким образом, развитие методик и технологий использования автономных мобильных устройств в составе ИС различного назначения будет преследовать в ближайшее время следующие цели:

1. Повышение автономности мобильных устройств в вопросах управления и целеполагания, а также выбора способов решения поставленных задач.

2. Разработка стандартов, унификация технологий, позволяющих на основе единой платформы осуществлять быструю интеграцию компонентов ИС и автономных устройств различного достижения.

3. Расширение спектра задач, решаемых автономными устройствами, а также повышение эффективности информационного обмена с различными компонентами используемых корпоративных ИС. [2]

МЕТОДИКА ПРОЕКТИРОВАНИЯ

Необходимость унификации технологий управления автономными устройствами и расширения списка решаемых задач, в свою очередь, требуют применения единой методики для проектирования и разработки компонентов ИС. При этом, структура ПО, решающего задачи использования автономных мобильных устройств в составе КИС предприятия будет иметь вид, как показано на рис. 1.

В общем виде, компоненты ПО могут располагаться как в памяти автономного мобильного устройства (при этом, они должны удовлетворять ограничениям производительности и размера), так и в памяти управляющей станции (при этом, мощности и надежности канала связи должно быть достаточно для уверенного обмена информацией и передачи управляющих воздействий).

Автономное устройство

Автономная функциональность

Обработка данных

Решение прикладных задач

Г

Интеграция с ИС

Целеполагание и стратегическое управление

I

Станция управления

Рис. 1. Структура ПО, решающего прикладные задачи

В составе ПО можно выделить следующие типы компонентов [3,4]:

1. Компоненты автономной функциональности, реализующие задачи взаимодействия с механизмами автономных устройств: стабилизации, управления режимами двигателей и рулей различного назначения, обеспечения безопасной траектории в отсутствии связи и т.д., а также задачи информационного обмена.

2. Компоненты обработки данных, реализующие алгоритмы распознавания образов, агрегирования информации, поступающей от различных датчиков и т.д.

3. Компоненты, реализующие алгоритмы решения прикладных задач, возникающих при работе предприятия.

4. Компоненты планирования активности автономных устройств, целеполагания, стратегического управления.

5. Компоненты интеграции системы управления АМУ (автономными мобильными устройствами) и корпоративной ИС.

При этом, функциональность обработки данных, выполнения прикладных задач тактического и стратегического характера может быть развернута как непосредственно на автономных устройствах, так и на платформе станции управления. Общая структура развертывания компонентов ПО здесь имеет определяющее значение в вопросах эффективности, надежности и производительности при использовании автономных мобильных устройств для решения прикладных задач.

Исходя из этого, рассмотрим задачу оптимального расположения компонентов ПО в

общем виде. Пусть S - набор элементарных бизнес-требований к программной подсистеме, в составе которой находится автономное мобильное

устройство, а X - набор компонентов программной подсистемы. Структуру программной подсистемы

можно представить в виде графа G(X, и) , где X

- компоненты подсистемы, а и - связи между ними. Схематически это можно представить, как показано на рис. 2.

При этом среди множества компонентов X можно выделить следующие подмножества:

- Подмножество М компонентов,

реализующих бизнес-требования 8т и

использующих для своей работы другие компоненты.

Рис. 2. Общая структура размещения компонентов ПО

- Подмножества КСУ и компонентов,

развернутых, соответственно, в рамках станции управления или автономного мобильного устройства

- Подмножество Р компонентов, выполняющих интерфейсные функции ПО по отношению к автономному мобильному устройству.

Сам граф является ориентированным, причем направления дуг иллюстрируют зависимости между компонентами. Также, граф не должен содержать замкнутых контуров - это требование вытекает из особенностей методик компонентного и объектно-ориентированного проектирования программных систем, считающих взаимозависимость компонентов друг от друга неприемлемой.

ЗАДАЧА РАЗМЕЩЕНИЯ КОМПОНЕНТОВ ПО

Таким образом, задачу оптимального расположения компонентов ПО можно формализовать на основе выражения

^ F ( х ) ^ тах

где х^ е (х1,...,хт) - из множества компонентов, соответствующих набору

элементарных бизнес-требований (51,...,sm). [6,7] При этом, F (х{) можно представить в виде:

F (х) = / (х, ^) + ^ / (х1, ^),

где / (х, si) - функция, вычисляющая степень полезности j-го компонента для реализации бизнес-требования si, k - множество компонентов,

от которых зависит компонент х{. При этом, вид степени полезности может быть произвольным, в зависимости от решаемой задачи. Одним из вариантов может быть использование величины средней нормированной оценки качества следующих параметров:

1. способности выполнения задачи за определенный интервал времени (что важно для реализации на платформе операционной системы реального времени), в %.

2. полноты реализации бизнес-требования, в

%

3. доли успешных попыток коммуникации с компонентом, в %.

При этом, значение функции в первую очередь зависит от места размещения компонента, поскольку среды АМУ и управляющей станции имеют различную производительность и емкость, работают под управлением разных ОС.

Исходя из этого, можно сформулировать следующий алгоритм расчета оптимального развертывания компонентов ПО в ИС, использующих автономные мобильные устройства:

1. Сформировать плоское множество M элементарных бизнес-требований к разрабатываемому ПО.

2. Каждому бизнес-требованию si поставить

в соответствие компонент xi

3. На основе анализа зависимостей компонентов для каждого Х} определить долю

участия в процессе реализации требования si.

4. Привести функции F (xi) к виду

f (x1,.., xn) в соответствии со структурой

связности компонентов анализируемого ПО.

5. Сформировать множество D вариантов размещения компонентов.

6. Осуществить поиск наиболее оптимального варианта размещения D, при использовании в качестве целевой функции выражения (1), используя один из алгоритмов поисковой оптимизации.

РЕАЛИЗАЦИЯ АЛГОРИТМА

Рассмотрим применение разработанного алгоритма на примере решения задачи построения точной карты поля для работы по методике точного земледелия. Построение карты осуществляется на основе анализа изображений, полученных с использованием автономного мобильного устройства - в данном случае, квадрокоптера Parrot AR Drone 2. Запаса батареи квадрокоптера хватает в среднем на 10-12 минут полета, что достаточно для анализа конкретного поля. Паспортная дальность полета, вызванная ограничениями дальности связи с управляющей станции по wifi, может быть увеличена с помощью реализации дополнительных функций автопилота, осуществляющего управление квадрокоптером в условиях нестабильного управляющего сигнала.

Воронежский государственный технический университет Воронежский государственный университет

Квадрокоптер оборудован процессором ARM9 (468 МГц) и памятью DDR SDRAM 128 Мбайт, что позволяет хранить в его памяти серьезные приложения. Работа квадрокоптера осуществляется под управлением операционной системы Linux. В рамках поставленной задачи было проведено исследование общей структуры ПО и выделены следующие компоненты, пригодные к размещению как на стороне сервера, так и на стороне дрона:

1. Навигационное ПО, привязывающее маршрут квадрокоптера к определенному полю

2. ПО, осуществляющее распознавание изображений, поступаемых в систему при помощи камеры.

С помощью вышеприведенной методики были проведены исследования и выбран наиболее оптимальный вариант размещения компонентов ПО. При этом, перечисленные компоненты подверглись разбиению, и часть общей функциональности с целью повышения автономности и уменьшения трафиковой нагрузки было размещено на сервере, оставив на станции модули, осуществляющие объемные вычисления, а также модули, для которых связь с общей БД является достаточно критичной.

ЗАКЛЮЧЕНИЕ

Таким образом, применение разработанной модели для определения структуры компонентов подсистем ИС, управляющих автономными мобильными устройствами, является актуальным и позволяет решение многих практических народнохозяйственных задач в различных отраслях промышленности.

Литература

1. http://agribotix.com/

2. http://ardrone2.parrot.com/.

3. http://docs.drone.io/

4. https://dronedeploy-faq.readme .io.

5. http://dronelife.com/2015/10/14/7-best-agricultural-drones-market/

6. Рындин, А.А. Автоматизация проектирования корпоративных информационных систем на основе методов многовариантной интеграции/ А.А. Рындин, С.В. Сапегин. - Воронеж: ВГТУ, 2013 .- 237 с.

7. Проектирование корпоративных информационных систем. А.А. Рындин и др. - Воронеж: Кварта, 2003. -447с.

ALGORITHM OF SEARCHING OF OPTIMAL CASE OR COMPONENTS DEPLOYMENT IN DESIGN PROCESS OF INFORMATION SYSTEMS OF DRONES MANAGEMENT

A.A. Ryndin, S.V. Sapegin, D.V. Dolgikh

Features of optimum planning of software components deploying between drones and control station are considered. The problem of using drones as components in business process automatization are investigated Key words: drones, automated control stations, corporative IS