Academia.eduAcademia.edu

ANIMAT, UN ANIMAL ARTIFICIAL

EN ESTA COMUNICACIÓN PRESENTO ALGUNOS EXPERIMENTOS realizados con el modelo Animat. En dicho modelo es necesario distinguir entre el entorno o el mundo, por un lado, y el autómata (Animat), por el otro. En estos experimentos, el entorno es siempre el mismo. Lo que cambia, de un experimento a otro, es la estructura y la dinámica del sistema que hemos llamado ̳Animat‘. En la primera sección expondré la composición del entorno y en las siguientes la composición de Animat en cada caso.

Actas del I Congreso de la Asociación Iberoamericana de Filosofía de la Biología (AIFBI) ANIMAT, UN ANIMAL ARTIFICIAL ANTONIO BENÍTEZ Universidad Complutense de Madrid (España) [email protected] 1. Introducción EN ESTA COMUNICACIÓN PRESENTO ALGUNOS EXPERIMENTOS realizados con el modelo Animat. En dicho modelo es necesario distinguir entre el entorno o el mundo, por un lado, y el autómata (Animat), por el otro. En estos experimentos, el entorno es siempre el mismo. Lo que cambia, de un experimento a otro, es la estructura y la dinámica del sistema que hemos llamado ‗Animat‘. En la primera sección expondré la composición del entorno y en las siguientes la composición de Animat en cada caso. 2. Entornos El Entorno está formado por una matriz de datos de f filas y c columnas. En todos los experimentos que estudiaremos, las filas serán 50 y las columnas también 50. En cada posición de la matriz (fi, cj) hay un objeto. Cada objeto, excepto Animat, es una instancia o ejemplar de la clase elemento%, una subclase de la clase color%. Por esto último, cada ejemplar tiene un valor de rojo, verde, azul y de opacidad, es decir, valores R G B O. Además, cada ejemplar tiene otras propiedades: estado, dureza y olor. La propiedad estado se utiliza sólo en un entorno cambiante por computación local (autómatas celulares). Dureza es una propiedad de cada objeto correlativa al receptor sensitivo tacto. Por último, olor es una propiedad cuyo valor es un objeto de la clase olor%. A continuación sintetizo estas propiedades y sus posibles valores: 60 Actas del I Congreso de la Asociación Iberoamericana de Filosofía de la Biología (AIFBI) Tabla : Distintos tipos de objetos nombre estado dureza olor color blanco 0 0 olor0 255 255 255 1.0 rojo 1 5 olor0 255 0 0 1.0 verde 2 2 olor2 0 255 0 1.0 azul 3 7 olor0 0 0 255 1.0 negro 4 10 olor0 0 0 0 1.0 De los anteriores tipos de objetos, hay dos (blancos y verdes) que son especiales, y son especiales por las siguientes razones: 1ª, porque sólo con el tipo de objetos blanco es posible intercambiar la posición. Es decir, Animat sólo puede avanzar a una posición donde haya un blanco; 2ª, porque Animat sólo puede comer objetos del tipo verde. La matriz de datos del Entorno contiene toda la información, incluida la propia de Animat porque es un objeto más del Entorno. Por ello, en cada iteración el Entorno tiene una cierta configuración. Todos los objetos excepto Animat están quietos porque carecen de dinamismo propio (Entorno-0). Animat sí tiene dinamismo propio. Sin embargo, veremos experimentos en que el dinamismo del entorno es distinto (Entorno-celular). Tanto el intercambio de posiciones de Animat y un blanco como el cambio que implica la desaparición de un verde (sustituido por un blanco) porque es comido no se produce hasta que esta información no se asienta en la matriz de datos. 3. Animat del primer experimento En este experimento Animat está dotado de un receptor sensitivo con el que contacta con el entorno, recibiendo de éste tres estímulos. Estos estímulos son procesados por una red formada por 15 fotorreceptores, cada uno de los cuales producirá una respuesta cuyos valores posibles son 0 o 1. La salida de esta retina es procesada por una red de tres capas del tipo perceptrón multicapa. La salida de esta red 61 Actas del I Congreso de la Asociación Iberoamericana de Filosofía de la Biología (AIFBI) es una orden motora, que constituye la entrada de los efectores de Animat. Los efectores están constituidos por dos tipos de capacidades: una, de cambio de posición; otra, de giro sobre su propio eje con el consiguiente cambio de orientación. 3.1. Receptor sensitivo La retina está formada por fotorreceptores. Cada fotorreceptor es un ejemplar de una clase de nombre fotorreceptor%. Lo característico de esta clase consiste en que cada ejemplar pertenece a un tipo por el que es sensible al rojo, verde, azul, blanco o negro. Los fotorreceptores se agrupan en tres unidades de 5 ejemplares. Con cada una de estas agrupaciones se analiza un estímulo. La salida de cada agrupación sigue, por tanto, el esquema siguiente: Rojo Verde Azul Blanco Negro 3.1.1. Computación de un fotorreceptor La computación de un fotorreceptor depende del tipo al que el ejemplar pertenece y sigue la regla siguiente: 1. si la composición RGB del estímulo es igual al tipo RGB del fotorreceptor, devuelve 1 2. en otro caso, devuelve 0. 3.1.2. Estructura de cada agrupación de fotorreceptores Cinco ejemplares de fotorreceptor% conforman una agrupación de fotorreceptores según el esquema siguiente: tipo_rojo tipo_verde tipo_azul tipo_blanco tipo_negro La computación de una agrupación consiste en lo siguiente: – Cada fotorreceptor pertenece a un tipo; cada estímulo es un objeto perteneciente a un tipo (rojo, verde, azul, blanco o negro). – Si coinciden el tipo del fotorreceptor y el del objeto, la neurona 62 Actas del I Congreso de la Asociación Iberoamericana de Filosofía de la Biología (AIFBI) fotorreceptora devuelve 1 ; en caso contrario, 0. – El esquema de la salida de una agrupación de fotorreceptores es : (0/1 0/1 0/1 0/1 0/1) 3.1.3. La red de fotorreceptores La retina está formada por tres agrupaciones de fotorreceptores según el esquema siguiente: agrupación_1 agrupación_2 agrupación_3 La computación de la red puede ser expresada así: – Cada uno de los tres estímulos (un objeto de un cierto tipo) estimula una de las tres agrupaciones de fotorreceptores. – La salida de la retina está formada, por tanto, por las salidas de las agrupaciones. – La salida de la retina puede tratarse, según convenga, como una única lista de 15 elementos o como una lista formada por tres listas de 5 elementos cada una. 3.2. Control central El cerebro está formado por una única red de neuronas artificiales. Esta red, del tipo perceptrón multicapa, está formada por tres capas: 1. Capa de entrada formada por 15 neuronas de entrada. Cada una de estas neuronas recibe uno de los 15 valores de la salida de la retina. 2. Capa oculta formada por 15 neuronas. Cada una de estas está conectada con cada una de las 15 neuronas de la capa de entrada. 3. Capa de salida formada por 4 neuronas, cada una conectada con cada una de las 15 neuronas de la capa oculta. Los parámetros de la red, pesos y umbrales, han sido obtenidos mediante la aplicación de un Algoritmo Genético. La red produce una orden motora según el esquema siguiente: Tabla 2: Esquema orden motora 63 Actas del I Congreso de la Asociación Iberoamericana de Filosofía de la Biología (AIFBI) vec_1 vec_2 vec_3 giro blanco 0 0 0 0 blanco 0 0 0 0 blanco 0 0 0 0 1 Si hay un blanco en cualquiera de las tres posiciones de los estímulos, el esquema seguido será uno de las tres primeras filas. En ese caso, no habrá giro (valor 0). En cualquier otro caso, cuando no hay un blanco entre los estímulos, el esquema seguido será el de la última fila, y habrá giro porque su valor será 1. 3.3. Efectores Animat tiene tanto la capacidad de avanzar a una posición vacía (donde hay un blanco) como la capacidad de girar cambiando de orientación. Mientras que la capacidad de avanzar es una locomoción o cambio de lugar, la capacidad de girar no es una locomoción puesto que no hay cambio de lugar, pero sí es un movimiento que produce un cambio de orientación en el aquí de Animat. 4. Animat del segundo experimento En este segundo experimento Animat está dotado de tres receptores sensitivos: vista, olfato y tacto. Y tiene un efector más: la acción de comer. No es la vista sino el tacto y el olfato los receptores que proporcionan información, de modo distinto, sobre comida. Otra novedad es que cada receptor sensitivo se prolonga en una red de tipo ART cuya función es clasificar la información analizada por cada receptor. Si se conciben estas redes como un córtex-visual, córtex-tactil y córtex-olfativo, los órganos sensoriales se conectan con zonas corticales. La salida de cada uno de esas tres zonas corticales es el input de una red de tipo perceptrón multicapa. Además he añadido otra zona cortical. Esta zona esta formada por un sensor de energía, sensor que mide la energía existente en el sistema y un autómata de órdenes, que discrimina entre necesidades y construye la orden motora. El sensor está, en cada iteración o instante temporal, en un estado: 0, 1, y 2. Según el estado de este sensor, la orden motora se construye en esta zona cortical según la idea siguiente: predomina la 64 Actas del I Congreso de la Asociación Iberoamericana de Filosofía de la Biología (AIFBI) vista, si no hay necesidad de comer; predomina el tacto, si hay poca necesidad de comer; y predomina una combinación de tacto y olfato, si hay mucha necesidad de comer. 4.1. Receptores sensitivos Animat dispone de tres receptores sensitivos: retina, tacto y olfato. En el diseño del tacto y el olfato he seguido el modelo de la retina del primer experimento. Por tanto, hay neuronas fotorreceptoras, receptoras de lo tocado y quimiorreceptoras, estas dos últimas siguen la misma idea ensayada en los fotorreceptores. Comparo sintéticamente la estructura y composición de la retina, tacto y olfato en los apartados siguientes. 4.1.1. Estímulos y receptores sensitivos La vista es estimulada por los tres objetos que están frente a Animat. Esos mismos objetos son los que Animat toca. Sin embargo, Animat es capaz de oler cada uno de los ocho vecinos que le rodean (vecindad de Moore). La retina está formada por tres agrupaciones de fotorreceptores. Una agrupación analiza un estímulo. Tabla 3: Salida de una Agrupación de fotorreceptores rojo verde azul blanco negro 1/0 1/0 1/0 1/0 1/0 El tacto está formado por tres agrupaciones de sensores del tacto. Cada agrupación analiza un estímulo. Tabla 4: Salida de una Agrupación de sensores táctiles dureza-rojo dureza-verde dureza-azul dureza-blanco dureza-negro 1/0 1/0 1/0 1/0 1/0 El olfato está formado por ocho agrupaciones de quimiorreceptores. Cada agrupación analiza igualmente un estímulo. 65 Actas del I Congreso de la Asociación Iberoamericana de Filosofía de la Biología (AIFBI) Tabla 5: Salida de una Agrupación de quimiorreceptores olor-rojo olor-verde olor-azul olor-blanco olor-negro 1/0 1/0 1/0 1/0 1/0 4.2. Región cortical de los sentidos Cada uno de los tres receptores sensitivos se conecta con una red ART. Como es sabido, este tipo de redes es eminentemente clasificatoria. La salida de una red ART es el identificador de la categoría en que la red ha clasificado el input recibido. 4.3. Redes de discriminación. Pre-órdenes motoras Cada uno de los tres córtex sensitivos conecta con una red del tipo perceptrón multicapa. La función de estas redes es discriminar entre dos categorías de estímulos: los que representan una facilidad y los que representan una dificultad respecto a una necesidad prioritaria. Así, cuando Animat no necesita comer, sí necesita moverse: es un semoviente. En estos casos Animat se guía exclusivamente por su vista. Y su vista le informa de dos tipos posibles de estímulos: lugares vacíos (blancos) o facilidades para el avance; cosas (objetos no-blancos) o dificultades para el avance. Cuando Animat necesita comer, aunque su energía sea aún positiva, se guía por el tacto para buscar comida y por la vista para cambiar de lugar. El tacto, como la vista, le informa de dos categorías de estímulos: comida (verdes) o facilidad para incrementar la energía del sistema; resto de objetos (no comida) o dificultades para incrementar la energía del sistema. En las situaciones en que Animat necesita comer urgentemente, se guía por el tacto y el olfato para encontrar comida, y por la vista para cambiar de lugar. Si el tacto detecta comida, Animat come. Si el olfato detecta comida y el tacto no, Animat gira (ver tabla ). Si ninguno de los dos sentidos, tacto y olfato, detecta comida, Animat se mueve según lo que informa su vista. 4.3.1. Red de discriminación visual – Perceptrón de 3 capas – Capa de entrada: 3 neuronas ; Capa oculta : 3 neuronas, función de escalón ; 66 Actas del I Congreso de la Asociación Iberoamericana de Filosofía de la Biología (AIFBI) Capa de salida: 3 neuronas, función de escalón – El ajuste de parámetros se ha hecho mediante un Algoritmo Genético – Salidas posibles: Tabla 6: Red de discriminación visual 1 0 0 avanzar→vecino 0 1 0 avanzar→vecino 0 0 1 avanzar→vecino 0 0 0 girar 4.3.2. Red de discriminación táctil – Perceptrón de 3 capas – Capa de entrada: 3 neuronas ; Capa oculta : 3 neuronas, función de escalón; Capa de salida: 3 neuronas, función de escalón – El ajuste de parámetros se ha hecho mediante un Algoritmo Genético – Salidas posibles: Tabla 7: Red de discriminación táctil 1 0 0 comer→vecino 0 1 0 comer→vecino 0 0 1 comer→vecino 0 0 0 girar 4.3.3. Red de análisis olfativo – Perceptrón de 3 capas – Capa de entrada: 8 neuronas ; Capa oculta : 8 neuronas, función de escalón; Capa de salida: 8 neuronas, función de escalón – El ajuste de parámetros se ha hecho mediante un Algoritmo Genético – Algunas salidas posibles: Tabla 8: Red de análisis olfativo acción 1 0 0 0 0 0 0 0 acción-según tacto 0 1 0 0 0 0 0 0 acción-según tacto 67 Actas del I Congreso de la Asociación Iberoamericana de Filosofía de la Biología (AIFBI) 0 0 1 0 0 0 0 0 acción-según tacto 0 0 0 1 0 0 0 0 girar a derechas 0 0 0 0 1 0 0 0 girar a derechas 0 0 0 0 0 1 0 0 girar a derechas 0 0 0 0 0 0 1 0 girar a izquierdas 0 0 0 0 0 0 0 1 girar a izquierdas 4.4. Necesidades y órdenes motoras Animat está concebido como un animal artificial dotado inicialmente de una cierta cantidad de energía. Con cada acción realizada, Animat pierde un poco de esa energía. Mientras que la cantidad de energía es superior a 100, el sensor de energía (estado = 0) no detecta necesidad de incrementar la energía del sistema. Cuando ese es el caso, Animat no tiene necesidad de comer. En estas situaciones, Animat se guía exclusivamente por su vista. Si la energía del sistema baja de 100 (entre 100 y 0), el sensor de energía se activa y su estado es 1. Mientras que este sea el caso, Animat tiene como prioridad comer un verde. En estas situaciones, Animat se deja guiar por el tacto para encontrar comida y por la vista para avanzar o girar. Una tercera situación es aquella en que la energía del sistema es negativa (pero mayor que −200). El estado del sensor de energía es 2. En estas situaciones, Animat debe comer urgentemente porque si la energía del sistema baja de −200, Animat muere. Cuando el estado del sensor de energía es 2, Animat se guía por el tacto y el olfato para encontrar comida y por la vista para cambiar de lugar. En aquellas situaciones en que el tacto no detecta comida y el olfato huele comida en algunos de los vecinos que no están frente a Animat, gira a izquierda o a derecha según la ubicación del estímulo olfativo. Dependiendo, pues, del estado del sensor de energía, Animat tendrá una necesidad prioritaria u otra. La orden motora dependerá, en cada caso, tanto del entorno como del estado del sensor interno de energía. He organizado estas ideas en un módulo cuya computación sigue los criterios siguientes: – Estado del sensor de energía = 0, ORDEN = salida de la red de discriminación 68 Actas del I Congreso de la Asociación Iberoamericana de Filosofía de la Biología (AIFBI) visual – Estado del sensor de energía = 1, ORDEN = salida de la red de discriminación táctil o salida de la red de discriminación visual – Estado del sensor de energía = 2, ORDEN = salida de la red de discriminación táctil o salida de la red de análisis olfativo o salida de la red de discriminación visual 4.4.1. Memoria de la orden previa Cuando Animat lleva a cabo una acción de comer, la orden motora correspondiente se almacena en la memoria reciente (propiedad orden_ensayada). Si la acción no es de comer, no se almacena la orden motora correspondiente (orden_ensayada = falso). Si la orden motora es de avanzar y orden_ensayada ≠ falso, se sustituye dicha orden motora por la contenida en orden_ensayada. En estos casos Animat avanza al lugar ocupado por el último verde comido. Se trata, pues, de un mecanismo de inhibición posible y sustitución de una orden motora. 4.5. Efectores Animat puede llevar a cabo tres acciones básicas: cambiar de lugar, comer y girar. El cambio de lugar produce un cambio del aquí de Animat y, con ello, de la perspectiva que Animat tiene del Entorno. Al girar no hay cambio del aquí pero sí de la perspectiva que tiene del Entorno. Comer no produce un cambio en el aquí de Animat, pero sí en su perspectiva del Entorno. El cuadro de acciones posibles es el siguiente: Tabla : Acciones posibles orden motora acción (0 1 0 0) avanzar→vecino (0 0 1 0) avanzar→vecino (0 0 0 1) avanzar→vecino (1 1 0 0) comer→vecino 69 Actas del I Congreso de la Asociación Iberoamericana de Filosofía de la Biología (AIFBI) (1 0 1 0) comer→vecino (1 0 0 1) comer→vecino (0 0 0 0) girar a derechas (1 0 0 0) girar a izquierdas 70