This slide deck is used on the fourth lesson for kids who started robotics courses for the first year. It introduces kids to opportunity to program touch and sound sensors in NXT-G.
Кружок по робототехнике. Занятие #5. Программируем датчики расстояния и цветаAlexander Kolotov
This slide deck is used on the fourth lesson for kids who started robotics courses for the first year. It introduces kids to opportunity to program ultrasonic and color sensors in NXT-G.
Кружок по робототехнике. Занятие #2. Lego Mindstorms NXTAlexander Kolotov
This slide deck is used as the first part of the second lesson for kids who started robotics courses for the first year. It familiarizes kids with LEGO Mindstorms NXT kit.
This document summarizes a paper on CenterTrack, a new object tracking method. CenterTrack localizes objects as keypoints and associates them across frames with minimal input. It applies a detection model to pairs of images and prior detections to localize objects and predict associations. CenterTrack represents an improvement over prior methods by using keypoints instead of bounding boxes and requiring only previous detections as input for tracking. An ablation study showed that offset prediction and multi-scale feature maps were important for performance.
https://telecombcn-dl.github.io/2017-dlcv/
Deep learning technologies are at the core of the current revolution in artificial intelligence for multimedia data analysis. The convergence of large-scale annotated datasets and affordable GPU hardware has allowed the training of neural networks for data analysis tasks which were previously addressed with hand-crafted features. Architectures such as convolutional neural networks, recurrent neural networks and Q-nets for reinforcement learning have shaped a brand new scenario in signal processing. This course will cover the basic principles and applications of deep learning to computer vision problems, such as image classification, object detection or image captioning.
The document describes a non-local neural network approach for image processing and computer vision tasks. It summarizes the non-local means approach which averages similar pixel values while not averaging dissimilar pixels. It then describes how the non-local neural network extends this idea by using a similarity function to compute a weighted sum of all pixels, allowing it to capture long-range dependencies. The document outlines various implementations of the non-local operation and how it can be integrated into common network architectures like ResNet.
Кружок по робототехнике. Занятие #5. Программируем датчики расстояния и цветаAlexander Kolotov
This slide deck is used on the fourth lesson for kids who started robotics courses for the first year. It introduces kids to opportunity to program ultrasonic and color sensors in NXT-G.
Кружок по робототехнике. Занятие #2. Lego Mindstorms NXTAlexander Kolotov
This slide deck is used as the first part of the second lesson for kids who started robotics courses for the first year. It familiarizes kids with LEGO Mindstorms NXT kit.
This document summarizes a paper on CenterTrack, a new object tracking method. CenterTrack localizes objects as keypoints and associates them across frames with minimal input. It applies a detection model to pairs of images and prior detections to localize objects and predict associations. CenterTrack represents an improvement over prior methods by using keypoints instead of bounding boxes and requiring only previous detections as input for tracking. An ablation study showed that offset prediction and multi-scale feature maps were important for performance.
https://telecombcn-dl.github.io/2017-dlcv/
Deep learning technologies are at the core of the current revolution in artificial intelligence for multimedia data analysis. The convergence of large-scale annotated datasets and affordable GPU hardware has allowed the training of neural networks for data analysis tasks which were previously addressed with hand-crafted features. Architectures such as convolutional neural networks, recurrent neural networks and Q-nets for reinforcement learning have shaped a brand new scenario in signal processing. This course will cover the basic principles and applications of deep learning to computer vision problems, such as image classification, object detection or image captioning.
The document describes a non-local neural network approach for image processing and computer vision tasks. It summarizes the non-local means approach which averages similar pixel values while not averaging dissimilar pixels. It then describes how the non-local neural network extends this idea by using a similarity function to compute a weighted sum of all pixels, allowing it to capture long-range dependencies. The document outlines various implementations of the non-local operation and how it can be integrated into common network architectures like ResNet.
The document summarizes AA-sort, a sorting algorithm optimized for SIMD and multicore processors. AA-sort works by first sorting blocks of data in parallel using vectorized combsort. It then merges the sorted blocks together. Key steps include sorting 4 elements within each SIMD register, transposing the registers, and performing a vectorized version of combsort without conditional branches. The document provides pseudocode for these steps.
Ewa Dominowska, Engineering Manager, Facebook at MLconf SEA - 5/20/16MLconf
Generating a Billion Personal News Feeds: With exponential growth of information and improved access, there is more and more data and not enough time to digest it. Facebook’s News Feed attempts to solve this by offering a way to show the most relevant content to each individual person. We create billions of personalized experiences by ranking stories for each person. Over the years, News Feed ranking has evolved to use large-scale machine learning techniques, driving to maximize the value created for each individual. Ranking and organizing the content in a unique way for a billion of users poses unique challenges. Each time a person visits their News Feed, we need to find the best piece of content out of all the available stories for them and put it at the top of Feed, where people are most likely to see it. To accomplish this, we model each person, attempting to figure out which friends, pages, and topics they care most about, and pick the stories and ordering they will find most interesting. In addition to the machine learning problems we work on for directing those choices, another primary area of research is understanding the value we are creating for people. These joint problems of selection and evaluation are essential for delivering continued value in personalized Feeds, and they would not be possible at the huge scale of content and users that Facebook operates at without powerful machine learning and analytics.
Snake robots are constructed of linked modules that resemble snakes and can be used for search and rescue operations. They have various sensors and can navigate debris to detect survivors and provide first aid. Path planning allows snake robots to build maps and find goals while avoiding obstacles. Future research aims to develop more versatile and autonomous snake robots for rescue missions in complex environments.
【DL輪読会】Deep Transformers without Shortcuts: Modifying Self-attention for Fait...Deep Learning JP
The document proposes modifications to self-attention in Transformers to improve faithful signal propagation without shortcuts like skip connections or layer normalization. Specifically, it introduces a normalization-free network that uses dynamic isometry to ensure unitary transformations, a ReZero technique to implement skip connections without adding shortcuts, and modifications to attention and normalization techniques to address issues like rank collapse in Transformers. The methods are evaluated on tasks like CIFAR-10 classification and language modeling, demonstrating improved performance over standard Transformer architectures.
Flappy Bird was one of the most downloaded mobile games of the year, developed by a small studio in Vietnam called GEARS. The simple yet addicting game became so popular that it could be played not just on mobile devices through apps stores, but also directly on Facebook by accessing a link on the Flappy Bird website.
論文紹介:DINO: DETR with Improved DeNoising Anchor Boxes for End-to-End Object D...Toru Tamaki
Hao Zhang, Feng Li, Shilong Liu, Lei Zhang, Hang Su, Jun Zhu, Lionel M. Ni, Heung-Yeung Shum, "DINO: DETR with Improved DeNoising Anchor Boxes for End-to-End Object Detection" arXiv2022
https://arxiv.org/abs/2203.03605
Кружок по робототехнике. Занятие #3. Программируем экран и звукиAlexander Kolotov
This slide deck is used on the third lesson for kids who started robotics courses for the first year. It introduces kids to opportunity to program the screen of NXT brick and sounds in NXT-G.
This slide deck is used on the seventh lesson for kids who started robotics courses for the first year. It describes basic concepts how to start programming simple tasks by using the following tasks as example: smart parking and simple maze solving.
This slide deck is used on the eight lesson for kids who started robotics courses for the first year. It describes basic approaches to prepare robot to simple competitions.
The document summarizes AA-sort, a sorting algorithm optimized for SIMD and multicore processors. AA-sort works by first sorting blocks of data in parallel using vectorized combsort. It then merges the sorted blocks together. Key steps include sorting 4 elements within each SIMD register, transposing the registers, and performing a vectorized version of combsort without conditional branches. The document provides pseudocode for these steps.
Ewa Dominowska, Engineering Manager, Facebook at MLconf SEA - 5/20/16MLconf
Generating a Billion Personal News Feeds: With exponential growth of information and improved access, there is more and more data and not enough time to digest it. Facebook’s News Feed attempts to solve this by offering a way to show the most relevant content to each individual person. We create billions of personalized experiences by ranking stories for each person. Over the years, News Feed ranking has evolved to use large-scale machine learning techniques, driving to maximize the value created for each individual. Ranking and organizing the content in a unique way for a billion of users poses unique challenges. Each time a person visits their News Feed, we need to find the best piece of content out of all the available stories for them and put it at the top of Feed, where people are most likely to see it. To accomplish this, we model each person, attempting to figure out which friends, pages, and topics they care most about, and pick the stories and ordering they will find most interesting. In addition to the machine learning problems we work on for directing those choices, another primary area of research is understanding the value we are creating for people. These joint problems of selection and evaluation are essential for delivering continued value in personalized Feeds, and they would not be possible at the huge scale of content and users that Facebook operates at without powerful machine learning and analytics.
Snake robots are constructed of linked modules that resemble snakes and can be used for search and rescue operations. They have various sensors and can navigate debris to detect survivors and provide first aid. Path planning allows snake robots to build maps and find goals while avoiding obstacles. Future research aims to develop more versatile and autonomous snake robots for rescue missions in complex environments.
【DL輪読会】Deep Transformers without Shortcuts: Modifying Self-attention for Fait...Deep Learning JP
The document proposes modifications to self-attention in Transformers to improve faithful signal propagation without shortcuts like skip connections or layer normalization. Specifically, it introduces a normalization-free network that uses dynamic isometry to ensure unitary transformations, a ReZero technique to implement skip connections without adding shortcuts, and modifications to attention and normalization techniques to address issues like rank collapse in Transformers. The methods are evaluated on tasks like CIFAR-10 classification and language modeling, demonstrating improved performance over standard Transformer architectures.
Flappy Bird was one of the most downloaded mobile games of the year, developed by a small studio in Vietnam called GEARS. The simple yet addicting game became so popular that it could be played not just on mobile devices through apps stores, but also directly on Facebook by accessing a link on the Flappy Bird website.
論文紹介:DINO: DETR with Improved DeNoising Anchor Boxes for End-to-End Object D...Toru Tamaki
Hao Zhang, Feng Li, Shilong Liu, Lei Zhang, Hang Su, Jun Zhu, Lionel M. Ni, Heung-Yeung Shum, "DINO: DETR with Improved DeNoising Anchor Boxes for End-to-End Object Detection" arXiv2022
https://arxiv.org/abs/2203.03605
Кружок по робототехнике. Занятие #3. Программируем экран и звукиAlexander Kolotov
This slide deck is used on the third lesson for kids who started robotics courses for the first year. It introduces kids to opportunity to program the screen of NXT brick and sounds in NXT-G.
This slide deck is used on the seventh lesson for kids who started robotics courses for the first year. It describes basic concepts how to start programming simple tasks by using the following tasks as example: smart parking and simple maze solving.
This slide deck is used on the eight lesson for kids who started robotics courses for the first year. It describes basic approaches to prepare robot to simple competitions.
This slide deck is used on the sixth lesson for kids who started robotics courses for the first year. It introduces kids to opportunity to use switches together with sensors in order to make decisions how the program needs to behave further.
Кружок по робототехнике. Занятие #2. Программируем моторыAlexander Kolotov
This slide deck is used as the last part of the second lesson for kids who started robotics courses for the first year. It introduces kids to opportunity to program motors in NXT-G.
Another example of slides for Lego Mindstorms NXT coursesAlexander Kolotov
Пример слайдов по теме "ожидание событий"
Подобные слайды НИИТ может разработать и предоставить для обучения школьников программе: "Программирование Lego-роботов".
Детали на http://nnxt.blogspot.com/p/lego-lego-mindstorms-nxt.html
Таблица соответствия робототехнических компетенций и возрастовAlexander Kolotov
Таблица соответствия робототехнических компетенций и возрастов. Используется совместно с матрицей компетенций: http://www.slideshare.net/AlexanderKolotov/ss-43603010
Опросный лист оценки знаний по соревновательной робототехникеAlexander Kolotov
Опросный лист оценки знаний по соревновательной робототехнике, содержащий матрицу компетенций, которыми рекомендуется овладеть потенциальным участникам робототехнических состязаний уровня World Robot Olympiad.
Справка-обзор популярных робототехнических комплектовAlexander Kolotov
Справка-обзор популярных робототехнических комплектов, подготовленная Университетом Иннополис весной 2014 к циклу мероприятий, организованных правительством Республики Татарстан, по интеграции направления робототехники в школьный образовательный процесс.
2. Содержание
• Введение
• Что такое состояние?
• Ожидание событий
• Ожидание событий в NXT-G
• Датчик касания
• Цикл - повтор одинаковых действий
• Датчик уровня громкости
3. Введение
• Основной функцией робота является движение
или перемещение его частей (манипуляторы,
захваты, ноги, сенсоры)
5. Введение
• Внешние события приходят роботу через
сенсоры и датчики, от внутренних часов
робота, от оператора, а также от других
роботов.
6. Что такое состояние?
• Смена состояния робота:
При программировании роботов часто говорят о
состояниях. Например, робот находится в
состоянии движения или робот находится в
состоянии бездействия.
Чтобы перейти к следующему состоянию, робот
должен получить указание на это через какое-то
событие.
7. Что такое состояние?
• Например, находясь в состоянии движения роботу
приходит сигнал от датчика касания, что впереди
перпятствие, и робот из состояния движения
переходит в состояние бездействия.
Сигнал от датчика
Движение Остановка
8. Ожидание событий
• Следовательно, робот будет продолжать
находиться в предыдущем состоянии до тех пор,
пока не получит сигнал на переход в следующее
состояни.
• Робот должен ожидать возникновения сигнала –
этот процесс можно назвать «Ожидание события»
9. Ожидание событий в NXT-G
• В среде программирования NXT-G есть
специальный блок «Wait» (Ждать), на
котором программа приостанавливает
свое действие до наступления события
• Блок Ожидания может быть описан фразой
«выполнять предыдущее действие до тех пор,
пока не случиться ...»
• Блоки ожидания (оранжевые) можно найти в
общей (Common) палитре инструментов
10. Ожидание событий в NXT-G
• Блок Ожидания может быть использован для
ожидания событий от разных сенсоров
• Источниками событий могут быть:
• Сенсоры и датчики
• Внутренние часы и таймеры
• Кнопки расположенные на NXT блоке
• Сообщения от других роботов (Bluetooth)
11. Датчик касания
• Ожидание событий от датчика касания
• «Ехать вперед до тех пор, пока датчик
касания не будет нажат»
1. Номер порта, где установлен датчик
2. Переход в следующее состояние определяется параметрами
Нажат (Pressed) – «поворачивать до тех пор, пока датчик не будет нажат»
Отжат (Released) – «отъезжать до тех пор, пока датчик не будет отжат»
Щелкнут (Bumped) – «ничего не делать до тех пор, пока датчик не обнаружит
щелчок»
12. Датчик касания
• Пример
1. Ничего не делать до тех пор, пока датчик не будет нажат (зажат
и сразу отпущен)
2. Начать движение вперед
3. Ехать до тех пор, пока датчик не будет зажат
4. Остановиться
Количество движения у мотора – бесконечность,
позволяет бесконечно двигаться до прихода события
13. Датчик касания
• Задание 1. Робот обнаруживает препятствие.
• На роботе датчик касания «смотрит» вперед
• Робот начинает двигаться
• Как только обнаружится касание с препятствием, робот
должен остановиться.
• Из скольки блоков состоит ваша программа?
• Остановился робот сразу после касания или сколько-то
еще пытался продолжать двигаться?
• За счет какого действия в программе нужно остановить
робота, сразу после обнаружения нажатия?
14. Датчик касания
Не забывайте добавлять блок остановки двигателей
после блока ожидания, это позволит сделать
поведение робота более предсказуемым
При отсутствии этого блока
Запустить двигатели и
двигатели будут продолжать
передать управление
крутиться после блока Ожидание.
следующему блоку Ожидать появления
А поскольку программа сразу
(состояние движения) сигнала «касание»
кончилась, то на двигатели просто
перестает подаваться энергия, но
они еще продолжают двигаться по
инерции
15. Датчик касания
• Задание 2. Запуск робота c кнопки.
• Изначально робот стоит и должен начать двигаться
только после того, как происходит нажатие на датчик
касания.
• Робот останавливается после столкновения с
препятствием.
• Почему робот не поехал, а
программа сразу завершилась?
16. Датчик касания
Программа исполняется на NXT блоке быстрее, чем
человек взаимодействует с роботом
Очень-очень быстро!
Тысячные доли секунды
Человек нажал
Моторы
на кнопку
Человек еще не остановились и
Моторы только начали
успел отдернуть программа
запускаться, и
руку от датчика завершилась
управление передалось
следующему блоку
17. Датчик касания
• Вариант первый.
• Вставить задержку, чтобы человек успел отжать датчик
Человек нажал Моторы К этому времени
на кнопку За это время, запускаются датчик «освобожден»
кнопка отжимается и ожидает сигнала
касания
Минусы подхода:
• Задержку надо подбирать индивидуально для человека
• Запуск мотора происходит с видимой задержкой после
нажатия
18. Датчик касания
• Вариант второй.
• Использовать событие «датчик щелкнут».
Минусы подхода:
• Такой «фокус» пройдет только с датчиком касания – для
других датчиков такое поведение придется
программировать самостоятельно
19. Датчик касания
• Задание 2a. Простейший выход из лабиринта.
• Напишите программу, чтобы робот выбрался из
лабиринта вот такой конфигруации:
Старт
Финиш
• Что нужно сделать роботу после касания со стенкой?
• В какую сторону должен крутиться мотор, чтобы робот мог
выполнить разворот беспрепятственно?
• Сколько раз робот должен сделать одинаковые действия?
20. Повтор одинаковых действий
• Иногда в программе возникает необходимость
повторить несколько одинаковых операций друг за
другом несколько раз:
1
2
4
3
21. Повтор одинаковых действий
• Для повторения одинаковых действий используется
блок «Loop» (Цикл)
• Те действия, которые необходимо повторять
несколько раз, помещаются внутрь цикла
• Как только действие
последнего блока в цикле
заканчивается, программа
переходит к первому блоку
22. Повтор одинаковых действий
• Задание 2b. Выход из бесконечного лабиринта.
• Напишите программу, чтобы робот выбрался из
лабиринта, у которого финиша заранее не определен:
Старт
23. Повтор одинаковых действий
• Задание 3. Ожидание событий от двух датчиков.
• Установите на роботе два датчика касания – один
«смотрит» вперед, другой – назад
• Напишите программу, чтобы робот менял направление
движения на противоположное при столкновении с
препятствием, при этом:
• При движении вперед опрашивается передний датчик
• При движении назад опрашивает задний датчик
Не забудьте указать разные порты для разных
датчиков.
24. Датчик уровня громкости
• Ожидание событий от датчик уровня
громкости
• «Ничего не делать до тех пор, пока не
стало тише, чем …»
1. Номер порта, где установлен датчик
2. Переход в следующее состояние определяется звуковым давлением
(громкостью звука) :
• Событие возникнет при громкости меньше, чем X процентов (тише чем …)
• знак “<“, оранжевая полоска ползунка с левой стороны
• Событие возникнет при громкости больше, чем X процентов (громче чем …)
• знак “>“, оранжевая полоска ползунка с правой стороны
25. Датчик уровня громкости
• Пример
1. Ничего не делать до тех пор, пока рядом с роботом не хлопнут в
ладоши
2. После хлопка, проиграть музыку
26. Датчик уровня громкости
• Задание 4. Измерение громкости
• Установите датчик громкости на роботе
• Составьте программу, состоящую из одного
только блок ожидания, работающего с датчиком
уровня громкости
• Подключите робота к компьютеру, убедитесь, что среда
NXT-G видит вашего робота
• Перейдите в конфигурационную
панель блока и посмотрите, как
изменяются показания сенсора в
зависимости от окружающего шума
27. Датчик уровня громкости
• Задание 5. Управление звуком.
1. Робот должен начать двигаться после громкого хлопка.
2. После еще одного хлопка робот должен повернуть на
180 градусов и снова ехать вперед.
3. Используйте цикл, чтобы повторять действия из шага 2.
Какой уровень
громкости
установлен, как
порог срабатывания,
для хлопка?
Чтобы избежать влияния шума моторов, установите
датчик как можно выше над роботом.
• Если робот все время поворачивает, попробуйте решить проблему
используя знания, полученные в Задании 2.