Acciones y estados

Acciones y estados

de Gabriel Rodriguez Frangias -
Número de respuestas: 3

Hola Facundo, Martin:

Me acaba de surgir una duda existencial: Al ejecutar una accion, ¿cuando debería terminar? 

O sea, si la accion es girar a la izquierda con velocidades vl y vr (de los motores), ¿la accion termina luego de transcurridos X milisegundos, o cuando el sistema cambie de estado?

La pregunta viene por el hecho de que los estados están discretizados, entonces al girar X ms va a pasar que algunas veces cambies de estado y otras te quedes en el mismo. ¿Que pasa ahi? Como que es ambiguo para QLearning el efecto que tiene esa accion en ese estado, ¿no?

Capaz que estoy diciendo cualquier cosa ;)

Gracias,

Gabriel.

En respuesta a Gabriel Rodriguez Frangias

Re: Acciones y estados

de Facundo Benavides -
alo, algo de eso charlamos con otro grupo.
mi "consejo" es tratar que la mecánica sea siempre:
1 evalúo en qué estado estoy
2 si no terminé y estado actual distinto de estado anterior
3 elijo acción apoyándome en la tabla Q sea sorteando o eligiendo la acción argmax
4 aplico acción
5 espero un tiempo
6 vuelvo a 1

resumen, una acción termina cuando comienza la sgte.
idealmente el rate de ejecución del QL está en sintonía con el tamaño de los estados y las velocidades de los motores (agilidad del robot).
sino, algunas iteraciones van a caer en no hacer nada, esperar otro ciclo. nada grave.
sugerencia metodológica, primero busquen que estos 2 últimos aspectos dialoguen razonablemente y luego ajustan el rate del QL para que también acompañe los cambios de estado/aplicación de acciones.
por último, los estados terminales no generan nuevas acciones pero además deberían frenar los motores. de otro modo, el trial termina pero el robot se sigue moviendo ;-)
saludos
En respuesta a Facundo Benavides

Re: Acciones y estados

de Gabriel Rodriguez Frangias -

Hola Facundo,

Mas alla de los detalles de implementacion, lo que deduzco del paso 2 es que pasas a elegir una nueva acción (con el mecanismo que sea) sólo cuando el estado cambió, ¿no? Si eso no pasa, dejas que la accion actual siga su curso. 

¿Es esa la filosofia del algoritmo, a alto nivel digamos? 

Gracias,

Gabriel.