Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

40
Sistemas Difusos Tema 7 – 1 – Tema 7.- Diseño con Algoritmos Genéticos. 1. - Conceptos Básicos sobre Algoritmos Genéticos. 1.1.- Introducción. 1.2. - ¿Cómo se construye? 1.3. - Sobre su utilización. 1.4. - Diversidad, exploración, explotación. 2. - Diseño de Controladores Difusos con Algoritmos Genéticos. 2.1.- Diseño de la base de reglas. 2.2. - Diseño de la base de datos. 2.3.- Diseño combinado.

description

1. - Conceptos Básicos sobre Algoritmos Genéticos. 1.1.- Introducción. 1.2. - ¿Cómo se construye? 1.3. - Sobre su utilización. 1.4. - Diversidad, exploración, explotación. 2. - Diseño de Controladores Difusos con Algoritmos Genéticos. 2.1.- Diseño de la base de reglas. 2.2. - Diseño de la base de datos. 2.3.- Diseño combinado.

Transcript of Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Page 1: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 1 –

Tema 7.- Diseño con Algoritmos

Genéticos.

1. - Conceptos Básicos sobre Algoritmos

Genéticos.

1.1.- Introducción.

1.2. - ¿Cómo se construye? 1.3. - Sobre su utilización.

1.4. - Diversidad, exploración, explotación.

2. - Diseño de Controladores Difusos con Algoritmos Genéticos.

2.1.- Diseño de la base de reglas. 2.2. - Diseño de la base de datos.

2.3.- Diseño combinado.

Page 2: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 2 –

1.- Conceptos Básicos sobre Algoritmos Genéticos.

1.1.- Evolución Natural. Evolución Artificial.

Evolución Natural.

En la naturaleza, los procesos evolutivos ocurren cuando se

satisfacen las siguientes condiciones:

• Una entidad o individuo tiene la habilidad de reproducirse.

• Hay una población de tales individuos que son capaces de

reproducirse.

• Existe alguna variedad, diferencia, entre los individuos que

se reproducen.

• Algunas diferencias en la habilidad para sobrevivir en el

entorno están asociadas con esa variedad.

Los mecanismos que conducen esta evolución no son totalmente

conocidos, pero sí algunas de sus características, que son

ampliamente aceptadas (Darwin, C., 1859):

• La evolución es un proceso que opera sobre los

cromosomas más que sobre las estructuras de la vida que

están codificadas en ellos.

• La selección natural es el enlace entre los cromosomas y la

actuación de sus estructuras decodificadas.

• El proceso de reproducción es el punto en el cual la

evolución toma parte, actúa.

• La evolución biológica no tiene memoria.

Page 3: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 3 –

1.1.- Evolución Natural. Evolución Artificial.

Evolución Artificial.

Computación Evolutiva.

• Está compuesta por modelos de evolución basados

en poblaciones cuyos elementos representan

soluciones a problemas.

• La simulación de este proceso en un ordenador

resulta ser una técnica de optimización

probabilística, que con frecuencia mejora a otros

métodos clásicos en problemas difíciles.

• Existen cuatro paradigmas básicos:

o Algoritmos Genéticos que utilizan operadores

genéticos sobre cromosomas.

o Estrategias de Evolución que enfatizan los

cambios de comportamiento al nivel de los

individuos.

o Programación Evolutiva que enfatiza los

cambios de comportamiento al nivel de las

especies.

o Programación Genética que evoluciona

expresiones representadas como árboles.

• Existen otros modelos de evolución de poblaciones.

Page 4: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 4 –

1.1.- Introducción.

¿Qué es un Algoritmo Genético?

Los Algoritmos Genéticos son algoritmos de

• optimización,

• búsqueda y

• aprendizaje

inspirados en los procesos de

• Evolución Natural y

• Evolución Genética

Los Ingredientes

Cruce (o recombinación)

t t + 1

mutación

reproducción

selección

Page 5: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 5 –

1.1.- Introducción.

El Ciclo de la Evolución.

Estructura de un Algoritmo Genético

Algoritmo Genético Básico Inicio (1) t = 0 inicializar P(t) evaluar P(t) Mientras (no se cumpla la condición de parada) hacer Inicio(2) t = t + 1 seleccionar P’(t) desde P(t-1) P’’(t) ← cruce P’(t) P(t) ← mutación P’(t) evaluar P(t) Final(2) Final(1)

Cruce

Mutación

Selección

Reemplazamiento

PADRES

POBLACIÓN

DESCENDIENTES

Page 6: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 6 –

1.1.- Introducción.

Dominios de aplicación

Otros campos:

• Optimización combinatoria y en dominios reales.

• Modelado e identificación de sistemas.

• Planificación y control.

• Ingeniería.

• Vida artificial.

• Aprendizaje y minería de datos.

• Internet y Sistemas de Recuperación de Información.

• ...

Generación de trayectorias

Planificación de sistemas de Producción

Optimización estructural

1 2 m 1 n Diseño de circuitos VLSI

Aprendizaje Clasificación

Control de procesos químicos

Page 7: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 7 –

1.2.- ¿Cómo se Construye?

Los pasos para construir un Algoritmo Genético.

1. Diseñar una representación.

2. Decidir cómo inicializar la población.

3. Diseñar una correspondencia entre genotipo y

fenotipo.

4. Diseñar una forma de evaluar un individuo.

5. Diseñar un operador de mutación adecuado.

6. Diseñar un operador de cruce adecuado.

7. Decidir cómo seleccionar los individuos para ser

padres.

8. Decidir cómo reemplazar a los individuos.

9. Decidir la condición de parada.

1.2.1. Representación.

• Debemos disponer de un mecanismo para codificar

un individuo como un genotipo.

• Existen muchas maneras de hacer esto y se escoge

la más relevante para el problema en cuestión.

• Una vez elegida una representación, tenemos que

tener en cuenta cómo serán evaluados los genotipos

y qué operadores genéticos hay que utilizar.

Page 8: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 8 –

1.2.- ¿Cómo se construye un alg. genético?

1.2.1. Representación.

Definiciones

• Cromosoma: vector completo que codifica la

solución.

• Gen: elemento mínimo del cromosoma.

• Alelos: valores que puede tomar cada gen.

1.2.1.1.- Representación Binaria.

• La representación de un individuo se puede hacer

mediante una codificación discreta, y en particular

binaria.

CCRROOMMOOSSOOMMAA

GGEENN AALLEELLOOSS=={{00,,11}}

Page 9: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 9 –

1.2.- ¿Cómo se construye un alg. genético?

1.2.1.1.- Representación Binaria.

• El fenotipo puede ser un número entero,

• El fenotipo puede ser un número real,

o Ejemplo: un número real entre 2.5 y 20.5 utilizando 8

dígitos binarios.

Genotipo

8 bits

Fenotipo

• Entero

• Número real

• Secuencia

• ...

• Cualquier otra?

Genotipo:

11**2277 ++ 00**2266 ++ 11**2255 ++ 00**2244 ++ 00**2233 ++ 00**2222 ++ 11**2211 ++ 11**2200 == 112288 ++ 3322 ++ 22 ++ 11 == 116633

= 163 Fenotipo:

( )1632.5 20.5 2.5 13.9609256

x = + − =

= 13.9609 Genotipo: Fenotipo:

Page 10: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 10 –

1.2.- ¿Cómo se construye un alg. genético?

1.2.1.2.- Representación Real.

• Una forma natural de codificar una solución es

utilizando valores reales como genes.

• Muchas aplicaciones tienen esta forma natural de

codificación.

• Los individuos se representan como vectores de

valores reales:

1

2 , i

n

xx

X x R

x

= ∈

• La función de evaluación asocia a un vector un valor

real de evaluación:

: nf R R→

1.2.1.3.- Representación de Orden.

• Los individuos se representan como permutaciones.

• Se utilizan para problemas de secuenciación.

• Ejemplo famoso: Viajante de Comercio, donde cada

ciudad tiene asignado un único número entre 1 y n.

• Necesita operadores especiales para garantizar que

el resultado de aplicar un operador sigue siendo una

permutación.

Page 11: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 11 –

1.2.- ¿Cómo se construye un alg. genético?

1.2.2.- Inicialización.

• Uniforme sobre el espacio de búsqueda… (si es

posible).

o Cadena binaria: 0 ó 1 con probabilidad 0.5.

o Representación real: uniforme sobre un

intervalo dado (para valores acotados).

• Elegir la población a partir de los resultados de una

heurística previa.

1.2.3.- Correspondencia entre Genotipo y Fenotipo.

• Algunas veces la

obtención del fenotipo a

partir del genotipo es un

proceso obvio.

• En otras ocasiones el

genotipo puede ser un

conjunto de parámetros

para algún algoritmo, el

cual trabaja sobre los

datos de un problema para

obtener un fenotipo.

Datos de un Problema

Fenotipo

Algoritmo de obtención

Genotipo

(Codificación)

Page 12: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 12 –

1.2.- ¿Cómo se construye un alg. genético?

1.2.4.- Evaluación de un individuo.

• Es el paso más costoso para una aplicación real.

• Puede ser una subrutina, un simulador, o cualquier

proceso externo (ej. Experimentos en un robot, ...).

• Se pueden utilizar funciones aproximadas para

reducir el costo de evaluación.

• Cuando hay restricciones, éstas se pueden introducir

en el costo como penalización.

• Con múltiples objetivos se busca una solución de

compromiso.

1.2.5.- Operador de mutación.

• Podemos tener uno o más operadores de mutación

para nuestra representación.

• Algunos aspectos importantes a tener en cuenta son:

o Debe permitir alcanzar cualquier parte del

espacio de búsqueda.

o El tamaño de la mutación debe ser controlado.

o Debe producir cromosomas válidos.

Page 13: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 13 –

Ejemplo: Mutación para representación binaria.

La mutación ocurre con una probabilidad pm para cada

gen, o para cada cromosoma.

Ejemplo: Mutación para representación real

• Perturbación de los valores mediante un valor

aleatorio.

• Generalmente, mediante una distribución normal

N(0,σ), donde

o 0 es la media.

o σ es la desviación típica.

x’i = xi + N(0,σi)

para cada parámetro.

Ejemplo: Mutación para representación de orden.

Intercambio de dos genes seleccionados

aleatoriamente.

1 1 1 1 1 1 1 antes

1 1 1 0 1 1 1 después

gen mutado

7 8 3 4 1 2 6 5

7 8 3 4 6 2 1 5

Page 14: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 14 –

1.2.- ¿Cómo se construye un alg. genético?

1.2.6. Operador de Cruce.

• Podríamos tener uno o más operadores de cruce

para nuestra representación.

• Algunos aspectos importantes a tener en cuenta son:

o Los hijos deberían heredar algunas características de

cada padre. Si éste no es el caso, entonces estamos

ante un operador de mutación.

o Se debe diseñar de acuerdo a la representación.

o La recombinación debe producir cromosomas válidos.

Ejemplo: Cruce para representación binaria.

• Cada cromosoma se corta en n partes que son

recombinadas (Ejemplo para n = 1).

Población: . . .

1 1 1 1 1 1 1 0 0 0 0 0 0 0 padres

corte corte

1 1 1 0 0 0 0 0 0 0 1 1 1 1 descendientes

Page 15: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 15 –

Ejemplo: Cruce para representación real.

• Cruce uniforme (recombinación discreta):

• Cruce aritmético (recombinación aritmética):

Ejemplo: Cruce para representación de orden.

a d b f c e g h

F D G E H C B A a b C E d H g f

a d b f c e

F D E C B A

(a+A)/2 (b+B)/2 (c+C)/ (e+E)/2 (d+D)/2 (f+F)/2

7 8 3 4 1 2 6 5 7 8 1 6 5 2 3 4

8 1 2

7, 3, 4, 6, 5

4, 3, 6, 7, 5

ordenar

7 8 5 4 1 2 3 6

Padre Padre

Hijo 1

Page 16: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 16 –

1.2.- ¿Cómo se construye un alg. genético?

1.2.7. Estrategia de Selección.

• Debemos garantizar que los mejores individuos

tengan una mayor posibilidad de ser padres

(reproducirse) frente a los individuos menos buenos.

• Esta idea nos define la presión selectiva que

conducirá la reproducción.

• No obstante, debemos ser cuidadosos para dar una

posibilidad de reproducirse a los individuos menos

buenos. Éstos pueden incluir material genético útil en

el proceso de reproducción.

Ejemplo: Selección proporcional.

• El número de veces que un individuo debe

reproducirse es

ii

jj

fpsf

=∑

• Los mejores individuos tienen:

o Más espacio en la ruleta.

o Más probabilidad de ser

seleccionados.

Mejor

Peor

Page 17: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 17 –

1.2.- ¿Cómo se construye un alg. genético?

1.2.8. Estrategia de Reemplazamiento.

• La presión selectiva se ve también afectada por la

forma en que los cromosomas de la población son

reemplazados por los nuevos descendientes.

• Podemos utilizar métodos de reemplazamiento

aleatorios, o determinísticos.

• Podemos decidir no reemplazar al mejor cromosoma de la población: Elitismo.

1.2.9. Criterio de parada.

• Cuando se alcanza el óptimo.

• Recursos limitados de CPU: fijar el máximo número

de evaluaciones.

• Límite sobre la paciencia del usuario: Después de

algunas iteraciones sin mejora.

Page 18: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 18 –

1.3.- Utilización.

• Nunca sacar conclusiones de una única ejecución:

o utilizar medidas estadísticas (medias,

medianas, ...).

o con un número suficiente de ejecuciones

independientes.

• “Se puede obtener lo que se desea en una

experimentación de acuerdo a la dificultad de los

casos utilizados” – No se debe ajustar/chequear la

actuación de un algoritmo sobre ejemplos simples si

se desea trabajar con casos reales.

• Desde el punto de vista de las aplicaciones: doble

enfoque y diferente diseño:

o Encontrar una solución muy buena al menos

una vez.

o Encontrar al menos una solución muy buena en

cada ejecución.

Page 19: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 19 –

1.4.- Diversidad, exploración, explotación.

Diversidad genética.

• Asociada a las diferencias entre los cromosomas en la

población.

• Falta de diversidad genética = todos los individuos en la

población son parecidos.

• Falta de diversidad ⇒ convergencia al vecino más cercano.

• En la práctica es irreversible. Solución:

o Inclusión de mecanismos de diversidad.

o Reinicialización.

Exploración vs Explotación.

• Exploración = muestrear regiones desconocidas.

Excesiva exploración = búsqueda aleatoria, no converge

• Explotación = trata de mejorar el mejor individuo.

Excesiva explotación = sólo búsqueda local, convergencia a un

óptimo local

Resumen de los Algoritmos Genéticos.

• Basados en una metáfora biológica: evolución.

• Gran potencialidad de aplicación.

• Muy populares en muchos campos.

• Muy potentes en diversas aplicaciones.

• Altas prestaciones a bajo costo.

Page 20: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 20 –

2.- Diseño Evolutivo de Sistemas Difusos

Objetivo del proceso de aprendizaje de un SBRD.

• Encontrar una Base de Conocimiento tal que el

SBRD que la incluya resuelva un problema dado.

¿Qué partes del SBRD se van a optimizar?

• Procesos de aprendizaje: Diseño de algunos

componentes de la Base de Conocimiento o de la

Base de Conocimiento al completo.

• Procesos de ajuste: Optimización de un SBRD

existente.

Algoritmos Evolutivos

Funciones de escalado

Reglas Difusas

Funciones de pertenencia

Base de Conocimiento

Entrada escalada Fuzificación Motor de

inferencia Defuzificación Salida escalada

Procesamiento Difuso

Diseño Evolutivo

Page 21: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 21 –

2.- Diseño Evolutivo de Sistemas Difusos.

R1: Si X1 es Alto y X2 es Bajo -> Y es Medio R2: Si X1 es Bajo y X2 es Medio -> Y es Alto ...

Interfaz de Fuzificación

Interfaz de Defuzificación

Base de Reglas

Base de Datos

Base de Conocimiento

Mecanismo de Inferencia

Bajo Medio

XBajo Medio Alto

XBajo Medio Alto

Y

Alto

Pre

defin

ida

Factores de escala

Predefinidos

Page 22: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 22 –

2.- Diseño Evolutivo de Sistemas Difusos.

Predefinida R1: Si X1 es Alto y X2 es Bajo -> Y es Medio R2: Si X1 es Bajo y X2 es Medio -> Y es Alto ...

Interfaz de Fuzificación

Interfaz de Defuzificación

Base de Reglas

Base de Datos

Base de Conocimiento

Mecanismo de Inferencia

Bajo Medio

X1 Bajo Medio Alto

X2 Bajo Medio Alto

Y

Factores de escala

Alto

Pre

defi

nid

a

Page 23: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 23 –

2.- Diseño Evolutivo de Sistemas Difusos.

Predefinida R1: Si X1 es Alto y X2 es Bajo -> Y es Medio R2: Si X1 es Bajo y X2 es Medio -> Y es Alto ...

Interfaz de Fuzificación

Interfaz de Defuzificación

Base de Reglas

Base de Datos

Base de Conocimiento

Mecanismo de Inferencia

Bajo Medio

XBajo Medio Alto

XBajo Medio Alto

Y

Factores de escala

Alto

Predefinidos

Page 24: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 24 –

2.- Diseño Evolutivo de Sistemas Difusos.

R1: Si X1 es Alto y X2 es Bajo -> Y es Medio R2: Si X1 es Bajo y X2 es Medio -> Y es Alto ...

Interfaz de Fuzificación

Interfaz de Defuzificación

Base de Reglas

Base de Datos

Base de Conocimiento

Mecanismo de Inferencia

Bajo Medio

XBajo Medio Alto

XBajo Medio Alto

Y

Alto

Factores de escala

Page 25: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 25 –

2.- Diseño Evolutivo de Sistemas Difusos.

Según las componentes que se optimicen:

• Espacio de búsqueda más pequeño:

o Proceso de aprendizaje más sencillo y rápido.

o Las soluciones pueden ser subóptimas.

• Espacio de búsqueda más completo:

o Proceso de aprendizaje más complejo e

ineficiente.

o Mayor granularidad en el aprendizaje, mejor

consideración de la interdependencia, mayor

probabilidad de encontrar soluciones óptimas.

Interesa encontrar un equilibrio entre completitud y

granularidad.

Tipos de SBRDs Genéticos:

• Sistemas con ajuste genético de la Base de Datos.

• Sistemas con aprendizaje genético de la Base de

Reglas.

• Sistemas con aprendizaje genético de la Base de

Conocimiento.

• Sistemas con aprendizaje genético del Mecanismo

de Inferencia (poco usuales).

Page 26: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 26 –

2.1.- SBRDs con aprendizaje genético de la Base de Reglas.

Aprendizaje genético de la Base de Reglas.

El aprendizaje genético de la Base de Reglas asume la

existencia de un conjunto predefinido de funciones de

pertenencia.

• Objetivo de la búsqueda: Un conjunto adecuado de reglas

difusas.

• Esquema de representación: Alternativas:

o Un cromosoma representa una base de reglas al

completo.

(Enfoque Pittsburgh) ⇒ Apto para diseño off-line.

o Un cromosoma representa una regla y la población al

completo, la base de reglas

(Enfoque Michigan) ⇒ Apto para diseño on-line.

• Operadores: Adaptados al esquema de representación.

PROCESO DEAPRENDIZAJE

Módulo deevaluación (BR)

Base de Reglas (BR)

Base de Datospredefinida

Page 27: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 27 –

2.1.- SBRDs con aprendizaje genético de la Base de Reglas.

Ejemplo: Problema de control con dos variables de

entrada y una de salida. Existe una base de datos definida

a través de conocimiento experto, que determina las

funciones de pertenencia para las siguientes etiquetas:

1 2 3 4 5 6 7 8 9

Error {N, C, P} ∇ Error {N, C, P} Potencia {B, M, A}

• Si en el antecedente de las reglas es necesario que

aparezcan todas las variables de entrada

(variable, etiqueta) (variable, etiqueta) ...

• Si en un cromosoma representamos toda una Base

de Reglas, generalmente se utilizará un esquema de

codificación de longitud variable.

2 6 9

2 6 9 1 6 8 1 ...

(2) (6)

(9)

R1: Si el Error es Cero y la Variación_Error es Positiva entonces la Potencia es Alta

R2 R1

1 2 3 9 Si Error es Cero entonces Potencia es Alta

Page 28: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 28 –

2.2.- SBRDs con ajuste genético de la Base de Datos.

Ajuste de la Base de Datos.

1. Ajuste de las funciones de escala.

2. Ajuste de las funciones de pertenencia.

PROCESO DEAPRENDIZAJE

Módulo deevaluación (BD)

Base de Datos (BD)

Base de Reglaspredefinida

Page 29: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 29 –

2.2.1.- Ajuste de las funciones de escala.

• Trasladan el universo de discurso en los que se definen las

variables de entrada y salida al dominio en el que se definen

los conjuntos difusos.

• Se adaptan para que el universo de discurso escalado se

corresponda mejor con el rango de la variable.

• Parámetros:

o Factor de escala.

o Cota superior e inferior (función de escala lineal).

o Parámetros de contracción/expansión (función de

escala no lineal).

• Forma de codificación: esquema real de longitud fija.

2.2.2.- Ajuste de las funciones de pertenencia.

• Componente a optimizar: Funciones de pertenencia de los

términos lingüísticos utilizados en las reglas difusas.

Cada individuo = Base de Datos al completo

• Forma de codificación. Depende de

o Tipo de función de pertenencia utilizada.

o Tipo de SBRD:

descriptivo, todas las funciones se adaptan de

forma global a la Base de Reglas, ó

aproximativo, cada variable se asocia a un

conjunto difuso distinto en cada regla.

Page 30: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 30 –

2.2.- SBRDs con ajuste genético de la Base de Datos.

Ejemplo: Ajuste de las funciones de pertenencia de un

SBRD descriptivo con una variable de entrada y una de

salida, con tres términos lingüísticos para cada variable y

funciones de pertenencia triangulares:

• 1 cromosoma representará:

o 2 (variables) · 3 (etiquetas) = 6 funciones de

pertenencia.

o Cada función de pertenencia triangular son 3 valores

reales.

o Por tanto, hay que optimizar 6 · 3 = 18 valores reales.

• Codificación: binaria o real (recomendable).

• Función de adaptación: Error cuadrático medio

(ECM).

• Operadores de Cruce y Mutación: Adecuados para la codificación (binaria o real) y las restricciones del

problema (forma correcta de las funciones de

pertenencia, grado mínimo de emparejamiento, etc.).

Page 31: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 31 –

2.2.- SBRDs con ajuste genético de la Base de Datos. Ejemplo.

- 0.5 0.5 0.5 0 0 1 1 1.5 -0.5 0.5 0.5 0.5 0 0 1 1 1.5

- 0.5 0.5 0.5 0 0.2 0.7 1 1.5 -0.35 0.3 0.5 0.5 0 0.3 0.7 1 1.5

Bajo

Bajo Bajo

Bajo

Medio

Medio

Medio

Medio

Alto

Alto

Alto

Alto

X

X Y

Y

R1: Si X1 es Bajo entonces Y es Alto R2: Si X1 es Medio entonces Y es Medio . . .

La Base de Reglas Difusas permanece intacta!!

Page 32: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 32 –

2.2.- SBRDs con ajuste genético de la Base de Datos. Ejemplo.

Operador de cruce

¿Válido para la representación utilizada?

1 0 1 1 1 0 0 1 1 0

0 0 0 0 1 1 1 1 0 0

1 0 1 0 1 1 1 1 0 0

0 0 0 1 1 0 0 1 1 0

0 0.35 0.4 0.6 ...

-0.3 –0.1 0 0.2 ...

0 0.35 0 0.2 ...

-0.3 –0.1 0.4 0.6 ...

¡Error!

Page 33: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 33 –

2.2.- SBRDs con ajuste genético de la Base de Datos. Ejemplo.

Operador de cruce.

Alternativas:

• Algoritmo de reparación a posteriori.

• Obligar a que el punto de cruce se determine

aleatoriamente.

o entre puntos extremos de las funciones de

pertenencia (intercambio de una etiqueta),

ó

o entre los extremos de la información

relativa a una variable (intercambio de la

partición de una variable).

• Usar otro cruce que respete las restricciones.

Page 34: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 34 –

2.2.- SBRDs con ajuste genético de la Base de Datos. Ejemplo.

Operador de Mutación

¿Válido para la representación utilizada?

0.2 0.35 0.4 ...

0.2 0 0.4 ...

¡Error!

1 0 1 1 1 0 0 1 1 0

1 0 1 1 1 1 0 1 1 0

Page 35: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 35 –

2.2.- SBRDs con ajuste genético de la Base de Datos. Ejemplo.

Operador de Mutación.

Alternativas:

• Mutación aleatoria dentro del rango de

variación:

siendo X un número aleatorio perteneciente a

(0.2, 0.4).

• Construir de nuevo el conjunto difuso completo

(los tres parámetros).

0.2 0.35 0.4 ... 0.2 X 0.4 ...

Page 36: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 36 –

2.3.- SBRDs con aprendizaje genético de la Base de Conocimiento = BD + BR.

• El proceso de aprendizaje de la Base de

Conocimiento debe determinar:

o Funciones de pertenencia.

o Reglas difusas.

y, algunas veces también

o Factores (o funciones) de escala.

o Términos lingüísticos.

• Espacio de búsqueda grande y complejo.

o Cromosomas con longitud variable.

o Una regla por cromosoma.

• Algunos enfoques intentan mejorar la definición

de la Base de Datos, una vez aprendida la

Base de Reglas.

Etapas:

1. Aprendizaje inicial de la Base de Reglas (Base

de Datos predefinida).

2. Aprendizaje de la Base de Datos (Base de

Reglas aprendida en el paso anterior).

Page 37: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 37 –

2.3.- SBRDs con aprendizaje genético de la Base de Conocimiento = BD + BR.

Aprendizaje inicial de la Base de Reglas y aprendizaje posterior de la Base de Datos

PROCESO DEAPRENDIZAJE 1

Base de Reglas (BR)

Módulo deevaluación (BR)

Base deDatospredefinida

PROCESO DEAPRENDIZAJE 2

Base deReglasdefinitiva

Base deDatos

Módulo deevaluación (BR)

Page 38: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 38 –

2.3.- SBRDs con aprendizaje genético de la Base de Conocimiento = BD + BR.

Aprendizaje de la Base de Conocimiento

• Elementos a codificar en un cromosoma:

o Factores de escala

o Funciones de pertenencia

o Reglas difusas

• Cada tipo de elemento será una parte independiente

del cromosoma.

• Formas de combinar estas partes con los operadores

genéticos:

o Mezclando subestructuras.

o Como dos estructuras no relacionadas.

o Aplicando un proceso secuencial cuando el resultado

de cruzar una subestructura afecte al cruce de la

segunda subestructura.

PROCESO DEAPRENDIZAJE

Módulo deevaluación (BC)

Base deDatos

Base deReglas

Base de Conocimiento

Codificación con longitud fija o variable

Page 39: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 39 –

2.3.- SBRDs con aprendizaje genético de la Base de Conocimiento = BD + BR.

• Ejemplo: Problema con dos variables y tres etiquetas por variable

Error: {N, C, P} Potencia: {B, M, A}

R1: Si el Error es Negativo entonces Potencia es Alta

R2: ...

0 0 0.5 0.3 0.5 0.8

Error Potencia

Reglas

0.8 1 1.3 0 0 0.3 0.2 0.5 0.8 0.7 1 1 1 5 9 ...

Page 40: Tema 7 Aprendizaje De Sistemas Difusos Con Algoritmos GenéTicos

Sistemas Difusos Tema 7

– 40 –

2.3.- SBRDs con aprendizaje genético de la Base de Conocimiento = BD + BR.

• Descomposición del proceso de aprendizaje en

dos etapas dependientes:

1. Aprendizaje de la Base de Datos.

2. Generación de la Base de Reglas.

• Ventajas:

Reducción del espacio de búsqueda.

Incremento de la posibilidad de encontrar

soluciones óptimas.

Aprendizaje de la Base de Conocimiento mediante

la derivación genética de la Base de Datos

PROCESO DEAPRENDIZAJE 1

Base deDatos

Base deReglas

Módulo de evaluación(Base de Datos yBase de Reglas)

PROCESO DEAPRENDIZAJE 2