Main Content

Esta página se ha traducido mediante traducción automática. Haga clic aquí para ver la última versión en inglés.

copy

Cree una copia profunda del objeto del planificador de ruta A*

Desde R2023a

    Descripción

    ejemplo

    planner2 = copy(planner1) crea una copia profunda del objeto plannerAStar planner1.

    Ejemplos

    contraer todo

    Cargue la red de carreteras de Queensland.

    load("queenslandRoutes","places","routes")

    Especifique estados, enlaces y pesos para un objeto navGraph .

    states = places.utm;               % UTM coordinates of cities
    names = places.name;               % Names of cities
    links = [routes.start routes.end]; % Adjacent cities
    weights = routes.time;             % Travel time between adjacent cities

    Cree un objeto navGraph .

    graphObj = navGraph(states,links,Weight=weights, ...
                        Name=names);

    Cree un planificador de rutas A* basado en gráficos.

    planner = plannerAStar(graphObj);

    Cree una copia profunda del objeto plannerAStar .

    planner2 = copy(planner)
    planner2 = 
      plannerAStar with properties:
    
        HeuristicCostFcn: @nav.algs.distanceManhattan
              TieBreaker: 0
                   Graph: [1x1 navGraph]
    
    

    Especificar una función heurística devuelve un tiempo estimado para alcanzar el objetivo.

    planner.HeuristicCostFcn = @(state1,state2) ...
        sum(abs(state1-state2),2)/100;

    Definir las ciudades de inicio y destino.

    start = "Hughenden";
    goal = "Brisbane";

    Encuentre la ruta más corta utilizando el algoritmo A* basado en gráficos.

    [pathOutput,solutionInfo] = plan(planner,start,goal);

    Visualiza los resultados.

    h = show(graphObj);
    set(h,XData=graphObj.States.StateVector(:,1), ...
          YData=graphObj.States.StateVector(:,2))
    pathStateIDs = solutionInfo.PathStateIDs;
    highlight(h,pathStateIDs,EdgeColor="#EDB120",LineWidth=4)
    highlight(h,pathStateIDs(1),NodeColor="#77AC30",MarkerSize=5)
    highlight(h,pathStateIDs(end),NodeColor="#D95319",MarkerSize=5)

    Figure contains an axes object. The axes object contains an object of type graphplot.

    Argumentos de entrada

    contraer todo

    Un* planificador de ruta, especificado como un objeto plannerAStar .

    Argumentos de salida

    contraer todo

    Copia del planificador de ruta A*, devuelta como un objeto plannerAStar .

    Capacidades ampliadas

    Generación de código C/C++
    Genere código C y C++ mediante MATLAB® Coder™.

    Historial de versiones

    Introducido en R2023a

    Consulte también

    |