Клеточно-автоматное моделирование сплошных сред
Руководитель: Медведев Юрий Геннадьевич, к.т.н., с.н.с. ИВМиМГ СО РАН
Дискретные клеточно-автоматные модели являются инструментом исследования различных процессов в сплошных средах, чаще всего таких, которые не поддаются моделированию традиционными методами непрерывной математики. Одно из направлений работы посвящено разработке новых клеточно-автоматных моделей и программной реализации этих моделей. Для удобной программной реализации клеточно-автоматных моделей в ИВМиМГ СО РАН создана и активно развивается библиотека клеточно-автоматных топологий CATlib, которая призвана увеличить скорость разработки новых моделей и существенно расширить возможности по их экспериментальному исследованию. Другое направление работы посвящено расширению функциональности этой библиотеки. В рамках Летней школы предлагается попробовать себя в качестве исследователя в одном из этих направлений.
Система LuNA автоматического конструирования программ
Руководитель: Перепёлкин Владислав Александрович, к.т.н., с.н.с. ИВМиМГ СО РАН
В рамках проекта вы познакомитесь с основами автоматического конструирования параллельных программ на основе концепции активных знаний и с помощью системы LuNA построите собственную базу активных знаний.
Предполагаемое количество участников: 1 и более
Требования: нет.
Группа проектов “Программирование БПЛА”
Разработка программы получения телеметрии и управления квадрокоптером с бортового микрокомпьютера
Руководитель: Власенко Андрей Юрьевич, к.т.н., н.с. ИВМиМГ СО РАН
Целью проекта является знакомство с технологией программно-управляемого полёта БПЛА и реализация такого полёта в среде симуляции и на физическом стенде.
Задачи:
- освоить принципиальное устройство БПЛА мультироторного типа;
- освоить базовые функции протокола MAVLink для управления БПЛА;
- освоить среду симуляции программно-управляемых полетов (jMAVSim, Gazebo);
- разработать программу получения телеметрии (значений с датчиков акселерометра, гироскопа, барометра, лидара, оптического потока, GPS-приемника) во время полета и запись этих значений в лог-файлы;
добавить в программу взлёт на заданную высоту и движение БПЛА «по прямой», «по квадрату» и протестировать в среде симуляции;
- установить операционную систему семейства Linux и все необходимое ПО для взаимодействия с полетным контроллером на микрокомпьютер;
- установить и настроить «прошивку» (firmware) на полётный контроллер дрона;
протестировать разработанную программу на физическом стенде (квадрокоптере).
Предполагаемое количество участников: 1 - 3
Требования: базовые знания языка программирования Python или C++.
Исследование нагрузки, обусловленной распознаванием и трекингом объектов на кадрах с камеры БПЛА, на вычислительные ресурсы бортового микрокомпьютера при полете
Задачи:
- реализовать программно-управляемый полет по полетному заданию, задаваемому с мобильного приложения;
- добавить в программу фотосъемку с заданной частотой;
- добавить распознавание и трекинг объектов: объекты в помещении — мебель, мониторы, …; уличные объекты - транспорт, люди, ...;
- провести сравнительное тестирование нескольких предобученных нейронных сетей по параметрам качества распознавания и вычислительной нагрузки во время полета;
- выполнить серию запусков на CPU и NPU предоставленных микрокомпьютеров (Raspberry Pi 5 с AI-модулем Hailo 8L и Orange Pi 5 Pro с встроенным NPU-модулем) во время программно-управляемого полета или имитации такого полета;
- составить результирующие таблицы зависимости нагрузки на аппаратные ресурсы микрокомпьютеров от частоты получения фото, сделать вывод о применимости различных нейросетевых моделей к различному оборудованию.
Предполагаемое количество участников: 2
Требования: базовые знания языка программирования Python; наличие прототипа мобильного приложения для формирования полетного задания; наличие прототипа программы управления полетом.
Управление группой БПЛА с мобильного Android-приложения и обмен данными между участниками группы
Задачи:
- установка программы управления полетом (“fly-drone”) и камерой на микрокомпьютеры 2-х физических стендов (БПЛА квадрокоптерного типа);
- настройка 2-х Wi-Fi сетей на выделенный микрокомпьютер, включение в первую сеть нескольких мобильных - устройств на ОС Android, включение во вторую сеть 2-х физических стендов;
- установка компонента «fly-server» на выделенный микрокомпьютер;
- установка компонента «fly-client» на мобильные устройства;
- тестирование выдачи полетного задания с мобильного приложения на бортовые компьютеры БПЛА через «fly-server»;
- настройка сети Lora между БПЛА;
- тестирование выполнения фото и распознавания объектов на фото на каждом участнике группы БПЛА;
- реализация передачи фото и результатов распознавания между участниками группы по сети Wi-Fi;
- реализация передачи логов полета между участниками группы по сети Lora;
- реализация передачи управляющих команд (например «возвращение на базу») с мобильного приложения на доступный БПЛА с последующим дублированием команды всем участникам группы по сети Lora;
- реализация передачи собранной в полете информации (логов, фото, результатов распознавания) с участников группы на мобильные устройства через «fly-server».
Предполагаемое количество участников: 3
Требования: базовые знания языка программирования Python; наличие прототипов компонентов «fly-drone», «fly-server», «fly-client».
