Заявляемое изобретение относится к средствам построения оптимальной траектории движения сервисных роботов (далее - робота) в динамической среде.
Наиболее близким аналогом заявляемого изобретения является способ определения траектории движения автономного транспортного средства в динамической среде (см. описание патента РФ на изобретение №2479015, МПК G06F 17/10, G08G 1/01, G08G 1/056, опубл. 10.04.2013 г. по заявке №2012101080/08 от 11.01.2012 г., патентообладатель Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В.И. Ульянова (Ленина)" (RU)).
Данное изобретение относится к системам искусственного интеллекта и может быть использовано для определения траектории движения автономного транспортного средства в динамической среде. В способе в первом цикле сбора и обработки информации формируют множество возможных траекторий дальнейшего движения в течение фиксированного интервала времени в пределах длительности упомянутого цикла, рассчитывают значения ожидаемой полезности для каждой из упомянутого множества с использованием заданной функции ожидаемой полезности в пределах интервала времени, оставшегося в рамках длительности цикла сбора и обработки информации, в последующих циклах переформируют упомянутое множество, в том числе уточняют возможные траектории дальнейшего движения, и определяют новые возможные траектории дальнейшего движения.
Недостатком вышеуказанного аналога, принятого за прототип, является недостаточно эффективное построение траекторий движения автономного транспортного средства в сложных динамических средах с препятствиями. Указанный недостаток обусловлен тем, что:
- исходный маршрут разбивается на несколько ключевых точек без учета возможного расположения статических препятствий, при этом не описано поведение, при котором ключевая точка недоступна для движения (находится в препятствии);
- построение осуществляется от точки к точке, т.е. если по прибытии в конечную точку не будет найдена следующая локальная траектория, робот прекращает движение. В этом случае участок маршрута может быть доступен для движения до пересекающего его препятствия. Выполнение движения по этому участку полезно как с целью уточнения данных об окружающей сцене: могут быть обнаружены дополнительные проезды для движения, так и с целью минимизации общего времени выполнения задания. В данном прототипе этот процесс не выполняется, и при отсутствии решений робот будет просто стоять на месте;
- поиск траекторий выполняется только в евклидовом пространстве, не рассматривается возможность наличия кинематических ограничений платформы;
- большинство анализируемых траекторий находятся достаточно далеко от исходного маршрута и фактически будут отброшены при выборе одной, наиболее полезной;
- не осуществляется планирование скорости движения робота: во многих случаях достаточно снизить скорость движения и не выполнять объезд, тем самым не отклоняться от запланированного маршрута.
Заявляемое техническое решение направлено на устранение указанного недостатка.
Технический результат настоящего изобретения заключается в повышении эффективности перемещений робота за счет минимизации отклонения фактической траектории движения от маршрутного задания, оптимизации траектории с целью гарантирования безопасного движения среди препятствий, учета динамических объектов при формировании траектории.
Указанный технический результат достигается благодаря способу построения оптимальной траектории движения сервисных роботов в динамической среде, характеризующегося тем, что в процессе следования по заданному маршруту получают и обрабатывают входные данные, которые являются как результатами обработки данных с сенсоров, а именно, информация о позиции, ориентации и скорости робота, так и результатом работы сторонних алгоритмов, а именно, карта занятости, маршрутное задание, предсказанная траектория движения робота, рассчитанная с учетом прогнозируемых команд управления движением. Затем выполняют валидацию входной информации проверяя время формирования входных данных, соответствие позиции робота, карты занятости и маршрутного задания. Далее, исходя из информации о занятом операционном пространстве и текущей конфигурации робота, используют режимы движения и переключения между ними, включающие «Режим прохождения маршрута», «Режим восстановления на маршруте» или «Режим следования за пешеходом», направленные на минимизацию отклонения от заданного маршрута и обеспечение стабильности движения в недетерминированной среде за счет комбинации различных алгоритмов поиска и постобработки траекторий с целью формирования результирующей локальной траектории. В случае наличия препятствий в «Режиме прохождения маршрута» строят траектории объезда в пространстве Дюбинса, которые склеивают со свободными участками маршрута, при этом поиск траекторий выполняют последовательно, отдавая приоритет близким препятствиям, результирующая локальная траектория может содержать несколько траекторий объезда и несколько свободных участков маршрута. Если в «Режиме прохождения маршрута» на пути обнаруживают препятствия, то построение траекторий объезда выполняют с помощью поиска «начальной догадки», который реализовывают с применением модифицированного алгоритма поиска пути по графу с использованием онлайн-примитивов движения для построения траекторий, опирающегося на принцип эвристического поиска, предложенный в классическом поисковом алгоритме А*. При этом на каждом шаге алгоритма поиска пути по графу при построении онлайн-примитивов движения формируют функцию стоимости, представляющую собой сумму стоимостей со следующими составляющими: стоимость по управляющим воздействиям, стоимость по близости к препятствиям, стоимость по близости к динамическим препятствиям и стоимость по семантической карте. После нахождения «начальной догадки» выполняют алгоритм сглаживания найденной траектории с учетом динамических ограничений робота, при этом используют методы решения задач нелинейного оптимального управления, причем, в качестве входных данных алгоритма сглаживания траектории принимают траекторию, подвергаемую сглаживанию, и карту занятости, необходимую для аллокации репеллеров, которые вводятся в функционал, повышая вес решения, в случаях сближения с препятствием. В случае, если робот не отрабатывает маршрут, съезжает с него или с траектории объезда препятствий, и вынужден остановиться, происходит переход в «Режим восстановления на маршруте». Поиск траектории в «Режиме восстановления на маршруте» выполняют в пространстве Ридса-Шеппа с учетом кинематических ограничений, при этом используют алгоритм поиска на решетке с онлайн-примитивами, который с помощью составляющей wa⋅I(а<0) стоимости по управляющим воздействиям придает больший приоритет движению робота вперед, чем движению задним ходом, и при нахождении траектории Дюбинса выполняют переход в «Режим прохождения маршрута». При использовании «Режима следования за пешеходом» выполняют анализ параметров движения впереди идущих пешеходов, принимают решение об обгоне/объезде, либо движении за объектом и осуществляют следование, если направление движения пешехода совпадает с направлением участка маршрута и его скорость ниже скорости движения робота. При этом осуществляют постановку и решение нелинейной задачи наименьших квадратов, что позволяет рассчитать коэффициенты полинома четвертой степени, описывающего профиль скорости движения робота с целью безопасного выполнения маневра сближения и следования за объектом.
Таким образом, заявляемое техническое решение соответствует критерию изобретения «новизна». Сравнение заявляемого технического решения с другими защищенными патентами техническими решениями в данной области техники позволяет сделать вывод о соответствии критерию «изобретательский уровень». Заявляемое решение пригодно к осуществлению промышленным путем.
Сущность заявляемого технического решения поясняется схемами и изображениями, на которых:
На фиг. 1 показана схема реализации заявляемого способа;
На фиг. 2 показана схема взаимодействия режимов движения;
На фиг. 3 показан алгоритм построения результирующей траектории;
На фиг. 4 приведен пример построения примитивов движения;
На фиг. 5 приведен пример поиска траектории и сформированных примитивов движения;
На фиг. 6 приведен пример работы модуля сглаживания;
На фиг. 7 приведены примеры траекторий объезда.
Заявляемый способ характеризуется следующими этапами:
- получение и обработка входных данных (см. фиг. 1), которые являются как результатами обработки данных с сенсоров (информация о позиции, ориентации и скорости робота), так и результатом работы сторонних алгоритмов (карта занятости, маршрутное задание, предсказанная траектория движения робота, рассчитанная с учетом прогнозируемых команд управления движением). На данном этапе выполняется валидация входной информации с целью проверки ее актуальности (проверяется время их формирования) и согласованности (проверяется соответствие позиции робота, карты занятости и маршрутного задания). В случае, если проверка не будет пройдена, алгоритм опубликует пустую локальную траекторию, что вызовет остановку робота;
- принятие решения о текущем режиме движения, исходя из информации о занятом операционном пространстве и текущей конфигурации робота (см. на фиг. 2). Представленные режимы движения предназначены для обеспечения дополнительной функциональности системы. Основным является «Режим прохождения маршрута», в котором объект решает задачу следования, выполняя при этом объезд препятствий. «Режим восстановления на маршруте» является вспомогательным и отвечает за сложные маневры в случаях, когда основной режим не может быть выполнен. «Режим следования за пешеходом» - функция адаптивной подстройки профиля скорости при следовании объекта по маршруту без осуществления объезда препятствий;
- поиск, постобработка и валидация траекторий объезда. Данный этап включает в себя модуль поиска траекторий в пространстве кривых Дюбинса, который выполняет решение задачи с учетом маршрутного задания, и обеспечивает возможность формирования оптимальной траектории объезда препятствия, минимально отклоняющейся от маршрута. При этом в расчет принимаются статические и динамические препятствия, кинематические ограничения робота. Сглаживание (оптимизация) найденной траектории выполняется с применением методов оптимального управления с целью формирования ее заданного качества. Функционал качества представляет собой интегральный показатель, включающий такие составляющие, как кривизна траектории, близость к препятствиям, длина траектории и др.;
- построение и публикация результирующей локальной траектории. Результирующая локальная траектория формируется из свободных участков маршрута и траекторий объезда препятствий в пределах заданного горизонта, определяемого условиями работы робота, а также ее средней скоростью движения.
Заявляемый способ реализуется следующим образом.
В «Режиме прохождения маршрута» выполняется движение по нему в одном направлении, индекс текущей точки маршрута может только наращиваться. В случае наличия препятствий строятся траектории объезда в пространстве Дюбинса, которые склеиваются со свободными участками маршрута. При этом поиск траекторий выполняется последовательно, приоритет отдается близким препятствиям, и результирующая локальная траектория может содержать несколько траекторий объезда и несколько свободных участков маршрута.
Алгоритм построения результирующей локальной траектории приведен на фиг. 3.
При обнаружении на пути препятствия формируется задача построения траектории движения (а), которая в зависимости от типа может быть решена двумя способами. Тип задачи построения траектории движения выбирается в модуле распределения задач (б) в зависимости от режима движения. В рассматриваемом «Режиме прохождения маршрута» построение траекторий объезда выполняется в несколько этапов: поиск «начальной догадки», который выполняется в модуле построения траектории в пространстве Дюбинса (в) и сглаживание (оптимизация) траектории, которое выполняется в модуле сглаживания (д) с использованием методов оптимального управления. «Начальная догадка» может быть построена как в евклидовом пространстве, так и в пространстве Дюбинса. Первый вариант используется для роботизированных платформ, двигающихся в несложной среде с малым количеством динамических препятствий, где учитываются только статические объекты. Во втором случае построение траектории выполняется с учетом множества факторов, таких как кинематические ограничения шасси, наличия статических (карта занятости) и динамических препятствий (ограничивающие многоугольники, имеющие предсказанную траекторию движения), а также семантическая информация о подстилающей поверхности: приоритет движения отдается тротуарам и асфальтированным дорожкам.
Этап нахождения "начальной догадки" реализован с применением модифицированного алгоритма поиска пути по графу с использованием онлайн-примитивов движения [1].
Идея данного алгоритма состоит в применении онлайн-примитивов движения для построения траекторий, которые задают кинематически выполнимые сегменты для перехода из одного состояния робота в другое, где каждое состояние робота описывается тройкой:
sk=(х, y, φ),
где (х, у) положение робота,
φ - ориентация робота.
Онлайн примитивы движения генерируются с помощью дискретных управлений с учетом кинематических ограничений робота. С целью генерации примитивов движения задается набор управлений:
U={(а1, ψ1), …, (am, ψm)},
где пара (а1, ψ1) ∈ U - это линейное ускорение и угол поворота колес.
Для произвольного состояния робота sc может быть сформирована решетка примитивов, по которым робот может переходить из одного состояния в другое, как показано на фиг. 4. Для этого используется так называемая "велосипедная модель", которая служит для моделирования движения робота, описываемая уравнениями:
где - линейная скорость и угол поворота колес - пара управляющих движений, которые принимает на вход модель движения;
L - колесная база роботов.
С помощью и L робот может переходить из текущего состояния sc в следующее sc+1. Используя преобразование:
где в качестве шага по времени используется τ, можно получить линейную скорость из линейного ускорения. Каждый примитив движений генерируется из некоторого начального состояния sc с помощью управлений (ai, ψi), которые в течение некоторого горизонта времени Т с дискретным шагом по времени τ будут моделировать движение робота. Пример построения примитивов движения показан на фиг. 4.
Важным составляющим для алгоритма поиска пути по графу является стоимость каждого сгенерированного примитива движения ξu. На каждом шаге построения примитивов формируется функция стоимости, которая представляет собой сумму стоимостей со следующими составляющими: стоимость по управляющим воздействиям (control), стоимость по близости к препятствиям (clearance), стоимость по близости к динамическим препятствиям (dynamic) и стоимость по семантической карте (sem). Семантическая карта - карта, содержащая весовые коэффициенты, определяющие стоимость движения по тем или иным участкам поверхности. Например, движение по асфальту имеет меньший вес, в сравнении с движением по газону. Составляющие функции стоимости записываются следующим образом:
- стоимость по управляющим воздействиям:
ccontrol(s)=wψ|ψ|+wa⋅I(a<0),
где I индикаторная функция,
wa и wψ - веса для учета управляющих воздействий соответственно;
- стоимость по близости к препятствиям:
cclearance(s)=wclearance⋅Rclearance(s.x, s.y),
где Rgrid - близость к препятствиям в отношении координат (х, у),
wclearance - вес для учета близости к препятствиям;
- стоимость по близости к динамическим препятствиям
Cdynamic(s)=wdynamic⋅Rdynamic(s.x, s.y),
где Rdynamic - близость к динамическим препятствиям в отношении координат (х, у),
wdynamic - вес для учета близости к динамическим препятствиям;
- стоимость по семантической карте:
csem(s)=wsemRsem(s.x, s.y),
где Rsem - стоимость семантической карты в отношении координат (х, у),
wsem - вес для учета семантической карты.
Итоговая стоимость для каждого примитива представляется следующим образом:
Алгоритм поиска пути по графу опирается на принцип эвристического поиска, предложенный в классическом поисковом алгоритме А* [2]. Это итерационный алгоритм, который на каждом шаге выбирает вершину в графе с наименьшей стоимостью ƒ(s) для ее раскрытия, которая находится на наиболее перспективном пути от старта (Start) до цели (Goal).
Стоимость:
ƒ(s)=g(s)+∈⋅h(s),
где: g(si)=minu∈U(g(Si-1)+ξu) - стоимость кратчайшего пути из начальной вершины в текущую на данной итерации;
h(s) - эвристическая оценка близости к цели.
Алгоритм А* использует приоритезированный список OPEN для хранения вершин, которые нужно раскрывать. Список OPEN отсортирован в порядке увеличения стоимости ƒ, и на каждой итерации алгоритм А* достает вершину с наименьшей ƒ стоимостью и "раскрывает" ее. Когда вершина раскрывается, генерируются соседи этой вершины, то есть те вершины, куда можно переходить из текущей вершины. Поиск завершается, как только конечная вершина будет раскрыта. А итоговый путь можно восстановить с помощью "родителей" соответствующих вершин. Для ускорения поиска используется модификация алгоритма А* - это взвешенный алгоритм WA* с эвристикой ∈⋅h, где ∈>1, который раскрывает значительно меньше вершин, чем А*, но выдает субоптимальное решение. Пример построения группы примитивов и выбора результирующей траектории приведен на фиг. 5.
В модуле сглаживания (д) при построении траектории объезда выполняется сглаживание (оптимизация) найденной траектории с учетом динамических ограничений робота. Для решения задачи сглаживания (оптимизации) используются методы решения задач нелинейного оптимального управления. В частности, в предлагаемом алгоритме сглаживания (оптимизации) используется метод последовательного квадратичного программирования, при котором траектория аппроксимируется N-ым количеством точек. Каждая точка из полученной последовательности дополняется скоростью, ориентацией и углом выворота колес робота, так что точку можно рассматривать как состояние робота в точке. Для каждой из аугментированных точек составляется задача квадратичного программирования [3]. Таким образом, последовательное решение поставленных задач квадратичного программирования с учетом заданной целевой функции (функционала), дает оптимальную и валидную последовательность состояний робота, переводящую робота из начального состояния в конечное. В качестве входных данных алгоритм сглаживания (оптимизации) траектории принимает траекторию, подвергаемую сглаживанию (оптимизации), и карту занятости. Входная траектория представлена последовательностью точек, для которых указана позиция (х, у) и ориентация (φ). Карта занятости представлена матрицей, где пересечение столбца и строки является точкой в пространстве с координатами (х, у), а значение в ячейке матрицы указывает на наличие препятствия в точке. Входная траектория используется для инициализации начального решения задачи последовательного квадратичного программирования, а также входит в целевую функцию (функционал) в виду евклидовой метрики. Карта занятости необходима в алгоритме для аллокации репеллеров, которые вводятся в функционал, повышая вес решения, в случаях сближения с препятствием. В качестве ограничений в данной задаче нелинейного программирования вводится динамическая модель робота. Таким образом, в случае успешного решения поставленной задачи нелинейного оптимального управления, алгоритм отдает в качестве выходных данных траекторию, которая кинематически валидна и является оптимальной с учетом заложенных в функционал требований. На фиг. 6 сплошной линией показана результирующая траектория, которая является уточненной «начальной догадкой», которая представлена набором стрелочек. Так же на фиг. 6 представлена карта занятости, в которой для точки в пространстве заданы значения, показывающие является ли зона свободной, занятой или расположенной вблизи занятой зоны. Оптимизируемый функционал качества может меняться в зависимости от задачи, так он может содержать разные составляющие: кривизна траектории, суммарное изменение угла рыскания робота, суммарное отклонение от «начальной догадки» и др. Данный математический аппарат используется для уточнения предварительной траектории в рамках необходимых требований к ее качеству.
В случае, если робот по какой-то причине не отрабатывает маршрут, съезжает с него или с траектории объезда препятствий, и вынужден остановиться, выполняется переход в «Режим восстановления на маршруте». В модуле построения траекторий для возвращения на маршрут (г) выполняется поиск траектории в пространстве Ридса-Шеппа с учетом кинематических ограничений (см. фиг. 3). Для этого используется алгоритм поиска на решетке с онлайн-примитивами, который с помощью составляющей wa⋅I(а<0) стоимости по управляющим воздействиям придает больший приоритет движению робота вперед, чем движению задним ходом. Предполагается, что робот по такой траектории будет двигаться на невысоких скоростях. Как только находится траектория Дюбинса, выполняется переход в «Режим прохождения маршрута».
Примеры построения траекторий объезда для случаев наличия на маршруте одного или нескольких препятствий приведены на фиг. 7.
В «Режиме следования за пешеходом» выполняется анализ параметров движения впереди идущих пешеходов, принимается решение об обгоне/объезде, либо движении за объектом. Следование осуществляется, если направление движения пешехода совпадает с направлением участка маршрута и его скорость ниже скорости движения робота. В этом случае осуществляется постановка и решение нелинейной задачи наименьших квадратов, что позволяет рассчитать коэффициенты полинома четвертой степени, описывающего профиль скорости движения робота. Данный профиль строится таким образом, чтобы робот оказался на безопасном расстоянии позади пешехода на равной ему скорости. Таким образом, безопасно выполняется маневр сближения и следования за объектом.
Описанный подход к построению результирующих локальных траекторий и выбору режимов движения позволяет получить робастную систему, способную решать задачи движения в сложных условиях при наличии большого количества динамических объектов. При этом отдается приоритет решаемой роботом задаче: строгое следование заранее рассчитанному маршруту с минимальными отклонениями.
Список источников
1. Lin, J., Zhou, Т., Zhu, D., Liu, J., Meng, M.Q.H. Search-based online trajectory planning for car-like robots in highly dynamic environments // IEEE International Conference on Robotics and Automation (ICRA). - 2021. - pp. 8151-8157;
2. Hart, P.E.; Nilsson, N.J.; Raphael, B.A Formal Basis for the Heuristic Determination of Minimum Cost Paths // IEEE Transactions on Systems Science and Cybernetics. - 1968. - Vol. 4 (2). - pp 100-107;
3. Verschueren, R., Frison, G., Kouzoupis, D., Frey, J., van Duijkeren, D., Zanelli, A., Novoselnik, В., Albin, Т., Quirynen, R., Diehl, M. Acados - a modular open-source framework for fast embedded optimal control // Mathematical Programming Computation. 2020.
название | год | авторы | номер документа |
---|---|---|---|
Способ траекторного управления движением мобильного сервисного робота | 2024 |
|
RU2825211C1 |
Способ обработки данных и система технического зрения для роботизированного устройства | 2021 |
|
RU2782662C1 |
Способ навигации мобильного сервисного робота | 2019 |
|
RU2736559C1 |
СПОСОБ ПОСТРОЕНИЯ МАРШРУТА ДВИЖЕНИЯ И УПРАВЛЕНИЯ ДВИЖЕНИЕМ МОБИЛЬНОГО СЕРВИСНОГО РОБОТА В ТОРГОВОМ ПОМЕЩЕНИИ | 2021 |
|
RU2769710C1 |
МЕТОД ОПРЕДЕЛЕНИЯ ЗОНЫ ДВИЖЕНИЯ И САМОСТОЯТЕЛЬНОГО ОБЪЕЗДА ПРЕПЯТСТВИЙ ДЛЯ БЕСПИЛОТНОГО ТРАНСПОРТНОГО ОБОРУДОВАНИЯ В ПОДЗЕМНЫХ ЗАМКНУТЫХ ПРОСТРАНСТВАХ | 2022 |
|
RU2803671C1 |
Способ локализации и построения навигационных карт мобильного сервисного робота | 2020 |
|
RU2740229C1 |
СПОСОБ УПРАВЛЕНИЯ ПОДВИЖНЫМ РОБОТОМ | 2015 |
|
RU2619542C1 |
СПОСОБ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ НАЗЕМНЫМ РОБОТОТЕХНИЧЕСКИМ КОМПЛЕКСОМ ИЛИ ИХ ГРУППОЙ В ОБОРОНЕ | 2018 |
|
RU2718015C2 |
СИСТЕМА УПРАВЛЕНИЯ ДВИЖЕНИЕМ БЕСПИЛОТНЫХ ТРАНСПОРТНЫХ СРЕДСТВ С ЭЛЕКТРОПРИВОДОМ | 2022 |
|
RU2789153C1 |
КОММУНИЦИРУЮЩАЯ С ПОЛЬЗОВАТЕЛЕМ ИНТЕЛЛЕКТУАЛЬНАЯ САМОХОДНАЯ ТЕЛЕЖКА ДЛЯ ПОКУПОК | 2023 |
|
RU2797605C1 |
Изобретение относится к способу построения оптимальной траектории движения сервисных роботов в динамической среде. В процессе следования по заданному маршруту получают и обрабатывают входные данные и выполняют валидацию входной информации. Исходя из информации о занятом операционном пространстве и текущей конфигурации сервисного робота, используют режимы движения и переключения между ними. Режимы включают в себя: «Режим прохождения маршрута», «Режим восстановления на маршруте» или «Режим следования за пешеходом». Режимы позволяют минимизировать отклонения от заданного маршрута и обеспечивают стабильность движения в недетерминированной среде за счет комбинации алгоритмов поиска и постобработки траекторий и формирования результирующих локальную траекторию. 7 ил.
Способ построения оптимальной траектории движения сервисных роботов в динамической среде, характеризующийся тем, что:
- в процессе следования по заданному маршруту получают и обрабатывают входные данные, которые являются как результатами обработки данных с сенсоров, а именно информация о позиции, ориентации и скорости сервисного робота, так и результатом работы сторонних алгоритмов, а именно карта занятости, маршрутное задание, предсказанная траектория движения сервисного робота, рассчитанная с учетом прогнозируемых команд управления движением;
- выполняют валидацию входной информации, проверяя время формирования входных данных, соответствие позиции сервисного робота, карты занятости и маршрутного задания;
- исходя из информации о занятом операционном пространстве и текущей конфигурации сервисного робота, используют режимы движения и переключения между ними, включающие «Режим прохождения маршрута», «Режим восстановления на маршруте» или «Режим следования за пешеходом», чем минимизируют отклонения от заданного маршрута и обеспечивают стабильность движения в недетерминированной среде за счет комбинации различных алгоритмов поиска и постобработки траекторий, формируют результирующую локальную траекторию;
- в случае наличия препятствий в «Режиме прохождения маршрута» строят траектории объезда в пространстве Дюбинса, которые склеивают со свободными участками маршрута, при этом поиск траекторий выполняют последовательно, отдавая приоритет близким препятствиям, результирующая локальная траектория может содержать несколько траекторий объезда и несколько свободных участков маршрута;
- при обнаружении на пути препятствия в «Режиме прохождения маршрута» построение траекторий объезда выполняют с помощью поиска «начальной догадки», который реализовывают с применением модифицированного алгоритма поиска пути по графу с использованием онлайн-примитивов движения для построения траекторий, опирающегося на принцип эвристического поиска, предложенный в классическом поисковом алгоритме А*;
- на каждом шаге алгоритма поиска пути по графу при построении онлайн-примитивов движения формируют функцию стоимости, представляющую собой сумму стоимостей со следующими составляющими: стоимость по управляющим воздействиям, стоимость по близости к препятствиям, стоимость по близости к динамическим препятствиям и стоимость по семантической карте;
- после нахождения «начальной догадки» выполняют алгоритм сглаживания найденной траектории с учетом динамических ограничений сервисного робота, при этом используют методы решения задач нелинейного оптимального управления;
- в качестве входных данных алгоритма сглаживания траектории принимают траекторию, подвергаемую сглаживанию, и карту занятости, необходимую для аллокации репеллеров, которые вводятся в функционал, повышая вес решения, в случаях сближения с препятствием;
- переход в «Режим восстановления на маршруте» выполняют в случае, если сервисный робот не отрабатывает маршрут, съезжает с него или с траектории объезда препятствий, и вынужден остановиться;
- поиск траектории в «Режиме восстановления на маршруте» выполняют в пространстве Ридса-Шеппа с учетом кинематических ограничений, при этом используют алгоритм поиска на решетке с онлайн-примитивами, который с помощью составляющей wa⋅I(а<0) стоимости по управляющим воздействиям придает больший приоритет движению сервисного робота вперед, чем движению задним ходом, и при нахождении траектории Дюбинса выполняют переход в «Режим прохождения маршрута»;
- в «Режиме следования за пешеходом» выполняют анализ параметров движения впереди идущих пешеходов, принимают решение об обгоне/объезде, либо движении за объектом и осуществляют следование, если направление движения пешехода совпадает с направлением участка маршрута и его скорость ниже скорости движения сервисного робота, при этом осуществляют постановку и решение нелинейной задачи наименьших квадратов, что позволяет рассчитать коэффициенты полинома четвертой степени, описывающего профиль скорости движения сервисного робота для безопасного выполнения маневра сближения и следования за объектом.
US 2020118446 A1, 16.04.2020 | |||
CN 105573323 A, 11.05.2016 | |||
CN 103676944 A, 26.03.2014 | |||
В.А | |||
ГОЛОВИН, К.С | |||
ЯКОВЛЕВ, ПРИМИТИВЫ ДВИЖЕНИЯ РОБОТА В ЗАДАЧЕ ПЛАНИРОВАНИЯ ТРАЕКТОРИИ С КИНЕМАТИЧЕСКИМИ ОГРАНИЧЕНИЯМИ, Информатика и автоматизация, т | |||
Машина для добывания торфа и т.п. | 1922 |
|
SU22A1 |
СПОСОБ ОПРЕДЕЛЕНИЯ ТРАЕКТОРИИ ДВИЖЕНИЯ АВТОНОМНОГО ТРАНСПОРТНОГО СРЕДСТВА В ДИНАМИЧЕСКОЙ СРЕДЕ | 2012 |
|
RU2479015C1 |
Авторы
Даты
2024-10-09—Публикация
2023-12-18—Подача