Vous êtes sur la page 1sur 14

PROGRAMACION ORIENTADA DE OBJETOS

TRABAJO COLABORATIVO

PRESENTADO A: CARLOS ALBERTO VERA ROMERO

PRESENTADO POR: JOSE ANGEL SERNA GOMEZ CC: 72223638

CODIGO DEL CURSO 299018_10

UNIVBERIDAD NACIONAL ABIERTA Y A DISTANCIA JUNIO 6 DE 2011

UTILIZACIN DE LAS REDES NEURONALES EN CONTROL Un sistema que hay que controlar , generalmente tiene una funcin de transicin f y una funcin de salida g. Habr una seal de control u(t) , que con el estado actual x(t) , determina el estado siguiente x(t + 1) : x(t + 1) = f ( u(t) , x(t) )En cada estado x(t) , se produce una salida y(t) : y(t) = g( x(t) )Un controlador equivale al modelo inverso del sistema a controlar puesto que , dada una salida deseada y el estado actual , el controlador generara la seal de control que producir dicha salida. ESQUEMAS DE CONTROL: Modelizacin inversa directa: Es el esquema ms simple. Usa el propio sistema para generar pares de entrada-salida y entrena el modelo inverso directamente mediante el intercambio de entradas y salidas : Este esquema solo es aplicable a sistemas con funciones inyectivas ya que si no la inversa no es una funcin, y su xito depende del muestreo. Modelizacin hacia delante: Procede en dos etapas. Primero se hace que la red aprenda el modelo del sistema a partir de pares e/s. En la segunda etapa se antepone dicho modelo a otra red neuronal y se entrena el sistema formado por ambas para que aproxime la funcin identidad, manteniendo los pesos del modelo fijos, ya que sern lo pesos del controlador los que se ajustan. Siendo y*(t) la salida deseada. Aprendizaje basado en la seal f de error realimentada: Requiere disponer de un controlador convencional conectado al sistema, siendo la funcin de este la de hacer que la seal de error tienda a cero. Este enfoque no precisa fase de aprendizaje previa. CINEMTICA INVERSA EN UN ROBOT MANIPULADOR El control de robots, debe disponer de funciones precisas que hagan corresponder a una posicin y orientacin cualquiera del espacio, los valores de las variables articulares que hacen que el elemento terminal del robot alcance la posicin y orientacin mencionadas. La utilizacin de redes es de especial inters cuando no se dispone de un modelo preciso de algunas de las articulaciones, o cuando estos por alguna razn no se pueden calibrar para ajustar sus movimientos, ya que la capacidad de aprendizaje brinda la oportunidad de resolver dichos problemas. REDES MULTICAPA CON RETROPOPAGACIN DEL ERROR: La manera ms sencilla de abordar el aprendizaje de la cinemtica inversa es aplicar el esquema de modelizacin inversa directa a una red multicapa que incorpora la regla de retropropagacin del error. La manera de asegurar que la funcin sea inyectiva, es elegir para el conjunto de aprendizaje solo configuraciones del robot en las cuales las articulaciones del robot

permanezcan siempre en el mismo espacio, lo que equivale a que no se salgan de un rango determinado. Jordan y Rumelhart aplicaron en 1992 el esquema de modelizacin hacia delante al aprendizaje de la cinemtica inversa de un robot manipulador con 3 articulaciones que se mueve en un plano. Aunque este caso de la cinemtica inversa no es una funcin, sino una correspondencia de 2 a 3 variables. La conclusin despus de experimentar con redes multicapa es que puede obtenerse rpidamente una aproximacin burda de la cinemtica inversa, y sin embargo una representacin precisa de la funcin es muy difcil, esto se debe a que la aproximacin a la funcin se ve influenciada por todos y cada uno de los pesos de la red. Una manera de resolver este problema es usar representaciones locales, de manera que cada parte de la red sea responsable solo de una pequea porcin del espacio de entrada. MAPAS TOPOLOGICOS AUTO-ORGANIZATIVOS: Se trata de un esquema basado en una regla correlacional, que sigue un aprendizaje con la regla de minimizacin del error LMS. El esquema de control seguido es el de modelizacin inversa directa con funcionamiento no supervisado. Las neuronas estn organizadas en una malla tridimensional que, mediante el aprendizaje, evoluciona hacia una representacin del espacio de trabajo del robot. Las neuronas de las neuronas sern las coordenadas u (t) del punto que se pretende alcanzar con el elemento terminal. Las salidas, una vez entrenada la red, son las variables articulares (t y los jacobianos Ai correspondientes a dicho punto del espacio. Dada una entrada u, la red determina la neurona k que mejor correlaciona con dicha entrada, segn la ecuacin: ( wi k ui ( ( wi j ui (j i i) La salida se calcula entonces mediante la ecuacin: ((x) = (k + Ak (u - wk) Un ciclo de aprendizaje comprende los siguientes cuatro pasos: 1) En primer lugar, se aplica la regla de aprendizaje de Kohonen a los pesos de la red: wi j (t + 1) = wi j (t) + chk (j) (uj (t) - wi k (t)) donde hk ( ) es una funcin gaussiana centrada en k, que se usa para modular la adaptacin de los pesos de entrada a una neurona en funcin de su distancia a la neurona activa. 2) Moviendo el robot a las coordenadas articulares ( (u) obtenidas mediante la ecuacin anteriormente expuesta, el elemento terminal se sita en la posicin u. La diferencia entre la posicin deseada u y la realmente alcanzada u constituye una seal de error, que permite aplicar una regla de minimizacin del mismo , en este caso la regla LMS : (* = (k + ((= (k + Ak ( u - u )

3) Aplicando el incremento de correccin Ak ( u - u) a las articulaciones del robot, se ajusta la posicin del elemento terminal obtenindose las nuevas coordenadas u. A continuacin se aplica la regla LMS al jacobiano, usando (u = ( u - u ) como seal de error : A* = Ak + ( (( - Ak (u ) (u / || (u || 4) Finalmente , se utiliza la regla de kohonen para actualizar los valores articulares : (i = (i + chk (y) ((y* - (k (t)) Y la matriz jacobiana : Ai = Ai + chk (y) (Ai* - Ak (t)) donde c es una constante que determina la velocidad de aprendizaje y h( ) es tambin aqu una funcin gaussiana centrada en k , utilizada para modular los pasos de aprendizaje en funcin de la distancia a la neurona activa k. La amplia experimentacin llevada a cabo por los distintos autores muestra que la red se auto-organiza, constituyendo una representacin adecuada del espacio de trabajo, en aproximadamente 30.000 iteraciones del ciclo de entrenamiento. Este resultado muestra la gran capacidad de aprendizaje de este esquema, puesto que las condiciones de operacin a las que se ha sometido la red son las peores imaginables: completo desconocimiento del robot, inicializacin aleatoria de los parmetros y muestreo aleatorio del espacio de trabajo durante el entrenamiento. DINMICA INVERSA

Por sta se entiende la funcin que, da una trayectoria deseada del elemento terminal del robot, proporciona las fuerzas y pares que deben ser aplicados a las distintas articulaciones para que efectivamente se siga dicha trayectoria. Se suelen aplicar tcnicas de control adaptativo, que no requieren conocimiento a priori de esta funcin, al control dinmico de robots. Sin embargo, el coste computacional de estas tcnicas, aumenta rpidamente con el nmero de variables de estado, haciendo prohibitiva en muchos casos su aplicacin en tiempo real.

Recientemente, se han utilizado modelos de Redes Neuronales, para el aprendizaje de la dinmica inversa bien directamente o a travs del error proporcionado por un controlador convencional de ganancia fija. Conviene destacar que el caso dinmico difiere del cinemtico en que, para generar los pares de E/S, se precisa algn tipo de controlador que gue al robot desde el principio. A medida que progresa el aprendizaje de la funcin dinmica inversa, la salida de la R.N deviene ms precisa y el efecto del controlador tiende progresivamente a cero.

1. ENTORNO

A la hora de dibujar una trayectoria hay que tener presente en todo momento que la nica informacin sobre el entorno que tiene el robot es la proporcionada por los sensores y la direccin de la meta. Tambin hay que considerar que las trayectorias deben ser continuas y que el robot no debe pasar ms de una vez por el mismo punto. Es importante que las trayectorias generadas sean variadas, es decir, en ellas deben plantearse el mayor nmero de situaciones posibles en las que podra encontrarse el robot al navegar en un ambiente con obstculos.

Para la creacin, entrenamiento y test de la red se ha utilizado la toolbox Neural Networks de Matlab, herramienta que dispone de una librera para trabajar de forma sencilla con redes neuronales. Se puede implementar tanto un perceptrn multicapa (MLP) como arquitecturas ms sencillas del tipo perceptrn.

El algoritmo completo de la simulacin se muestra a continuacin.

ALGORITMO DE SIMULACION

Para poder realizar un anlisis detallado de las trayectorias simuladas se ha realizado el Interface Grfico utilizando la herramienta GUI de Matlab.

% Mapa1.m minx=-90; maxx=40; miny=-80; maxy=50; axis([minx maxx miny maxy]);

hold on; title('simulacion del Mapa1 y vs. x'); plot([-60 0],[0 0],'-y'); plot([0 0],[0 50],'-y'); plot([25 25],[miny 30],'-y'); plot([25 40],[30 30],'-y'); plot([0 40],[50 50],'-y'); % obtaculo ob1 % observe que las lneas se colocan plot([x1 x2],[y1 y2],'-y'); plot([-40 0],[-40 -40],'-y'); plot([-40 0],[-25 -25],'-y'); plot([-40 -40],[-40 -25],'-y'); plot([0 0],[-40 -25],'-y'); % nueva esquina plot([-60 -60],[0,-60],'-y'); plot([minx -60],[-60 -60],'-y'); plot([minx -60],[-80 -80],'-y'); xlabel(' X(m)'); ylabel(' Y(m)');

USO DEL BLOQUE DE REFERENCIA DE UN MODELO DE CONTROL En esta seccin se muestra cmo el controlador de red neuronal se entrena. El primer paso es copiar el modelo de referencia de bloque de control de la red neuronal Blockset Cuadro de herramientas a la ventana de su modelo. Consulte la documentacin de Simulink si no est seguro de cmo hacer esto. Este paso se omite en la siguiente demostracin. Un modelo de demostracin se proporciona con la caja de herramientas de redes neuronales para demostrar el controlador de modelo de referencia. En esta demo, el objetivo es controlar el movimiento de un brazo simple, el robot de un solo enlace, como se muestra en la siguiente figura.

La ecuacin de movimiento para el brazo.

Donde

es el ngulo del brazo, y

es el par suministrado por el motor de

corriente continua El objetivo es formar el controlador para que el brazo siga el modelo de referencia

En esta demostracin se utiliza un controlador de red neuronal con una arquitectura de 5-13-1. Las entradas para el regulador consisten en dos entradas de referencia retraso, dos salidas de planta de retraso, y un retraso en la salida del regulador. Un intervalo de muestreo de 0.05 segundos es utilizado. Dnde es la salida del modelo de referencia, y entrada. es la seal de referencia de

Para ejecutar esta demo, siga estos pasos. MATLAB Inicio. Ejecute el modelo de demostracin mrefrobotarm escribiendo en la ventana de comandos de MATLAB. Este comando inicia Simulink y crea la ventana siguiente modelo. El modelo de referencia de bloque de control ya ha sido puesto en el modelo.

Haga doble clic en el modelo de referencia de bloque de control. Esto nos lleva a la siguiente ventana para la formacin de controlador de modelo de referencia.

El siguiente paso sera normalmente con el fin de seleccionar la planta de identificacin, que se abre la ventana de la planta de identificacin. A continuacin, sera entrenar el modelo de la planta. Seleccione Generar datos. Entonces, el programa comienza a generar los datos para el entrenamiento del controlador. Despus de los datos que se generan, aparece la siguiente ventana.

DESCRIPCIN Y MODELADO DEL SISTEMA.

El sistema, de forma simplificada, est constituido por una plataforma montada sobre dos ruedas que son accionadas por dos motores independientemente. Sobre esta plataforma se sita una masa que puede ser modelada como una masa puntual a una distancia l del plano de la base.

PNDULO INVERTIDO SOBRE BASE MVIL

El ambiente de trabajo es un cuadrado de 5.4 m de largo, representado por una imagen de 120 x 120 pixeles, por tanto cada pixel equivale a 4.5 cm reales. En el interior del ambiente se agregaran obstculos de forma aleatoria. Hemos considerado que el robot pueda efectuar solo tres movimientos bsicos: 1. Avance sin giro 2. Giro de 45 y avance 3. Giro de -45 y avance

VARIABLES

El robot posee 5 sensores de ultrasonido capaces de detectar obstculos y medir la distancia a la cual se encuentran. De igual manera son de dos estados, activndose un 1 lgico en presencia de obstculos y un 0 en caso contrario.

Vous aimerez peut-être aussi