plan

Нахождение кратчайшего пути без препятствий между двумя точками

    Описание

    пример

    path = plan(planner,start,goal) находит кратчайший путь без препятствий, path, между заданной начальной точкой, start, и целевая точка, goal, заданный как [row column] в сетке с источником в левом верхнем углу с помощью заданного планировщика пути A * planner.

    path = plan(planner,start,goal,'world') находит кратчайший путь без препятствий, path, между заданной начальной точкой, start, и целевая точка, goal, заданный как [x y] в лабораторной системе координат с источником в левом нижнем углу с помощью заданного планировщика пути A * planner.

    [path,debugInfo] = plan(___) также возвращается debugInfo который содержит стоимость пути, числа узлов исследованные, и GCost для каждого исследованного узла.

    Примеры

    свернуть все

    Планируйте кратчайший путь без столкновения через карту сетки препятствий с помощью алгоритма планирования пути A *.

    Сгенерируйте binaryOccupancyMap объект со случайным образом рассеянными препятствиями с помощью mapClutter функция.

    rng('default');
    map = mapClutter;

    Используйте карту, чтобы создать plannerAStarGrid объект.

    planner = plannerAStarGrid(map);

    Задайте начальную и целевую точки.

    start = [2 3];
    goal = [248 248];

    Планируйте путь от начальной точки до точки цели.

    plan(planner,start,goal);

    Визуализируйте путь и исследованные узлы с помощью show функция объекта.

    show(planner)

    Входные параметры

    свернуть все

    * Планировщик пути для карты сетки, заданный как plannerAStarGrid объект.

    Начальное положение в сетке или мире, заданное как двухэлементный вектор вида [row column] или [x y]. Расположение находится в положениях сетки или мировых координатах на основе синтаксиса.

    Пример: [2 3]

    Типы данных: double

    Положение цели в сетке или мире, заданное как двухэлементный вектор вида [row column] или [x y]. Расположение находится в положениях сетки или мировых координатах на основе синтаксиса.

    Пример: [28 46]

    Типы данных: double

    Выходные аргументы

    свернуть все

    Кратчайший путь без препятствий, возвращенный как матрица n -by-2. n - количество точек пути в пути. Каждая строка представляет [row column] или [x y] расположение путевой точки вдоль решенного пути от начального местоположения до цели. Расположение находится в положениях сетки или мировых координатах на основе синтаксиса.

    Типы данных: double

    Отладочная информация для результата пути, возвращенная как структура с этими полями:

    • PathCost - Стоимость пути

    • NumNodesExplored - Количество исследованных узлов

    • GCostMatrix - GCost для каждого исследованного узла

    Типы данных: struct

    Расширенные возможности

    Генерация кода C/C + +
    Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

    .

    См. также

    |

    Введенный в R2020b