Разработайте собственные протоколы передачи данных и настройте устойчивые каналы связи.
На беспроводной связи держатся многие сферы человеческой жизни: от повседневного общения до важных инженерных областей, таких как космос, промышленность и даже робототехника. При этом устройств, обменивающихся между собой информацией, с каждым днём становится всё больше. Возрастает и объём информации, передаваемый ежесекундно. Тем важнее продолжать создавать и обеспечивать надёжную, качественную и быструю связь. Этим и занимаются специалисты отрасли телекоммуникаций — одной из важнейших в промышленности и науке.
Участники профиля познакомятся с основами телекоммуникаций, начиная с азов — узнают, как устроен сигнал и его передача по воздуху. Как в этом сигнале передаётся информация и какой она бывает. Как на это влияет среда, как этому противостоять и какое отношение к этому имеют коды.
«НТО — это самая практико-ориентированная инженерная олимпиада, в которой я участвовала. Задания не только интересные, но и действительно дают неоценимый опыт решения реальных задач. Многие навыки, например, алгоритмы кодировки информации, анализ сигналов, пригодились мне в будущем на работе. Коллеги очень удивлялись, откуда я знаю коды Хемминга и Рида-Соломона. Призерство в НТО позволило пройти стажировку в Сколковском институте науки и технологии в лаборатории Интернета вещей, где мы разрабатывали мобильное приложение для 5G. Также успешный результат участия в НТО помог поступить в магистратуру Университета ИТМО по конкурсу портфолио».
Анастасия Кузьмина. Финалист НТО для школьников 8-11 классов, финалист НТО для студентов
Участникам предстоит решать задачи двух туров:
Первый этап — это проверка ваших базовых предметных знаний и погружение в тематику профиля.
В рамках инженерного тура участники познакомятся с образовательным курсом по введению в профиль и темам, которые нужны для его успешного прохождения: анализ данных, кодирование-декодирование, алгоритмы, работа с кодами, каналы связи, автономное управление.
Для решения задач II этапа необходимо собрать команду: чем сплоченнее она будет, тем выше шансы на успех в финале.
Участникам предстоит решать задачи на автономное управление, алгоритмы, анализ данных, каналы связи, кодирование и декодирование, математическое моделирование с использованием программ на языках C, C++, Java и Python 3.
Организаторы советуют участникам не бояться общаться, учиться эффективно распределять задачи, искать сильные стороны каждого участника команды, чтобы за второй тур нарастить и коммуникативные, и профессиональные навыки.
В течение нескольких дней командам предстоит решать большую инженерную задачу, связанную с проектированием и созданием сверхмалых космических аппаратов и их основных систем.
В настоящее время количество различных протоколов связи, количество систем, где их важно проектировать, непрерывно растет, но понимание базовых принципов и способность конструировать такие каналы падает в связи с ростом сложности протоколов. Навык создания собственных протоколов — базовый в технологиях связи, огромном растущем рынке в мире с увеличивающимся спросом на специалистов. Дальнейшее развитие беспроводных технологий связи — это не только технологии связи для спутников или подводных аппаратов, но и для домашних устройств, систем сенсоров, сельскохозяйственных дронов и других объектов Интернета вещей — все они требуют создание протоколов связи.
Технологии передачи больших зашифрованных массивов данных, слежение за подвижным источником сигнала применяется в отраслях, где нужна связь с автономным устройством в труднодоступном месте, куда нельзя физически добраться: при ремонте автоматических космических аппаратов, работе с подводными роботами и т. п. В финале у вас будет возможность не просто изучить эти технологии, а создать и протестировать собственные протоколы передачи данных с учетом определенных требований к надежности, характеру помех в канале, скорости передачи. Цель финала: получить протоколы передачи данных совершеннее, чем протоколы соперников. Побеждает команда, решившая наилучшим образом задачи по точной передаче сообщений в ежегодно изменяющихся условиях.
Начиная со II этапа участникам необходимо объединиться в команды из 4–5 человек. Тем, у кого команды нет, организаторы помогут ее найти (подробнее о командообразовании и том, как искать команду).
Чем больше компетенций в команде, тем выше ее эффективность.
Математика:
Теория вероятностей.
Простейшие арифметические операции с матрицами.
Геометрия. Базовые знания планиметрии.
Информатика:
Знание протоколов передачи данных.
Манипуляции с битами и байтами.
Обработка простых массивов данных.
Использование условного и циклического оператора.
Анализ информации разных типов: графической, текстовой.
Работа с системами счисления.
Дополнительные материалы: основы теории информации, теории сигналов, теории автоматического управления, основы обработки сигналов, методы борьбы с шумами.
Умение программировать на языке C/C++/Python/Java.
Алгебраический анализ данных.
Программирование систем управления, в т.ч. систем с обратной связью (PID-регуляторов).
Работа с рядами данных, матрицами, массивами высоких размерностей.
Выявление периодичностей в данных.
Работа с чтением/записью файлов.
Использование рекурсивных алгоритмов.
Работа с организацией стека памяти.
Открытость к коммуникации и работе в команде.
Навыки совместной работы над программным кодом.
Для участия во втором и заключительном этапах вам понадобится команда из 4–5 человек.
Программист-исследователь — анализ характеристик шума в каналах, выбор схемы помехоустойчивого кодирования, помехоустойчивое кодирование для оптического канала.
Аналитик-исследователь — работа с данными и основами корреляционного анализа, работа с механикой стенда, расшифровка кодов и характеристик стенда.
Программист — обработка сигналов, работа с данными и владение основами корреляционного анализа.
Капитан — сбор и анализ решений подзадач от всех специалистов, описанных выше, обсуждение и коррекция полученных результатов для более эффективного решения общей задачи, организация командной работы. Капитан должен обладать знаниями по всем основным темам, уметь разбираться в коде.
Совмещение ролей возможно, но не рекомендуется совмещать роль капитана с ролью программиста, так как грамотные действия капитана иногда являются решающими. Находясь одновременно в позиции программиста, очень сложно отвлечься от текущей реализации и принять необходимое решение.
Образовательный курс 2025 от разработчиков профиля. Технологии беспроводной связи
Курс «Технологии беспроводной связи» от разработчиков профиля
Разборы задач второго этапа прошлых лет от разработчиков профиля
Статья «Коды Рида-Соломона. Часть 1 — теория простым языком»
Статья «Методы сжатия данных»
Статья «Обзор методов сжатия данных»
Курс «Программирование на Python» для начинающих
Курс «Python: основы и применение» для продвинутых
Книга «Код. Тайный язык информатики» Чарльза Петцольда
Статья «Помехоустойчивое кодирование с использованием различных кодов»
Сборник задач НТО. Технологии беспроводной связи. 2024/2025 гг.