La programación neurodinámica combina los fundamentos teóricos de la programación dinámica con la capacidad de aprendizaje de las redes neuronales. Permite que los sistemas tomen mejores decisiones observando su propio comportamiento y mejorando sus acciones a través del refuerzo. Se utiliza cuando no se tiene el modelo explícito del sistema o cuando la programación dinámica tradicional es difícil de aplicar debido a problemas de dimensionalidad. Métodos como el Q-learning son formas de aprendizaje libre de modelo que encuentran la política óptima median
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Introducción a la Programación Neurodinámica (PN
1. INTRODUCCION PROGRAMACIÓN
NEURODINAMICA
Dr. Ing. Danilo Chavez
Escuela Politécnica Nacional
20/12/12 PROGRAMACIÓN NEURODINÁMICA 1
2. INTRODUCCIÓN
Aprendizaje
Con Profesor (Supervisado) Sin Profesor
Reforzado Auto-organizativo
Método Moderno Método Clásico
“Planeamiento” “Comportamiento especializado”
Programación Dinámica Programación Neurodinámica
20/12/12 PROGRAMACIÓN NEURODINÁMICA 2
3. Aprendizaje Supervisado: Programación Dinámica
– Aprendizaje Cognititivo – Trata con situaciones donde las
decisiones se hacen por etapas.
– Necesita un conjunto de elementos
– Situaciones donde las decisiones no
representativos de la operación del
pueden realizarse en forma aislada.
entorno
– Problema de asignación de crédito.
Aprendizaje Reforzado: – Dos características: un Sistema
– Aprendizaje Conductista dinámico discreto oculto y una función
– Aprendizaje a través de la interacción de costo aditiva todo el tiempo.
entorno-sistema de aprendizaje. Programación Neurodinámica
– Alcance de objetivos a pesar de – Fundamentos teóricos provistos por la
incertidumbres. programación dinámica.
– Capacidad de aprendizaje provista por
Método Clásico: las redes neuronales.
– Aprendizaje: proceso de Castigo- – Definición (Bertsekas et. al. 1996)
Recompensa. La programación neurodinámica
– Objetivo: Alcanzar un Comportamiento posibilita a un sistema a tomar buenas
Especializado. decisiones observando su propio
comportamiento y mejorar sus
Método Moderno: acciones usando un mecanismo
– Basado en Programación Dinámica. incorporado a través del refuerzo.
– Las decisiones actuales consideran los
efectos futuros.
– Énfasis en el Planeamiento.
20/12/12 PROGRAMACIÓN NEURODINÁMICA 3
4. PROGRAMACIÓN NEURODINÁMICA
Dos Situaciones Posibles:
– El conjunto de datos de entrenamiento La simulación permite el uso de
{i, J*(i)} esta disponible, entonces se métodos de programación
busca la aproximación de la función neurodinámica para diseñar
J*(.) para que el vector W tenga una sistemas para los cuales no se
dimensión pequeña. Representación tiene el modelo explicito, porque
Compacta, solo se almacena W y la es engorroso o imposible estimar
función de aproximación. las probabilidades de transición
– El conjunto de datos de entrenamiento de estados.
no esta disponible, entonces se A través de la simulación
optimiza en un sentido estadístico podemos identificar los estados
usando la simulación de Monte Carlo, mas importantes como aquellos
para sustituir al modelo Markoviano del mas visitados durante la
sistema (Modo de operación de simulación. Por lo tanto, la
programación dinámica off-line ). función de costo aproximada
Ventajas: encontrada por la RN puede
La simulación permite evaluar proveer una buena aproximación
aproximadamente la función de de la función J*(i); y el resultado
costo por alcanzar óptima, esta final una buena política
es la principal distinción entre la subóptima.
metodología de programación
neurodinámica de los métodos
tradicionales de aproximación de
la programación dinámica.
20/12/12 PROGRAMACIÓN NEURODINÁMICA 4
5. Q-LEARNING
Q-Learning se define como una forma de aprender
modelo-libre del aprendizaje reforzado[Watkins, 1989;
Watkins y Dayan, 1992; Jang, et. Todos, 1997].
Es utilizado para un problema donde se tiene
información incompleta DEL MODELO, pero se
necesita que el modelo sea absolutamente observable.
Podría ser vista como versión incremental de
Programación Dinámica que mejora sucesivamente sus
evaluaciones de acciones específicas en los estados
específicos.
El objetivo es encontrar la política óptima y el valor
de su estado se estima mientras que se valora el mejor
par de estado-acción del estado
20/12/12 PROGRAMACIÓN NEURODINÁMICA 5
6. Aplicación de la NPD al Control Óptimo
de Sistemas
Sistema de control óptimo: sistema en Solución de Problemas de Control
el cual se optimiza un índice de Óptimo: debido a los problemas inherentes
desempeño. de la programación dinámica
Problema de control óptimo: dado un (dimensionalidad,...) para resolver ciertos
estado inicial del sistema, buscar una problemas, se han desarrollado sistemas de
secuencia de acciones de control de control óptimo basados en métodos
manera tal de llevar al sistema a una región avanzados de la PD, como la Programación
deseada del espacio de estado Dinámica Iterativa y la Programación
minimizando un índice de desempeño Neurodinámica. Esta última en vez de
predeterminado. evaluar el índice de desempeño para todos
– El enfoque tradicional de resolver un los estados posibles, emplea RN para
aproximarlo.
problema de control óptimo se basa en
el principio de optimalidad de Bellman, Diseños Críticos Adaptables: existen
el cual aplicado a sistemas continuos básicamente 3 tipos de métodos de PD
conduce a la ecuación de Hamilton, aproximada o NPD: PD Heurística (HDP),
Jacobi, Bellman. Estas ecuaciones no PD Heurística Dual (DHP) y PD Heurística
siempre tienen una solución analítica, Dual Globalizada (GDHP); estos métodos
se encuentran soluciones para en conjunto son llamados Diseños Críticos
sistemas lineales, variantes y con Adaptables.
índices de desempeño cuadráticos
como el (LQR) que lleva a la ecuación
de Riccati. El mismo principio aplicado
a sistemas discretos conduce a
algoritmos de programación dinámica.
20/12/12 PROGRAMACIÓN NEURODINÁMICA 6
7. BIBLIOGRAFÍA
Simon Haykin, 1999, Neural Networks: A Comprehensive
Foundation.
Bertsekas and Tsitsiklis, 1996, Neuro-Dynamic Programming.
Patiño, Fullana and Schugurensky, 2004, Programación Dinámica.
20/12/12 PROGRAMACIÓN NEURODINÁMICA 7