Selección de política activa fuera de línea

El aprendizaje por refuerzo (RL) ha logrado enormes avances en los últimos años para abordar problemas de la vida real, y el RL fuera de línea lo hizo aún más práctico. En lugar de interacciones directas con el entorno, ahora podemos entrenar muchos algoritmos a partir de un único conjunto de datos pregrabado. Sin embargo, perdemos las ventajas prácticas en eficiencia de datos de la RL fuera de línea cuando evaluamos las políticas disponibles.

Por ejemplo, cuando se entrenan manipuladores robóticos, los recursos del robot suelen ser limitados, y entrenar muchas políticas mediante RL fuera de línea en un único conjunto de datos nos brinda una gran ventaja en eficiencia de datos en comparación con RL en línea. Evaluar cada póliza es un proceso costoso, que requiere interactuar con el robot miles de veces. Cuando elegimos el mejor algoritmo, los hiperparámetros y una serie de pasos de entrenamiento, el problema rápidamente se vuelve intratable.

Para que RL sea más aplicable a aplicaciones del mundo real como la robótica, proponemos utilizar un procedimiento de evaluación inteligente para seleccionar la política a implementar, llamado selección de política activa fuera de línea (A-OPS). En A-OPS, utilizamos el conjunto de datos pregrabados y permitimos interacciones limitadas con el entorno real para mejorar la calidad de la selección.

La selección activa de políticas fuera de línea (A-OPS) selecciona la mejor política de un conjunto de políticas dado un conjunto de datos pregrabado y una interacción limitada con el entorno.

Para minimizar las interacciones con el entorno real, implementamos tres características clave:

  1. La evaluación de políticas fuera de la política, como la evaluación Q ajustada (FQE), nos permite hacer una suposición inicial sobre el desempeño de cada política con base en un conjunto de datos fuera de línea. Se correlaciona bien con el rendimiento real en muchos entornos, incluida la robótica del mundo real, donde se aplica por primera vez.
Las puntuaciones de FQE están bien alineadas con el rendimiento real de las políticas entrenadas en configuraciones de RL tanto sim2real como fuera de línea.

Los rendimientos de las políticas se modelan conjuntamente mediante un proceso gaussiano, donde las observaciones incluyen puntuaciones FQE y una pequeña cantidad de rendimientos episódicos recién recopilados del robot. Después de evaluar una política, obtenemos conocimiento sobre todas las políticas porque sus distribuciones están correlacionadas a través del núcleo entre pares de políticas. El núcleo supone que si las políticas adoptan medidas similares (como mover la pinza robótica en una dirección similar) tienden a obtener retornos similares.

Utilizamos puntuaciones de OPE y rendimientos episódicos para modelar el desempeño de las políticas latentes como un proceso gaussiano.
La similitud entre las políticas se modela a través de la distancia entre las acciones que producen estas políticas.
  1. Para ser más eficientes con los datos, aplicamos la optimización bayesiana y priorizamos las políticas más prometedoras para evaluarlas a continuación, es decir, aquellas que tienen un alto rendimiento previsto y una gran variación.

Demostramos este procedimiento en varios entornos en varios dominios: dm-control, Atari, robótica simulada y real. El uso de A-OPS reduce el arrepentimiento rápidamente y, con un número moderado de evaluaciones de políticas, identificamos la mejor política.

En un experimento robótico del mundo real, A-OPS ayuda a identificar una política muy buena más rápido que otras líneas de base. Encontrar una póliza con casi cero arrepentimiento entre 20 pólizas lleva la misma cantidad de tiempo que evaluar dos pólizas con los procedimientos actuales.

Nuestros resultados sugieren que es posible realizar una selección efectiva de políticas fuera de línea con solo una pequeña cantidad de interacciones con el entorno utilizando datos fuera de línea, un núcleo especial y optimización bayesiana. El código de A-OPS es de código abierto y disponible en GitHub con un conjunto de datos de ejemplo para probar.