=Paper=
{{Paper
|id=Vol-2031/p9
|storemode=property
|title=Robot Path Planning Using Reinforcement Learning and Nonlinear Approximation Function (Planeación de Trayectoria Utilizando Aprendizaje por Reforzamiento y Función de Aproximación)
|pdfUrl=https://ceur-ws.org/Vol-2031/p9.pdf
|volume=Vol-2031
|authors=David Luviano Cruz,Miguel Angel Rodriguez Ruiz,Luis Asuncion Pérez Domínguez,Luis Carlos Mendez Gonzalez
}}
==Robot Path Planning Using Reinforcement Learning and Nonlinear Approximation Function (Planeación de Trayectoria Utilizando Aprendizaje por Reforzamiento y Función de Aproximación)==
RCCS+SPIDTEC2 2017. RODRÍGUEZ ET AL. 56 Robot Path planning using reinforcement learning and nonlinear approximation function (Planeación de trayetoria utilizando aprendizaje por reforzamiento y función de aproximación) Miguel Angel Rodriguez Ruiz David Luviano Cruz Luis Carlos Mendez Gonzalez Ciudad Universitaria Universidad Autónoma de ciudad Juárez Universidad Autónoma de ciudad Juárez Universidad Autónoma de Ciudad Juárez Ciudad Juárez Chihuahua México Ciudad Juárez Chihuahua México Ciudad Juárez Chihuahua México Email: david.luviano@uacj.mx Email: luis.mendez@uacj.mx Email: al115156@alumnos.uacj.mx Luis Pérez Domínguez Universidad Autónoma de ciudad Juárez Ciudad Juárez Chihuahua México Email: luis.dominguez@uacj.mx Abstract—In the present work we address the problem of nuevos comportamientos de tal manera que puedan predecir y dimensionality in reinforcement learning, this problem is called adaptarse a los cambios en el medio en donde se desarrollan the curse of dimensionality, which is reflected in the increase of [3]. the state-action pairs to be learned, this happen when the number of actions and states in the environment increase, in this manner we propose to use a nonlinear approximation function (neural network) to offer an appriximate action to the agent when this El aprendizaje por reforzamiento es un método semi super- is in a unknokn state in the task, this proposal will be validated visado de aprendizaje, en donde el objetivo es maximizar una by the planning of trajectories for a mobile robot in a unknown función de recompensa escalar la cual es definida por el en- environtment using reinforcement learning. torno y las entidades que interactúan con el entorno llamados agentes [11]. En cada paso de aprendizaje, el agente toma una En el presente trabajo se aborda el problema de la dimen- medición del entorno y toma una acción, lo que motiva que el sionalidad en el aprendizaje por reforzamiento, este problema se entorno transite a un nuevo estado, esta transición es evaluada denomina la maldición de la dimensionalidad, lo que se refleja en el aumento de los pares estado-acción a aprender, lo que ocurre por medio de la función de recompensa escalar, es importante cuando el número de acciones y estados en el entorno aumenta mencionar, que a los agentes no se les dice que acción tomar, , se propone utilizar una función de aproximación no lineal por lo que deben de explorar el entorno para encontrar las (red neuronal) para ofrecer una acción aproximada al agente acciones que le proporcionen una mayor recompensa[12]. cuando éste se encuentre en un estado desconocido en la tarea, esta propuesta será validada por la planificación de trayectorias La realimentación utilizado por el aprendizaje por reforza- para un móvil robot en un entorno desconocido utilizando el aprendizaje por reforzamiento. miento en forma de función de recompensa es menos informa- tivo que un método de aprendizaje supervisado tal como una I. I NTRODUCCIÓN red neuronal artificial, pero más informativo que un método de aprendizaje supervisado tal como clustering [15]. Diversos tipos de funciones de aproximación han sido Distintos tipos de aplicaciones del aprendizaje por reforza- propuestos en el campo de la teoría de control y del apren- miento han tenido cabida en la teoría control, entre ellos, para dizaje máquina, entre ellos, las redes neuronales ofrecen la manejar y controlar una red inteligente eléctrica[4],por medio particularidad de realizar aproximaciones de funciones no de visión y RL enseñar a un robot a realizar disparos de una lineales, siempre y cuando se tenga acceso a una serie de pelota a una meta [5],utilizar RL profundo para que un brazo datos de entrenamiento adecuados [1]. En lo que refiere manipulador aprenda movimientos en 3D [6], para coordinar tareas en que involucran sistemas no lineales o sistemas en actividades cooperativas entre agentes [7]. donde una programación previa para resolver un problema no es posible, el aprendizaje por reforzamiento (RL) ha sido Un área en donde el aprendizaje por reforzamiento ha sido utilizado con éxito[2], ya que permite a los agentes aprender provechoso es la planeación de trayectoria para robots móviles, RCCS+SPIDTEC2 2017. RODRÍGUEZ ET AL. 57 en donde se genera una trayectoria desde un punto de inicio donde S es el conjunto finito de estados en el entorno, A es hasta un punto final respetando ciertas restricciones impuestas el conjunto finito de acciones disponibles para el agente, f es al desplazamiento, tales como obstáculos, delimitación del la función de probabilidad de transición de estados y ρ es la área de trayectoria. La generación de trayectoria puede ser función de recompensa la cual se asume acotada [3]. realizada con distintos tipos de algoritmos de búsqueda, en [8] el método de grafos es utilizado para diseñar un espacio El estado actual del entorno de trabajo el cual el agente de tareas mediante búsqueda heurística, en [9] gráficos un observa es definido como st 2 S, el cual describe al estado en direccionados son usados para la planeación de trayectoria, en cada paso de tiempo discreto t ,el agente observa el estado y [10] utilizan algoritmos genéticos para encontrar una trayec- toma una acción definida como at . Como resultado el entorno toria óptima. cambia su estado a algún st+1 2 S de acuerdo a la función de probabilidad de transición de estados f , la probabilidad de A pesar del aparente éxito del aprendizaje por reforzamiento acabar en el estado st+1 después que la acción at es ejecutada en la generación de trayectoria, los problemas abordados están en el estado st es f (st , at , st+1 ). limitados a estados discretos con un número finito de acciones El agente recibe una recompensa escalar rt+1 2 R, de disponibles para los agentes, debido a que se sufre de la acuerdo a la función de recompensa ρ : rt+1 = ρ(st , at , st+1 ). llamada maldición de la dimensionalidad, la cual es el crec- Esta recompensa evalúa el efecto inmediato de la acción at , imiento exponencial de los pares estados-acciones a aprender es decir, la transición desde el estado st al estado st+1 . Esta conforme el número de estados y acciones se incrementan recompensa refleja que tan productiva fue la acción tomada en el problema [13], lo que conlleva a un incremento en el at . Sin embargo esta señal no dice nada acerca de los efectos tiempo de cómputo y de la cantidad de memoria necesaria a largo plazo de esta acción tomada. para almacenar los datos asociados al algoritmo. Para sistemas deterministas, la función de probabilidad de Por lo anterior, es necesario incorporar una estrategia adi- transición de estados f y la función de recompensa ρ toman cional al aprendizaje por reforzamiento, la cual nos ofrezca la forma: la oportunidad de generalizar los resultados obtenidos con f¯ = S×A!S el objetivo de minimizar el tiempo de cómputo y memoria necesaria. En este artículo se tomaran las ventajas del apren- ρ̄ = S×A!R dizaje de reforzamiento junto con una red neuronal multicapa, los cuales serán usados para la planeación de trayectorias Donde la recompensa es completamente determinada por el en entornos dinámicos, el algoritmo estará integrado por dos estado actual y la acción actual rt+1 = ρ (st , at ). Algunos etapas de aprendizaje, la primera se usará el algoritmo Q- procesos de decisión de Markov tienen estados terminales los learning [14], en donde el modelo de la tarea será conocido por cuales son estados donde una vez alcanzados no pueden ser medio de una función de transición de estados y de la función abandonados en el futuro, se toma que todas las recompensas de recompensa escalar, en esta etapa el agente explorara el recibidas en un estado terminal se toman como cero. En tal entorno de tarea con la finalidad de colectar información caso, el proceso de aprendizaje es usualmente separado en estados-acciones, es decir cuál es la acción optima a tomar distintos episodios, los cuales son trayectorias comenzando cada uno de los estados explorados, en la segunda etapa, la desde algún estado inicial y finalizando en un estado terminal información obtenida por el algoritmo de RL será usada para [16]. entrenar una red neuronal multicapa la cual nos brindara las acciones optimas a tomar por el agente (robot) en estados que El comportamiento del agente es descrito por su política no fueron explorados en la primera etapa de aprendizaje. π, la cual especifica como el agente escoge sus acciones en un estado determinado del medio. La política π puede ser La propuesta sometida nos dará la oportunidad de obtener determinista : las acciones optimas a tomar cuando el agente se encuentre π̄ = S ! A en estados que son desconocidos por este, debido a que no o estocástica: fueron explorados en la primera etapa o por que el entorno de trabajo cambio, lo que nos ofrecerá un grado de robustez. π = S × A ! [0, 1] Una política es llamada estacionaria si esta no cambia en el II. A PRENDIZAJE POR REFORZAMIENTO tiempo. El objetivo final del aprendizaje por reforzamiento es En esta sección se presenta el proceso de decisión de encontrar una política π, para todo estado s que maximice el Markov y la caracterización de su solución óptima, los cuales retorno R : son la base del aprendizaje por reforzamiento. ( 1 # ) X # Definition 1: Un proceso finito de Markov para un agente π k # R =E γ rt+1 # s0 = s,π (2) es una tupla (S, A, f,ρ ): # t=0 f : S × A × S ! [0, 1] donde γ 2 [0, 1) es el factor de descuento, la expresión (1) ρ:S×A×S !R anterior es tomada sobre la probabilidad de transición de RCCS+SPIDTEC2 2017. RODRÍGUEZ ET AL. 58 estados sobre la política π, debemos notar que R representa A. Aprendizaje por reforzamiento la recompensa acumulada por el agente en el largo plazo. En esta etapa se usara el algoritmo de aprendizaje Q- learning , el cual asegura la convergencia hacia los valores Existen otras formas de definir el retorno R en función de Q óptimos, la cual se reflejara en una política de acciones π la actividad realizada [17]. El factor de descuento γ puede ser optimas, lo anterior por medio de garantizar que el algoritmo considerado como codificación de la incertidumbre creciente Q-learning es una contracción [14]. acerca de la recompensa que sera obtenida en el futuro o como En el algoritmo se Q-learning la experiencia del agente un medio para acotar la suma en (2) de otro modo crecería de consiste en una secuencia de episodios en donde el agente: manera no acotada. • observa su estado actual st • Selecciona y realiza una acción at • Observa el estado siguiente st+1 Por lo tanto el objetivo del agente es maximizar su • Recibe la recompensa rt rendimiento a largo plazo caracterizado por el retorno R, solo • Ajusta los valores Qt usando un factor de aprendizaje α recibiendo la realimentación acerca de su inmediata actuación de acuerdo a : en forma de la señal de recompensa r. Una forma de obtener el anterior resultado es por medio del cálculo de una función óptima estado-acción de valor llamada función Q (Q-function) Qt (st , at ) = (1 − α) Qt−1 (st , at ) + ... h i 0 +α rt + γ max Q (s , a ) (7) Qh : S × A ! R (3) 0 a t−1 t+1 donde α 2 (0, 1) es el factor de aprendizaje. La secuen- la cual da un retorno R esperado dada una política π comen- cia Qt converge a Q∗ converge bajo ciertas condiciones, zando desde cualquier par estado-acción: incluyendo que el agente se mantenga intentado realizar todas las acciones en todos los estados, lo que implica que el agente ( 1 # ) en ocasiones debe de explorar y en otras realizar lo que X # π k # dicta la política de acciones encontrada [18]. La exploración Q (s, a) = E γ r t+1 # s0 = s, a0 = a,π (4) # que realizaremos será escogiendo una acción aleatoria con t=0 probabilidad ϵ 2 (0, 1) y escogiendo una acción codiciosa La función Q óptima es definida como Q∗ (que ofrezca una mayor recompensa) con una probabilidad (1 − ϵ) . Q∗ (s, a) = max Qπ (s, a) (5) π Bajo las condiciones anteriores mencionadas, el algoritmo La cual satisface la ecuación de optimalidad de Bellman: converge en un numero finito de iteraciones, lo que indica que % & ' & 0 0 '( la fase de aprendizaje ha sido terminada y se ha obtenido las X 0 ∗ Q (s, a) = f (s, a) ρ s, a, s + γ max ∗ Q s ,a acciones optimas a ejecutar por el agente en cada uno de los 0 ś2S a estados visitados. (6) B. Fase de aprendizaje mediante red neuronal La secuencia Qt converge a Q∗ bajo las siguientes condi- ciones [3]: Las redes neuronales tienen una habilidad poderosa de fusión de datos y tolerancia a fallas. Ya que las redes neu- ronales de una sola capa solo resuelven los problemas de • Distintos valores de la función Q son guardados y actu- clasificación lineales, una red neuronal con múltiples capas es alizado para cada P1par estado-acción. utilizada para estimar las acciones mejor valuadas que serán • La sumatoria t=0 α es finita. usadas por los agentes en los estados que no fueron visitados • Asintóticamente todas los pares stado-acción son visi- durante la fase de aprendizaje por reforzamiento. El flujo de tadas de manera infinita. aprendizaje es mostrado en la Figura 1. III. A PRENDIZAJE POR REFORZAMIENTO CON RED Las acciones disponibles para los agentes en los estados NEURONAL no visitados durante la fase de aprendizaje por reforzamiento serán aproximados por la siguiente red neuronal compuesta por 1 capa oculta: En esta sección se describe la estrategia propuesta en este ât+1 = W σ(V [st ]) (8) artículo, la cual consta de dos etapas de aprendizaje, la primera n×m m×n se usara un algoritmo de aprendizaje de reforzamiento y en donde W 2 R ,V 2R , m es el número del nodo la segunda etapa se entrenara una red neuronal con los datos oculto el cual es diseñado por el usuario, n es el número de obtenidos en la primera. agentes que se encuentran en el entorno en este caso n = 1, RCCS+SPIDTEC2 2017. RODRÍGUEZ ET AL. 59 Una función lineal es utilizada en la capa de salida de la red neuronal wij (k + 1) = wij (k) − ηyi (k) ej (k) (9) De tal manera que wki puede ser actualizado como: @" (k) wki (k + 1) = wki (k) − η @wki (k) además @"(k) @"(k) @ej (k) @yj (k) @vj (k) @yi (k) @vi (k) Fig. 1. Flujo de aprendizaje para la red neuronal @wki (k) = @ej (k) @yj (k) @vj (k) @yi (k) @vi (k) @wki (k) n 0 , - o 0 = ej (k) 'j vj (k) Wij 'i [vi (k)] yk (k) 0 = ei (k) 'i [vi (k)] yk (k) V representa los pesos en la capa oculta, σ es una función de activación neuronal, se usa una función sigmoidea en esta Por lo tanto propuesta. 0 wki (k + 1) = wki (k) − ηyk (k) ei (k) 'i [vi (k)] (10) Las entradas para la red neuronal son los estado st y la sal- 0 ida de la red serán las acciones aproximadas ât que el agente donde ei (k) 'i [vi (k)] es el error en backpropagation [15]. deberá de tomar para llevar a cabo la meta encomendada. Es de notar, que el aprendizaje utilizado en las redes neuronales es un método de aprendizaje supervisado. Por lo que las muestras IV. P LANEACIÓN DE TRAYECTORIA para el entrenamiento de la red neuronal provendrán de la fase Con la finalidad de validar la propuesta realizada, se pre- anterior de aprendizaje, el cual nos brindará como entradas senta una tarea de planeación de trayectoria para un robot de entrenamiento los estados del sistema y como salida las móvil, en la cual el agente o robot deberá de encontrar el acciones óptimas encontradas para cada uno de los agentes. camino optimo (el que le ofrezca una mayor cantidad de El error entrenamiento e(k) a la salida de la neurona j está recompensa numérica), evitando obstáculos presentes en el definido como entorno y evitando salir del espacio físico del medio de trabajo. La única información disponible que tendrá el agente será la ej (k) = yj (k) − dj (k) función de recompensa y la función de transición de estados donde yj (k) es el estado medido por el agente, y dj (k) es el determinista. patrón de acciones de los agentes. Las sumas instantáneas de los errores al cuadrado de la salida es dado por En cada paso de aprendizaje, los estados actuales (la posi- ción en forma de coordenadas del agente en el plano XY ) será l 1X 2 observada y referida a una tabla estado-acción. En el caso que " (k) = e (k) el agente se encuentre en un estado no disponible en la tabla, 2 j=1 j la acción que deberá ejecutar el agente será proveída por la donde l es el número de neuronas de la capa de salida. estimación realizada por la red neuronal. Usando el algoritmo backpropagation para entrenar la red A. Resultados de simulación neuronal, el peso que conecta la neurona i con la neurona j es actualizado de la siguiente manera: La simulación será realizado en un entorno de trabajo discretizado, el cual tendrá un tamaño en el plano de 5 × 5 @" (k) en el plano XY , x 2 [1, 5] y 2 [1, 5] por lo que el wij (k + 1) = wij (k) − η @wij (k) estado será representado por coordenadas cartesianas que represente la posición del robot, el vector de estado s 2 donde η es el parámetro de razón de aprendizaje del algoritmo [x, y]. Cada robot tendrá 4 acciones disponibles que podrá @"(k) backpropagation. El termino @w ij (k) puede ser calculado: realizar: moverse hacia arriba, abajo, izquierda y derecha, A 2 [izquierda,derecha,arriba,abajo] . @" (k) @" (k) @ej (k) @yj (k) @vj (k) = @wij (k) @ej (k) @yj (k) @vj (k) @wij (k) La posición inicial del robot es mostrada en la figura 2, la Las derivadas parciales están dadas por función de recompensa ρ está dada: @" (k) @ej (k) = ej (k) , = 1, r = −5 si sale del entorno o choca @ej (k) @yj (k) @yj (k) 0 , - @vj (k) r = 10 si llega a la meta = 'j vj (k) , = yi (k) @vj (k) @wji (k) r = 0 cualquier otra situación RCCS+SPIDTEC2 2017. RODRÍGUEZ ET AL. 60 Fig. 2. Tarea de navegacion propuesta TABLE I PARÁMETROS UTILIZADOS EN EL ALGORITMO Q- LEARNING Parametro de exploracion " 0.7 Razon de aprendizaje α 0.1 Factor de descuento γ 0.98 Fig. 3. Valores estado-accion La tabla con los valores estados-acción tendrá un tamaño de 100 entradas, |S| = 5 × 5 , |A| = 4.Los valores obtenidos al finalizar la primera etapa de aprendizaje utilizando el algoritmo Q-learning son mostrados en la figura 3, despues de 29 iteraciones se logra la convergencia, los parámetros usados se muestran en la tabla (I). En la figura (4), se muestran las trayectorias optimas obtenidas mediante Q-learning, todas es- tas trayectorias ofrecen la misma recompensa total al seguirlas de 98.38. Para la segunda etapa de aprendizaje, los valores Q estado- acción óptimos encontrados en la primera fase, son usados Fig. 4. Trayectorias optimas encontradas con aprendizaje por reforzamiento para entrenar una red neuronal de una capa oculta, en donde las entradas a la red serán los estados y la salida será las acciones. La codificación de las acciones para su uso en la red neuronal son 1-izquierda, 2-derecha, 3-arriba, 4-abajo. El algoritmo utilizado para entrenar la red neuronal es Backpropagation, las especificaciones de la red neuronal se muestran en la tabla (II). La figura (5) muestra la acción propuesta por la red neuronal en color verde, cuando el robot se encuentra en un estado que no se encuentra en la tabla de valores estados acciones (3), la red neuronal ofrece una acción aproximada a realizar, esta acción tiene como objetivo acercarnos a un estado conocido por el agente en color azul, lo que producirá que se integre a una de las trayectorias optimas encontradas en la primera fase de aprendizaje V. C ONCLUSIONES La propuesta presentada ofrece un método hibrido entre Fig. 5. Acción aproximada ofrecida por la red neuronal una técnica de aprendizaje semi-supervisado (aprendizaje por RCCS+SPIDTEC2 2017. RODRÍGUEZ ET AL. 61 TABLE II PARAMETROS UTILIZADOS EN LA RED NEURONAL ARTIFICIAL [13] Foerster, J., Nardelli, N., Farquhar, G., Torr, P., Kohli, P., & Whiteson, S. (2017). Stabilising experience replay for deep multi-agent reinforcement learning. arXiv preprint arXiv:1702.08887. Numero de capas ocultas 1 [14] Watkins, C. J., & Dayan, P. (1992). Q-learning. Machine learning, 8(3- 4), 279-292. Numero de neuronas de la 1ra capa oculta 10 [15] Haykin, S. (1994). Neural networks: a comprehensive foundation. Pren- Funcion de activacion en la capa de salida Funcion Lineal tice Hall PTR. [16] Kaelbling, L. P., Littman, M. L., & Cassandra, A. R. (1998). Planning Funcion de activacion en capa oculta Funcion Sigmoide and acting in partially observable stochastic domains. Artificial intelli- gence, 101(1), 99-134. [17] Wei, A., Hu, X., & Wang, Y. (2013). Consensus of linear multi-agent systems subject to actuator saturation. International Journal of Control, reforzamiento) y una técnica de aprendizaje supervisado (red Automation and Systems, 11(4), 649-656. neuronal), lo que permite tener un grado de robustez cuando [18] Busoniu, L., Babuska, R., & De Schutter, B. (2006, December). Multi- las condiciones del entorno de trabajo cambian, es de hacer agent reinforcement learning: A survey. In Control, Automation, Robot- ics and Vision, 2006. ICARCV’06. 9th International Conference on (pp. mención, que las acciones propuestas por la red neuronal 1-6). IEEE. son sub-optimas, en el sentido que en general no ofrecen la trayectoria más corta hacia una trayectoria optima conocida, esto debido a errores de aproximación, como trabajo a futuro queda generalizar la propuesta en espacios no discretos, así como implementar la técnica de manera experimental en robot móviles diferenciales. Una de las principales ventajas de esta técnica es que se evita el volver a ejecutar el algoritmo Q-learning cuando las condiciones del entorno cambian, cuando el problema tiene muchos estados y acciones disponibles, la convergencia es lenta. R EFERENCES [1] Sofge D, White D (1990) Neural network based process optimizationand control. In Proceedings of the 29th IEEE Conference on Decision and Control. Hawai, USA [2] Kaelbling L. P., Reinforcement learning: A survey, Journal of Artificial Intelligence Research, 4(3), 237-285,1996. [3] Sutton, R. S., & Barto, A. G. (1998). Reinforcement learning: An introduction (Vol. 1, No. 1). Cambridge: MIT press. [4] Kara, E. C., Berges, M., Krogh, B., & Kar, S. (2012, November). Using smart devices for system-level management and control in the smart grid: A reinforcement learning framework. In Smart Grid Communications (SmartGridComm), 2012 IEEE Third International Conference on (pp. 85-90). IEEE. [5] Asada, M., Noda, S., Tawaratsumida, S., & Hosoda, K. (1996). Purposive behavior acquisition for a real robot by vision-based reinforcement learning. Machine learning, 23(2), 279-303. [6] Gu, S., Holly, E., Lillicrap, T., & Levine, S. (2017, May). Deep reinforcement learning for robotic manipulation with asynchronous off-policy updates. In Robotics and Automation (ICRA), 2017 IEEE International Conference on (pp. 3389-3396). IEEE. [7] Foerster, J., Assael, Y. M., de Freitas, N., & Whiteson, S. (2016). Learning to communicate with deep multi-agent reinforcement learning. In Advances in Neural Information Processing Systems (pp. 2137-2145). [8] Bhattacharya, S., Likhachev, M., & Kumar, V. (2010, May). Multi-agent path planning with multiple tasks and distance constraints. In Robotics and Automation (ICRA), 2010 IEEE International Conference on (pp. 953-959). IEEE. [9] Wang, K. H. C., & Botea, A. (2011). MAPP: a scalable multi-agent path planning algorithm with tractability and completeness guarantees. Journal of Artificial Intelligence Research, 42, 55-90. [10] Cai, Z., & Peng, Z. (2002). Cooperative coevolutionary adaptive genetic algorithm in path planning of cooperative multi-mobile robot systems. Journal of Intelligent & Robotic Systems, 33(1), 61-71. [11] Littman, M. L. (1994). Markov games as a framework for multi-agent reinforcement learning. In Proceedings of the eleventh international conference on machine learning (Vol. 157, pp. 157-163). [12] Busoniu, L., Babuska, R., & De Schutter, B. (2008). A comprehensive survey of multiagent reinforcement learning. IEEE Transactions on Systems, Man, And Cybernetics-Part C: Applications and Reviews, 38 (2), 2008.