Некоторые алгоритмы, которые используются для обхода препятствий в робототехнике:
- Bug-алгоритмы. 2 Простейшие методы объезда препятствий. 2 Например, алгоритм Bug1 предполагает, что робот следует контору препятствия и непрерывно следит за оставшимся расстоянием до целевой точки. 2 Алгоритм Bug2 отличается тем, что при обнаружении препятствия робот запоминает вектор, направленный к целевой точке. 2 При пересечении вектора он изменяет траекторию, следуя напрямую к целевой точке. 2
- Алгоритм Dist-Bug. 2 Суть метода заключается в постоянном измерении рассогласования положения робота и целевой точки. 2 При уменьшении или сохранении величины рассогласования робот продолжает движение вдоль контура препятствия. 2 В противном случае направление изменяется на целевое. 2
- Метод гипотезы и теста. 4 Состоит из трёх основных шагов: предлагается гипотеза относительно пути-кандидата между начальной и конечной точками траектории движения мобильного робота, набор направлений вдоль этого пути тестируется на возможность столкновений, если столкновение оказывается возможным, то с целью определения пути обхода исследуется препятствие, которое может вызвать это столкновение. 4
- Алгоритмы скелетирования. 4 Сводят свободное пространство робота к одномерному представлению, для которого задача планирования пути становится проще. 4
- Нечёткая логика. 43 Данные от сенсоров о расстоянии до препятствия и направление к нему фаззифицируются, обрабатываются согласно табличным правилам, дефаззифицируются, и полученные данные в виде управляющих сигналов поступают на приводы робота. 4
- Алгоритм Дейкстры, алгоритм A* и алгоритм D*. 5 Позволяют строить траекторию обхода препятствий в недетерминированной среде. 5