"Удивительный мир" - Открытая научно-практическая конференция в области естествознания и инновационных технологий

Авторы: Абдулов Александр Алексеевич, Быков Алексей Евгеньевич, Воловикова Зоя Александровна, Громик Никита Андреевич, Никулина Анна Романовна, Пестова Юлия Викторовна, Ромме Анна Александровна, Черногор Екатерина Алексеевна, Быков Алексей Евгеньевич, Захарова Екатерина Алексеевна, Куставинова Дарья Александровна, Воловикова Зоя Александровна

.

Рубрика: Народное образование

Объём: 1,16

Опубликовано в: «Наука без границ» № 7(35), июль 2019

Скачать электронную версию журнала

лого конференции

JSON-RPC для управления микроконтроллерами на базе операционной системы MicroPython

Абдулов Александр Алексеевич, студент 3-го курса ФСиР,
Руководитель: Киселев Александр Викторович, старший преподаватель ФСиР;
ФГБОУ ВО «Иркутский государственный университет», Иркутск, РФ

Аннотация: Работа посвящена разработке модуля, позволяющего посредством протокола JSON-RPC обеспечить высокоуровневую коммуникацию с микроконтроллерами на операционной системе MicroPython. В статье рассмотрены протоколы передачи данных, микроконтроллеры, программируемые на языке Python 3, а также архитектура созданной системы.

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

Для решения данной задачи должен присутствовать транспортный протокол (в случае беспроводного подключения), серверное приложение, клиентское приложение и протокол, по которому они будут взаимодействовать.

В качестве протокола взаимодействия было решено выбрать RPC [1], т.к. в нем присутствует четкая стандартизация и отсутствует лишняя информация, значительно увеличивающая размер передаваемых данных.

Из всех разновидностей этого протокола был выбран JSON-RPC [2]. Это популярный, гибкий и простой протокол, который еще не реализован для MicroPython [3].

Данную систему можно запускать на всех устройствах, поддерживающих Python 3, благодаря обратной совместимости с MicroPython.

Реализация состоит из двух частей: серверной и клиентской. Серверная часть лежит на микроконтроллере. Она принимает на вход пользовательский класс с какой-то реализованной логикой по управлению микроконтроллером и, в зависимости от запросов клиентской части, исполняет его методы, формирует ответы. Клиентская часть находится на компьютере пользователя. Она отвечает за конвертацию вызываемых методов в JSON соответственно протоколу. Взаимодействие клиентской и серверной частей происходит с помощью подключения через сокет TCP.

На рис. 1 представлен пример скрипта для подключения и управления пользовательским классом, находящимся на микроконтроллере. Пользователь импортирует библиотеку, инициализирует клиент, передавая ip-адрес и порт, авторизуется и далее работает как с обычными классами.

пример использования библиотеки

Рис. 1. Пример использования библиотеки

Пример вызова метода класса:
obj.subtract(42, 23)

Пример сформированного запроса:
{"jsonrpc": "2.0", "method": "subtract", "params": [42, 23], "id": 1}

Сформированные запросы отправляются на микроконтроллер пакетами размером 1 кБ. Из-за малого объема оперативной памяти, доступной для исполнения скрипта, пакеты записываются на flash-память микроконтроллера.

Было реализовано одновременное подключение нескольких клиентов к серверу (тестировалось до 9 подключений). Они могут параллельно отправлять запросы на сервер. Но предварительно каждый клиент должен авторизоваться. Пользователь через клиента задает пароль доступа, он шифруется согласно ключу. При успешной проверке клиент допускается к использованию сервера.

В результате работы получен мультиклиентный сервер, реализующий стандарт JSON-RPC с аутентификацией и с AES шифрованием ключей.

Список литературы
1. Remote Procedure Call. Available at: https://www.ibm.com/support/knowledgecenter/en/ssw_aix_71/com.ibm.aix.progcomc/ch8_rpc.htm
2. JSON-RPC. Available at: https://www.jsonrpc.org/specification
3. MicroPython. Available at: https://micropython.org

© Абдулов А.А., 2019


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

 Быков Алексей Евгеньевич, студент 1-го курса ФСиР,
Воловикова Зоя Александровна, студентка 3-го курса ФСиР;
ФГБОУ ВО «Иркутский государственный университет», Иркутск, РФ

Аннотация: В данной работе была рассмотрена эффективность метода предобработки текстовых данных для решения задач определения тональности и лингвистических характеристик слов.

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

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

Задачи:

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

Алгоритм нахождения ассоциативного цвета состоит из 4 этапов:

  1. Нахождение в интернете 10 первых картинок по запросу с исходным словом с помощью сервиса DuckDuckGo.com;
  2. Сжатие найденных картинок до 1 пикселя, с помощью встроенного алгоритма сжатия библиотеки PIL для языка Python 3;
  3. Разбиение полученных 10 точек в RGB-пространстве на 3 кластера методом k-средних;
  4. Выбор центра наибольшего кластера, который становится ассоциативным цветом для исходного слова.

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

В первой задаче была рассмотрена выборка из пяти тысяч слов с размеченной негативной или позитивной тональностью. Цвет, соответствующий каждому слову, был отображен в RGB-пространстве, что дало результат, представленный на рис. 1 – на осях отмечены значения R, G, B, оранжевым и синим цветами отмечены позитивная и негативная тональность соответственно. Применив модель RandomForestClassifier, удалось добиться точности предсказания в 67%. Однако, в данной выборке не были рассмотрены нейтральные слова.

цвет для каждого слова в rgb-программе

Рис. 1. Цвет для каждого слова в RGB-программе

Во второй задаче были рассмотрены слова с их частью речи, которые распределяются в пространстве следующим образом (рис. 2) – то есть не могут быть четко разделены на кластеры. С использованием для данной задачи леса решений точности более 40% получить не удалось. Изменив признаки на цвет предыдущего, текущего, следующего слова в предложении, удалось получить точность порядка 90%, что в сравнении с обучением на тех же признаках, за исключением того, что вместо цвета использовался id слова, дает результат на 20% больше.

распределние слов с их частью речи

Рис. 2. Распределение слов с их частью речи

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

© Быков А.Е., Воловикова З.А., 2019


Разработка виртуальной лаборатории для отработки алгоритмов слежения за движущимися объектами

Громик Никита Андреевич,
Руководитель: Лебедев Валентин Павлович, доцент, кандидат физико-математических наук, старший научный сотрудник;
Институт солнечно-земной физики СО РАН, Иркутск, РФ

Аннотация: Разработка первичного варианта виртуальной лаборатории для отработки алгоритмов слежения за движущимися объектами. Создание программных моделей радара и спутника. Реализация веб-интерфейса для отладки собственных алгоритмов слежения радара за объектом.

Задачи ведения устойчивого сопровождения и локализации объекта независимо от характера его движения приобретают с каждым днем всё большую популярность в различных сферах промышленной и научно-образовательной деятельности. Задачи слежения радаров за движущимися объектами возникают в большом количестве применений [1]. Например, это задачи ориентации автоматических движущихся аппаратов в пространстве, слежение за автомобильным, авиационным и морским трафиком и другие комплексы (рис. 1).

схема применения решений задач ведения устойчивого сопровождения

Рис. 1. Схема применения решений задач ведения устойчивого сопровождения

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

Целью данной работы являются создание обучающего программного комплекса для моделирования процессов системы слежения и локализации движущегося объекта и методически-последовательное изложение для школьников и студентов основных принципов теории устойчивого сопровождения и локализации движущегося объекта.

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

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

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

Схема взаимодействия составляющих частей комплекса

Рис. 2. Схема взаимодействия составляющих частей комплекса

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

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

Внешний вид первой версии комплекса

Рис. 3. Внешний вид первой версии комплекса

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

Список литературы
1. Денисенко В.В. ПИД-регуляторы: принципы построения и модификации // Современные технологии автоматизации. 2006. № 4. С. 66-67.
2. Савкина А.В., Савкина А.В., Федосин С.А. Виртуальные лаборатории в дистанционном обучении // Образовательные технологии и общество. 2014. Том 17. № 4. С. 507-517.

© Громик Н.А., 2019


Исследование способности бактерий-нефтедеструкторов восстанавливать загрязнённые нефтью почвы

 Никулина Анна Романовна, ученица 11-го класса;
МБОУ СОШ №24, Иркутск, РФ
Научные руководители:
Третьякова Марина Сергеевна, кандидат биологических наук, научный сотрудник;
СИФИБР СО РАН, Иркутск, РФ
Бубнова Людмила Валентиновна, учитель географии;
МБОУ СОШ №24, Иркутск, РФ

Аннотация: В статье рассматриваются пути деструкции нефти и нефтепродуктов бактериями, выделенными на территории Иркутской области. Установлено, что наиболее перспективной бактерией является Rhodococcus erythropolis из-за способности выделять вещества, повышающие устойчивость растений к нефтезагрязнениям. Показано, что восстановление нефтезагрязнённых земель при использовании бактерий, адсорбированных на субстратах, происходит значительно быстрее, чем при внесении в почву планктонных клеток.

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

Была изучена способность 6 штаммов бактерий (Pseudomonas sp., Pseudomonas oryzihabitans, Rhodococcus erythropolis, Pseudomonas sp., Acinetobacter guillouiae 1, Acinetobacter guillouiae 2) к деструкции нефтепродуктов (тетрадекана, дизельного топлива) и нефти на твердой минеральной среде. Установлено, что все виды бактерий проявляют активный рост на среде с добавлением тетрадекана и дизельного топлива, что говорит об их устойчивости к данным нефтепродуктам и способности к переработке нефти и её производных. Наиболее активный рост проявили бактерии Acinetobacter g. 1 и Rhodococcus er.

Для выбора наиболее перспективной бактерии изучено влияние штаммов на растения (редьку масличную). Показано, что при обработке песка сырой нефтью в концентрации 2% наблюдалось ингибирующее влияние на прорастание и рост семян растений. Всхожесть снижалась на 50%, длина подземной и надземной части растения и масса проростков – на 60%. Обработка семян редьки масличной суспензией Rhodococcus erythropolis положительно влияла на растения: всхожесть повышалась на 25% относительно контроля, а у полученных из этих семян растений наблюдалось увеличение длины корня на 50%, высоты надземной части и ее массы – на 40%.

При внесении бактерий в почву для биоремедиации следует учитывать, насколько культуры окажутся устойчивыми к неблагоприятным условиям окружающей среды. Одним из объективных показателей устойчивости бактерий является способность образовывать биоплёнки [5]. Поэтому с помощью методов спектрофотометрии и электронной сканирующей микроскопии было изучено образование биопленок Rhodococcus erythropolis [4]. Установлено, что данный штамм хорошо образует биоплёнки.

Далее исследовали способность Rhodococcus erythropolis к деструкции углеводородов, содержащихся в нефти. Для эксперимента были выбраны алканы (декан и гептан) и трудно разлагаемые ароматические углеводороды (толуол и ксилол). Изменения состава соединений методом газовой хроматографии [2]. Было установлено, что Rhodococcus er. обладает высокой способностью разрушать углеводороды нефти. Так, ксилол был деструктирован бактериями на 49%, толуол – на 99%, декан – на 80,8%, гептан – на 99,7%.

Высокая степень деструкции углеводородов достигалась из-за выделения Rhodococcus erythropolis ферментов ди- и монооксигеназ, которые являются ключевыми в атаке ароматических колец, а также ферментов гидроксилаз, которые способствуют разрушению предельных углеводородов [3].

Для биоремедиации загрязнённых нефтью почв необходима разработка эффективного механизма внесения бактерий в почву [6]. Нами в качестве сорбента были выбраны различные модификации сапропеля, предоставленные Омским институтом проблем переработки углеводородов СО РАН (рис. 1). Было установлено, что бактерии не только прикрепляются на сапропелевые подложки, но и сохраняются при их высушивании. Это подтверждают данные, полученные при подсчёте изолированных колоний и при измерении оптической плотности на первые и пятые сутки после внесения бактерий.

Различные модификации сапропеля, использованные в качестве сорбента

Рис. 1. Различные модификации сапропеля, использованные в качестве сорбента

На следующем этапе была проведена проверка эффективности применения высушенных субстратов с бактериями, для этого использовали почву, собранную из мест нефтепроявления Верхнемарковского месторождения в г. Усть-Кут. По результатам исследований деструкция нефти происходила более эффективно в варианте с добавлением в загрязненную почву субстрата 1. Данный субстрат обладал меньшей площадью поверхности, за счет чего бактерии лучше прикреплялись и сохранялись на нем. Убыль нефти за 7 суток культивирования составила 65%, что значительно превосходит показатели очистки при добавлении только штамма Rhodococcus erythropolis (табл. 1).

Таблица 1

Убыль нефти в загрязненной почве при добавлении Rhodococcus erythropolis и субстратов через 7 суток, %

Номер образца

Убыль нефти, через 7 суток, %

Почва + Rhodococcus erythropolis

32

Почва + субстрат 1

65

Почва + субстрат 2

0

Почва + субстрат 3

0

Почва + субстрат 5

7,7

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

Список литературы
1. Габбасова И.М. Деградация и рекультивация Южного Приуралья: автореф. дис. … доктора биол. наук. Москва, 2010. – 45 с.
2. Другов Ю.С., Родин А.А. Экологические анализы при разливах нефти и нефтепродуктов. – М.: Бином. Лаборатория знаний, 2014. – 270 с.
3. Леднев А.В. Изменение свойств дерново-подзолистых суглинистых почв под действием загрязнения продуктами нефтедобычи и приемы их рекультивации: автореф. дис. … доктора с-х наук. Ижевск, 2008. – 43 с.
4. Некрасова А.А. Воздействие нефти и нефтепродуктов на окружающую среду // А.А. Некрасова, Д.М. Привалов, О.С. Попова, Н.М. Привалова, М.В. Двадненко // Политематический сетевой электронный научный журнал Кубанского государственного агарного университета. 2017. № 125. С. 25.
5. Плакунов В.К., Николаев Ю.А. Биопленка – «Город микробов» или аналог многоклеточного организма? // Микробиология. 2007. Том 76. № 2. С. 149-163.
6. Руденко Е.Ю. Биоремедиация нефтезагрязненных почв органическими компонентами отходов пищевой промышленности. – Самара: СамГТУ, 2015. – С. 4-5.

© Никулина А.Р., 2019


Программное обеспечение для прогнозирования и планирования деятельности предприятий общественного питания

 Пестова Юлия Викторовна, студентка 4-го курса ФСиР,
Руководитель: Балахчи Анна Георгиевна, кандидат физико-математических наук, доцент;
Иркутский государственный университет, Иркутск, РФ

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

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

Для своих экспериментов мы выбрали предприятия общественного питания города Иркутска. Главная задача состояла в разработке программного обеспечения для многофакторного анализа: веб-интерфейса с возможностью манипулирования параметрами и интерактивным выводом результатов в виде графиков.

Работу разделили на несколько этапов:

  1. на основе теоретических источников выделяем факторы прогнозирования и планирования, определяем, какие данные нужны для их расчета, какие данные можно получить из открытых источников;
  2. поиск и сбор необходимой для построения модели информации, в частности, возможность извлечения (получения) данных от организаций-агрегаторов, с информационных дата-сервисов, интернет-справочников, интернет-ресурсов статистических исследований;
  3. используя систему BI Tableau и язык R, обрабатываем имеющиеся данные, определяем ключевые показатели в прогнозировании и параметры, влияющие на их значения, создаем интерактивные визуализации;
  4. формируем интерактивные мониторы;
  5. создаем веб-интерфейс для нашего инструмента, оформляем методическое сопровождение продукта;
  6. тестируем: корреляция с имеющимися данными, новые интересные корреляции на будущее, ищем пути совершенствования продукта.

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

Далее необходимо собрать и проанализировать данные, характеризующие спрос и предложения. Например, инструмент Chronotope от компании Habidatum направлен на представление данных о потоках потенциальных клиентов во времени и пространстве [1]. Привязывая координаты к известным местам города, мы получаем места, в которых наибольшее скопление людей. Кроме того, слой – это временной пласт. Таким образом, можно вычислить городские районы с наибольшим посещением в разное время суток (рис. 1). Исследование мобильности потоков позволяет обнаружить подходящие территории для определения пути управления развитием городской инфраструктуры и наилучших местоположений предприятий разных сфер деятельности [2, с. 460].

Визуализация данных в платформе Chronotope

Рис. 1. Визуализация данных в платформе Chronotope

Для того чтобы определить популярность районов по посещаемости их потребителями, необходимы данные о мобильности потоков. Данные – геотеги мобильных приложений с операционными системами IOS и Android –предоставлены компанией Habidatum International, Inc. через платформу Chronotope Dashboard. Геотеги мобильных приложений – это информация о местоположении и времени, считываемая мобильным приложением с поддержкой геолокации. В платформе Chronotope выделены районы Иркутска и подсчитано число геотегов мобильных приложений за каждый час. В квадратах со стороной 750 метров содержится их сумма (рис. 2). Так мы определили, что самый посещаемый район города – Октябрьский; максимальная активность по часам приходится в среднем на 8 утра и 6 вечера. В час дня наблюдается увеличение активности после спада с 8 до 12 и затем понижение с 13 до 16.

Исследование потоков в Chronotope по городу Иркутску

Рис. 2. Исследование потоков в Chronotope по городу Иркутску

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

Создание итоговой метрики для визуализации в Tableau

Рис. 3. Создание итоговой метрики для визуализации в Tableau

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

На странице Планирование (рис. 4) представлены все выбранные значения факторов в результате работы пользователя и рекомендуемые значения на их основе. Такая информация позволяет зафиксировать результат работы и использовать в качестве плана.

Вкладка «Планирование»

Рис. 4. Вкладка «Планирование»

Разработанный программный продукт представляет собой веб-сервис (http://isubusiness.ru – тестовая версия сервиса) для осуществления многофакторного анализа и прогнозирования в сфере общественного питания. Сейчас все расчеты производятся для данных по предприятиям общественного питания города Иркутска, однако предполагается, что можно добавлять данные по другой сфере бизнеса (со сходными характеристиками прогнозирования и планирования) и для любой территории.

Список литературы
1. Habidatum. – Режим доступа: habidatum.com (дата обращения: 20.04.2019).
2. Пестова Ю.В., Воловикова З.А. Город в рельефе и рельеф активности в городе // Информационные технологии в моделировании и управлении: подходы, методы, решения: Сборник научных статей II Всероссийской научной конференции с международным участием. Тольятти: Качалин Александр Васильевич, 2019.

© Пестова Ю.В., 2019


Создание браузера дополненной реальности

Ромме Анна Александровна, студентка 4-го курса ФСиР,
Руководитель: Балахчи Анна Георгиевна, кандидат физико-математических наук, доцент;
Иркутский государственный университет, Иркутск, РФ

Аннотация: Работа посвящена разработке AR-браузера, универсального инструмента, позволяющего получать информацию в виде объектов дополненной реальности в соответствии с гео-локацией пользователя. Исследованы ранее существовавшие браузеры дополненной реальности, рассмотрены современные инструменты для реализации информационно-навигационных систем с применением технологии дополненной реальности.

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

Можно выделить несколько проблем развития технологии на сегодняшний день: дороговизна устройств, недостаток функциональных и действительно необходимых массовому пользователю приложений [1], большое количество разнообразных вариантов однотипных программ для просмотра AR-контента, которые рассматриваются в большей степени как «мусор», засоряющий память гаджетов. По нашему мнению, есть несколько путей решения проблем развития технологий дополненной реальности. Во-первых, это поиск новых более доступных вариантов устройств для визуализации и управления поведением AR-объектов. Во-вторых, это создание универсальных приложений, позволяющих взаимодействовать с разными типами дополненной реальности, дополненными инструментами для реализации творческих идей опытных пользователей в AR-разработке. AR-браузер – универсальный интерфейс для взаимодействия с цифровой реальностью, который позволит пользователям генерировать собственный контент.

Разрабатываемый нами браузер дополненной реальности «ARTour» – это информационно-навигационная система, позволяющая пользователю ориентироваться по городу, взаимодействуя с различными виртуальными объектами, совмещенными с объектами реального мира. Программное обеспечение предполагает два уровня пользователей: первые – реализуют свои творческие замыслы в области геолокационной дополненной реальности, вторые – используют этот контент как информационно-навигационный сервис. Конечный пользователь контента AR-браузера выбирает один из уже подготовленных слоев и получает доступ к информации о точках интереса (достопримечательностях, гостиницах, магазинах и т. п.) в определенном радиусе вокруг себя. Точки интереса привязаны к определенным географическим координатам, их размер зависит от удаленности от пользователя. Поставляемая о точках интереса информация может быть самой разнообразной: текст, видео, аудио, интерактивная графика, игровой контент. Разработчикам слоя может стать любой пользователь, зарегистрировавшийся в веб-приложении и знакомый с основами веб-разработки. Созданный слой разработчик может наполнить точками интереса и публиковать его в открытый доступ, после чего слой станет доступен в мобильном приложении. Архитектура AR-браузера «ARTour» представлена на рис. 1. Веб-приложение было реализовано при помощи фреймворков Laravel и Bootstrap. Все данные, внесенные разработчиком слоя, сохраняются в базу данных для последующего получения этих данных из мобильного приложения.

Архитектура браузера дополненной реальности

Рис. 1. Архитектура браузера дополненной реальности

Для получения набора точек интереса по конкретному слою при помощи HTTP-запроса было реализовано API. GET-запрос отправляется на сервер с определенными параметрами, главными из которых являются географические координаты устройства, то есть его местоположение, и название запрашиваемого слоя. В качестве ответа на данный запрос сервер возвращает JSON-файл с набором точек интереса по запрашиваемому слою. Точки интереса сортируются в порядке удаленности от местоположения, переданного в запросе. Расстояние между точками рассчитывается по формуле гаверсинусов. Когда список точек интереса получен, становится возможным отображение точек интереса в мобильном приложении, что представлено на рисунке ниже. Модуль AR-браузера для мобильных устройств (рис. 2) разрабатывался при помощи библиотеки ARFoundaton для Unity 3D. Последняя позволяет создавать приложения как для iOS, так и для Android-устройств [2].

Пример работы приложения

Рис. 2. Пример работы приложения

В перспективе данный проект может иметь культурно-историческую значимость: пользователи смогут отслеживать временные изменения различных объектов вокруг себя, просматривая в режиме AR фотографии других пользователей и загружая свои фото для тех же локаций. Тем не менее, данный проект решает одну из основных проблем, с которой мы столкнулись во время проведения олимпиады НТИ: отсутствие инструментов для реализации своих AR-проектов.

Список литературы
1. Ромме А.А., Курмазова Ю.Е., Худякова Ю.С. Проектирование городских информационных сервисов с использованием технологий дополненной реальности // Молодежь и современные информационные технологии. Сборник трудов XVI Международной научно-практической конференции студентов, аспирантов и молодых ученых. Томский политехнический университет. 03-07 декабря 2018. Томск, 2019. – С. 415-416.
2. About AR Foundation [Электронный ресурс] // Unity Manual. – Режим доступа: https://docs.unity3d.com/Packages/com.unity.xr.arfoundation@1.0/manual/index.html (дата обращения: 13.03.2019)

© Ромме А.А., 2019


Виртуальный помощник с личностными характеристиками

 Черногор Екатерина Алексеевна, студент 1-го курса,
Быков Алексей Евгеньевич, студент 1-го курса,
Захарова Екатерина Алексеевна, студент 1-го курса,
Куставинова Дарья Александровна, студент 1-го курса,
Воловикова Зоя Александровна, студент 3-го курса;
ФCиР ИГУ, Иркутск, РФ

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

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

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

Для достижения этой цели выделены следующие задачи:

  • анализ поведения целевой аудитории;
  • подбор характера и внешности ВП[1], вызывающих положительный отклик у большинства пользователей;
  • разработка поведенческой модели ВП;
  • распознавание речи;
  • ответ на реплику пользователя;
  • визуализация эмоций.

Как правило, бот-помощник решает конкретную задачу, поэтому он выполняет ограниченный набор функций, прописанных в программе. Задача бота – консультировать абитуриентов по вопросам, связанным с поступлением в вуз, следовательно, целевая аудитория – абитуриенты, молодые люди от 14 до 18 лет. Бот должен поддерживать небольшой диалог на отвлеченные тематики (погода, настроение, последние события в мире).

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

Общий алгоритм работы

Схема 1. Общий алгоритм работы

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

Распознавание речи было реализовано с помощью библиотек SpeechRecognition и PyAudio. PyAudio отвечает за доступ и управление микрофоном, а SpeechRecognition непосредственно за распознавание речи. Для распознавания используется класс Recognizer, возвращающий звуковую дорожку, очищенную от посторонних шумов с помощью метода adjust_for_ambient_noise. Далее звук переводится в строку с помощью метода recognize_google. [2]

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

определение типа

Где  – это слово из текущего вопроса,  – это вопрос из базы,  – слово из вопроса, distance( ) – это расстояние Левенштейна между двумя строками, а length( ) соответственно – длина строки.

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

Для разработки диалогового модуля использовалась библиотека DeepPavlov, позволяющая использовать встроенную QuestionAnsweringModel, обученную на наборе данных SDSJ Task B для ответа на вопрос по заданному контексту. Так как заранее тренированная модель занимает около 5 GB памяти и время ответа модели сильно зависит от мощности процессора, был создан сервер на фреймворке Flask для взаимодействия с ней. Чтобы получить ответ сервера, отправляется POST запрос, содержащий вопрос. В полученном ответе содержится ответ на заданный вопрос.

Графический интерфейс выполнен с помощью библиотеки pygame. Интерфейс состоит из окна с gif изображением персонажа, которое меняется в зависимости от тональности ответа на заданный пользователем вопрос, затем воспроизводится синтезированный ответ бота с помощью класса engine и метода say(), входящих в состав библиотеки pyttsx3. [3]

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

Такие компании, как Huawei, Magic Leap, Mit Media Lab, в данный момент так или иначе реализуют своих помощников или ПО, направленное на эмоциональное вовлечение человека. Этот факт показывает, что эмоциональное вовлечение пользователя – сейчас довольно актуальная тема.

В дальнейшем планируется улучшить работу диалогового модуля для непредзаданных вопросов, поменять 2D- на 3D-поведение бота-помощника, построить и перейти на более сложную модель поведения бота, перевести приложение в дополненную реальность. Добавить наш собственный модуль анализа на сантименты (он уже в разработке), расширить возможность распознавания, добавив анализ тембра голоса, совместить мобильную часть проекта, написанную в Unity на С# с текущей.

Список литературы
1. Чат-боты: что бизнес думает о виртуальных помощниках [Электронный ресурс]. – Режим доступа: https://vc.ru/services/66319-chat-boty-chto-biznes-dumaet-o-virtualnyh-pomoshchnikah
2. ИИ на Python для распознавания голоса и выполнения команд [Электронный ресурс]. – Режим доступа: https://itproger.com/news/157
3. Pyttsx text to speech [Электронный ресурс]. – Режим доступа: https://pythonprogramminglanguage.com/text-to-speech/

© Черногор Е.А., Быков А.Е., Захарова Е.А., Куставинова Д.А., Воловикова З.А., 2019



[1] Виртуальный помощник – это программное обеспечение, созданное для того, чтобы выполнять несложные команды пользователя; с развитием технологий сложность и количество выполняемых задач увеличивалось, таким образом, сейчас виртуальный помощник рассматривается как консультант, собеседник для разговора или секретарь.