• No se han encontrado resultados

Resumen de las Sesiones de Aprendizaje por Refuerzo

N/A
N/A
Protected

Academic year: 2019

Share "Resumen de las Sesiones de Aprendizaje por Refuerzo"

Copied!
34
0
0

Texto completo

(1)

Sesiones del Curso

Aprendizaje por Refuerzo

aster en Ciencia y Tecnolog´ıa Inform´

atica

Fernando Fern´

andez Rebollo

Grupo de Planificaci´

on y Aprendizaje (PLG)

Departamento de Inform´

atica

Escuela Polit´

ecnica Superior

Universidad Carlos III de Madrid

30 de septiembre de 2013

(2)

Sesiones del Curso

Introducci´on al Aprendizaje por Refuerzo Aprendizaje por Refuerzo

Reutilizaci´on de Pol´ıticas

En Esta Secci´

on:

Introducci´

on al Aprendizaje por Refuerzo

Aprendizaje por Refuerzo

Reutilizaci´

on de Pol´ıticas

(3)

Sesiones del Curso

Introducci´on al Aprendizaje por Refuerzo Aprendizaje por Refuerzo

Reutilizaci´on de Pol´ıticas

Resumen de las Sesiones de Aprendizaje por Refuerzo

Aprendizaje por Refuerzo

aster en Ciencia y Tecnolog´ıa Inform´

atica

Fernando Fern´

andez Rebollo

Grupo de Planificaci´

on y Aprendizaje (PLG)

Departamento de Inform´

atica

Escuela Polit´

ecnica Superior

Universidad Carlos III de Madrid

30 de septiembre de 2013

(4)

Sesiones del Curso

Introducci´on al Aprendizaje por Refuerzo

Aprendizaje por Refuerzo Reutilizaci´on de Pol´ıticas

Introducci´

on al Aprendizaje por Refuerzo

1

Procesos de Decisi´

on de Markov

2

Programaci´

on Din´

amica

(5)

Sesiones del Curso

Introducci´on al Aprendizaje por Refuerzo

Aprendizaje por Refuerzo Reutilizaci´on de Pol´ıticas

Introducci´

on al Aprendizaje por Refuerzo

1

Procesos de Decisi´

on de Markov

2

Programaci´

on Din´

amica

(6)

Sesiones del Curso

Introducci´on al Aprendizaje por Refuerzo

Aprendizaje por Refuerzo

Reutilizaci´on de Pol´ıticas

Aprendizaje por Refuerzo

3

Aprendizaje por Refuerzo

4

Generalizaci´

on en Aprendizaje por Refuerzo

5

Aplicaciones del Aprendizaje por Refuerzo

(7)

Sesiones del Curso

Introducci´on al Aprendizaje por Refuerzo

Aprendizaje por Refuerzo

Reutilizaci´on de Pol´ıticas

Aprendizaje por Refuerzo

3

Aprendizaje por Refuerzo

4

Generalizaci´

on en Aprendizaje por Refuerzo

5

Aplicaciones del Aprendizaje por Refuerzo

(8)

Sesiones del Curso

Introducci´on al Aprendizaje por Refuerzo

Aprendizaje por Refuerzo

Reutilizaci´on de Pol´ıticas

Aprendizaje por Refuerzo

3

Aprendizaje por Refuerzo

4

Generalizaci´

on en Aprendizaje por Refuerzo

5

Aplicaciones del Aprendizaje por Refuerzo

(9)

Sesiones del Curso

Introducci´on al Aprendizaje por Refuerzo Aprendizaje por Refuerzo

Reutilizaci´on de Pol´ıticas

Reutilizaci´

on de Pol´ıticas

6

Reutilizaci´

on de Pol´ıticas

(10)

Procesos de Decisi´on de Markov Programaci´on Din´amica

Parte I

Introducci´

on al Aprendizaje por Refuerzo

(11)

Procesos de Decisi´on de Markov Programaci´on Din´amica

Procesos de Decisi´

on de Markov

Aprendizaje por Refuerzo

aster en Ciencia y Tecnolog´ıa Inform´

atica

Fernando Fern´

andez Rebollo

Grupo de Planificaci´

on y Aprendizaje (PLG)

Departamento de Inform´

atica

Escuela Polit´

ecnica Superior

Universidad Carlos III de Madrid

30 de septiembre de 2013

(12)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo Procesos de Decisi´on de Markov

En Esta Secci´

on:

1

Procesos de Decisi´

on de Markov

Definici´

on de Aprendizaje por Refuerzo

Procesos de Decisi´

on de Markov

Definici´

on de un MDP

Pol´ıticas y Optimalidad

2

Programaci´

on Din´

amica

(13)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo

Procesos de Decisi´on de Markov

Aprendizaje por Refuerzo

El aprendizaje por refuerzo consiste en aprender a decidir,

ante una situaci´

on determinada, qu´

e acci´

on es la m´

as

adecuada para lograr un objetivo.

Elementos principales:

Proceso iterativo de prueba y error

Aprendizaje a trav´

es de se˜

nales de refuerzo

(s)

Agente

π

Entorno

R(s,a)

a

s

s’

r

r

T(s,a)

(14)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo

Procesos de Decisi´on de Markov

etodos de Resoluci´

on

Si se conoce el modelo (funciones de transici´

on de estado y

refuerzo): Programaci´

on Din´

amica

Si no se conoce el modelo:

Aprender el modelo: m´

etodos basados en el modelo o

Programaci´

on Din´

amica

Aprender las funciones de valor directamente: m´

etodos libres

de modelo o Aprendizaje por Refuerzo

(15)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo

Procesos de Decisi´on de Markov

Definici´

on de un MDP

Un MDP se define como una tupla

<

S

,

A

,

T

,

R

>

, tal que:

S

es un conjunto de estados

A

un conjunto de acciones

T

:

S × A → P

(

S

), donde un miembro de

P

(

S

) es una

distribuci´

on de probabilidad sobre el conjunto

S

; es decir,

transforma estados en probabilidades. Se dice que

T

(

s

,

a

,

s

0

) es

la probabilidad de que se realice una transici´

on desde

s

hasta

s

0

ejecutando la acci´

on

a

R

:

SxA → <

, que para cada par estado-acci´

on proporciona

su refuerzo. Se dice que

R

(

s

,

a

) es el refuerzo recibido tras

ejecutar la acci´

on

a

desde el estado

s

.

(16)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo

Procesos de Decisi´on de Markov

Ejemplo de MDP Determinista

La ejecuci´

on de una acci´

on desde un estado siempre produce la

misma transici´

on de estado y el mismo refuerzo/coste

s

1

s

2

s

3

s 4

a

1

a

1

a

2

a

3

a

3

a

2

a

2

si

s

1

s

2

s

3

s

4

T

(

s

1

,

a

1

,

si

)

0

1

0

0

T

(

s

1

,

a

2

,

si

)

0

0

1

0

T

(

s

1

,

a

3

,

si

)

1

0

0

0

T

(

s

2

,

a

1

,

s

i

)

1

0

0

0

T

(

s

2

,

a

2

,

si

)

0

0

0

1

T

(

s

2

,

a

3

,

si

)

0

1

0

0

T

(

s

3

,

a

1

,

si

)

0

0

1

0

T

(

s

3

,

a

2

,

si

)

0

1

0

0

T

(

s

3

,

a

3

,

s

i

)

0

0

0

1

T

(

s

4

,

a

1

,

si

)

0

0

0

1

T

(

s

4

,

a

2

,

si

)

0

0

0

1

T

(

s

4

,

a

3

,

si

)

0

0

0

1

R

(

si

,

a

,

s

4

)

=

1 si

si

=

{

1

,

2

,

3

}

.

R

(

si

,

a

,

sj

) = 0 e.c.o.c.

(17)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo

Procesos de Decisi´on de Markov

Ejemplo de MDP Estoc´

astico

Las transiciones de estado y la funci´

on de refuerzo son funciones

estoc´

asticas, por lo que la misma situaci´

on puede producir distintos

resultados

s

1

s

2

s

3

s4

a

1

/0,9

a

1

/0,9

a

1

/0,1

a

2

/1

a

1

/0,1

a

3

/0,5

a

2

/1

a

3

/0,5

si

s

1

s

2

s

3

s

4

T

(

s

1

,

a

1

,

si

)

0,1

0,9

0

0

T

(

s

1

,

a

2

,

si

)

0

0

1

0

T

(

s

1

,

a

3

,

si

)

1

0

0

0

T

(

s

2

,

a

1

,

si

)

0,9

0

0,1

0

T

(

s

2

,

a

2

,

si

)

0

0

0

1

T

(

s

2

,

a

3

,

si

)

0

1

0

0

T

(

s

3

,

a

1

,

si

)

0

0

1

0

T

(

s

3

,

a

2

,

s

i

)

0

0

1

0

T

(

s

3

,

a

3

,

si

)

0

0

0,5

0,5

T

(

s

4

,

a

1

,

si

)

0

0

0

1

T

(

s

4

,

a

2

,

si

)

0

0

0

1

T

(

s

4

,

a

3

,

si

)

0

0

0

1

R

(

si

,

a

,

s

4

)

=

1 si

si

=

{

1

,

2

,

3

}

.

R

(

si

,

a

,

sj

) = 0 e.c.o.c.

(18)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo

Procesos de Decisi´on de Markov

Propiedad de Markov

Propiedad de Markov:

El estado anterior y la ´

ultima acci´

on realizada son suficientes

para describir el estado actual y el refuerzo recibido

Pr

{

s

t

+1

=

s

0

,

r

t

+1

=

r

|

s

t

,

a

t

}

=

Pr

{

st

+1

=

s

0

,

rt

+1

=

r

|

st

,

at

,

rt

,

st

1

,

at

1

, . . . ,

r

1

,

s

0

,

a

0

,

}

Consecuencia: la acci´

on a ejecutar s´

olo depende del estado

actual

(19)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo

Procesos de Decisi´on de Markov

Pol´ıticas y Optimalidad

Objetivo de planificaci´

on:

Encontrar una pol´ıtica,

π

, que para cada estado

s

S

, decida

cu´

al es la acci´

on,

a

A

, que debe ser ejecutada, de forma que

se maximice alguna medida de refuerzo a largo plazo.

Criterio de optimalidad de horizonte infinito descontado:

X

k

=0

γ

k

rk

(1)

donde 0

γ

1

(20)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo

Procesos de Decisi´on de Markov

Funciones de Valor y Pol´ıticas

El c´

alculo de las pol´ıticas ´

optimas,

π

(

s

), se basa en las

funciones de valor:

Funci´

on de valor-estado (dada una pol´ıtica

π

):

V

π

(

s

) =

E

π

{

X

k

=0

γ

k

rt

+

k

+1

|

st

=

s

}

Funci´

on de valor-acci´

on (dada una pol´ıtica

π

):

Q

π

(

s

,

a

) =

E

π

{

X

k

=0

γ

k

rt

+

k

+1

|

st

=

s

,

at

=

a

}

(21)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo

Procesos de Decisi´on de Markov

Funciones de Valor ´

Optimas

Funci´

on de valor-estado ´

optima:

V

(

s

) = m´

ax

π

V

π

(

s

)

s

∈ S

Funci´

on de valor-acci´

on ´

optima:

Q

(

s

,

a

) = m´

ax

π

Q

π

(

s

,

a

)

s

∈ S

,

a

∈ A

Relaci´

on entre las funciones de valor ´

optimas:

V

(

s

) = m´

ax

a

∈A

Q

(

s

,

a

)

,

s

∈ A

(22)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo

Procesos de Decisi´on de Markov

Funciones de Valor ´

Optimas

Definici´

on de una pol´ıtica ´

optima,

π

(

s

), en funci´

on de

Q

(

s

,

a

):

π

(

s

) = arg

a

∈A

ax

Q

(

s

,

a

)

Ecuaciones de optimalidad de Bellman:

Q

(

s

,

a

) =

X

s

0

T

(

s

,

a

,

s

0

)[

R

(

s

,

a

) +

γ

V

(

s

0

))]

Q

(

s

,

a

) =

X

s

0

T

(

s

,

a

,

s

0

)[

R

(

s

,

a

) +

γ

ax

a

0

Q

(

s

0

,

a

0

))]

V

(

s

) = m´

ax

a

∈A

X

s

0

T

(

s

,

a

,

s

0

)[

R

(

s

,

a

) +

γ

V

(

s

0

)]

(23)

Procesos de Decisi´on de Markov

Programaci´on Din´amica

Definici´on de Aprendizaje por Refuerzo

Procesos de Decisi´on de Markov

Ejemplo

s

1

s

2

s

3

s4

a

1

/0,9

a

1

/0,9

a

1

/0,1

a

2

/1

a

1

/0,1

a

3

/0,5

a

2

/1

a

3

/0,5

Q

(

s

4

,

a

i

) =

0

Q

(

s

2

,

a

2

) =

T

(

s

2

,

a

2

,

s

1

)[

R

(

s

2

,

a

2

,

s

1

) +

γ

ax

a

0

Q

(

s

1

,

a

0

)]+

T

(

s

2

,

a

2

,

s

2

)[

R

(

s

2

,

a

2

,

s

2

) +

γ

ax

a

0

Q

(

s

2

,

a

0

)]+

T

(

s

2

,

a

2

,

s

3

)[

R

(

s

2

,

a

2

,

s

3

) +

γ

ax

a

0

Q

(

s

3

,

a

0

)]+

T

(

s

2

,

a

2

,

s

4

)[

R

(

s

2

,

a

2

,

s

4

) +

γ

ax

a

0

Q

(

s

4

,

a

0

)]

1 +

γ

×

0 = 1

Q

(

s

2

,

a

1

) =

¿?

(24)

Procesos de Decisi´on de Markov

Programaci´on Din´amica Programaci´on Din´amica

En Esta Secci´

on:

1

Procesos de Decisi´

on de Markov

2

Programaci´

on Din´

amica

Programaci´

on Din´

amica

(25)

Procesos de Decisi´on de Markov

Programaci´on Din´amica Programaci´on Din´amica

Programaci´

on Din´

amica

Algoritmos utilizados para calcular pol´ıticas ´

optimas,

asumiendo un modelo perfecto del entorno descrito como un

MDP.

Algoritmos cl´

asicos:

Iteraci´

on sobre la pol´ıtica (

Policy Iteration

)

Iteraci´

on sobre el valor (

Value Iteration

)

Sistema de Markov: Puede verse como una simplificaci´

on del

MDP, en el que se ha fijado una pol´ıtica (ya no hay decisiones)

(26)

Procesos de Decisi´on de Markov

Programaci´on Din´amica Programaci´on Din´amica

Sistema de Markov

El problema de la hormiga amenazada

http://sociedad.elpais.com/sociedad/2011/03/25/videos/1301007601 870215.html

(27)

Procesos de Decisi´on de Markov

Programaci´on Din´amica Programaci´on Din´amica

Evaluaci´

on de la Pol´ıtica

(equivale a resolver el sistema de Markov resultante)

Recibir la pol´ıtica

π

a evaluar

Inicializar

V

(

s

) = 0

,

s

∈ S

Repetir

0

Para cada

s

S

1

v

V

(

s

)

2

V

(

s

)

P

s0

T

(

s

, π

(

s

)

,

s

0

)[

R

(

s

, π

(

s

)) +

γ

V

(

s

0

)]

3

max

(∆

,

|

v

V

(

s

)

|

)

Hasta que ∆

< θ

(un n´

umero positivo entero)

(28)

Procesos de Decisi´on de Markov

Programaci´on Din´amica Programaci´on Din´amica

Ejemplo: Evaluaci´

on de la Pol´ıtica

Suponemos que la pol´ıtica inicial es:

π

(

s

1

) =

a

1

,

π

(

s

2

) =

a

2

,

π

(

s

3

) =

a

3

y

π

(

s

4

) =

a

1

s1 s2

s3

s 4 a1/0,9

a1/0,9 a1/0,1

a2/1

a1/0,1

a3/0,5

a2/1

a3/0,5

s1 s2

s3

s 4 a1/0,9

a1/0,1

a3/0,5

a2/1

a3/0,5

MDP

Sistema de Markov

(29)

Procesos de Decisi´on de Markov

Programaci´on Din´amica Programaci´on Din´amica

Ejemplo: Evaluaci´

on de la Pol´ıtica

V

(

s

1

) =

T

(

s

1

,

a

1

,

s

1

)[

R

(

s

1

,

a

1

,

s

1

) +

γ

V

(

s

1

)] +

T

(

s

1

,

a

1

,

s

2

)[

R

(

s

1

,

a

1

,

s

2

) +

γ

V

(

s

2

)]+

T

(

s

1

,

a

1

,

s

3

)[

R

(

s

1

,

a

1

,

s

3

) +

γ

V

(

s

3

)] +

T

(

s

1

,

a

1

,

s

4

)[

R

(

s

1

,

a

1

,

s

4

) +

γ

V

(

s

4

)] =

0

,

1[0 + 0] + 0

,

9[0 + 0] + 0

,

0[0 + 0] + 0

,

0[0 + 0] = 0

V

(

s

2

) =

T

(

s

2

,

a

2

,

s

1

)[

R

(

s

2

,

a

2

,

s

1

) +

γ

V

(

s

1

)] +

T

(

s

2

,

a

2

,

s

2

)[

R

(

s

2

,

a

2

,

s

2

) +

γ

V

(

s

2

)]+

T

(

s

2

,

a

2

,

s

3

)[

R

(

s

2

,

a

2

,

s

3

) +

γ

V

(

s

3

)] +

T

(

s

2

,

a

2

,

s

4

)[

R

(

s

2

,

a

2

,

s

4

) +

γ

V

(

s

4

)] =

0[0 + 0] + 0[0 + 0] + 0[0 + 0] + 1[1 + 0] = 1

V

(

s

3

) =

T

(

s

3

,

a

3

,

s

1

)[

R

(

s

3

,

a

3

,

s

1

)) +

γ

V

(

s

1

)] +

T

(

s

3

,

a

3

,

s

2

)[

R

(

s

3

,

a

3

,

s

2

) +

γ

V

(

s

2

)]+

T

(

s

3

,

a

3

,

s

3

)[

R

(

s

3

,

a

3

,

s

3

) +

γ

V

(

s

3

)] +

T

(

s

3

,

a

3

,

s

4

)[

R

(

s

3

,

a

3

,

s

4

) +

γ

V

(

s

4

)] =

0[0 + 0] + 0[0 + 0] + 0

,

5[0 + 0] + 0

,

5[1 + 0] = 0

,

5

V

(

s

4

) = 0

(30)

Procesos de Decisi´on de Markov

Programaci´on Din´amica Programaci´on Din´amica

Ejemplo: Evaluaci´

on de la Pol´ıtica

Iter. 1

Iter. 2

Iter. 3

Iter. 4

V

(

s

1

)

0

0,9

0,99

0,999

V

(

s

2

)

1

1

1

1

V

(

s

3

)

0,5

0,75

0,875

0,937

V

(

s

4

)

0

0

0

0

(31)

Procesos de Decisi´on de Markov

Programaci´on Din´amica Programaci´on Din´amica

Mejora de la Pol´ıtica

Recibir la pol´ıtica a mejorar

π

Recibir la funci´

on de valor

V

(

s

) de la pol´ıtica

π

pol

´

ı

tica estable

cierto

Para cada

s

S

b

π

(

s

)

π

(

s

)

arg m´

ax

a

P

s

0

T

(

s

,

a

,

s

0

)[

R

(

s

,

a

) +

γ

V

(

s

0

)]

Si

b

6

=

π

(

s

), entonces

pol

´

ı

tica estable

falso

(32)

Procesos de Decisi´on de Markov

Programaci´on Din´amica Programaci´on Din´amica

Ejemplo: Mejora de la Pol´ıtica

π

(

s

3

) = arg

a

i

ax(

P

s

0

T

(

s

3

,

a

i

,

s

0

)[

R

(

s

3

,

a

i

,

s

0

) +

γ

V

(

s

0

)] =

arg

a

i

ax(

P

s

0

T

(

s

3

,

a

1

,

s

0

)[

R

(

s

3

,

a

1

,

s

0

) +

γ

V

(

s

0

)]

,

P

s

0

T

(

s

3

,

a

2

,

s

0

)[

R

(

s

3

,

a

2

,

s

0

) +

γ

V

(

s

0

)]

,

T

(

s

3

,

a

3

,

s

1

)[

R

(

s

3

,

a

3

,

s

1

)) +

γ

V

(

s

1

)]+

T

(

s

3

,

a

3

,

s

2

)[

R

(

s

3

,

a

3

,

s

2

) +

γ

V

(

s

2

)]+

T

(

s

3

,

a

3

,

s

3

)[

R

(

s

3

,

a

3

,

s

3

) +

γ

V

(

s

3

)]+

T

(

s

3

,

a

3

,

s

4

)[

R

(

s

3

,

a

3

,

s

4

) +

γ

V

(

s

4

)]) =

arg

a

i

ax(0 + 0 + 1[0 +

γ

0

0

937] + 0

,

0 + 0 + 1[0 +

γ

0

0

937] + 0

,

0[0 + 0

0

999] + 0[0 + 1] + 0

0

5[0 + 0

0

937] + 0

0

5[1 + 0]) =

arg

a

i

ax(0

0

843

,

0

,

843

,

0

0

968) =

a

3

(33)

Procesos de Decisi´on de Markov

Programaci´on Din´amica Programaci´on Din´amica

Algoritmo de Iteraci´

on de la Pol´ıtica

Permite calcular la funci´

on de valor ´

optima de un MDP:

Inicializaci´

on:

V

(

s

)

∈ <

y

π

(

s

)

∈ A

arbitrarios para todo

s

∈ S

Repetir

1

Evaluaci´

on de la Pol´ıtica

2

Mejora de la Pol´ıtica

Hasta que

pol

´

ı

tica estable

=

cierto

(34)

Procesos de Decisi´on de Markov

Programaci´on Din´amica Programaci´on Din´amica

Algoritmo de Iteraci´

on de Valor

Iteraci´

on de Valor

Inicializar

V

(

s

) arbitrariamente. Por ejemplo,

V

(

s

) = 0

,

s

∈ S

Repetir

0

Para todo

s

S

v

V

(

s

)

V

(

s

)

ax

a

P

s0

T

(

s

,

a

,

s

0

)[

R

(

s

,

a

) +

γ

V

(

s

0

)]

max

(∆

,

|

v

V

(

s

)

|

)

Hasta que ∆

< θ

(un n´

umero positivo entero)

Dar como salida una pol´ıtica

π

tal que

π

(

s

) = arg m´

ax

a

P

s

0

T

(

s

,

a

,

s

0

)[

R

(

s

,

a

) +

γ

V

(

s

0

)]

Referencias

Documento similar

Un examen detenido del artículo 149, i, que enumera las compe- tencias exclusivas del Estado, nos enseña la diversa terminología que se emplea para referirse a aquellos supuestos en

[r]

[r]

En este trabajo se describen diversos aspectos acerca de la herramienta DeepTest, usable a través de Internet, basada en un nuevo tipo de ejercicios interactivos, de detección

[r]

En este proyecto se ha propuesto simular un modelo de robot real en el entorno de desarrollo Unity, y de entrenar esta simulación aplicando aprendizaje por refuerzo para que

Más de 20 años después se publica el artículo &#34;Playing Atari with Deep Reinforcement Learning&#34; [1], del que hablaremos en este trabajo, donde se logra insertar con

En adición, al enfocarse específicamente en la Red Guardianes de Semillas de Vida de Colombia, el trabajo adquiere la dimensión de estudio de caso que de acuerdo con