Contenido principal

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

sample

Estados de muestra del muestreador de estado uniforme

Desde R2023b

    Descripción

    states = sample(sampler) devuelve una muestra de estado seleccionada utilizando el enfoque de muestreo de estado uniforme.

    states = sample(sampler,numsamples) devuelve el número especificado de muestras de estado.

    ejemplo

    Ejemplos

    contraer todo

    Utilice el espacio de estado predeterminado como entrada

    Cree una muestra de estado uniforme con propiedades predeterminadas. De forma predeterminada, el muestreador utiliza el espacio de estado SE(2) como espacio de configuración para la planificación del movimiento. Los límites de las variables de estado [x, y, theta] en el espacio de estado predeterminado son [-100 100; -100 100; -3.1416 3.1416]. Los valores de x y y están en metros. theta está en radianes.

    sampler = stateSamplerUniform;

    Verifique los límites del espacio de estados de entrada.

    bounds = sampler.StateSpace.StateBounds
    bounds = 3×2
    
     -100.0000  100.0000
     -100.0000  100.0000
       -3.1416    3.1416
    
    

    Muestreo del espacio de estado de entrada. Establezca el número de muestras a seleccionar en 10.

    states = sample(sampler,10);

    Verifique las variables de estado muestreadas.

    disp(states)
       62.9447   81.1584   -2.3437
       82.6752   26.4718   -2.5287
      -44.3004    9.3763    2.8746
       92.9777  -68.4774    2.9568
       91.4334   -2.9249    1.8867
      -71.6227  -15.6477    2.6121
       58.4415   91.8985    0.9785
      -92.8577   69.8259    2.7269
       35.7470   51.5480    1.5276
      -21.5546   31.0956   -2.0660
    

    Utilice el espacio de estado personalizado como entrada

    Defina un espacio de estado SE(2) personalizado especificando los límites de las variables de estado [x, y, theta]. Los valores de x y y están en metros. theta está en radianes.

    ss = stateSpaceSE2([-1 1; -2 2; -pi/2 pi/2]);

    Cree una muestra de estado uniforme con el espacio de estado personalizado como entrada.

    sampler = stateSamplerUniform(ss);

    Muestreo del espacio de estado de entrada. Establezca el número de muestras a seleccionar en 10.

    states = sample(sampler,10);

    Verifique las variables de estado muestreadas.

    disp(states)
        0.4121   -1.8727   -0.7008
       -0.9077   -1.6115    1.0162
        0.3897   -0.7316    1.4144
       -0.9311   -0.2450   -0.3721
        0.5310    1.1808   -0.9837
       -0.0205   -0.2177    0.4597
        0.4187    1.0187   -0.7036
        0.3594    0.6204   -1.0599
       -0.7620   -0.0065    1.4443
       -0.3192    0.3411   -0.8677
    

    Argumentos de entrada

    contraer todo

    Objeto muestreador de estado, especificado como un objeto stateSamplerUniform.

    Número de muestras, especificado como un número entero positivo.

    Tipos de datos: double

    Argumentos de salida

    contraer todo

    Muestras de estado, devueltas como una matriz M por N de valores reales. M es el número de estados. N es el número de variables de estado. Cada fila de la matriz especifica las variables de estado correspondientes al modelo de espacio de estados de entrada. Por ejemplo, para el modelo de espacio de estados SE(2), N es 3 y cada fila tiene la forma [x, y, theta].

    Tipos de datos: double

    Historial de versiones

    Introducido en R2023b