Documente Academic
Documente Profesional
Documente Cultură
Angel Garca Baos Escuela de Ingeniera de Sistemas y Computacin Universidad del Valle
04 de febrero de 2008
SISTEMAS CLASIFICADORES
LCS
s s
LCS (Learning Classifier Systems) ideados por Holland. Tambin llamados CS o CFS. Se emplea cuando se desea controlar un entorno caracterizado por:
Cambios constantes, eventos importantes mezclados con ruido. Requerimiento de actuar sobre l en tiempo real. Objetivos implcitos o mal definidos.
LCS
s
Hoy da ha sufrido muchas modificaciones respecto a la formulacin original. Ha asumido conceptos de Aprendizaje evolutivamente reforzado (ERL) y de Q-learning (aunque este ltimo no es realmente evolutivo), y por ello tambin lo llaman Q-CS, QLCS, etc. Recientemente Holland lo nombra sistema de agentes adaptativos. La idea inicial era construir ANIMATs (Animal+roboT) que pudieran evolucionar en un entorno (entorno ECHO de Holland). Pero no solo sirve para robots sino en cualquier tarea software que requiera autoaprendizaje.
AGB
LCS
s
El LCS est basado en una poblacin de reglas de aprendizaje sencillas, tambin llamadas clasificadores:
IF <condicion> THEN <mensaje>
s s s
A ello se le llama sistema de produccin, que es computacionalmente completo. Tanto las condiciones como los mensajes utilizan un cdigo binario {0,1,#}. Siendo # = no importa. Constituido por cuatro mdulos principales:
Mdulo de reglas clasificadoras Mdulo de seleccin Mdulo de algoritmo gentico Mdulo de crdito (o recompensa o fuerza o aptitud)
AGB
LCS
s
Diagrama de bloques:
DECODIFICADOR
CODIFICADOR
Entrada
SELECCIN
Salida
LCS
s s
s s
Cada clasificador tiene asociada una aptitud. Las entradas procedentes del entorno se codifican en una o mas cadenas binarias, que se inyectan a un tabln de mensajes. Los clasificadores chequean el tabln de mensajes. Si hay alguna cadena que coincida con su respectiva condicin IF, entonces se activa el respectivo clasificador. A continuacin, el tabln de mensajes se vaca. Los clasificadores activos compiten por ser seleccionados (ruleta, torneo...), en funcin de su aptitud. Los que sean seleccionados, generan su respectivo mensaje, que se inyecta al tabln de mensajes y puede ser decodificado para producir una salida hacia el entorno.
AGB
LCS
s s
Todas las reglas activadas deben pagar un impuesto, que se les descuenta de la aptitud. El entorno debe ofrecer una recompensa a las reglas que generaron salidas buenas (se suma a la aptitud). Esa recompensa se distribuye a todas las reglas que contribuyeron a producir esa salida. Hay varios algoritmos de distribucin, pero uno muy usado (y tambin muy criticado) es el bucket brigade (brigada de baldes).
AGB
LCS
s
Etc.
Regla 5 p5
Regla 9 p9
ENTORNO
RECOMPENSA R 10
AGB
LCS
s Usualmente:
p p + (R p )
s con p=aptitud, R=recompensa del entorno y =tasa de aprendizaje con 0 < 1 s El principal problema del LCS es que cuando los mensajes de salida son producidos por cadenas muy largas de reglas clasificadoras, el reparto de la recompensa hace que a cada una le toque muy poco. s Entonces, el sistema aprende muy despacio o no aprende.
AGB
11
LCS
s En cuanto a la evolucin del LCS, el objetivo es generar nuevas reglas con el paso del tiempo, por medio de un GA. s Hay dos variantes:
Michigan (Holland): cada una de las reglas clasificadoras es un cromosoma de la poblacin en el GA. Pittisburg (Smith): todo el conjunto de reglas clasificadoras es un cromosoma de la poblacin en el GA.
AGB
12
LCS
s Ejemplo: una rana-robot. Las reglas seran:
IF objeto pequeo volador a la izquierda THEN @ IF objeto pequeo volador a la derecha THEN % IF objeto pequeo volador al centro THEN $ IF objeto grande amenazador THEN ! IF no es un objeto grande amenazador THEN * IF * AND @ THEN moverse 15 grados a la izquierda IF * AND % THEN moverse 15 grados a la derecha IF * AND $ THEN moverse en esa direccin IF ! THEN moverse rpido en direccin contraria
AGB
13
LCS
s Y su codificacin binaria sera:
Tamao objeto: 0000=pequeo 1111=grande Aspecto objeto: 00=volador 01=amenazador Mi accin: 00=quieto 11=moverme Posicin objeto y mi direccin movimiento: 00=izquierda 01=derecha 10=hacia el objeto 11=en direccin contraria al objeto Smbolos internos: 0000=@ 0001=% 0010=$ 1111=! 1000=*
AGB
14
LCS
s Los clasificadores codificados seran:
Aspecto objeto Tamao objeto 0 0000 00 00 0000 0 0000 00 01 0001 Negacin 0 0000 00 10 0010 0 1111 01 ## 1111 1 1111 01 ## 1000 0 1000 0000 11 00 Smbolos internos 0 1000 0001 11 01 0 1000 0010 11 10 0 1111 #### 11 11 Smbolos internos
AGB
Posicin objeto
Smbolos internos
Mi direccin movimiento
Mi accin 15