Ag Expo
-
Upload
guest1994db54 -
Category
Technology
-
view
269 -
download
0
description
Transcript of Ag Expo
TIPOS DE REPRESENTACIÓN
Ramírez García Xochilt
Duran García Natanael
Instituto Tecnológico de Tijuana
Maestría en Ciencias de la Computación
ALGORITMOS GENÉTICOS
Dr. Leonardo Trujillo
Computación Evolutiva
2
La computación evolutiva es una
rama de la inteligencia artificial que
involucra problemas de optimización.
Se inspira en los mecanismos de la
evolución biológica.
Codificación de problemas
3
Individuo: Un individuo determina una potencial
solución del problema que se pretende resolver
mediante el algoritmo genético.
Los individuos pueden representarse como un conjunto
de parámetros(genes), los cuales agrupados forman
una ristra de valores (a menudo referida como
cromosoma). Si bien el alfabeto utilizado para
representar los individuos no debe necesariamente
estar constituido por el {0; 1}, buena parte de la teoría
en la que se fundamentan los Algoritmos Genéticos
utiliza dicho alfabeto.
Codificación de Problemas
4
Cualquier solución potencial a un problema puede ser
presentada dando valores a una serie de parámetros.
El conjunto de todos los parámetros (genes) se codifica
en una cadena de valores denominada cromosoma.
El conjunto de los parámetros representado por un
cromosoma particular recibe el nombre de genotipo.
El genotipo contiene la información necesaria para la
construcción del organismo, es decir, la solución real al
problema, denominada fenotipo.
Codificación de Problemas
5
Desde los primeros trabajos de John Holland la codificación suele hacerse mediante valores binarios. Se asigna un determinado número de bits a cada parámetro y se realiza una discretización de la variable representada por cada gen. El numero de bits asignados dependerá del grado de ajuste que se desee alcanzar.
Sin embargo, también pueden existir representaciones que codifiquen directamente cada parámetro con un valor entero, real o en punto flotante.
Individuo genético binario
Tipos de
representacion
6
Representación7
Durante los primeros años el tipo de representación
utilizado era siempre binario, debido a que se adapta
perfectamente al tipo de operaciones y el tipo de
operadores que se utilizan en un algoritmo genético. Sin
embargo, las representaciones binarias no son siempre
efectivas por lo que se empezaron a utilizar otro tipo de
representaciones[2].
Representación binaria: Cada gen es un valor 1 ó 0.
1 0 1 1 0 1
Representación entera: Cada gen es un valor entero.
1 0 3 -1 0 4
Representación real: Cada gen es un valor real.
1,78 2,6 7 0 -1,2 6,5
Ejemplo de Representación Binaria
Consideremos como se puede representar
una cadena de bits para describir una
restricción sobre un atributo.
Atributo (Cielo)
Valores (Soleado, nublado, lluvia)
8
Valores de los atributos
Colocar un 1 en alguna posición, indica que el
atributo puede tomar el valor correspondiente.
Por ejemplo, la cadena 010, representa la restricción
cielo = nublado.
De manera similar, la cadena 011 representa la restricción
mas general cielo = nublado ∨ cielo = lluvia.
El valor 111 representa la restricción mas general posible,
indicando que no importa que valor tome el atributo cielo.
9
Un segundo Atributo
Consideremos un segundo atributo denominado “viento”
Valores de Viento = Fuerte, Débil
cielo viento
011 10
10
Post-Condiciones
Las post-condiciones, como jugar-tenis? = si,
pueden representarse de la misma manera.
La regla completa puede describirse
concatenando también la cadena que
representa la post-condición.
Por ejemplo, la regla: Si viento = fuerte
Entonces jugar-tenis? = si, puede representarse
como:
cielo viento jugar-tenis?
111 10 10
11
Representación en TSP
“Problema del agente viajero (Travelling Salesman
Problem). Consiste en -dada una colección de
ciudades- determinar la gira de mínimo costo, visitando
cada ciudad exactamente una vez y volviendo al punto
de partida.
Representación de permutaciones
Representación basada en trayectoria
Representación matricial
Representación basada en una lista de adyacencia” [1].
12
Representación basada en permutación
13
El objetivo es encontrar el recorrido con n ciudades
dadas teniendo una longitud mínima. El espacio de
búsqueda para este problema es muy grande, hay (n-
1)! diferentes rutas posibles para n ciudades dadas.
Para n=30 hay aproximadamente 1032 diferentes rutas.
Se etiquetan las ciudades como n=1,2…n. Un viaje
completo es una permutacion de ciudades.
Representación basada en permutación
14
Asi, para n=4 las rutas (1234) y (3421) son validas. El
punto de inicio de las rutas puede ser
cualquiera, entonces (1234), (2341), (3412), (4321) y
(4123) es equivalente.
El valor del elemento de ith denota la posición en la
secuencia en la que el evento ocurre.
Así, para las cuatro ciudades [ABCD], si tenemos la
permutación [3124] la codificación se denota por
[CABD].[3]
Representación basada en la trayectoria
15
Es la representación donde una ruta se representa
como una lista de n ciudades. Si la ciudad i es el j-esimo
elemento de la lista, la ciudad i es la j-esima ciudad a
visitar.
Así por ejemplo, la gira
3–2–4–1–7–5–8–6
se representara como:
(3 2 4 1 7 5 8 6).
Representación matricial
16
Fox y McMahon (1987) representan una ruta como una
matriz en la cual el elemento (i; j) de la misma vale 1, si
y solo si, en la ruta la ciudad i se visita con anterioridad
a la j. En caso contrario dicho elemento valdrá 0.
Una manera de definir el cruce es por medio de un
operador que construye un descendiente O, a partir de
dos padres, P1 y P2, de la manera siguiente:
Representación matricial
17
A continuación, algunos 1-s que tan solo aparecen en
uno de los padres se añaden al descendiente, para
finalmente completarse la matriz de manera que el
resultado sea una ruta legal.
Por ejemplo, las rutas padres 2-3-1-4 y 2-4-1-3 que se
representan por medio de las matrices:
Representación matricial
18
después de la primera fase da como resultado:
Esta matriz puede completarse de 6 maneras
diferentes, ya que la única restricción en la ruta
descendiente es que comienza en la ciudad 2. Una
posible gira descendiente es: 2-1-4-3, la cual se
representa por medio de:
Representación matricial
19
Seniw (1991) define otra representación en la cual el
elemento (i; j) de la matriz vale 1, si y solo si, en la gira
la ciudad j se visita inmediatamente después de la
ciudad i.
La primera de ellas representa la gira 2-3-1-4, mientras
que la segunda esta representando el conjunto de
subgiras {1-2}, {3-4} .
Representación matricial
20
Representación basada en una lista de
adyacencia21
En esta representación una ruta se representa como
una lista de n ciudades. La ciudad j esta en la posición i-
esima, si y solo si, la ruta va de la ciudad i a la j. Así por
ejemplo, la lista de adyacencia (3 5 7 6 4 8 2 1)
representa la ruta 1-3-7-2-5-4-6-8.
Toda ruta tiene una única representación por medio de
una lista de adyacencia. Sin embargo, una lista de
adyacencia puede no representar una ruta.
Así por ejemplo, (3 5 7 6 2 4 1 8) representa el siguiente
conjunto de sub rutas: 1-3-7; 2-5; 4-6 y 8.
22
Referencias23
[1]http://www.sc.ehu.es/ccwbayes/docencia/mmcc/docs/
temageneticos.pdf
[2] Algoritmos genéticos para la resolución de
problemas de Programación por Metas Entera.
Aplicación a la Economía de la Educación.
[3] Introduction to Evolutionary Computing, A. E. Eiben,
J. E. Smith.