Comments
К сожалению, ROS Melodic (рекомендуемая версия) все еще не поддерживает python3 полностью и изначально это не планировалось. Но работы уже ведутся.
Исходя из моего опыта, python2 вполне справляется со всеми задачами.
У любого автономного робота при взаимодействии с реальным миром (вне зависимости от того, проектировали ли мы это или нет) проявляется его «реальная психика». Это как можно вкратце охарактеризовать цель существования робота в этом мире. Краткое описание всей его активности. Ничего такого не увидел в вашей статье. На мой взгляд именно с этого и надо начинать проектирование роботов. А уже потом прибавлять все технические детали, которыми наводнена ваша статья.
Какая еще «реальная психика»? Психика это уже на уровне высших абстракций, здесь же всё на уровне простейших животных инстинктов «реакция — действие».
Психика это уже на уровне высших абстракций, здесь же всё на уровне простейших животных инстинктов «реакция — действие».
С одной стороны если робот заточен на обнаружение элементарных ситуаций и элементарных реакций на них, надо так и писать про это. Про список всего этого элементарного. А с другой стороны этот список формирует некоторое определенное поведение, которое можно охарактеризовать как определенную психику проявляющуюся в конкретной среде. И про это тоже надо писать. Хотя это не видно сразу.
Нейронные сети — это инструмент, который выявляет взаимосвязи в больших данных и являются крайне узкоспециализированными. Например, если прямо по курсу препятствие, нужно повернуть направо. Другими словами, мы имеем марковский процесс с конечным количеством действий (поворот направо, налево, ничего не делать). В случае Q-Learning нейронная сеть выступает в роли апроксиматором математического ожидания награды от выполненного действия. Так что я искренне не могу понять, что вы имеете ввиду под «психикой». Сколько я читал научных работ, никто ни разу не вводил понятие «психики»
Так что я искренне не могу понять, что вы имеете ввиду под «психикой».
Под «психикой» робота я имею ввиду полученное в результате поведение робота в конкретной среде. То есть, например:
«В условиях обычной квартиры без длинношерстных ковров робот бесцельно катается по полу, пытаясь обходить препятствия пока не кончится заряд.»
Или «В условиях обычной квартиры без длинношерстных ковров робот бесцельно катается по полу, пытаясь обходить препятствия пока заряд не кончится на 70%. Потом выполняет поиск зарядного устройства с успехом в 80%.»
Или «В условиях обычной квартиры без длинношерстных ковров робот катается по полу пытаясь побывать на всех участках пола по такому-то алгоритму, пытаясь обходить препятствия пока заряд не кончится на 70%. Потом выполняет поиск зарядного устройства с успехом в 80%.»
Это и есть краткие описание «психики» робота. Или цели его существования.
Иногда простые алгоритмы воспроизводят в конкретных средах весьма сложное поведение. Иногда такое встречается у простейших одноклеточных. Они умеют метить среду специальными маркерами и вообще не имея нервной системы могут выдавать весьма сложное (и «разумное») поведение реагируя на ранее оставленные отметки специфическим образом.
Сколько я читал научных работ, никто ни разу не вводил понятие «психики»
Все бывает в первый раз.
цель моей работы, как вы могли прочитать в начала, заключается в написание фреймворка, который бы позволил тестировать различные алгоритмы RL через Gym API, что, собственно, и было сделано. Вы уже сейчас можете абсолютно бесплатно взять мой проект и использовать его в своих экспериментов по выявлению неведомой мне психики робота. Я с удовольствием почитаю о ваших результатах.

Следующий этап — научить робота проходить круг по лабиринту за минимальное время. Этим я займусь через пару месяцев. В перспективе — провести эксперимент по переносу модели на реального робота и насколько это вообще целесообразно.
Связка ROS2 (crystal) + python3 + Gazebo вполне неплохо заводится.
а если нужны какие-то ноды из ros1, которых нет в ros2, можно поднять ноду ros1_bridge.
А ROS2 уже достаточно стабильна для использования? Я тут полгода к ним на сайт заглядываю, и создается впечатление все еще глубокой беты (хотя вроде релизнули уже пару лет назад), тотального отсутствия туториалов и прочих полезных материалов по сравнению с ROS1.
Сложно сказать, опыта использования пока маловато.
Нарывался пару раз на затупы в системе сборки (или просто еще не умею её готовить), а в остальном, вроде как, работает стабильно.
Для Melodic (Ubuntu 18.04) вроде нет пакета gmapping. Карту помещения не построить?
Как продвигается ваш проект?
Спасибо. Статья очень своевременно «подвернулась». Я только что обломался из-за Coppelia Robotics — они оставили на сайте дистрибутивы только для 64bit. Покопавшись, натолкнулся на Gazebo, пока устанавливал — нашел вашу статью. Класс, есть чем позаниматься на длинных выходных.
печалька
sudo apt install ros-melodic-desktop
Невозможно найти пакет ros-melodic-desktop
У меня Ubuntu 18.04.4 LTS
Попытки преодолеть проблему пока ни к чему не привели :(
Only those users with full accounts are able to leave comments. Log in, please.