Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Indice
6.1 6.2 6.3
6.4
2
Aplicaciones
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
1.
Introduccin
Un algoritmo heurstico es un procedimiento de bsqueda de soluciones casi optimales a un coste computacional razonable, sin ser capaz de garantizar la optimalidad o factibilidad de las soluciones empleadas ni determinar a que distancia de la solucin ptima nos encontramos (Reeves, 1995)
4
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Mltiples ptimos
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Problemas NP
Problema del TSP: un viajante de comercio quiere visitar n ciudades, cuyas distancias entre s son conocidas, pasando una sola vez por cada una de ellas y de manera que minimice el recorrido total
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Matemticamente:
x
jN
ij
=1 =1
ij
i N j N S N
x
iN
ij
x
iS jS
S 1
xij {0 ,1}
8
i , j N
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Es un problema NP-completo, para N ciudades hay ((N-1)/2)! soluciones posibles. Supongamos que empleamos un algoritmo de enumeracin simple y que tardamos 1 hora en resolver un problema para 20 ciudades
Para 21 ciudades tardaramos 20 horas Para 22 ciudades tardaramos 17.5 das Para 25 ciudades tardaramos 600 aos
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Algoritmos heursticos
1. Recocido simulado 2. Bsqueda Tab 3. Algoritmos evolutivos:
3.1 3.2 3.3 3.4 Algoritmos Genticos Programacin evolutiva Estrategias evolutivas Programacin gentica
2.
Recocido simulado
11
Esquema
2.1 2.2 2.3 2.4 Introduccin Convergencia del algoritmo Ejemplos de optimizacin de funciones Ejemplos de aplicaciones econmicas
12
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
2.1 Introduccin
13
En fsica de la materia condensada, el recocido es el proceso fsico consistente en calentar un slido hasta que se funde, seguido de un enfriamiento lento hasta que el slido cristaliza en un estado con una estructura molecular perfecta. Durante este proceso, se minimiza la energa libre del sistema.
14
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
El recocido simulado es un procedimiento heurstico que toma estas ideas y las aplica en la solucin de problemas de optimizacin. La idea bsica consiste en establecer un paralelismo entre la funcin objetivo a minimizar y la energa libre de un sistema, as como entre soluciones del problema y los estados de dicho sistema.
15
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Los algoritmos de recocido simulado emplean la formalizacin propuesta por Metropolis et al. (1953) para describir la evolucin de un slido sometido a un bao de calor hasta alcanzar el equilibrio termal.
16
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
El criterio de Metropolis determina la probabilidad de que un slido sometido a un proceso de recocido que se encuentre en un determinado estado pase a un nuevo estado con distinta energa. Supongamos que un sistema se encuentra en un estado i, con una energa libre Ei, y supongamos que generamos un nuevo estado j con energa Ej.
17
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Si la diferencia de energa Ej- Ei es menor o igual que cero, el estado j se acepta como nuevo estado con probabilidad uno. Si la diferencia de energa es mayor que cero, dicho estado se acepta probabilidad:
Ei E j exp k T B
donde T representa la temperatura del bao de calor y kB es una constante fsica (la constante de Boltzmann).
18
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
El algoritmo de recocido simulado no es ms que un procedimiento de generacin de soluciones seguido de la aplicacin del criterio de Metropolis de manera repetitiva:
paso 1: t=0; generar un estado aleatorio i paso 2: t=t+1; generar un estado j en una vecindad de i paso 3:
19
Interpretacin intuitiva
E
exp(-(Ej-Ei)/c(t))
Ej
Ei
f ( x ) = 0
20
ji
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
21
Bajo ciertas condiciones y despus de un nmero elevado de iteraciones el algoritmo encontrar el ptimo, dicho de otra manera, el algoritmo converge asintticamente al conjunto de soluciones ptimas.
22
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Definicin: Sea (S,f) una instancia de un problema de optimizacin combinatoria y sean ck + y Si una vecindad de i. Llamamos probabilidad de generar j desde i a:
1 Gij ( ck ) = Si ( j ) Si i , j S
23
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Definicin: Sea (S,f) una instancia de un problema de optimizacin combinatoria y sea ck +. Llamamos probabilidad de aceptar j desde i a:
24
1 Aij ( ck ) = f ( i ) f ( j ) exp ck i , j S
si si
f ( j ) f (i ) f ( j ) > f (i )
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Definicin: Sea (S,f) una instancia de un problema de optimizacin combinatoria y sean ck +. Llamamos probabilidad de transicin desde i hasta j a:
si si
i j i= j
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Definicin: Una cadena de Markov es una sucesin de experimentos donde la probabilidad de un resultado depende slo del resultado en el experimento anterior. Si X(k) es una v.a. que denota el resultado en el k-simo experimento, entonces se define la matriz de transicin aquella que tiene por componentes:
26
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Obviamente, las probabilidades de transicin del algoritmo de recocido simulado conforman una matriz de transicin de una cadena de Markov, por lo que es aplicable toda la teora desarrollada en este contexto para analizar el algoritmo. En concreto, estaremos interesados en ver bajo que condiciones el algoritmo converge al conjunto de soluciones ptimas.
27
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Teorema: Sea (S,f) una instancia de un problema de optimizacin combinatoria y sea P la matriz de transicin de un algoritmo de recocido simulado, entonces, si se verifica: i , j S ,l0 ,l1 ,...,l p S l0 = i ,l p = j
y entonces:
c k 0 k
28 (Aarts y Van Larhoven, 1987)
29
sunevmin.m
30
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
f ( x1 , x2 ) = 100 x2 x1
2 2
) +(1 x )
1
srosen.m
31
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
3.
Algoritmos Genticos
32
Esquema
3.1 3.2 3.3 3.4 Introduccin Descripcin de un Algoritmo Gentico Ejemplos de optimizacin de funciones Ejemplos de aplicaciones econmicas
33
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
3.1 Introduccin
34
Los Algoritmos Genticos (AG) son procedimientos de bsqueda de soluciones basados en el principio de evolucin natural (Darwin y Wallace) Principio de evolucin natural: los individuos mejor adaptados al medio tienen mayores probabilidades de sobrevivir y reproducirse, transmitiendo su informacin gentica a sus sucesores
35
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Al cabo de muchas generaciones, la poblacin estar integrada por individuos bien adaptados al medio y con caractersticas genticas similares. Tres observaciones:
La evolucin se manifiesta sobre una poblacin, no sobre un individuo La seleccin acta sobre cada uno de los individuos La informacin se transmite genticamente. codificada
36
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
La idea de los AG consiste en aplicar estas ideas sobre conjuntos de soluciones de un problema matemtico, logrando nuevas y mejores soluciones. Dado el problema combinatorio:
max s.a.
Poblacin Adaptacin
f ( x) xS Z
n
37
Obsrvese que, a diferencia de los mtodos de descenso por gradiente, bsqueda aleatoria y recocido simulado, los AG actan sobre conjuntos de soluciones que van mejorando iteracin a iteracin y no sobre una sola solucin.
38
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
En lo que sigue, sin prdida de generalidad, supondremos que queremos resolver el problema de una sola variable:
max s.a.
f ( x) xS Z
39
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
3.2 Descripcin de un AG
40
a)
Codificacin binaria
42
En Optimizacin Combinatoria se trabaja habitualmente con soluciones expresadas en un alfabeto de once smbolos: los nmeros del uno al diez y el signo negativo. Sin embargo, se puede expresar cualquier nmero entero como una cadena de ceros y unos, es decir, se puede expresar en alfabeto binario.
43
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
00 01 10 11
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Para codificar un nmero real en binario hay que factorizar el nmero en cuestin en potencias decrecientes del dos y tomar los coeficientes que multiplican a cada una de las potencias. ejemplo:
19 = 16 + 2 + 1 = 24 + 21 + 20 = 1 24 + 0 23 + 0 22 + 1 21 + 1 20 10011
45
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
x = ai 2
i =1
L i
ejemplo: 10011 1 24 + 0 23 + 0 22 + 1 21 + 1 20 = = 16 + 2 + 1 = 19
46
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
b) Seleccin
La seleccin es el mecanismo por el cual soluciones ms prximas al ptimo (individuos mejor adaptados) tienen mayor probabilidad de sobrevivir y ser elegidos (seleccionados) para reproducirse.
47
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Supongamos que, en una determinada iteracin del algoritmo, tenemos un conjunto de soluciones, que denominaremos poblacin: P = {x1, x2,..., xr}, xi S Z y que cada una de ellas (que denominamos individuos) tiene un valor de la funcin objetivo f(x1), f(x2),..., f(xr)
48
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
La seleccin supone que cuanto mayor sea f(xi), mayor sea la probabilidad pi de que xi sea elegido y se reproduzca. Una manera sencilla de hacer esto es tomar:
pi =
49
f ( xi )
f (x )
j =1 j
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
2%
38%
50
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
c)
Cruce
El cruce consiste en el intercambio de una seccin cualquiera de las cadenas binarias de dos individuos al azar de la poblacin seleccionada.
51
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
El cruce sigue los siguientes pasos: primero: elegir un punto de corte, al azar, de ambas cadenas: ejemplo: 110 | 000 011 | 011
52
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
segundo: intercambiar las secciones entre ambas ambas cadenas, generando una nueva solucin (individuo hijo) con la parte inicial del primer individuo (madre) y la parte final del segundo (padre): ejemplo: 110 | 000 (madre)
53
011 | 011(padre)
110 | 011
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
d) Mutacin
La mutacin consiste en cambiar, con una probabilidad muy pequea, cualquier elemento de una cadena, pasando de cero a uno o viceversa. ejemplo: 110000 (antes de la mutacin) 111000 (despus de la mutacin)
54
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
La mutacin permite generar nuevas soluciones en poblaciones estancadas que generaran individuos idnticos a los padres. Por ejemplo, la poblacin: x1=110001 x2=110001 x3=110001
55
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
max s .a .
57
Solo es necesario redondear los dgitos que consideremos relevantes y tratar el nuevo nmero como un entero. ejemplos: 345,6 0,00978
58
346 978
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Tratamiento de las restricciones Podemos penalizar a las soluciones que violen las restricciones en proporcin a la magnitud de dicha violacin Es decir, aunque una solucin tenga un elevado valor de la funcin objetivo podemos rebajar dicho valor cuando no verifica las restricciones.
59
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Una forma de hacer esto es emplear el AG para optimizar una funcin distinta a la funcin objetivo: m
( x ) = f ( x ) f ( x ), f j
j =1
max{ 0 , g j ( x )} f j( x ) = si hj( x )
60
0 j q q +1 j m si
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Convergencia
Al igual que para el recocido simulado, cabe preguntarse bajo que condiciones puede asegurarse la convergencia de los algoritmos genticos al conjunto de soluciones ptimas. En primer lugar, para alcanzar la convergencia del algoritmo es necesario que la probabilidad de mutacin sea decreciente con el nmero de iteraciones y que se adopte una estrategia elitista1.
1
Davis, T. y J. Principe (1993): A Markov Chain Framework for the Simple Genetic Algorithm, Evolutionary Computation, 1, 269-288.
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
61
Convergencia
Sin embargo, a diferencia de otras tcnicas evolutivas, en general no es posible asegurar la convergencia de los algoritmos genticos al conjunto de soluciones ptimas. Esta es una importante desventaja terica frente a otro tipo de algoritmos heursticos. Sin embargo, desde el punto de vista prctico, su comportamiento es igual o superior a otros procedimientos.
62
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
63
Supongamos problema
s.a.
max x2 x { 31,30,...0,1,...,30,31}
Un AG seguira los siguientes pasos: Paso 1: Generar un conjunto aleatorio de soluciones y codificarlas en binario Paso 2: Aplicar el mecanismo de seleccin Paso 3: Elegir parejas de seleccionados y aplicar cruce Paso 4: Aplicar mutacin a los hijos Paso 5: Si no se ha llegado al ptimo, volver al paso 2
65
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Paso 1: Generar un conjunto aleatorio de soluciones y codificarlas en binario. Ejemplo: P= {x1, x2, x3, x4} ={-13, 19, 24, 4 } P (codif.)={101101, 010011, 011000, 000100}
66
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Paso 2:
67
f(x
j =1
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
p1 =
f ( x1 )
f(x
j =1
= )
p2 =
f ( x2 )
j
f(x
j =1
= )
p3 =
f ( x3 )
j
f(x
j =1
4
= )
p4 =
f ( x4 )
f(x
j =1
= )
68
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Indiv 3
69
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Supongamos que han sido seleccionados: P sel.= {x3, x2, x1, x3} ={24, 19, 13, 24}
70
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Paso 3: Elegir parejas de seleccionados y aplicar cruce Supongamos que se eligen los pares: x3, x2 x1, x3 x2, x3 x3, x1
71
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
011000, 010011 011011 x1*= 27 101101, 011000 101000 x2*= -8 010011, 011000 010000 x3*= 16 011000, 101101 011101 x4*=29
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Paso 4.
Supongamos que solo muta el primer individuo: 011011 x1*= 27 (antes de la mutacin) 011010 x1*= 26 (despus de la mutacin)
73
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
La nueva poblacin ser: 011010 101000 010000 011101 x1*= 26 x2*= -8 x3*= 16 x4*=29 f(x1*)= (26)2=676 f(x2*)= (-8)2=64 f(x1*)= (16)2=256 f(x1*)= (29)2=841
74
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Reemplazando la poblacin anterior tendramos: P= {x1*, x2*, x3*, x4*} ={26, 16, -8, 29} como puede verse, dos soluciones de esta nueva poblacin (x1*= 26 y x4*= 29), tienen mayor valor e la funcin objetivo que la mejor solucin anterior, x3=24).
75
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Paso 5.
Deberamos evaluar si la mejor solucin encontrada x4*= 29 es suficientemente buena, o bien repetir nuevamente el proceso. Podemos suponer que es as y terminar con nuestro ejemplo.
76
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Ejemplo 1
Maximizacin de la funcin de Himmelblau:
f ( x1 , x2 ) = 800 ( x1 + x2 11 ) ( x1 + x2 7 )2
2 2 2
x* = ( 3.58 ,1.86 ) x** = ( 3 ,2 ) x*** = ( 2.815 ,3.125 ) x**** = ( 3.78 ,3.28 ) f ( x* ) = 800
77
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
78
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Parmetros
nindiv = 20 lcrom = 10 Pc=0.9 Pm=0.01
]5,5 [x]5,5 [
ghimmel.m ghimmel2.m
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
79
U x
Algoritmos Genticos
Ejemplo 2
Maximizacin de la funcin de Bohachewski:
f ( x1 , x2 ) = 20 x1 + 2 x2 (0.3Cos 3x1 cos 4x2 + 0.3 )
2 2
x* = ( 0 ,0 ) f ( x* ) = 10
80
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
81
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Parmetros
nindiv = 20 lcrom = 15 Pc=0.9 Pm=0.005
]6,6 [x]6,6 [
gboha.m
82
U x
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Aplicaciones
83
84
s .a.
x
jN
ij
=1 =1
ij
i N j N S N
x
iN
ij
x
iS jS
S 1
xij {0 ,1}
85
i , j N
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Parmetros
nindiv = 20 lcrom = 15 Pc=0.9 Pm=0.01 elitista
86
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Colorear un mapa
87
Problema
88
Colorear el mapa con uno de los tres colores sin que dos cuadrados tengan el mismo color
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Aplicacin de un AG
RGGBRBGGBRBRB
Que sea creciente para las mejores soluciones Por ejemplo F podra ser el nmero de fronteras correctas 16 de 26 en este ejemplo
90
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
[R G B B ] [G B R R ]
[G G G R ] [B G R B ]
[R G R B ] [G B R G ]
91
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
92
Generamos una nueva poblacin a partir de la anterior Habr que sesgar el operador de seleccin para ir obteniendo mejores soluciones
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Mutacin
Cambiamos aleatoriamente cualquier bit a otro color con una probabilidad muy pequea
93
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Cruce
+
Combinamos pares de secuencias para formar otras
94
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
+
RGBRRBGRBGBRB RGBRRBGRBGBRB RGB BGGGBRGBRGBG BGGGBRGBRGBG
95
RGBGBRGBRGBG
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
96
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
97
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Identificacin de sospechosos
98
100
Generar aleatoriamente 20 caras en una pantalla de ordenador El testigo asigna una puntuacin entre 1 y 10 a cada una de las caras El AG genera caras adicionales a partir de 5 bloques constructivos:ojos, boca, nariz, pelo y mandbula Cada uno es una secuencia de 7 bits Los cinco bloques se codifican en una secuencia binaria de 35-bit que consiste en cinco bloques de 7 bits, lo que permite generar 34 mil millones de caras El testigo evala sucesivas generaciones La convergencia se suele alcanzar al cabo de 20 generaciones
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Faceprints
101
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
102
Un problema muy importante consiste en determinar si la evolucin futura de un valor burstil puede ser predicha a partir de su comportamiento pasado. Entre las tcnicas que los inversores emplean, est el Anlisis Tcnico, que se basa en el empleo de grficas y osciladores a partir de los que se trata predecir la evolucin.
103
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Un problema muy importante consiste en determinar si la evolucin futura de un valor burstil puede ser predicha a partir de su comportamiento pasado. Entre las tcnicas que los inversores emplean, est el Anlisis Tcnico, que se basa en el empleo de grficas y osciladores a partir de los que se trata predecir la evolucin.
104
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
105
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
O de canales:
106
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Se vende cuando el RSI es superior a B y se compra cuando es inferior a A, donde A y B son nmeros arbitrarios elegidos por el analista.
107
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
108
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Obsrvese que el RSI depende de tres parmetros: RSI(n,A,B), segn sea de adecuada la seleccin de estos parmetros el indicador ser mas o menos eficiente. Generalmente los inversores emplean ms de un indicador, que depender de otros parmetros.
109
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
Un sistema tcnico ser entonces algo as como (n,A,B,p1,p2,.....,pn) La funcin de ajuste ser el beneficio obtenido con el sistema en cuestin. El AG tratar de encontrar la combinacin de parmetros que maximiza el beneficio.
110
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
111
El diseo de las redes telefnicas es extremadamente complejo: no slo hay que minimizar los costes de construccin y operacionales, sino que adems es necesario que la red provea de servicio a todos los usuarios del sistema. Quiz el principal problema es el de supervivencia: la red debe funcionar a un nivel requerido incluso en el caso en que un enlace o una sub-red del sistema falle.
112
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
US West se plante en 2000 el diseo de su red de telefona mediante el empleo de algoritmos genticos. US West tiene 25 millones de usuarios de telefona fija en 14 estados, adems de unos 500.000 de telefona mvil y 800.000 de datos. Tras la adquisicin por Qwest, la compaa tiene 2,6 millones de millas de fibra ptica en EEUU.
113
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
US West plante el problema de manera similar al TSP: en la resolucin al problema mediante AG, la funcin de ajuste consista en la longitud de la red, de manera que redes ms largas tenan pocas probabilidades de supervivencia. Adicionalmente, las redes generadas deban cumplir todas las otras restricciones. El tiempo de rediseo de nuevas redes se ha reducido de dos meses a dos das y permite ahorros entre1 y 10 millones de dlares.
114
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal
115
Ignacio Olmeda Martos Antonio Moratilla Ocaa Dept. Ciencias de la Computacin Universidad de Alcal