Está en la página 1de 71

Convergencia del Algoritmo Genético Simple

Martha Lorena Avendaño Garrido

Julio 2004
Introducción

Desde 1930 se pensó que el proceso de Selección Natural podrı́a resolver


problemas de optimización; sin embargo, hasta 1975 Jonh Holland publi-
có el libro Adaptation in Natural an Artificial Systems [9], donde se des-
cribe formalmente al Algoritmo Genético, que a su vez forma parte de la
llamada Computación Evolutiva. Un Algoritmo Genético (AG) es un algo-
ritmo computacional usado para encontrar elementos óptimos en un espacio
de búsqueda dado. Éste simula el proceso evolutivo que sostiene la Teorı́a de
Selección Natural, es decir, propone la supervivencia del individuo más apto.
Para ello es necesario definir operadores como cruza, mutación y selección.
Este trabajo de tesis se basa en el artı́culo Convergence Analysis of
Canonical Genetic Algorithms de Günter Rudolph, publicado en 1994 [7] y
en el trabajo de tesis de Reyes Sierra [12], en donde se analiza teóricamente la
Convergencia del Algoritmo Genético Simple modelado como una Cadena de
Markov Finita. Se demostrará la convergencia de éste, sin importar la mues-
tra de población inicial bajo la condición de Elitismo, es decir, la condición
de mantener al individuo más apto en la siguiente generación.
En el Capı́tulo 1 se describirá brevemente el desarrollo histórico de la
Teorı́a de la Selección Natural, además de la Genética. Ası́ como de la Com-
putación Evolutiva y se definirá formalmente al Algoritmo Genético. Los pre-
liminares matemáticos para estudiar la convergencia de dicho algoritmo están
dados en el Capı́tulo 2, aquı́ estudiamos brevemente Probabilidad básica y
Cadenas de Markov, además de Relaciones de Orden y Matrices no-negativas.
El Capı́tulo 3, la parte central de la tesis, es donde se desarrolla el trabajo
de Rudolph en [7]. Por último, en el Capı́tulo 4 se implementará un Algoritmo
Genético con ayuda del paquete Mathematica para hacer algunos cálculos
numéricos.
Se intentó que este trabajo sea autocontenido, sin embargo la demostra-
ción de un teorema de convergencia de matrices estocásticas no fue posible

i
ii

debido a que para ello se necesitaba el desarrollo de muchos antecedentes


y esto harı́a que el trabajo fuera muy extenso y quizá fuera del objetivo.
Por consiguiente este teorema se encuentra en el Ápendice A. El Ápendice
B es un breve glosario de terminologı́a genética para hacer más accesible la
información del Capı́tulo 1.
Contenido

Introducción ii

1 Introducción a los AG’s 1


1.1 Fundamentos Biológicos . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 Breve Historia de la Teorı́a de la Evolución . . . . . . . 1
1.1.2 Breve Historia del Desarrollo de la Genética . . . . . . 3
1.2 Algoritmos Genéticos . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.1 Historia de la Computación Evolutiva . . . . . . . . . . 4
1.2.2 Algoritmos Evolutivos y Genéticos . . . . . . . . . . . 6

2 Probabilidad y Cadenas de Markov 8


2.1 Probabilidad básica . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.1 Definiciones . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.2 Probabilidad Condicional e Independencia . . . . . . . 11
2.1.3 Variables Aleatorias . . . . . . . . . . . . . . . . . . . . 15
2.1.4 Esperanza . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2 Matrices no negativas . . . . . . . . . . . . . . . . . . . . . . . 18
2.3 Relaciones de Orden . . . . . . . . . . . . . . . . . . . . . . . 21
2.4 Cadenas de Markov . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4.1 Conceptos Básicos . . . . . . . . . . . . . . . . . . . . 24
2.4.2 Clasificación de Estados y Cadenas Absorbentes . . . . 27

3 Convergencia del AG 34
3.1 Algoritmo Genético General . . . . . . . . . . . . . . . . . . . 34
3.2 Algoritmo Genético Elitista . . . . . . . . . . . . . . . . . . . 37

4 Cálculos Numéricos 41
4.1 Implementación Computacional . . . . . . . . . . . . . . . . . 41

iii
CONTENIDO iv

4.2 Resultados Numéricos . . . . . . . . . . . . . . . . . . . . . . 52


4.3 Conclusión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Apéndice1 61

A Teoremas 61
A.1 Teorema de Convergencia . . . . . . . . . . . . . . . . . . . . 61

B Glosario 62

Referencias 65
Capı́tulo 1

Introducción a los AG’s

En este capı́tulo daremos una introducción a los Algoritmos Genéticos, para


ello necesitaremos primero, familiarizarnos un poco con la terminologı́a y
desarrollo de ciencias biólogicas como son la Evolución y Genética, para pos-
teriormente entrar al desarrollo y tecnicismos de la Computación Evolutiva.

1.1 Fundamentos Biológicos


1.1.1 Breve Historia de la Teorı́a de la Evolución
La raı́z de las concepciones filosóficas y cientı́ficas acerca del origen de la
vida sobre la Tierra se ubica en el inicio de la humanidad. Encontramos el
pensamiento de Anaximandro, quien difundı́a la idea de que el ancestro del
hombre deberı́a haber sido un animal acuático y que la Tierra y sus habi-
tantes descendı́an del mismo material original. Por otro lado, la teorı́a de
Empédocles sostenı́a la existencia de un reservorio de partes de organismos,
del cual se producı́an innumerables combinaciones; las combinaciones “afor-
tunadas” permanecerı́an, como las especies que conocemos, las otras darı́an
organismos monstruosos que desaperecerı́an. Ninguna de éstas es un an-
tecedente de la Teorı́a actual de la Evolución, sin embargo, reflejan el interés
de la humanidad por éste tema.
El creacionismo, es decir, la corriente religiosa que consiste en que el uni-
verso, en el cual se incluye nuestro planeta y los seres que lo habitamos,
fue creado por un acto especial divino, representó, por siglos, la única expli-
cación acerca de la vida en la Tierra. El creacionismo era cada vez menos

1
CAPÍTULO 1. INTRODUCCIÓN A LOS AG’S 2

satisfactorio, ası́ surgieron dos corrientes de pensamiento dominantes acerca


del origen y evolución de las especies, establecidas por Buffon y Lamarck:
Buffon, miembro de la Academia de Ciencias Francesa, influenciado por la
obra Protogaea de Leibniz, que sugiere la posibilidad de la transformación de
las especies, fue el primero en enfrentar seriamente las ideas evolucionistas
de su época; sin embargo, nunca propuso una explicación razonable. Por
otro lado, Lamarck, discı́pulo de Buffon propuso una explicación concreta a
la evolución; primero propone que la transmisión de los caracteres adquiri-
dos es el causante de la evolución, luego, expone que hay una tendencia a la
mayor complejidad en los animales y que esto es una ley natural, estableció
que se pueden producir nuevos órganos resultado de una nueva necesidad, y
esta nueva caracterı́stica es transmitida a sus descendientes.
Posteriormente, Charles Darwin, propone la Teorı́a Evolutiva donde es-
tablece que la selección natural es el mecanismo más importante en el cambio
de las especies. Esto es, ante la variabilidad de los individuos, el efecto de
la lucha por la existencia sobre las probabilidades de sobrevivencia y re-
producción no es al azar, sino selectivo, Los individuos mejor adaptados
al ambiente en el que viven serán los que tengan mayor probabilidad de
sobrevivir y dejar más progenie. Darwin sabı́a que los padres transmiten
sus caracterı́sticas a los hijos; sin embargo, nunca comprendió este proceso,
fue George Mendel quien desarrollo la teorı́a acerca de la transmisión de
caracteres, donde propone que debido al cruzamiento, el nuevo ser recibe
caraterı́sticas de ambos progenitores, donde ciertos caracteres son recesivos
y otros dominantes, los dominantes determinan la forma fı́sica, pero el re-
cesivo se encuentra en el material genético. Además propone que la trans-
misión de caracteres es independiente una de otra. A principios del siglo
pasado surgió otra corriente de pensamiento que proponı́a que los cambios
en los organismos se daban de forma súbita, uno de los seguidores de esta
corriente fue Hugo de Vries, quien acuñó el término mutaciones a estos cam-
bios. Posteriormente, Ronald A. Fisher, John B. Haldane y Sewall Wright
llegaron a la conclusión de que las mutaciones pequeñas eran mucho más fre-
cuentes y tenı́an un efecto mucho más importante que las macromutaciones.
Habı́a una posibilidad mayor de que las pequeñas mutaciones se fijaran más
rápidamente en la población si eran favorables.
Unificando estas teorı́as surge el Noedarwinismo que se basa en el cruza-
miento, competencia, mutaciones y selección natural. En dicho paradigma
se basan los Algoritmos Evolutivos, en particular los Genéticos. Para mayor
información ver [4] y [14].
CAPÍTULO 1. INTRODUCCIÓN A LOS AG’S 3

1.1.2 Breve Historia del Desarrollo de la Genética


La genética estudia cómo las caracterı́sticas de los organismos vivos se trans-
miten, se generan, se expresan y por qué, a su vez, varı́an de generación en
generación.
Tiene sus raı́ces en el siglo XIX, la genética surge con el monge austriaco
George Mendel (1822-1884). Hacia 1886, eran bien conocidos los trabajos
de Charles Darwin sobre el origen de las especies, la intención de Mendel
era demostrar experimentalmente el origen de las especies; logró generalizar
principios acerca de cómo se heredan los caracteres. Franz Unger, apoyaba
la idea de que las variedades aparecen en la naturaleza y que con el paso
del tiempo, sólo algunas de ellas, se convierten en especies bien diferencia-
das. Los trabajos de Mendel no fueron comprendidos hasta 1900 cuando
tres artı́culos publicados hacen referencia a Mendel, ası́ en este año nace la
genética; el mendelismo se expandió por Europa y América, en 1906 William
Bateson acuña el término genética.
Hacia finales del siglo XIX se estudiaron los cambios que ocurren en la
meiosis y su posible relación con la herencia. Destacando Augusto Weismann,
aunque sus resultados fueron equivocados señaló la importancia de relacionar
los cromosomas con la herencia de los caractéres, es decir, son los portadores
de los elementos hereditarios o genes. Posteriormente, en 1909, Johannsen
acuñarı́a los términos de gen, genotipo y fenotipo, este último se refiere a las
caracterirı́sticas que vemos, mientras que el genotipo se refiere al conjunto
de todos los genes.
Thomas Hunt Morgan funda el Grupo de las Moscas, sus estudiantes
eran Alfred Henry Sturtevan, Herman Joseph Muller y Calvin Blackman
Bridges, esta escuela estableció que los genes forman parte de los cromosomas,
propuso que los genes ocupan lugares concretos en el cromosoma y que era
posible construir mapas genéticos, descubrió que puede haber distribuciones
anómalas de genes y esto altera los resultados obtenidos por Mendel y algunas
veces pueden ser letales.
Posteriormente se estableció la idea de que ciertos factores externos pue-
den producir efectos sobre los cromosomas sin lesionar el resto de la célula.
A esta nueva rama de la genética se le conoce como mutagénesis. Muller
observó que era posible inducir las mutaciones y estudiar los genes mutados
y su estructura, también descubrió que estas carcterı́sticas mutadas eran
heredables.
Hasta 1945 el gen era considerado como la unidad fundamental de la
CAPÍTULO 1. INTRODUCCIÓN A LOS AG’S 4

herencia, pero poco se sabı́a de su estructura y funcionamiento. George W.


Beadle y Edward L. Tatum establecieron en 1941 la relación entre los genes
y las enzimas, observaron que los genes producen enzimas que actúan directa
o indirectamente en la cadena metabólica.
Por otro lado, el ADN fue descubierto en 1869 por Frieddrich Miescher,
pero hasta 1914 Robert Fuelgen logró visualizar el contenido del núcleo, sin
embargo se descartó la posibilidad de que éste fuera el material hereditario,
pues su composición era sencilla; en 1944 Avery, Leod y Carty comprobaron
que el ADN es la molécula portadora de la información genética. Gracias a
la aplicación cristalografı́a de rayos X se pudo extraer la estructura tridimen-
sional del ADN. En 1961 Francis Crick encontró como se traduce la infor-
mación contenida en las proteı́nas dando como resultado el código genético,
siendo hoy dı́a muy importante en investigaciones cientı́ficas.

1.2 Algoritmos Genéticos


En esta sección veremos un poco del desarrollo histórico de los Algoritmos
Genéticos, ası́ como aspectos generales de los mismos. El material presentado
en el siguiente apartado fue tomado de [5].

1.2.1 Historia de la Computación Evolutiva


En 1932, Cannon visualizó la evolución natural como un proceso de apren-
dizaje. Alan Turing reconoció, en 1950, que debe haber una conexión entre
el aprendizaje de las máquinas y la evolución. Campbell conjeturó, en 1960,
que en los procesos de expansión del conocimiento, se involucra un proceso
de variación y supervivencia selectiva. Los primeros intentos de aplicar de
manera formal la Teorı́a de la Evolución, a problemas prácticos de inge-
nierı́a, apareció en las áreas de control de procesos estadı́sticos, aprendizaje
de máquina y optimización de funciones. El primer intento serio se dio en
el trabajo que realizaron Box y sus colegas en 1957, en el desarrollo de una
técnica que denominaron operación evolutiva, la cual se aplicó a una planta
de manufactura.
Friedberg intentó, en 1958, hacer que un programa en lenguaje máquina
se mejorara a sı́ mismo, seleccionando instrucciones que se asociaban más
frecuentemente con un resultado exitoso. Aunque Friedberg nunca mencionó
explı́citamente estar simulando la evolución natural. Posteriormente, Bre-
CAPÍTULO 1. INTRODUCCIÓN A LOS AG’S 5

mermann, en 1958, se enfocó más a la optimización, advirtió que la mutación


jugaba un papel importante en la evolución, pues impedı́a el estancamiento
en mı́nimos locales. Baricelli, en 1954, realizó una de las primeras simula-
ciones que usaba principios evolutivos, con este trabajo, junto con el que
Reed realizó posteriormente en 1967, se concluyó que la cruza no parecı́a
mejorar la velocidad de la adaptación selectiva, y el operador primordial era
la mutación. Fue Fogel el que introdujo la primera técnica evolutiva que real-
mente funcionó más o menos dentro de los lineamientos actuales de la com-
putación evolutiva. Fogel introdujo los importantes conceptos de población
y selección; Solomonoff, enfatizó que el método de Fogel no debı́a verse como
algo útil para resolver problemas, a excepción de los más simples posibles.
Otros investigadores como Holland, Kieras, Rada y Lenat compartieron esa
opinión.
Otra técnica evolutiva se desarrolló en Alemania, en 1965, por Rechenberg
y Schwefel, llamada estrategia evolutiva para resolver problemas ingenieriles.
La estrategia evolutiva utiliza como operador principal a la mutación.
Aunque el australiano Fraser propuso, desde fines de los 50, un proce-
dimiento muy similar al que John Holland llamó planes evolutivos a fines de
los 60, es al segundo al que se le suele atribuir la creación de la técnica que
se conoce como algoritmo genético, a raı́z de que Holland publicara el libro
Adaptation in Natural and Artificial Systems en 1975. La principal diferencia
del algoritmo genético con las técnicas antes mencionadas, es que utiliza la
cruza como operador principal y a la mutación como operador secundario. El
algoritmo genético funciona como una caja negra que recibe ciertas entradas y
produce las salidas deseadas. Sin embargo, los algoritmos genéticos no necesi-
tan entrenarse con ejemplos de ningún tipo, sino que son capaces de generar
sus propios ejemplos y contra-ejemplos que guı́en la evolución a partir de
poblaciones iniciales totalmente aleatorias. Los mecanismos de selección del
más apto y de reproducción sexual del algoritmo genético, son los encargados
de preservar las caractersticas más adecuadas de cada individuo a fin de hacer
converger a la población en soluciones óptimas. Los algoritmos genéticos se
distinguen también por no quedar atrapados fácilmente en mı́nimos locales.
No obstante, no pueden garantizar encontrar siempre la solución óptima,
pero cuando se utilizan apropiadamente, pueden proporcionar soluciones muy
aceptables. Los algoritmos genéticos se han ido ganando poco a poco, el re-
conocimiento de los investigadores como una técnica efectiva en problemas
de gran complejidad.
CAPÍTULO 1. INTRODUCCIÓN A LOS AG’S 6

1.2.2 Algoritmos Evolutivos y Genéticos


Ahora veremos la definición general de un Algoritmo Evolutivo, (tomada
de [3]), que como se mencionó anteriormente, un Algoritmo Genético es un
Algoritmo Evolutivo donde su principal función es el cruzamiento.

Definición 1.2.1 Un Algoritmo Evolutivo (AE) es el conjunto

AE = {I, φ, Ω, Ψ, s, i, µ, λ},

donde

1. I es el espacio de individuos

2. φ : I → IR, asigna valores reales a los individuos y es una función de


aptitud.

3. Ω es un conjunto de operadores probabilı́sticos, por ejemplo ω : I 2 → I


es un operador sexual, esto es, se necesitan dos progenitores para
generar un nuevo individuo, con ω ∈ Ω.

4. Ψ : I µ → I µ es la función de transición de generación, describe


el proceso completo de transformación de una población P a una sub-
secuente mediante la aplicación de operadores evolutivos y selección,
donde µ ∈ N. Es decir, un espacio de µ individuos, I µ , pasa a otro
espacio nuevamente con µ individuos, I µ .

5. s : I λ → I µ , es el operador de selección que obtiene µ individuos a


partir de λ individuos, donde λ, µ ∈ N. Esto es, de un espacio con λ
individuos, I λ , selecciona un espacio con µ individuos, I µ .

6. i : I µ →(falso, verdadero), es un criterio de paro para el AE.

Definición 1.2.2 Dado un Algoritmo Evolutivo con función de transición


de generación Ψ : I µ → I µ y población inicial P (0) ∈ I µ . La sucesión
P (0), P (1), P (2), ... es llamada población sucesiva o evolución si y sólo
si
P (t + 1) = Ψ(P (t)) para todo t ∈ N.

A continuación se da el Algoritmo Genético general, en forma de lenguaje


de programación.
CAPÍTULO 1. INTRODUCCIÓN A LOS AG’S 7

Algoritmo Genético

Escoger una población inicial


Calcular la aptitud de cada individuo
Seleccionar
Repetir
Cruzar
Mutar
Calcular la aptitud de los nuevos individuos
Seleccionar
Aplicar un criterio de paro

Para terminar este capı́tulo se dan brevemente algunos conceptos que se


describieron en el campo de la biologı́a, pero ahora traspasados al ambiente
computacional.
Dado un problema a resolverse en Computación Evolutiva, un cromo-
soma se representa con una estructura de datos que codifica los parámetros
de una posible solución a dicho problema. Cada cromosoma corresponde
con un individuo, un gen es una subsección del cromosoma. Por ello, el
genotipo corresponde a la codificación del cromosoma y el fenotipo con
la decodificación del mismo. Los alelos son los valores posibles que puede
tomar cada posición genética. La aptitud de un individuo es un valor que
se le asigna y que denota la calidad de éste con respecto a los demás. Gene-
ración es la creación de una nueva población a partir de la existente.
Los operadores de producción usados en la Computación Evolutiva son
tres:

• Cruza: Forma un nuevo individuo combinando lo cromosomas de los


padres.

• Mutación: Obtiene un nuevo cromosoma alterando los genes del cro-


mosoma padre.

• Reordenamiento: Cambia el orden de los genes del cromosoma padre.

Ahora tenemos el conocimiento básico sobre Algoritmos Genéticos, en


el siguiente capı́tulo obtendremos las nociones básicas sobre Cadenas de
Markov, para posteriormente demostrar la convergencia del Algoritmo Gené-
tico, modelando dicho algoritmo con una Cadena de Markov.
Capı́tulo 2

Probabilidad y Cadenas de
Markov

Para estudiar la convergencia del Algoritmo Genético necesitamos tener no-


ciones básicas de Cadenas de Markov, pero previo a éstas necesitamos Teorı́a
de Probabilidad. Los siguientes conceptos de Probabilidad pueden ser en-
contrados en [2], [6] y [8].

2.1 Probabilidad básica


2.1.1 Definiciones
Definición 2.1.1 Sea Ω un conjunto no vacı́o y β una colección no vacı́a,
de subconjuntos de Ω. Decimos que β es una σ -álgebra si

i) Si E ∈ β entonces E c ∈ β,
S∞
ii) Si {En }∞
n=1 es una sucesión en β, entonces n=1 En ∈ β.

Ejemplo 2.1.2 Sea Ω = R y sea A la familia de todos los intervalos abiertos


de la forma (a, b), donde (a, b) ⊂ R. Entonces la σ−álgebra generada por A,
se llama la σ−álgebra de Borel sobre R y se denota por B(R)

• Si B ∈ B(R), se dice que B es un conjunto de Borel en R.

• Cualquier intervalo de la forma [a, b], (a, b], [a, b) es un conjunto de


Borel en R.

8
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 9

• Cualquier conjunto abierto o cerrado es un conjunto de Borel.

Definición 2.1.3 Una pareja (Ω, β) que consiste de un conjunto Ω y una


σ-álgebra β de subconjuntos de Ω se llama espacio medible.

Definición 2.1.4 Por una medida sobre un espacio medible (Ω, β) enten-
demos una función µ no negativa definida sobre β tal que

i) µ(∅) = 0,
S P∞
ii) µ( ∞i=1 Ai ) = i=1 µ(Ai ) donde Ai ∩ Aj = ∅ si i 6= j.

Definición 2.1.5 La tercia (Ω, β, µ), donde Ω y β están dadas como en la


Definición 2.1.3, y µ es una medida, se llama espacio de medida.

Definición 2.1.6 Sea (Ω, β) un espacio medible. Una medida de proba-


bilidad P sobre (Ω, β) es una medida tal que P (Ω) = 1.

Definición 2.1.7 Un espacio de probabilidad es una terna (Ω, β, P ) que


consiste en un espacio medible (Ω, β) junto con una medida de probabilidad
P sobre (Ω, β).

Los conjuntos E ∈ β se llaman eventos, Ω es el espacio muestral y el


número P (E) se llama probabilidad de E. Observemos que ∅ ∈ β, y a este
evento lo llamamos evento imposible, mientras que el espacio muestral Ω
también está en β y se le denomina evento seguro.
En el siguiente teorema veremos alguna propiedades básicas de los espa-
cios de probabilidad.

Teorema 2.1.8 Sea (Ω, β, P ) un espacio de probabilidad, entonces

i) Para cualquier evento E ∈ β tenemos P (E c ) = 1 − P (E).

ii) Si E, F ∈ β y E ⊂ F entonces P (E) ≤ P (F ).

iii) P (E − F ) = P (E) − P (E ∩ F ) para cualesquiera E, F ∈ β.


S∞ P∞
iv) Si {Ei }∞
i=1 ⊂ β, entonces P ( i=1 Ei ) ≤ i=1 P (Ei ).

Demostración
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 10

i) Como Ω = E c ∪ E y P (Ω) = 1 tenemos

1 = P (Ω) = P (E c ∪ E)

y por la Definición 2.1.4 ii) tenemos

P (E c ∪ E) = P (E c ) + P (E)

entonces
1 = P (E c ) + P (E),
es decir,
P (E c ) = 1 − P (E).

ii) Tomemos E, F ∈ β tal que E ⊂ F , podemos escribir F = E ∪ (F − E),


es claro que E y F − E son ajenos, entonces por la Definición 2.1.4 ii)

P (F ) = P (E) + P (F − E)

y como P es una medida positiva P (F − E) ≥ 0 entonces

P (F ) ≥ P (E).

iii) Como E = (E ∩ F ) ∪ (E − F ) y (E ∩ F ) ∩ (E − F ) = ∅ podemos aplicar


la Definición 2.1.4 ii), de donde

P (E) = P (E ∩ F ) + P (E − F )

esto implica
P (E − F ) = P (E) − P (E ∩ F ).

iv) Tomemos {Ei }∞ ∞


i=1 ⊂ β, construyamos la sucesión {Fi }i=1 como sigue

F1 = E1
F2 = E2 − E1
[2
F3 = E3 − Ei
i−1
..
.
n−1
[
Fn = En − Ei
i−1
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 11


S∞
obteniendo
S∞ la sucesión ajena dos a dos {F n }n=1 ∈ β, además n=1 En =
n=1 Fn y Fi ⊂ Ei para i = 1, 2, ... entonces por el inciso anterior


[ ∞
[ ∞
X ∞
X
P( Ei ) = P ( Fi ) = P (Fi ) ≤ P (Ei )
i=1 i=1 i=1 i=1

ası́ ∞ ∞
[ X
P( Ei ) ≤ P (Ei ).¥
i=1 i=1

De las propiedades anteriores es fácil observar que todo evento en un


espacio muestral tiene una probabilidad entre 0 y 1, es decir, si (Ω, β, P ) es
un espacio de probabilidad y tomemos E ∈ β entonces 0 ≤ P (E) ≤ 1.

2.1.2 Probabilidad Condicional e Independencia


En esta sección consideremos un espacio de probabilidad (Ω, β, P ).

Definición 2.1.9 Si A y B son dos eventos, entonces la probabilidad condi-


cional del evento A dado que el evento B ha ocurrido se define como:

P (A ∩ B)
PB (A) = si P (B) > 0. (2.1.1)
P (B)

Si P (B) = 0, la probabilidad condicional no está definida.


La probabilidad condicional PB (A) se interpreta como la probabilidad de
que ocurra el evento A cuando se sabe que el evento B ha ocurrido. Al evento
B se le llama evento condicionante.

Teorema 2.1.10 Sea B ∈ β con P (B) > 0. Si para cada A ∈ β definimos


PB (A) como en (2.1.1), entonces (Ω, β, PB ) es un espacio de probabilidad.

Demostración
Tenemos que demostrar que PB es una medida y que P (Ω) = 1. En
efecto:
P (∅∩B)
i) Sabemos que P (∅) = 0 por ser P una medida, entonces PB (∅) = P (B)
=
P (∅) 0
P (B)
= P (B)
= 0.
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 12

ii) Sea {Ai }∞


i=1 ⊂ β tal que Ai ∩ Aj = ∅ si i 6= j, entonces

[∞ S S
P [( ∞i=1 Ai ) ∩ B] P[ ∞ i=1 (Ai ∩ B)]
PB ( Ai ) = = =
i=1
P (B) P (B)
P∞ ∞ ∞
i=1 P (Ai ∩ B) X P (Ai ∩ B) X
= = PB (Ai ),
P (B) i=1
P (B) i=1

es decir, PB es una medida.


Por último, vemos que es una medida de probabilidad, en efecto:
P (Ω ∩ B) P (B)
PB (Ω) = = = 1.
P (B) P (B)
Por tanto, (Ω, β, PB ) es un espacio de probabilidad. ¥
En particular, observe que si A y B son ajenos entonces PB (A) = 0 pues
la ocurrencia de B no da información alguna sobre la ocurrencia de A.
Lema 2.1.11 Si B está contenido en A y B ocurre entonces necesariamente
A ocurre, es decir PB (A) = 1.
Demostración
Sabemos que B ⊂ A entonces A ∩ B = B, por tanto
P (A ∩ B) P (B)
PB (A) = = = 1.¥
P (B) P (B)
Notación: Escribimos PB (A) como P (A|B).
Ahora vemos que pasa cuando tenemos más de dos eventos, para ellos
enunciaremos y demostraremos el siguiente teorema.

Teorema 2.1.12 (Teorema de la Multiplicación) Para cualesquiera n even-


tos A1 , A2 , ..., An para los cuales se tiene P (A1 ∩ .... ∩ An−1 ) > 0, se verifica

P (A1 ∩ ... ∩ An ) = P (A1 )P (A2 |A1 )...P (Ak |A1 ∩ ... ∩ Ak−1 ).

Demostración
Por inducción: Para n = 2 se cumple por la Definición 2.1.9.
Ahora supongamos que el resultado vale para n = k, esto es

P (A1 ∩ ... ∩ Ak ) = P (A1 )P (A2 |A1 )...P (Ak |A1 ∩ ... ∩ Ak−1 ).
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 13

Ahora veamos que pasa para n = k + 1

P (A1 ∩ ... ∩ Ak ∩ Ak+1 ) = P ((A1 ∩ ... ∩ Ak ) ∩ Ak+1 )

= P (A1 ∩ ... ∩ Ak )P (Ak+1 |A1 ∩ ... ∩ Ak )


= P (A1 )P (A2 |A1 )...P (Ak |A1 ∩ ... ∩ Ak−1 )P (Ak+1 |A1 ∩ ... ∩ Ak ).¥
Teorema
S∞ 2.1.13 Sea {Bk |k = 1, ...} una sucesión de eventos ajenos tal que
k=1 Bk = Ω entonces
P
i) P (A) = ∞ k=1 P (A ∩ Bk ) para todo A ∈ β.

ii) Teorema de
P∞Probabilidad Total. Si P (Bk ) > 0 para todo k entonces
P (A) = k=1 P (Bk )P (A|Bk ) para todo A ∈ β.

iii) Teorema de Bayes. P (Bk |A) = P∞P (Bk )P (A|Bk ) , para todo A ∈ β tal
n=1 P (Bn )P (A|Bn )
que P (A) > 0.
Demostración
i) Sea A ∈ β, entonces

[ ∞
[
A=A∩Ω=A∩( Bk ) = (A ∩ Bk )
k=1 k=1

como la sucesión {(A ∩ Bk )} es ajena tenemos que



[ ∞
X
P (A) = P ( (A ∩ Bk )) = P (A ∩ Bk ).
k=1 k=1

ii) Sea A ∈ β, supongamos P (Bk ) > 0 para toda k entonces tomemos la


probabilidad condicional
P (A ∩ Bk )
P (A|Bk ) = ,
P (Bk )
entonces
P (A ∩ Bk ) = P (Bk )P (A|Bk ), (2.1.2)
de aquı́

X ∞
X
P (A ∩ Bk ) = P (Bk )P (A|Bk )
k=1 k=1
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 14

y por inciso anterior



X
P (A) = P (Bk )P (A|Bk ). (2.1.3)
k=1

iii) Por último, de la definición de probabilidad condicional


P (Bk ∩ A)
P (Bk |A) = ,
P (A)
por (2.1.2) tenemos que
P (Bk )P (A|Bk )
P (Bk |A) =
P (A)
y finalmente, por (2.1.3) tenemos
P (Bk )P (A|Bk )
P (Bk |A) = P∞ .¥
n=1 P (Bn )P (A|Bn )

Ahora vemos la definición de eventos independientes.


Definición 2.1.14 Dos eventos A y B son independientes si P (A ∩ B) =
P (A)P (B).
Si A y B son independientes, entonces la ocurrencia de uno de estos
eventos no afecta la ocurrencia (o no ocurrencia) del otro.
En efecto: sean A y B independientes y P (B) > 0 entonces
P (A ∩ B) P (A)P (B)
PB (A) = = = P (A).
P (B) P (B)
Por otro lado, generalizando, sean {A1 , A2 , ..., An }, se dice que los Ai , con
i = 1, 2, ..., n son independientes si
n
Y
P (A1 ∩ ... ∩ An ) = P (Ai ).
i=1

En general, dada una colección arbitraria z = {At : t ∈ I} de eventos de-


cimos que estos son independientes si y sólo si At1 , ..., Atn son independientes,
para un conjunto finito {t1 , ..., tn } de ı́ndices distintos de I.
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 15

2.1.3 Variables Aleatorias


Ahora veremos la definición de Variable Aleatoria, para posteriormente ver lo
que es una Variable Aleatoria Discreta que son la requeridas en este trabajo.

Definición 2.1.15 Sea (Ω, β) un espacio medible y X : Ω → R una función,


decimos que X es una función Borel-medible o medible, si X −1 [B] está
en β para todo B en B(R).

Definición 2.1.16 Sea (Ω, β, P ) un espacio de probabilidad y X : Ω → R


una función Borel-medible, en este caso X se llama variable aleatoria.

En un experimento aleatorio asociamos una variable aleatoria con los


valores númericos de dicho experimento.

Definición 2.1.17 Una función F : IR → IR se llama función de dis-


tribución si:

i) F es monótona no-decreciente, es decir, x < y implica F (x) ≤ F (y).

ii) F es continua por la derecha, esto es limy→0 F (x + y) = F (x).


Y si además

iii) limx→∞ F (x) = 1 y limx→−∞ F (x) = 0,


entonces, a F le llamamos una función de distribución de pro-
babilidad.

En particular, tenemos el siguiente ejemplo:

Ejemplo 2.1.18 Si P es una medida de probabilidad sobre (IR, B(IR)) en-


tonces FP (x) = P (−∞, x] es una función de distribución de probabilidad.

Demostración

i) Tomemos x < y en IR entonces (−∞, x] ⊂ (−∞, y], por consiguiente,


P (−∞, x] ≤ P (−∞, y], esto es,

FP (x) ≤ FP (y).
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 16

ii) Sea {xn }∞


n=1 una sucesión de números reales tal que xn → x. Tomemos

FP (xn ) − FP (x) = P (−∞, xn ] − P (−∞, x] = P (xn , x],

haciendo n → ∞ y como xn → x entonces P (xn , x] → P (∅) = 0, es


decir
lim FP (xn ) = FP (x).
n→∞

iii) Tomemos
lim FP (x) = lim P (−∞, x] = P (∅) = 0
x→−∞ x→−∞

lim FP (x) = lim P (∞, x] = P (Ω) = 1.¥


x→∞ x→−∞

Observación 2.1.19 La función de distribución de una variable aleatoria X


es una función de distribución de probabilidad, y recı́procamente, es decir, si
F es una función de distribución de probabilidad, entonces existe un espacio
de probabilidad (Ω, β, P ) y una variable aleatoria X : Ω → R tal que FX = F .
(Ver [6]).

Definición 2.1.20 Se dice que una Variable Aleatoria X es Discreta


si sólo toma un conjunto finito o infinito numerable de valores distintos.

Definición 2.1.21 Sea X una variable aleatoria con función de distribución


FX . Se dice que X es una variable aleatoria continua si FX se puede escribir
en la forma Z x
FX (x) = f (y)dy para todo x ∈ R.
−∞

A f (y) se le denomina una Función de Densidad de probabilidad.

VARIABLES ALEATORIAS INDEPENDIENTES

Definición 2.1.22 Sean X1 , ..., Xn variables aleatorias sobre (Ω, β, P ). En-


tonces decimos que X1 , ..., Xn son independientes si y sólo si para todo B1 , ...,
Bn ∈ B(R), tenemos que

P (X1 ∈ B1 , ..., Xn ∈ Bn ) = P (X1 ∈ B1 ) · · · P (Xn ∈ Bn ).


CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 17

2.1.4 Esperanza
Definición 2.1.23 Sea X una variable aleatoria sobre (Ω, β, P ). La Espe-
ranza de X se define como la integral de X con respecto a la medida P y se
denota E(X): Z
E(X) := XdP

si esta integral existe y es finita.

También decimos que X ∈ L1 (Ω, β, P ).

Ejemplo 2.1.24 Sea X una variable aleatoria discreta con valores x1 , x2 ,


... si se cumple que

X
|xi |P (X = xi ) < ∞
i=1

decimos que la esperanza E(X) de X es:



X
E(X) := xi P (X = xi )
i=1

donde P (X = xi ) denota la probabilidad de que la variable aleatoria X tome


el valor de xi . (Ver [13, Capı́tulo 4] y [6, página 57]).

A E(X) se le conoce como valor esperado, valor medio o la media de X.

Definición 2.1.25 La Varianza de X se define como

V ar(X) := E(X − E(X))2

de cualquier variable aleatoria.

Proposición 2.1.26 Si X, Y son variables aleatorias y a, b son números


reales entonces:

i) E(a) = a

ii) E(aX + b) = aE(X) + b

iii) E(X + Y ) = E(X) + E(Y ).


CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 18

Demostración
Ver [13]. ¥
Lema 2.1.27 Sea X una variable aleatoria, entonces

V ar(X) = E(X 2 ) − E(X)2 .

Demostración
Tenemos que probar:

E(X − E(X))2 = E(X 2 ) − E(X)2 ,

recordemos que X es una variable aleatoria y E(X) es una constante, en-


tonces tenemos

(X − E(X))2 = X 2 − 2E(X)X + E(X)2 , (2.1.4)

calculemos la esperanza en (2.1.4). Ahora, aplicando la proposición anterior

E(X 2 ) − 2E(X)X + E(X)2 ) = E(X 2 ) + 2E(X)E(X) + E(X)2


= E(X 2 ) − 2E(X)2 + E(X)2
= E(X 2 ) − E(X)2 ,

por lo tanto,
V ar(X) = E(X 2 ) − E(X)2 .¥

2.2 Matrices no negativas


En esta sección se definen algunas matrices con caracterı́sticas especı́ficas,
para posteriormente estudiar algunas propiedades de éstas, que serán de
mucha utilidad en el capı́tulo siguiente. El material de ésta sección se basa
en [15].
Definición 2.2.1 Sea An×n una matriz:
a) A es llamada no negativa si aij ≥ 0 para todo i y j y la denotamos
A ≥ 0.

b) A es llamada positiva si aij > 0 para todo i y j y la denotamos A > 0.


CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 19

Sea Bn×n una matriz no negativa:


P
c) B = (bij ), con i, j = 1, ..., n, es llamada estocástica si nj=1 bij = 1 para
cada i, es decir, las suma de cada una de sus filas es 1.

d) B es primitiva si existe k entero positivo tal que B k > 0.

e) B es irreducible si para todo bij existe k ∈ N tal que bkij > 0, donde bkij
denota el elemento ij de la matriz B k .

f ) B es reducible si no es irreducible.

Sea Cn×n una matriz estocástica:

g) C es diagonal positiva si cada elemento en su diagonal es positivo.

h) C es columna permisible si al menos tiene una componente positiva


en cada fila.

i) C es estable si tiene filas idénticas.

Ahora analizaremos algunos resultados con este tipo de matrices.

Lema 2.2.2 B es una matriz reducible si y sólo si se puede llevar, mediante


permutaciones de fila y columna, a la forma:
· ¸
C 0
R T

donde C y T son matrices cuadradas.

Demostración ⇒) Supongamos Bn×n reducible, es decir, B es no irre-


ducible, esto es existe al menos bij tal que para todo k ∈ N tenemos bkij = 0.
En particular bij = 0. Primero intercambiamos la fila i por la primer fila,
entonces en esta nueva matriz B 0 tenemos b01j = 0. Ahora intercambiamos
la columna j con la última, de donde, la nueva matriz B 00 tiene elemento
b001n = 0. Si hay otro elemento en B igual a cero, procedemos análogamente
hasta agrupar todos los ceros en una submatriz en la parte superior derecha.
Obteniendo ası́ la forma · ¸
C 0
.
R T
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 20

⇐) Supongamos que Bn×n se puede lleva, mediante permutaciones de fila y


columna a la forma · ¸
0 C 0
B = ,
R T
entonces al menos b01n = 0, esto es, B tiene un elemento nulo, digamos bij = 0,
esto indica que B no es irreducible, en consecuencia B es reducible. ¥

Lema 2.2.3 Sean A,B y C matrices estocásticas, donde B es positiva y C


es columna permisible, entonces el producto ABC es una matriz positiva.

Demostración
Sea H = AB. Como A es no negativa, tenemos aij ≥ 0, pero por la
condición de ser estocástica, existe al menos un elemento en cada fila i tal
que 0 < aij ≤ 1.
Por otro lado, B es positiva, entonces bij > 0 para todo i, j, entonces
n
X
hij = aik bkj > 0
k=1

para todo i, j, es decir, H es positiva.


Consideremos M = HC. Como C es columna-permisible, entonces tiene
al menos un elemento positivo en cada columna, ası́
n
X
mij = hik ckj > 0
k=1

para todo i, j. Por tanto, M = ABC es positiva. ¥

Lema 2.2.4 Sean A, B y C matrices estocásticas, donde B es irreducible


y A, C son diagonal positivas. Entonces el producto ABC es una matriz
irreducible.

Demostración P P
Por contradicción. Sea H = ABC, entonces hij = nk=1 nr=1 air brk ckj ,
supongamos H reducible, entonces, por el Lema 2.2.2, necesariamente el
elemento h1n = 0, esto es
n X
X n
a1r brk ckn = 0;
k=1 r=1
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 21

como A, B, C son no negativas, tenemos

a1r brk ckn = 0

para todo r, k. Ahora, como A es diagonal positiva tenemos que aii > 0,
entonces
b1k ckn = 0,
pero B también es diagonal positiva, por lo tanto cnn > 0, lo cual implica

b1n = 0

¡contradicción!, debido a que B es irreducible. ¥


Ahora, denotaremos al elemento aij de la matiz A como a(i, j). Por otro
lado, sea An la matriz que resulta de multiplicar A por ella misma n veces.

Definición 2.2.5 Una sucesión de matrices An = [an (i, j)] se dice que con-
verge a la matriz A = [a(i, j)] si y sólo si an (i, j) converge a a(i, j) cuando
n → ∞, para cada par i, j.

2.3 Relaciones de Orden


Sea U un conjunto no vacı́o y R una relación entre dos elementos de U.
Denotamos por aRb al hecho de que a está en relación con b. Veamos algunos
tipos de relaciones:

Definición 2.3.1 i) La relación R es reflexiva si xRx para todo x ∈ U.

ii) La relación R es simétrica si xRy, entonces yRx para todo x, y ∈ U.

iii) La relación R es transitiva si xRy e yRz, entonces xRz para todo


x, y, z ∈ U.

iv) La relación R es una relación de equivalencia si R es reflexiva, simé-


trica y transitiva.

v) La relación R es antisimétrica si xRy e yRx, entonces x = y, para to-


do x, y ∈ U.
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 22

Sabemos que una relación de equivalencia implica una partición. Sea R


una relación de equivalencia definida en U, dos elementos a, b en U pertenecen
a la misma clase si aRb. Estas clases son llamadas clases de equivalencia
de R.

Definición 2.3.2 Una relación T es consistente con la relación de equi-


valencia R, si dado xRy, entonces si xT z también yT z y si zT x también
zT y.

Definición 2.3.3 Un orden débil es una relación que es reflexiva y tran-


sitiva.

Proposición 2.3.4 Si T es un orden débil entonces la relación xRy dada


como xT y e yT x es una relación de equivalencia consistente con T .

Demostración

i) Reflexividad: tenemos que xT x, por ser T orden débil, entonces xT x y


xT x, de donde xRx.

ii) Simetrı́a: tomemos x, y tal que xRy, es decir xT y y yT x, y es claro que


yRx.

iii) Transitividad: tomemos xRy y yRz, esto es, xT y y yT x, por otro lado,
yT z y zT y, como T es un orden débil, es transitiva, de donde tenemos
xT z y zT x, ası́ xRz.

Por tanto, R es una relación de equivalencia.


Ahora veamos que T es consistente con R. Sea xRy, de aquı́, xT y y yT x.
Tomemos z1 tal que xT z1 y como yT x, como T es transitiva tenemos yT z1 .
Por otro lado, tomemos z2 tal que z2 T x, análogamente z2 T y. De donde
afirmamos que T es consistente con R. ¥

Definición 2.3.5 Un orden parcial es una relación transitiva y antisimé-


trica.

Sea T un orden débil definido sobre U, y R la relación de equivalencia


como en la Proposición 2.3.4. Definimos la relación T ∗ , sobre el conjunto de
clases de equivalencia, donde [u]T ∗ [v], si cada elemento de [u] está relacionado
bajo T con cada elemento de la clase [v].
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 23

Proposición 2.3.6 La relación T ∗ es un orden parcial.

Demostración

i) Transitividad. Sea [u]T ∗ [v] y [v]T ∗ [w], tomemos cualesquiera u0 ∈ [u],


v 0 ∈ [v] y w0 ∈ [w], entonces u0 T v 0 y v 0 T w0 , como T es transitiva u0 T w0 ,
de donde afirmamos [u]T ∗ [w].

ii) Antisimetrı́a. Tomemos [u]T ∗ [v] y [v]T ∗ [u]. Sean cualesquiera u0 ∈ [u] y
v 0 ∈ [v], esto es u0 T v 0 y v 0 T u0 , es decir u0 Rv 0 , de donde decimos que u0
y v 0 pertenecen a la misma clase de equivalencia.

Ası́ T ∗ es un orden parcial. ¥

Definición 2.3.7 Un elemento a de U es llamado minimal si aT x implica


xT a para todo x ∈ U.
Un elemento b de U es llamado maximal si xT b implica bT x para todo
x ∈ U.

Relaciones comunicantes. Si aT b decimos que a está en contacto con


b, o a “transmite un mensaje” (directa o indirectamente) a b; si T es un orden
débil, entonces la relación aT b y bT a es una relación de equivalencia, y la
leemos como a se comunica con b. Esta relación de equivalencia clasifica a los
individuos; dos individuos están en la misma clase si están comunicados. Sean
[u] y [v] clases de equivalencia, decimos que [u]T ∗ [v] si todos los miembros de
[u] se comunican con cada miembro de [v], pero no recı́procamente, a menos
que [u] = [v]. Como vimos anteriormente T ∗ es un orden parcial.
En particular, [u] es minimal si sus miembros no pueden ser comunicados
con miembros de otra clase. En efecto: (por contradicción), supongamos que
[u] es minimal y [u] 6= [v] tomemos u0 ∈ [u] entonces u0 T v 0 para todo v 0 ∈ [v],
por otro lado, como [u] es minimal tenemos v 0 T u0 , esto es u0 Rv 0 , por tanto
[u] = [v]. Contradicción!!.
Por otro lado, [u] es maximal si sus miembros no pueden comunicarse a
miembros de ninguna otra clase. En efecto: (por contradicción), supongamos
que [u] es maximal y que v 0 T u0 con v 0 ∈ [v] y [u] 6= [v], como [u] es maximal
u0 T v 0 , de donde tenemos v 0 Ru0 , es decir [v] = [u]. Contradicción!!.
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 24

2.4 Cadenas de Markov


En esta sección veremos definiciones y teoremas sobre Cadenas de Markov
Finitas, lo cual es básico para demostrar la convergencia del Algoritmo
Genético. El material fue tomado de [1], [10] y [11].

2.4.1 Conceptos Básicos


En esta sección consideramos un proceso estocástico en tiempo discreto X =
{Xn |n ∈ N}, es decir, una sucesión de variables aleatorias, con valores en
S 6= ∅ definidas sobre un espacio de probabilidad (Ω, β, P ). El proceso X
se interpreta como un sistema dinámico cuyo estado en el tiempo n es la
variable aleatoria Xn . En particular, a X0 le llamamos estado inicial del
proceso. Además, suponemos que el conjunto de estados S, del proceso,
es un conjunto finito.

Definición 2.4.1 Un Proceso de Markov Finito es un proceso estocástico,


tal que la probabilidad de que la variable aleatoria Xn esté en el estado in sólo
depende de la variable aleatoria anterior, y no de todos los demás, es decir

P (Xn = in |X0 = i0 , ..., Xn−1 = in−1 ) = P (Xn = in |Xn−1 = in−1 ) (2.4.5)

donde ij ∈ S, con S 6= ∅. A la ecuación (2.4.5) se le llama Propiedad de


Markov.

Definición 2.4.2 La probabilidad de transición de n pasos, para un


proceso de Markov denotada por pij (n) es definida como

pij (n) := P (Xn = j|X0 = i) = P (Xn+k = j|Xk = i),

esto es, el estado de la variable aleatoria Xt sólo depende del estado en el


que estuvo la variable aleatoria Xt−n .

Definición 2.4.3 Una Cadena de Markov Finita es un proceso finito


de Markov, tal que la probabilidad de transición pij no depende de n, y lo
denotamos por
pij = P (Xn+1 = j|Xn = i),
donde i, j ∈ S.
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 25

Definición 2.4.4 La matriz de transición de una Cadena de Markov es


la matriz P con entradas pij .
Definición 2.4.5 El vector de probabilidad inicial es el vector π0 =
{P (X0 = j)}.
Es decir, el vector de componentes tal que es la probabilidad de que
variable aleatoria X0 esté en cada estado j ∈ S.
Observación 2.4.6 La matriz de transición es un matriz estocástica. En
efecto:
Claramente pij ≥ 0, por ser P medida de probabilidad, para todo i, j ∈ S.
Por otro lado tenemos que para toda n ≥ 0
X X
pij = P (Xn = j|Xn−1 = i)
j j
[
= P ( (Xn = j|Xn−1 = i))
j
= P (Ω)
= 1.¥
Una Cadena de Markov es un proceso que se mueve de un estado a otro.
Si en algún tiempo está en el estado i, entonces se mueve en un paso al
estado j, con probabilidad pij . El vector de probabilidad inicial y la matriz
de transición determinan completamente la Cadena de Markov, esto es, dado
un vector de probabilidad π0 y una matriz de transición P existe una única
Cadena de Markov con vector de probabilidad inicial π0 y matriz de transición
P.
Definición 2.4.7 Definimos la matriz de transición en n pasos como
P(n) := [pij (n)],
con P(0) = I.
Ahora veamos un resultado muy útil, el cual aplicaremos posteriormente.
Teorema 2.4.8 (Ecuación de Chapman-Kolmogorov). Para cualquier n, m
∈ N tenemos X
pij (n + m) = pik (n)pkj (m)
k∈S
para todo i, j en S.
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 26

Demostración
Por la Definición 2.4.2 tenemos

pij (n + m) := P (Xn+m = j|X0 = i),

por otro lado, [


Ω= (Xn = k),
k∈S

de donde
[
(Xn+m = j) = Ω ∩ (Xn+m = j) = ( (Xn = k)) ∩ (Xn+m = j)
k∈S
[
= ((Xn = k) ∩ (Xn+m = j)) ,
k∈S

por consiguiente
[
P (Xn+m = j|X0 = i) = P ( ((Xn = k) ∩ (Xn+m = j))|X0 = i)
k∈S
X
= P (Xn = k, Xn+m = j|X0 = i); (2.4.6)
k∈S

por el Teorema de la Multiplicación de Probabilidad Condicional tenemos

P (Xn = k, Xn+m = j|X0 = i)


= P (Xn = k|X0 = i)P (Xn+m = j|Xn = k, X0 = i)
= pik (n)P (Xn+m = j|Xn = k)
= pik (n)pkj (m),

usando la propiedad de Markov, ahora sustituyendo esto último en la Ecuación


(2.4.6) tenemos X
pij (n + m) = pik (n)pkj (m).¥
k∈S

Corolario 2.4.9 La matriz de transición en n+m pasos es igual al producto


de la matriz de transición en n pasos y la matriz de transición en m pasos,
es decir:
P(n+m) = P(n) P(m) .
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 27

Demostración
X
[P(n) P(m) ]ij = pik (n)pkj (m) = pij (n + m),
k∈S

ası́
P(n) P(m) = P(n+m) .¥

Corolario 2.4.10 La matriz de transición en n pasos P(n) , se puede calcular


multiplicando la matriz de transición P n veces consigo misma, es decir:
P(n) = Pn .
Demostración
Por inducción. Para n = 1 se cumple como consecuencia de las Defini-
ciones 2.4.2 y 2.4.3, esto es
P(1) = P. (2.4.7)
Ahora supongamos que
P(n) = Pn (2.4.8)
y veamos que pasa para P(n+1)
P(n+1) = P(n) P(1) por el Corolario 2.4.9
= Pn P(1) = Pn P por las Ecuaciones (2.4.8) y (2.4.7)
= Pn+1
por tanto, concluimos que
P(n) = Pn para toda n ∈ N.¥

2.4.2 Clasificación de Estados y Cadenas Absorbentes


Clasificaremos los estados de una Cadena de Markov en base a si es posible
ir de un estado dado i a otro estado dado j; esto es, si existe un paso n
tal que la probabilidad de ir del estado i al estado j es mayor que cero, es
decir, pij (n) > 0. Decimos que i se comunica con j, cuando iT ∗ j, como
en la Sección 2.3, ası́ los resultados de dicha sección serán aplicables. En
particular, los estados son divididos en clases de equivalencia; dos estados
están en la misma clase, si son comunicantes, es decir, si puedo ir de una
estado a otro y viceversa.
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 28

Definición 2.4.11 El elemento minimal con el orden parcial de la clases


de equivalencia es llamado conjunto ergódico; los elementos restantes son
llamados conjuntos trascendentes. Los elementos del conjunto trascen-
dente son llamados estados trascendentes; los elementos de un conjunto
ergódico son llamados estados ergódicos.

Por el Principio del Buen Orden podemos afirmar que existe el elemento
minimal, como consecuencia tenemos que en cada Cadena de Markov exis-
te un conjunto ergódico, sin embargo no necesariamente tenemos conjuntos
trascendentes. Intuitivamente sabemos que si un proceso llega a un conjunto
ergódico nunca podrá abandonarlo y por otro lado, si el proceso sale de un
estado transcendente nunca regresa a él.

Definición 2.4.12 Si un conjunto ergódico contiene sólo un elemento, el


estado es llamado absorbente.

Teorema 2.4.13 Un estado i es absorbente si y sólo si pii = 1.

Demostración ⇒) Supongamos i absorbente, entonces [i] sólo se comunica


con [i], esto es, la probabilidad que la variable aleatoria Xn esté en el estado
i tal que la variable aleatoria Xn−1 también está en el estado i es 1, es decir:

pii = P (Xn = i|Xn−1 = i) = 1.

⇐) Sabemos que pii = 1, es decir P (Xn = i|Xn−1 = i) = 1, esto es una


vez que la Cadena de Markov entra al estado i nunca lo abandonará, ası́
afirmamos que i es un estado absorbente. ¥

Observación 2.4.14 Como sabemos la matriz de transición es estocástica,


entonces todas las entradas de la fila de un estado absorbente son cero, excep-
to pii = 1.

Ahora veamos algunos resultados importantes de las Cadenas Absorben-


tes.

Teorema 2.4.15 Para cualquier Cadena de Markov finita, no importa el


estado donde inicie el proceso, la probabilidad después de n pasos de que esté
en un estado ergódico tiende a 1 cuando n → ∞.
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 29

Demostración
Si el proceso inicia en un estado ergódico, no hay nada que probar.
Supongamos que el proceso empieza en un estado trascendente. Por otro
lado, sabemos que siempre existe al menos un conjunto ergódico, entonces
podemos afirmar que el proceso llegará a un estado ergódico, ya que la cadena
tiene un número finito de pasos; ası́, existe un número p que es la probabili-
dad de que el proceso entre a un estado ergódico, a lo más en n pasos, donde
0 < p ≤ 1.
Por otro lado, por el inciso i) del Teorema 2.1.8 afirmamos que la proba-
bilidad de que no entre en un estado ergódico en n pasos es de 1 − p, donde

1 − p < 1, (2.4.9)

la probabilidad de que la Cadena de Markov no esté en un estado ergódico


después de nk pasos es menor o igual a (1 − p)k , por (2.4.9), sabemos que si
k → ∞ entonces (1 − p)k → 0. De donde, nuevamente por el Teorema 2.1.8
i), afirmamos que el teorema se cumple.¥

Observación 2.4.16 Por el último párrafo de la demostración del teorema


anterior podemos afirmar que la probabilidad de que una Cadena de Markov
finita se encuentre en estado transitorio en n pasos tiende a 0 cuando n → ∞

Proposición 2.4.17 La matriz de transición P de una Cadena de Markov


podemos llevarla a la forma:

r·− s s ¸
S 0 r−s
P=
R Q s

donde la submatriz S(r−s)×(r−s) representa la cadena cuando ha alcanzado un


estado ergódico; 0s×(r−s) es una submatriz con entradas cero; R(r−s)×s re-
presenta la transición de estados transitorios a ergódicos y Qs×s representa
la cadena mientras está en estados transitorios.

Demostración
Sabemos que en cada Cadena de Markov existe al menos un conjunto
ergódico, y también que los elementos de éste sólo se comunican con ellos
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 30

mismos, no con otros; ası́, podemos afirmar que existe al menos una entrada
cero en P. Por el Lema 2.2.2, P puede ser llevada a la forma

r·− s s ¸
S 0 r−s
P=
R Q s

mediante intercambio de filas y columnas. ¥


Si suponemos que el conjunto ergódico es absorbente, entonces por la
Observación 2.4.14 la submatriz S es la matriz I, por tanto

r·− s s ¸
I 0 r−s
P=
R Q s

Ahora veamos un resultado muy importante.

Lema 2.4.18 Tenemos que Qk → 0 cuando k → ∞.

Demostración
Vea Observación 2.4.16. ¥

Teorema 2.4.19 La matriz I − Q tiene inversa y



X
−1 2
(I − Q) = I + Q + Q + ... = Qk .
k=0

Demostración
Consideremos la identidad

(I − Q) · (I + Q + Q2 + ... + Qk−1 ) = I − Qk , (2.4.10)

la cual es fácil de verificar haciendo la multiplicación y aplicando operaciones


de matrices. Por el Lema 2.4.18 sabemos que Qk → 0 cuando k → ∞,
entonces haciendo k → ∞ el elemento de la derecha de (2.4.10) es I. Por
otro lado, sabemos que det I = 1, por consiguiente, det(I − Qk ) 6= 0 para k
suficientemente grande, entonces

det(I − Q) det(I + Q + Q2 + ... + Qk−1 ) 6= 0,


CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 31

lo cual implica que det(I −Q) 6= 0, por ello afirmamos que I −Q tiene inversa
(I − Q)−1 . Multipliquemos por ésta en (2.4.10):

(I − Q)−1 (I − Q)(I + Q + ... + Qk−1 ) = (I − Q)−1 (I − Qk ),

esto es
(I + Q + ... + Qk−1 ) = (I − Q)−1 (I − Qk ).
Si hacemos k → ∞ tenemos

X
Qk = (I − Q)−1 .¥
k=0

Definición 2.4.20 Para una Cadena de Markov absorbente, definimos N :=


(I − Q)−1 , N se llama Matriz Fundamental.

Ahora tenemos uno de los teoremas más importantes para demostrar la


convergencia del Algoritmo Genético.
· ¸
S 0
Teorema 2.4.21 Sea P = la forma canónica de la matriz de
R Q
transición de una Cadena de Markov, entonces Pk converge a la matriz
· ∞ ¸
∞ S 0
P =
R∞ 0

cuando k → ∞, donde S ∞ y R∞ denotan S k y N RS k , cuando k → ∞,


respectivamente.

Demostración
Primero, verifiquemos por indución que
· ¸
k Sk 0
P = Pk−1 i k−1−i . (2.4.11)
i=0 Q RS Qk

Ası́, para k = 2
· ¸· ¸ · ¸
2 S 0 S 0 S2 0
P = PP = =
R Q R Q RS + QR Q2
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 32
· ¸ · ¸
S2 0 S2 0
= P1 ,
Q RS + QRS Q2
0 0 i
i=0 Q RS
1−i
Q2
supongamos que (2.4.11) se cumple para k = n, es decir,
· ¸
n Sn 0
P = Pn−1 i n−1−i .
i=0 Q RS Qn

Ahora calculemos Pn+1

Pn+1 = Pn P
· ¸· ¸
Sn 0 S 0
= Pn−1 i n−1−i
i=0 Q RS Qn R Q
· ¸
S nS 0
= P
( n−1 i
i=0 Q RS
n−1−i
)S + Qn R Qn Q
· ¸
S n+1 0
= P n−1 i n−i
i=0 Q RS + Qn RS 0 Qn+1
· ¸
P S n+1 0
= n i n−i .
i=0 Q RS Qn+1
Por tanto, · ¸
k Sk 0
P = Pk−1 i k−1−i
i=0 Q RS Qk
para todo k ∈ N.
Ahora si k → ∞, por el Lema 2.4.18, Qk → 0 y por el Teorema A.1.1
(Ver Apéndice A), S k converge a una matriz S ∞ , entonces
· ¸
k S∞ 0
lim P = P .
k→∞ limk→∞ k−1 i
i=0 Q RS
k−1−i
0
Pk−1
Por último veamos que pasa con limk→∞ i=0 Qi RS k−1−i . Tomemos
k−1
X k−1
X k−1
X k−1
X
i k−1−i i k−1−i i ∞
Q RS = Q RS − Q RS + Qi RS ∞
i=0 i=0 i=0 i=0

k−1
X k−1
X
i k−1−i ∞
= Q R(S −S )+ Qi RS ∞
i=0 i=0
CAPÍTULO 2. PROBABILIDAD Y CADENAS DE MARKOV 33

si k → ∞ tenemos
k−1
X k−1
X ∞
X
i k−1−i ∞ i ∞
Q R(S −S )+ Q RS → Qi RS ∞
i=0 i=0 i=0
à ∞
!
X
= Qi RS ∞ ,
i=0

por el Teorema 2.4.19 y la Definición 2.4.20 sabemos que


̰ !
X
Qi RS ∞ → N RS ∞ .
i=0

Ası́, cuando k → ∞ tenemos


· ¸
k S∞ 0
P → ∞ .¥
N RS 0
Capı́tulo 3

Convergencia del AG

En este capı́tulo nos enfocaremos en el Algoritmo Genético Simple, por ello


cuando se diga Algoritmo Genético, AG, dese por entendido también simple.
Veremos que, como en la Selección Natural, el individuo mejor adap-
tado transmite sus caracterı́sticas intáctas a la siguiente generación del pro-
ceso evolutivo; los AG modelados de esta manera, llamados Elitistas o con
Elitismo (AGE), convergen al elemento óptimo. Para este estudio el AG
se modela como una Cadena de Markov finita, todo esto basándonos en el
trabajo de G. Rudolph [7].

3.1 Algoritmo Genético General


El AG es usado para resolver problemas de optimización del tipo

max{f (b)|b ∈ B l }

donde B l = {0, 1}l , es el conjunto de cadenas de 0 y 1 de longitud l y f (b)


es una función, llamada función de aptitud, tal que 0 < f (b) < ∞.
El AG puede describirse como una Cadena de Markov, cuyo espacio de
estados S = B N , con N = ln, donde n es el número de individuos de la
población y l es el número de genes; ası́ cada i ∈ S corresponde con una
posible población del AG. Observe que ]S = 2nl .
Los cambios probabilı́sticos de los genes son causados por operadores
genéticos, como se vió en el Capı́tulo 1, y se representan por la matriz de
transición P, esto es:
P = CM S

34
CAPÍTULO 3. CONVERGENCIA DEL AG 35

donde C es el operador cruza, M es operador mutación y S el operador


selección; cada una de estas matrices es de dimensión 2nl , debido a que
representan la probabilidad de ir de un estado dado a cada uno de los otros
2nl .
Usaremos la selección proporcional, definida de la siguiente manera: la
probabilidad de que un individuo bi sea seleccionado de la n-ada (b1 , ..., bn )
como miembro de la siguiente generación está dada por
f (bi )
P (bi sea seleccionado ) = Pn (3.1.1)
j=1 f (bj )

donde f es la función de aptitud. Observe que P (bi sea seleccionado) es


mayor que cero.
Por otro lado, trabajaremos con la mutación uniforme, esta es estocástica-
mente independiente, es decir, la ocurrencia de la mutación de un gen de un
individuo no afecta la ocurrencia de la mutación en otro gen del mismo
individuo, (ver Sección 2.1.2), y ocurre con probabilidad pm ∈ (0, 1). Por
ejemplo: supongamos que el individuo b = (0, 0, 0, 0, 0) queremos mutarlo al
individuo b0 = (1, 0, 1, 1, 0), entonces tenemos pm ·(1−pm )·pm ·pm ·(1−pm ) =
p3m · (1 − pm )2 = pkm · (1 − pm )l−k , con k = 3 y l = 5. Por tanto, de forma
general tenemos:
H(bi ,b0i ) 0
P (bi → b0i ) = pm (1 − pm )l−H(bi ,bi ) (3.1.2)
donde l es la longitud de la cadena y H(bi , b0i ) es la distancia de Hamming
de bi a b0i , definida a continuación:
Definición 3.1.1 Sean a = (a1 , ..., al ) y b = (b1 , ..., bl ) en B l , la métrica
definida como
X l
H(a, b) = |ai − bi |
i=1
es llamada Distancia de Hamming.
Observe que si bi 6= b0i entonces P (bi → b0i ) > 0.
Por otro lado, el operador cruza utilizado en este trabajo tiene una pro-
babilidad pc ∈ [0, 1].
Para simplificar notación, denotaremos πk (i) como el individuo k de la
población i, dentro de la Cadena de Markov y f (πk (i)) representa la aptitud
del individuo πk (i), esta notación será usada a continuación.
Ahora veremos una propiedad muy importante de la matriz P.
CAPÍTULO 3. CONVERGENCIA DEL AG 36

Teorema 3.1.2 La matriz de transición P del AG con probabilidad de mu-


tación pm ∈ (0, 1), probabilidad de cruza pc ∈ [0, 1] y selección proporcional
es primitiva.

Demostración
El operador cruza es una función cuyo dominio y rango es el espacio de
estados S, es decir, cada estado i ∈ S es transformado en otro estado j ∈ S,
esto es, es la matriz de la transición de una Cadena de Markov, por ello, la
matriz de cruza C es una matriz estocástica. Análogamente, podemos decir
que M y S son matrices estocásticas.
Como estamos usando la mutación uniforme, los elementos de la matriz
M están dados por
mij = pHm (1 − pm )
ij N −Hij

donde pm es la probabilidad de mutación del AG y Hij la distancia de Ham-


ming entre los estados i y j. Como pm ∈ (1, 0), tenemos que mij > 0, esto
es, M es positiva.
Por otro lado, analizaremos la matriz de selección S. Como estamos
usando la selección descrita en (3.1.1) y sabiendo que la selección es es-
tocásticamente independiente, tenemos que cada individuo tiene una proba-
bilidad de ser seleccionado proporcional a su aptitud esto es
(
Πn f (πk (j))
Pnk=1
( k=1 f (πk (i)))n
si πk (j) ∈ {πr (i)|r = 1, ..., n} para toda k = 1, ..., n
sij =
0

por tanto
Πn f (πk (i))
sii = Pnk=1 ,
( k=1 f (πk (i)))n
de donde sii > 0. Por consiguiente S es diagonal positiva, particularmente
es columna permisible.
Entonces, el producto de la matrices CM S cumple las hipótesis del Lema
2.2.3, es decir, P es positiva, en particular, P es primitiva.¥
Ahora veremos la convergencia del AG, para ello decimos que un algo-
ritmo converge al óptimo global si genera una sucesión cuyo valor lı́mite es el
óptimo global. En seguida damos la definición formal que utilizaremos para
demostrar la convergencia o no de un AG. Para ello definimos a πkt (i) como
el individuo k de la población i en t pasos.
CAPÍTULO 3. CONVERGENCIA DEL AG 37

Definición 3.1.3 Sea Zt = max{f (πkt (i))|k = 1, ..., n} una sucesión de va-
riables aleatorias representantes de la mejor aptitud dentro de la población
del estado i en el paso t. Un AG converge al óptimo global si y sólo si:

lim P (Zt = f ∗ ) = 1,
t→∞

donde f ∗ = max{f (b)|b ∈ B l }.

La definición anterior nos indica que la sucesión {Zt } converge con pro-
babilidad 1 a f ∗ .
El siguiente teorema demuestra que P no converge al elemento óptimo.

Teorema 3.1.4 El AG con matriz de transición primitiva no converge al


óptimo global.

Demostración
Sea f ∗ como en la Definición 3.1.3. Tenemos i ∈ S cualquier estado tal
que Zt = max{f (πkt (i))|k = 1, ..., n} < f ∗ y pi (t) la probabilidad de que el
AG esté en tal estado i en el tiempo t. Observe que P (Zt 6= f ∗ ) ≥ pi (t) y
eso sucede si y sólo si P (Zt = f ∗ ) ≤ 1 − pi (t).
Por otro lado, sabemos que pi (t) es una componente de la P(t) y P(t) = Pt ,
además por el Teorema 3.1.2, P es primitiva , de donde, por el Teorema A.1.1
sabemos que si t → ∞ entonces pi (t) → p, con p > 0.
Por tanto, tenemos

lim P (Zt = f ∗ ) ≤ 1 − p < 1


t→∞

ası́, no se satisface la condición de la Definción 3.1.3 y P no converge a un


estado óptimo. ¥

3.2 Algoritmo Genético Elitista


Como se mencionó anteriormente, en la naturaleza, el proceso de evolución
mantiene las caracterı́sticas del individuo mejor adapatado hasta el momento;
por ello, modelamos de esta forma al AG. Agregamos a la población del AG
un super individuo que no tomará parte en la aplicación del algoritmo y por
facilidad será colocado en la primera posición de la izquierda. A este tipo de
algoritmo lo llamamos Algoritmo Genético Elitista (AGE).
CAPÍTULO 3. CONVERGENCIA DEL AG 38

Ahora bien, la cardinalidad del espacio de estados S de la Cadena de


Markov correspondiente a 2nl crece a 2(n+1)l , ya que n era el número de
individuos y ahora tenemos una más, el super individuo. Por tanto, el estado
i queda de la forma:
i = (π0 (i), π1 (i), ..., πn (i)) ∈ S,
donde π0 (i) es el super individuo del estado i.
Por otro lado, como el super individuo no es afectado por los operadores
genéticos podemos extender las matrices de cruza, mutación y selección a
las matrices C ∗ , M ∗ y S ∗ , respectivamente, donde C ∗ , M ∗ y S ∗ son matrices
diagonales por bloques, es decir:
   
C M
 C   M 
∗   ∗  
C = . . ,M =  . . ,
 .   . 
C M
 
S
 S 
∗  
S = . . 
 . 
S
donde C, M y S son matrices cuadradas de dimensión 2nl × 2nl como en la
sección anterior; y C ∗ , M ∗ y S ∗ tienen 2l matrices, una por cada posición
original del super individuo y en la diagonal porque si tuviéramos alguna
entrada, diferente de cero, fuera de ésta implicarı́a que el super individuo
pasa a otro estado y contradice la hipótesis de que no toma parte en el
proceso evolutivo. Los espacios vacı́os denotan matrices cero.
Multiplicando tenemos
   
C M S
 C  M  S 
   
C ∗M ∗S ∗ =  . .   . .   . . 
 .  .  . 
C M S
   
CM S P
 CM S   P 
   
= ...  =  ... ,
   
CM S P
CAPÍTULO 3. CONVERGENCIA DEL AG 39

sabemos, por el Teorema 3.1.2 que P > 0.


Representamos con E a la matriz del operador elitismo, lo que hace es
verificar si un estado contiene, o no, un individuo más apto que el super
individuo, si es ası́ lo reemplazará. Sea b en B l el individuo mejor adaptado
de la población i, excluyendo el super individuo, y j el estado tal que

j = (b, π1 (i), π2 (i), ..., πn (i)) ∈ S

ası́ b = π0 (j), entonces los elementos de la matriz de elitismo E, están dados


por: ½
1 si f (π0 (i)) < f (b) = f (π0 (j))
eij = .
0 en caso contrario
Esto es, dada una población en un estado i, al pasar a un estado j el super
individuo cambia por otro de mejor aptitud o pasa al siguiente estado, por
tanto, tenemos sólo dos opciones:
a) Si f (π0 (i)) ≥ f (π0 (j)) entonces eii = 1, esto ocurre cuando el super
individuo permanece intacto.

b) Si tenemos que actualizar el super individuo, por el máximo de su pobla-


ción, esto es, si f (π0 (i)) < f (π0 (j)) entonces eij = 1.
Note que sólo existe un 1 por fila, el elemento eij cuando cambia el super
individuo a uno mejor o eii si no existe un individuo mejor adaptado.
De este modo la matriz E se puede escribir de la siguiente manera
 
E11
 E21 E22 
 
E =  .. ,
 . 
E2l 1 E2l 2 · · · E2l 2l

donde E está de “forma ordenada”, es decir, las poblaciones están aco-


modadas de manera descendente de acuerdo a la calidad de su super in-
dividuo.
Ası́, E11 representa las poblaciones que tienen como super individuo al
elemento óptimo, es decir
E11 = I. (3.2.3)
En E cada fila de bloques i representa las probabilidades de transición
de todas las posibles poblaciones pero con el i-ésimo mejor individuo como
CAPÍTULO 3. CONVERGENCIA DEL AG 40

super individuo, las poblaciones cuyo máximo sea el i-ésimo mejor individuo
se quedaran en el i-ésimo bloque.
Ahora, tenemos que la matriz de transición P∗ del AGE es el producto
de las matrices C ∗ M ∗ S ∗ y E, esto es:
  
P E11
 P   E21 E22 
∗   
P = . .   .. 
 .  . 
P E2l 1 E2l 2 · · · E2l 2l
 
PE11
 PE21 PE22 
 
= .. .
 . 
PE2l 1 PE2l 2 · · · PE2l 2l
   
PE21 PE22
 ..   .. 
Si definimos R :=  . , T :=  .  y observando
PE2l 1 PE2l 2 · · · PE2l 2l
que PE11 = P (por (3.2.3)), entonces podemos escribir a la matriz P∗ de la
siguiente manera · ¸
∗ P 0
P = , (3.2.4)
R T
siendo ası́ reducible.

Teorema 3.2.1 El AGE converge al óptimo global.

Demostración Sea P∗ como en (3.2.4), es decir, es una matriz reducible,


donde P representa los estados ergódicos como en la Proposición 2.4.17. Por
el Teorema 3.1.2 sabemos que P es primitiva, además R, T 6= 0. Por con-
siguiente podemos aplicar el Teorema 2.4.21, esto es, la probabilidad de per-
manecer en un estado no-óptimo converge a cero, y por el Teorema 2.4.15,
la probabilidad de que el proceso se encuentre en un estado óptimo, después
de n pasos, converge a 1, cuando n → ∞.
Concluyendo que se cumple la Definición 3.1.3 y entonces que P∗ converge
al óptimo. ¥
Capı́tulo 4

Cálculos Numéricos

En este capı́tulo, nos olvidaremos un poco de la parte formal del Algo-


ritmo Genético Simple, para enfocarnos en aspectos prácticos. En la primera
sección, hablaremos un poco de algunos tipos de operadores genéticos, ası́
como el código que implementamos con ayuda del paquete Mathematica (Ver
[16]). En la segunda y última sección, se realizarán algunos experimentos,
con los antes mencionados programas; para ası́, ver el comportamiento y
similitudes del AG bajo cambio de operadores.

4.1 Implementación Computacional


Como podemos suponer, los operadores evolutivos o genéticos (cruzamiento,
mutación y selección) pueden ser muy variados; por ejemplo, en el cruza-
miento combinamos los genes de dos o más individuos, sin embargo, pode-
mos tener dos o más tipos de cruzas con el mismo conjunto de individuos,
veamos un ejemplo: Sean I1 = {0, 0, 0, 0} y I2 = {1, 1, 1, 1}, al cruzarlos com-
binando la primera y segunda mitad correspondiente obtenemos {0, 0, 1, 1},
pero el individuo {1, 0, 1, 0} también puede ser hijo de I1 y I2 bajo el tipo
de cruza que toma un gen de cada individuo y los combina. Por otro lado,
en el operador mutación sabemos que el proceso es aleatorio, pero la varia-
bilidad depende de ¿cuántos individuos pueden o deben mutar? y ¿cuántos
genes de éste mutarán? En el operador selección es claro que siempre se selec-
cionará de acuerdo a la aptitud, pero ¿cuántos seleccionar de cada población?
Ası́ podemos enfrentarnos con muchas dudas sobre como influyen los opera-
dores genéticos en la convergencia o rapidez de convergencia del Algoritmo

41
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 42

Genético Simple.
Lo anterior nos hace pensar que tenemos mucho campo para experimen-
tar computacionalmente. En este caso, mantendremos fijos los operadores
cruzamiento y mutación, haciendo algunos ligeros cambios en la selección de
individuos.
Como se mencionó, se utilizará el paquete Mathematica para implementar
el Algoritmo Genético; ası́, para describir las funciones utilizadas para los
experimentos llamaremos individuo de dimensión m a una lista de 0’s y 1’s
con m componentes, por ejemplo: un individuo de dimensión 3 es {0, 1, 0} o
{1, 1, 0}; un gen es una de las entradas de dicho individuo; y una población
es una lista de individuos; esto es, {{0, 1}, {1, 0}, {0, 0}} es una población de
individuos de dos genes.
Ahora se describirá, brevemente, lo que hace cada función utilizada,
seguida por el código con la sintaxis correspondiente para ejecutarlas en
Mathematica.

1. POBLACIÓN TOTAL. La función chain[n], genera la población con


todos los posibles individuos de longitud n, esto es, da como salida la población
de 2n individuos de longitud n todos distintos entre ellos.

POBLACIÓN TOTAL

chain[n ] :=
Module [{a0 = n, c0, k0, c1},
c0 = {{0}, {1}};
k0 = 1;
While[k0 < a0,
c1 =Table[Append[Part[c0, j0], Part[{0, 1}, i0]], {j0, 1,2ˆk0}, {i0, 1,
2}];
c0 = Flatten[c1, 1];
k0 = k0 + 1;
];
Clear[k0, c1];
c0
]
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 43

2. POBLACIÓN ALEATORIA. Dada una población lis y un número n,


la función ranlist[lis,n] genera una nueva pobalción con n individuos de la
población original, éstos son escogidos aleatoriamente y pueden repetirse.

POBLACIÓN ALEATORIA

ranlist[lis , n ] :=
Module[{lis1 = lis, n1 = n, a0, c0, k0, r1, e1, a1},
c0 = Count[lis1, x ];
a0 = { };
k0 = 1;
While[k0 < n1 + 1,
r1 = Random[Integer, {1, c0}];
e1 = Part[lis1, r1];
a1 = Prepend[a0, e1];
k0 = k0 + 1;
a0 = a1;
];
Clear[c0, k0, a1, r1, e1];
a0
]

3. CRUZAMIENTO. El operador cross1[lis, p0] requiere una población


lis, de la cual escoge aleatoriamente dos individuos siempre diferentes y gen-
era un nuevo individuo poniendo la mitad de los genes de uno y la mitad
del otro (para el caso de que los individuos tengan longitud par), en caso
contrario en uno toma la parte entera de la longitud entre dos y del otro
el resto. Realizará este proceso hasta generar p0 nuevos individuos, observe
que un individuo puede ser padre de varios hijos de la siguiente generación
y puede haber hijos iguales pero con padres distintos.

CRUZAMIENTO

cross1[lis , p0 ] :=
Module[{lis1 = lis, lisnueva, p0t = p0, lisnu11, a00, b0, l0, r1, r2, lis2,
e1, e2, j0, e},
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 44

lisnueva = {};
lisnu11 = {};
a00 = Count[lis1, x ];
b0 = Count[First[lis1], x ];
l0 = 1;
While[ l0 < p0 + 1,
r1 = Random[Integer, {1, a00}];
r2 = Random[Integer, {1, a00 - 1}];
lis2 = Delete[lis1, r1];
e1 = Part[lis1, r1];
e2 = Part[lis2, r2];
j0 = 1;
While[j0 < (b0/2) + 1,
e = ReplacePart[e1, Part[e2, j0], j0];
e1 = e;
j0 = j0 + 1;
];
lisnu11 = Prepend[lisnueva, e1];
Clear[r1, r2, j0, e1];
lisnueva = lisnu11;
l0 = l0 + 1;
];
Clear[l0, a00, b0, e, e2, lisnu11, lis2];
lisnueva
]

4. MUTACIÓN. Como sabemos, la mutación es un proceso genético


que no ocurre muy frecuente, por ello, se decidió que no siempre se mutará
algún individuo; en este caso, tiene una probabilidad del 50% de mutar, pero
ésta es aleatoria en cada proceso. Ası́, la función muta[lis], donde lis es
una población, lo que hace primero es elegir aleatoriamente un número, 0 ó
1, si es 0 no habrá mutación; si es 1, entonces escogerá aleatoriamente un
individuo, posteriormente elegirá aleatoriamente un gen de dicho individuo y
lo cambiará, claramente si es 0 por 1 y viceversa. Por consiguiente la salida
de esta función es una población con a lo más un gen de un individuo mutado.
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 45

MUTACIÓN

muta[lis ] :=
Module[{lis1 = lis, listanueva, pro, n0, l0, r1, e1, r2, ge, en},
pro = Random[Integer, {0, 1}];
If[pro == 1,
listanueva = { };
n0 = Count[lis1, x ];
l0 = Count[First[lis1], x ];
r1 = Random[Integer, {1, n0}];
e1 = Part[lis1, r1];
r2 = Random[Integer, {1, l0}];
ge = Part[e1, r2];
If[ge == 1,
en = ReplacePart[e1, 0, r2],
en = ReplacePart[e1, 1, r2];
];
listanueva = ReplacePart[lis1, en, r1];
Clear[n0, l0, r1, e1, r2, ge, en],
listanueva = lis1;
];
listanueva
]

5. FUNCIÓN DE APTITUD. Para calcular la aptitud de un individuo


in, utilizaremos la función fitness[in], recordemos que in es una lista de 0’s y
1’s. Fitness automáticamente generará una lista de la misma dimensión de
in, pero con todas sus componentes 1, en seguida se calculará el producto
punto entre in y el quintuple de la nueva lista y al resultado se le sumará
1, siendo ası́, este último valor la aptitud de in. Note que esta función es
siempre positiva, una de las hipótesis del modelo. Éste es sólo un ejemplo de
función aptitud, tomado de esta forma por simplicidad de cálculos.
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 46

FUNCIÓN DE APTITUD

fitness[in ] :=
Module[{in1 = in, func, lo, inaux},
lo = Count[in1, x ];
inaux = Table[1, {lo}];
func = ((5 inaux).in1) + 1;
Clear[lo, inaux];
func
]

6. POBLACIÓN ORDENADA. Dada una población lis, la función list-


opt[lis] la ordena de acuerdo a la aptitud de cada individuo, es decir, la
salida de ésta es la misma población pero donde el individuo con mayor
aptitud está en la primera posición de la lista y ası́ sucesivamente, lo anterior
lo hace calculando la aptitud de cada individuo y comparándola uno a uno.

POBLACIÓN ORDENADA

listopt[lis ] :=
Module[{lis1 = lis, lo, in1, in2, aux1, aux2, lisoo, i, ini, auxi, j, injj, auxjj,
lista},
lo = Count[lis1, x ];
in1 = Part[lis1, 1];
in2 = Part[lis1, 2];
aux1 = fitness[in1];
aux2 = fitness[in2];
If[aux1 > aux2,
lisoo = {in1, in2},
lisoo = {in2, in1};
];
i = 3;
While[i < lo + 1,
ini = Part[lis1, i];
auxi = fitness[ini];
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 47

j = 1;
While[j < i,
injj = Part[lisoo, j];
auxjj = fitness[injj];
If[auxi >= auxjj,
lista = Insert[lisoo, ini, j];
lisoo = lista;
i = i + 1;
Break[],
j = j + 1;
];
];
If[i == j,
lista = Append[lisoo, ini];
i = i + 1;
lisoo = lista;
];
];
lisoo
]

7. SELECCIÓN. Para seleccionar individuos se requiere una población


lis y el número e1 de individuos que se quieran seleccionar, ası́ selec[lis, e1]
primero ordena la población lis de acuerdo con su aptitud (usando la función
listopt) y luego toma los primeros e1 elementos de ésta lista; dando como
salida una muestra de la población con los e1 mejores individuos, de forma
ordenada de acuerdo a la aptitud.

SELECCIÓN

selec[lis , el ] :=
Module[{lis1 = lis, el1 = el, lisorr, lisorpar, listafin},
lisorr = listopt[lis1];
lisorpar = Partition[lisorr, el1];
listafin = First[lisorpar];
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 48

listafin
]

8. GENÉTICO1. El programa genetico1[l,p] es un Algoritmo Genético,


donde l es la longitud de los individuos y p la condición de paro, es decir,
realizará el ciclo p veces. Como la longitud de los individuos está dada, lo
primero que hace es generar la población total de individuos diferentes de
longitud l, ésta tiene 2l individuos distintos (usando chain); posteriormente,
tomará la mitad de esta población aleatoriamente (usando ranlis). Esta
última será tomada como población inicial, con 2l /2 individuos y entrará al
ciclo del Algoritmo Genético. Cruzará la población muestra usando cross1
hasta generar 2l /2 individuos, no necesariamente diferentes, llamada nueva
generación. En esta nueva generación quizá habrá mutación (vea muta).
Posteriormente, se unirá la generación de padres con la nueva generación;
teniendo ası́ una población de 2l individuos, de padre e hijos. Por último
se seleccionarán los mejores 2l /2 individuos (usando selec). Este proceso
será hecho p veces; dando como salida la población total en paso p, de forma
ordenada de acuerdo a aptitud. Claramente en este algoritmo existe elitismo.

GENÉTICO1

genetico1[l , p ] :=
Module[{li = l, pa = p, pt, tpm, pin, i, lc, lm, poi, psi, auxi},
pt = chain[li];
tpm = Quotient[2ˆli, 2];
pin = ranlist[pt, tpm];
i = 1;
While[i < pa + 1,
lc = cross1[pin, tpm];
lm = muta[lc];
poi = Join[lm, pin];
auxi = listopt[poi];
psi = selec[poi, tpm];
pin = psi;
i = i + 1;
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 49

];
Print[”Paso: ”, i - 1, ” Poblacion total: ”, auxi];
]

9. GENÉTICO003. El algoritmo genetico0003[l,por,p] es muy similar al


anterior, también realiza el ciclo evolutivo p veces y la salida es la corres-
pondiente población total ordenada en el paso p. Sin embargo, la diferencia
en éste es el porcentaje de individuos a seleccionar; esto es, generará la
población total de individuos de longitud l, es decir, 2l individuos diferentes
(usando chain), en seguida tomará una muestra aleatoria de porcentaje por
(dado como entrada). Después, entrará al proceso evolutivo, pero el operador
cross1 cruzará los individuos de muestra hasta generar 2l nuevos individuos,
habrá mutación y por último selección del porcentaje de la población por de
acuerdo a aptitud. Repitiendo este procedimiento p veces. En este caso no
tenemos elitismo, porque el individuo mejor adaptado es sólo quizá padre de
nuevos individuos, mas no pasará a la siguiente generación.

GENÉTICO003

genetico003[l , por , p ] :=
Module[{lo = l, porcc = por, pa = p, pt, porcenta, tpm, pin, i, lc, lm,
psi, auxi},
pt = chain[lo];
porcenta = porcc/100;
tpm = Round[(2ˆlo)*porcenta];
pin = ranlist[pt, tpm];
i = 1;
While[i <pa + 1,
lc = cross1[pin, 2ˆlo];
lm = muta[lc];
psi = selec[lm, tpm];
auxi = listopt[lm];
pin = psi;
i = i + 1;
];
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 50

Print[”Paso: ”, i - 1, ” Poblacion total: ”, auxi];


]

10. GENÉTICO0004. Este programa nos ayuda a encontrar la generación


donde al menos existe un individuo óptimo en la población. Por como está
dada la función de aptitud, sabemos que el máximo siempre será el individuo
con sólo componentes 1; por consiguiente este individuo tiene aptitud mayor.
Ası́, la condición de paro del algoritmo será que la diferencia de aptitud entre
este individuo y el mejor adaptado de la población en cada generación sea
mı́nima, digamos menor que del1. Este programa cuenta las veces que se
realiza el proceso genético, siendo este número la correspondiente salida,
una vez encontrado un elemento muy cercano al óptimo. Al igual que en
genetico003 se puede especificar que porcentaje de muestra de la población
tomar. Ası́ genetico0004[l,por,del1] genera la población de 2l individuos de
longitud l, siendo todos diferentes; después, toma una muestra aleatoria de
porcentaje por del total de individuos, realizando con esta última muestra
el ciclo evolutivo; hasta cumplir con la condición de paro indicada. Observe
que en genetico0004 tampoco hay elitismo.

GENÉTICO0004

genetico0004[l , por , del1 ] :=


Module[{li = l, del = del1, eo, feo, pt, tm, porcc = por, porcenta, pin,
e1, fe1, lc, lm, pis, c},
eo = Table[1, {li}];
feo = fitness[eo];
pt = chain[li];
porcenta = porcc/100;
tm = Round[(2ˆli)*porcenta];
pin = ranlist[pt, tm];
e1 = First[pin];
fe1 = fitness[e1];
c = 0;
While[Abs[fe1 - feo] > del,
lc = cross1[pin, tm];
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 51

lm = muta[lc];
pis = selec[lm, tm];
pin = pis;
e1 = First[pin];
fe1 = fitness[e1];
c = c + 1;
];
Print[”Paso: ”, c];
]

11. GENÉTICO02. En genetico02[l,del] la condición de paro es la misma


que en genetio0004, esto es, para cuando en la población existe al menos
un elemento muy cercano al óptimo, dando como salida el número de dicha
generación. La diferencia con genetico0004 es que no requiere del porcentaje
de población a seleccionar, sino que genera la población total de 2l individuos
diferentes de longitud l (chain[l]), posteriormente toma aleatoriamente una
muestra de 2l /2 individuos, quizá repetidos, con esta muestra entra al ciclo
evolutivo; es decir, cruza individuos hasta generar otros 2l /2 individuos, posi-
blemente haya mutación en esta nueva generación, la nueva generación será
unida con los padres y de esta unión se seleccionarán los mejores, haciendo
esto hasta cumplir con la condición de paro. Claramente tendremos elitismo.

GENÉTICO02

genetico02[l , del1 ] :=
Module[{li = l, del = del1, eo, feo, pt, tpm, pin, e1, fe1, lc, lm, poi, pis,
c},
eo = Table[1, {li}];
feo = fitness[eo];
pt = chain[li];
tpm = Quotient[2ˆli, 2];
pin = ranlist[pt, tpm];
e1 = First[pin];
fe1 = fitness[e1];
c = 0;
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 52

While[Abs[fe1 - feo] > del,


lc = cross1[pin, tpm];
lm = muta[lc];
poi = Join[lm, pin];
pis = selec[poi, tpm];
pin = pis;
e1 = First[pin];
fe1 = fitness[e1];
c = c + 1;
];
Print[”Paso: ”, c];
]

4.2 Resultados Numéricos


En esta última sección utilizaremos las funciones anteriores para hacer una
comparación práctica entre la convergencia del Algoritmo Genético Simple
cambiando un poco el operador selección.
Primero, se corrieron los programas genetico02 y genetico0004 para pobla-
ciones de individuos de longitud 2 a 12, siempre con un error de 0.2, re-
gistrando en la Tabla 1 el número de generación en la cual existe al menos
un individuo óptimo. Ası́, la primer columna es la longitud de los individ-
uos; la segunda, corresponde a los experimentos con genetico02, que como
sabemos tiene elitismo; en las siguientes cinco se usó genetico0004 con un
porcentaje de muestra de 10%, 20%, 50%, 70% y 90%, respectivamente. (Los
guiones en las primeras filas de las columnas del 10% y 20% indican que el
programa no pudo correr adecuadamente debido a lo pequeño de la población
total y este porcentaje es menor a un individuo). Con una simple observación
podemos notar que el algoritmo con elitismo llega mucho más pronto a una
población con al menos un individuo óptimo; al igual que el que toma como
muestra el 90% de la población, en contraste con el algoritmo que toma 10%
de la población. Ası́, podemos concluir que el porcentaje de muestra a inter-
actuar en el proceso evolutivo influye fuertemente en la rapidez de encontrar
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 53

un individuo óptimo. Recuerde que el algoritmo sin elitismo no converge, sin


embargo, es posible encontrar individuos óptimos en la población.

longitud Elitismo 10% 20% 50% 70% 90%


2 5 – – 21 14 1
3 1 – 12 9 2 2
4 2 14 89 32 8 1
5 2 28 6 23 1 183
6 1 510 4 1570 4 2
7 1 2941 1266 5 3 1
8 2 43 6 6855 2 4
9 2 4101 768 1 1 1
10 1 2 1 3 1 1
11 1 10 882 2 4 1
12 1 3 4 2 4 3

Tabla 1

En la Tabla 2 lo que registra es el número de individuos óptimos en la


décima generación, esto se hizo corriendo los programas genetico1 y genetico
0003 con una condición de paro de 10 pasos. La primera columna indica la
longitud de los individuos; la segunda, indica cuántos individuos hay en total
en cada generación; la columna que tiene como encabezado Elitismo se refiere
al programa genetico1; en las siguientes se uso genetico0003 con el respectivo
porcentaje de muestra. (Los guiones indican nuevamente que el sistema no
pudo correr debido a que el porcentaje indicado es menor a un individuo).
En este caso, observamos que entre mayor sea el porcentaje de individuos
que intervienen en el proceso evolutivo es menor el número de individuos
óptimos en la población debido a que los operadores genéticos se realizan
entre muchos individuos no óptimos.
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 54

longitud total Elitismo 10% 20% 50% 70% 90%


2 4 4 – – 3 3 0
3 8 7 – 0 5 7 7
4 16 16 16 16 15 15 2
5 32 32 32 0 31 31 1
6 64 63 63 64 63 24 3
7 128 127 0 127 128 83 0
8 256 256 256 256 255 207 7
9 512 512 512 512 511 163 5
10 1024 1024 1024 1023 1024 500 6
11 2048 2047 2047 2047 2048 452 1
12 4096 4095 4096 4096 4096 586 21

Tabla 2

En la Tabla 3 sólo queremos comparar el algoritmo genético con y sin


elitismo. Como vimos en las tablas anteriores el porcentaje de la muestra
influye fuertemente en el algoritmo genético, ası́ que en el siguiente exper-
imento para el algoritmo genético sin elitismo tomaremos una muestra del
50% para tratar de equilibrar la rapidez de encontrar un elemento óptimo,
pero también tratar de que no haya un sólo óptimo en esta población. Ası́,
lo que se hizo fue correr 20 veces genetico02 y genetico0004 para individuos
de longitud 8 y un margen de error de 0.5, para ver que tanta diferencia hay
entre el algoritmo con elitismo y sin elitismo. Observando la Tabla 3 vemos
que en la mayorı́a de veces el algoritmo elitista converge con mayor rapidez,
como era de esperarse; aunque se demostró que el algoritmo sin elitismo no
converge, aquı́ estamos sólo calculando la generación donde se encuentra un
individuo óptimo, sin embargo, éste no siempre seguirá en la población de
las siguientes generaciones.
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 55

Elitismo Sin elitismo


1 2 2
2 1 1
3 1 2
4 1 1
5 1 7
6 1 1
7 1 7
8 1 15
9 2 1
10 1 3
11 1 5
12 1 1
13 1 315
14 1 1
15 3 7265
16 1 2
17 1 2
18 3 1
19 1 5
20 1 952

Tabla 3

Por último se hicieron modificaciones a genetico0004 y a genetico02 para


que desplieguen en pantalla la población de muestra inicial y la muestra
seleccionada en la generación donde existe al menos un individuo óptimo y
aquı́ mostramos dichos experimentos.

genetico0004[6, 50, .2]

Población de muestra inicial:


{ 1,1,1,1,1,0} ,{ 1,1,1,1,1,0} ,{ 1,1,0,0,1,1} ,{ 0,1,1,0,1,1} ,{ 1,1,0,1,0,1} ,
{ 1,0,1,0,1,1} ,{ 0,1,1,1,1,0} ,{ 0,1,1,0,0,1} , { 1,1,0,0,1,0} ,{ 1,0,1,0,1,0} ,
{ 1,0,0,1,0,1} ,{ 0,1,1,1,0,0} ,{ 1,0,1,1,0,0} , { 0,1,1,0,1,0} ,{ 0,0,1,1,0,1} ,
{ 0,1,1,0,1,0} ,{ 0,1,0,0,1,1} ,{ 1,0,0,1,0,1} , { 1,1,0,1,0,0} ,{ 0,1,1,0,0,1} ,
{ 1,1,1,0,0,0} ,{ 0,1,1,0,0,1} ,{ 0,1,0,0,1,0} , { 0,0,1,0,1,0} ,{ 0,0,1,1,0,0} ,
{ 0,0,1,0,1,0} ,{ 0,0,1,0,1,0} ,{ 0,1,0,1,0,0} , { 0,0,0,1,1,0} ,{ 0,0,1,0,1,0} ,
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 56

{ 0,1,0,0,1,0} ,{ 0,0,0,0,0,1}
Población seleccionada en el paso 441:
{ 1,1,1,1,1,1} ,{ 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} , { 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} ,
{ 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} , { 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} ,
{ 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} , { 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} ,
{ 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} , { 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} ,
{ 0,0,1,1,1,1} ,{ 0,0,1,1,1,1} ,{ 0,0,1,1,1,1} , { 0,0,1,1,1,1} ,{ 0,0,1,1,1,1} ,
{ 0,0,1,1,1,1} ,{ 0,0,1,1,1,1} ,{ 0,0,1,1,1,1} , { 1,0,1,1,1,0} ,{ 0,0,1,1,1,1} ,
{ 0,0,1,1,1,1} ,{ 0,0,1,1,1,1}

genetico02[6, .2]

Población de muestra inicial:


{ 0,1,1,1,1,1} ,{ 0,1,1,1,1,1} ,{ 0,1,0,1,1,1} , { 0,1,0,1,1,1} ,{ 1,1,1,1,0,0} ,
{ 1,1,0,0,1,1} ,{ 0,1,1,1,0,1} ,{ 1,0,0,1,1,1} , { 0,1,1,0,1,1} ,{ 0,1,1,1,1,0} ,
{ 1,1,0,0,1,1} ,{ 1,0,1,1,0,1} ,{ 1,1,1,1,0,0} , { 0,1,1,0,0,1} ,{ 1,1,0,0,0,1} ,
{ 1,0,1,0,0,1} ,{ 1,1,1,0,0,0} ,{ 1,0,1,1,0,0} , { 0,0,1,0,1,1} ,{ 0,1,1,0,0,1} ,
{ 0,1,1,0,0,1} ,{ 1,1,0,0,0,0} ,{ 0,0,1,0,1,0} , { 0,0,0,1,0,1} ,{ 0,0,1,1,0,0} ,
{ 0,0,0,0,1,1} ,{ 0,1,1,0,0,0} ,{ 0,1,0,0,1,0} , { 0,0,1,0,1,0} ,{ 0,1,1,0,0,0} ,
{ 0,1,0,0,0,0} ,{ 1,0,0,0,0,0}
Población seleccionada en el paso 1:
{ 1,1,1,1,1,1} ,{ 0,1,1,1,1,1} ,{ 0,1,1,1,1,1} , { 0,1,1,1,1,1} ,{ 0,1,1,1,1,1} ,
{ 0,1,0,1,1,1} ,{ 0,1,0,1,1,1} ,{ 1,1,1,1,0,0} , { 1,1,0,0,1,1} ,{ 0,1,1,1,0,1} ,
{ 1,0,0,1,1,1} ,{ 0,1,1,0,1,1} ,{ 0,1,1,1,1,0} , { 1,1,0,0,1,1} ,{ 1,0,1,1,0,1} ,
{ 1,1,1,1,0,0} ,{ 1,1,0,1,0,1} ,{ 0,1,1,0,1,1} , { 1,1,1,0,0,1} ,{ 1,0,1,0,1,1} ,
{ 1,1,0,0,1,1} ,{ 1,1,1,1,0,0} ,{ 1,1,1,1,0,0} , { 0,1,1,0,1,1} ,{ 0,1,1,1,0,1} ,
{ 0,1,1,0,0,1} ,{ 1,1,0,0,0,1} ,{ 1,0,1,0,0,1} , { 1,1,1,0,0,0} ,{ 1,0,1,1,0,0} ,
{ 0,0,1,0,1,1} ,{ 0,1,1,0,0,1}

genetico0004[6, 50, .2]

Población de muestra inicial:


{ 1,1,1,1,0,1} ,{ 1,1,0,1,1,1} ,{ 0,1,0,1,1,1} , { 1,1,1,0,0,1} ,{ 1,0,1,0,1,1} ,
{ 1,0,1,1,1,0} ,{ 1,0,0,1,1,1} ,{ 1,1,1,1,0,0} , { 0,1,1,1,1,0} ,{ 1,0,1,1,1,0} ,
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 57

{ 0,1,1,1,0,1} ,{ 0,0,1,1,1,1} ,{ 1,0,1,1,1,0} , { 1,0,0,1,0,1} ,{ 1,0,0,1,1,0} ,


{ 0,1,0,1,0,1} ,{ 1,0,1,0,1,0} ,{ 1,0,0,1,1,0} , { 0,0,1,1,1,0} ,{ 0,0,1,0,1,1} ,
{ 0,1,1,0,0,1} ,{ 0,1,0,1,1,0} ,{ 0,0,0,0,1,1} , { 0,1,1,0,0,0} ,{ 0,0,0,1,1,0} ,
{ 1,1,0,0,0,0} ,{ 0,0,1,1,0,0} ,{ 0,1,1,0,0,0} , { 0,0,0,1,1,0} ,{ 0,0,0,0,0,1} ,
{ 0,0,1,0,0,0} ,{ 0,0,0,0,1,0}
Población seleccionada en el paso 62:
{ 1,1,1,1,1,1} ,{ 0,1,1,1,1,1} ,{ 1,0,1,1,1,1} , { 1,0,1,1,1,1} ,{ 0,1,1,1,1,1} ,
{ 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} , { 0,1,1,1,1,1} ,{ 1,0,1,1,1,1} ,
{ 1,0,1,1,1,1} ,{ 0,1,1,1,1,1} ,{ 1,0,1,1,1,1} , { 1,0,1,1,1,1} ,{ 1,0,1,1,1,1} ,
{ 1,0,1,1,1,1} ,{ 0,1,1,1,1,1} ,{ 0,1,1,1,1,1} , { 1,0,1,1,1,1} ,{ 0,0,1,1,1,1} ,
{ 0,0,1,1,1,1} ,{ 0,1,1,0,1,1} ,{ 0,0,1,1,1,1} , { 0,0,1,1,1,1} ,{ 0,1,1,0,1,1} ,
{ 0,0,1,1,1,1} ,{ 0,0,1,1,1,1} ,{ 0,0,1,1,1,1} , { 0,0,1,1,1,1} ,{ 0,0,0,1,1,1} ,
{ 0,0,0,1,1,1} ,{ 0,0,0,0,1,1}

genetico02[6, .2]

Población de muestra inicial:


{ 0,1,1,1,1,1} ,{ 1,1,1,0,1,1} ,{ 1,1,0,1,1,1} , { 1,0,1,1,1,0} ,{ 1,0,1,0,1,1} ,
{ 1,1,0,0,1,1} ,{ 0,1,1,0,1,1} ,{ 1,1,1,0,0,1} , { 0,1,1,1,0,1} ,{ 1,1,0,1,0,1} ,
{ 1,0,1,0,1,1} ,{ 1,1,0,1,0,1} ,{ 0,0,0,1,1,1} , { 0,0,1,1,0,1} ,{ 1,0,0,1,1,0} ,
{ 0,0,1,1,1,0} ,{ 1,1,0,0,1,0} ,{ 1,0,1,0,1,0} , { 0,1,1,1,0,0} ,{ 1,1,1,0,0,0} ,
{ 1,1,0,0,1,0} ,{ 1,0,0,1,0,1} ,{ 1,0,0,0,1,1} , { 0,0,1,0,1,1} ,{ 0,0,0,1,0,1} ,
{ 1,1,0,0,0,0} ,{ 1,0,1,0,0,0} ,{ 0,1,0,1,0,0} , { 1,0,0,0,1,0} ,{ 0,1,0,0,0,1} ,
{ 0,0,0,0,0,1} ,{ 0,0,0,0,0,0}
Población seleccionada en el paso 2:
{ 1,1,1,1,1,1} ,{ 1,1,1,1,1,1} ,{ 1,1,1,1,0,1} , { 1,1,1,0,1,1} ,{ 1,0,1,1,1,1} ,
{ 1,1,0,1,1,1} ,{ 1,1,1,0,1,1} ,{ 0,1,1,1,1,1} , { 1,0,1,1,1,1} ,{ 1,1,1,1,0,1} ,
{ 1,1,1,1,0,1} ,{ 1,1,1,1,1,0} ,{ 1,1,0,1,0,1} , { 1,0,1,1,0,1} ,{ 1,0,1,1,0,1} ,
{ 1,1,0,1,0,1} ,{ 1,0,1,0,1,1} ,{ 1,0,1,0,1,1} , { 1,0,1,1,0,1} ,{ 1,1,0,0,1,1} ,
{ 1,0,1,0,1,1} ,{ 1,1,0,1,0,1} ,{ 1,1,0,1,0,1} , { 0,1,1,1,0,1} ,{ 0,0,1,1,1,1} ,
{ 1,1,0,1,0,1} ,{ 1,0,1,0,1,1} ,{ 1,1,0,1,0,1} , { 0,1,1,1,0,1} ,{ 1,1,1,0,0,1} ,
{ 0,1,1,0,1,1} ,{ 1,1,0,0,1,1}
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 58

genetico0004[6, 50, .2]

Población de muestra inicial:


{ 1,1,1,1,0,1} ,{ 1,1,1,1,1,0} ,{ 1,1,0,1,1,1} , { 1,1,0,0,1,1} ,{ 1,1,1,0,1,0} ,
{ 0,1,0,1,1,1} ,{ 0,1,0,1,0,1} ,{ 0,1,1,0,1,0} , { 1,1,0,1,0,0} ,{ 0,0,1,0,1,1} ,
{ 0,1,1,0,0,1} ,{ 0,0,0,1,1,1} ,{ 0,0,0,1,1,1} , { 1,1,0,1,0,0} ,{ 1,0,0,1,0,1} ,
{ 0,1,1,0,1,0} ,{ 1,0,0,0,1,0} ,{ 1,0,0,0,0,1} , { 0,0,0,0,1,1} ,{ 0,0,0,1,0,1} ,
{ 0,0,0,1,0,1} ,{ 1,0,0,0,0,1} ,{ 1,0,0,0,1,0} , { 1,0,0,1,0,0} ,{ 1,0,0,0,1,0} ,
{ 0,0,0,1,0,0} ,{ 0,1,0,0,0,0} ,{ 0,1,0,0,0,0} , { 0,0,0,0,0,1} ,{ 0,0,1,0,0,0} ,
{ 1,0,0,0,0,0} ,{ 0,0,0,1,0,0}
Población seleccionada en el paso 1:
{ 1,1,1,1,1,1} ,{ 1,1,0,1,1,1},{ 0,1,1,0,1,1} , { 0,1,1,1,0,1} ,{ 0,1,1,0,1,1} ,
{ 1,0,0,1,1,1} ,{ 0,1,0,1,1,1} ,{ 0,1,0,1,1,1} , { 1,0,0,1,0,1} ,{ 0,1,0,1,0,1} ,
{ 0,1,1,0,1,0} ,{ 1,1,1,0,0,0} ,{ 1,1,0,0,1,0} , { 1,0,0,1,0,1} ,{ 1,0,0,0,1,1} ,
{ 0,1,0,1,0,1} ,{ 1,1,0,0,1,0} ,{ 1,0,0,1,0,1} , { 0,1,1,0,0,0} ,{ 0,1,0,1,0,0} ,
{ 0,0,0,0,1,1} ,{ 0,0,0,1,0,1} ,{ 0,1,0,0,0,1} , { 1,0,0,1,0,0} ,{ 0,0,0,0,0,1} ,
{ 0,0,0,1,0,0} ,{ 0,0,0,0,1,0} ,{ 1,0,0,0,0,0} , { 1,0,0,0,0,0} ,{ 0,0,0,0,0,1} ,
{ 0,0,0,0,0,0} ,{ 0,0,0,0,0,0}

genetico02[6, .2]

Población de muestra inicial


{ 1,1,1,1,1,0} ,{ 1,1,0,1,1,1} ,{ 1,1,1,0,1,1} , { 1,1,0,1,1,1} ,{ 1,1,1,0,0,1} ,
{ 0,1,1,0,1,1} ,{ 1,1,1,1,0,0} ,{ 1,1,0,1,0,1} , { 0,0,1,1,1,1} ,{ 1,0,1,1,0,1} ,
{ 0,0,1,1,0,1} ,{ 0,1,1,1,0,0} ,{ 1,0,1,0,1,0} , { 0,1,0,0,1,1} ,{ 1,0,0,1,1,0} ,
{ 1,0,1,0,1,0} ,{ 1,0,0,1,0,1} ,{ 0,1,0,0,1,1} , { 1,0,1,0,0,1} ,{ 0,0,1,0,1,1} ,
{ 0,0,0,1,1,1} ,{ 1,0,1,0,1,0} ,{ 0,1,0,1,0,0} , { 0,0,1,0,1,0} ,{ 0,0,1,1,0,0} ,
{ 0,1,0,1,0,0} ,{ 0,1,1,0,0,0} ,{ 0,0,0,0,1,1} , { 0,0,0,0,0,1} ,{ 1,0,0,0,0,0} ,
{ 0,0,1,0,0,0} ,{ 0,0,0,0,0,0}
Población seleccionada en el paso 3:
{ 1,1,1,1,1,1} ,{ 1,1,1,1,1,1} ,{ 1,1,1,1,1,1} , { 1,1,1,1,1,1} ,{ 1,1,1,1,1,1} ,
{ 1,1,0,1,1,1} ,{ 1,1,1,0,1,1} ,{ 1,1,1,0,1,1} , { 1,1,1,0,1,1} ,{ 1,1,1,0,1,1} ,
{ 1,1,0,1,1,1} ,{ 1,0,1,1,1,1} ,{ 1,1,1,1,1,0} , { 1,1,0,1,1,1} ,{ 1,1,1,0,1,1} ,
{ 1,1,0,1,1,1} ,{ 1,1,1,0,1,1} ,{ 1,1,0,1,1,1} , { 1,1,1,1,0,1} ,{ 1,0,1,1,1,1} ,
{ 1,1,1,0,1,1} ,{ 1,1,1,0,1,1} ,{ 1,1,1,1,1,0} , { 1,0,1,1,1,1} ,{ 1,1,1,0,1,1} ,
{ 1,1,0,1,1,1} ,{ 1,1,1,1,0,1} ,{ 1,0,1,1,1,1} , { 1,1,0,1,1,1} ,{ 1,1,1,1,0,1} ,
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 59

{ 1,0,1,1,0,1} ,{ 1,0,1,1,0,1}

genetico0004[6, 50, .2]

Población de muestra inicial:


{ 1,1,0,1,1,1} ,{ 1,0,1,1,1,1},{ 1,1,1,1,1,0} , { 1,1,0,1,0,1} ,{ 0,1,0,1,1,1} ,
{ 1,1,0,0,1,1} ,{ 1,1,0,0,1,1} ,{ 1,0,0,1,1,1} , { 0,1,1,0,1,1} ,{ 1,1,1,0,1,0} ,
{ 1,0,1,0,1,1} ,{ 0,1,1,1,1,0} ,{ 0,1,0,1,1,1} , { 1,1,0,0,1,1} ,{ 1,1,0,0,1,1} ,
{ 1,0,1,0,1,0} ,{ 0,0,1,0,1,1} ,{ 0,0,0,1,1,1} , { 1,1,0,0,0,1} ,{ 1,1,0,0,1,0} ,
{ 0,0,1,0,1,1} ,{ 0,1,0,0,1,1} ,{ 0,1,0,1,0,1} , { 0,1,1,1,0,0} ,{ 1,1,1,0,0,0} ,
{ 0,0,0,1,0,1} ,{ 0,0,0,0,1,1} ,{ 1,1,0,0,0,0} , { 0,0,0,1,0,1} ,{ 0,0,0,0,1,1} ,
{ 0,0,0,0,1,1} ,{ 0,0,0,0,1,1}
Población seleccionada en el paso 2:
{ 1,1,1,1,1,1} ,{ 1,1,1,1,0,1} ,{ 1,1,0,1,1,1} , { 0,1,1,1,1,1} ,{ 1,0,1,1,1,1} ,
{ 0,1,1,0,1,1} ,{ 0,1,1,0,1,1} ,{ 0,0,1,1,1,1} , { 1,1,0,1,0,1} ,{ 1,1,0,1,0,1} ,
{ 0,1,0,1,1,1} ,{ 0,0,1,1,1,1} ,{ 0,1,0,1,1,1} , { 1,1,0,0,1,1} ,{ 1,1,0,0,1,1} ,
{ 1,1,0,1,0,1} ,{ 1,1,0,1,0,1} ,{ 0,0,1,1,0,1} , { 0,0,0,1,1,1} ,{ 0,1,1,0,1,0} ,
{ 0,0,0,1,1,1} ,{ 1,0,0,0,1,1} ,{ 1,1,1,0,0,0} , { 0,1,0,0,1,1} ,{ 0,0,1,0,1,0} ,
{ 0,1,0,1,0,0} ,{ 1,1,0,0,0,0} ,{ 1,0,1,0,0,0} , { 0,0,0,1,0,0} ,{ 0,0,0,0,1,0} ,
{ 0,1,0,0,0,0} ,{ 0,0,0,0,0,0}

genetico02[6, .2]

Población de muestra inicial:


{ 1,1,0,1,1,1} ,{ 1,1,1,1,0,1} ,{ 1,1,1,1,0,1} , { 1,0,0,1,1,1} ,{ 1,0,0,1,1,1} ,
{ 1,0,0,1,1,1} ,{ 1,1,1,0,1,0} ,{ 1,1,0,1,1,0} , { 1,0,1,1,1,0} ,{ 0,1,1,1,0,1} ,
{ 0,1,0,1,1,1} ,{ 0,1,1,0,1,1} ,{ 1,1,0,1,0,0} , { 0,0,1,1,1,0} ,{ 1,0,0,1,0,1} ,
{ 1,0,0,0,1,1} ,{ 0,0,1,1,1,0} ,{ 1,1,1,0,0,0} , { 1,0,1,0,0,1} ,{ 1,0,0,1,1,0} ,
{ 0,1,0,1,0,1} ,{ 0,0,0,1,0,1} ,{ 1,0,0,1,0,0} , { 1,0,1,0,0,0} ,{ 0,0,0,1,1,0} ,
{ 1,0,1,0,0,0} ,{ 0,1,0,0,1,0} ,{ 1,0,0,0,0,1} , { 1,0,0,1,0,0} ,{ 0,1,0,1,0,0} ,
{ 1,0,0,1,0,0} ,{ 0,0,0,1,0,0}
Población seleccionada en el paso 1:
{ 1,1,1,1,1,1} ,{ 1,1,0,1,1,1} ,{ 1,1,1,1,0,1} , { 1,1,1,1,0,1} ,{ 1,0,1,1,1,1} ,
{ 1,0,1,1,1,1} ,{ 1,1,1,1,1,0} ,{ 1,1,0,1,1,1} , { 0,1,1,1,1,1} ,{ 1,0,0,1,1,1} ,
CAPÍTULO 4. CÁLCULOS NUMÉRICOS 60

{ 1,0,0,1,1,1} ,{ 1,0,0,1,1,1} ,{ 1,1,1,0,1,0} , { 1,1,0,1,1,0} ,{ 1,0,1,1,1,0} ,


{ 0,1,1,1,0,1} ,{ 0,1,0,1,1,1} ,{ 0,1,1,0,1,1} , { 1,0,1,1,0,1} ,{ 1,0,0,1,1,1} ,
{ 1,1,0,1,1,0} ,{ 0,0,1,1,1,1} ,{ 0,1,0,1,1,1} , { 1,1,0,1,0,0} ,{ 0,0,1,1,1,0} ,
{ 1,0,0,1,0,1} ,{ 1,0,0,0,1,1} ,{ 0,0,1,1,1,0} , { 1,1,1,0,0,0} ,{ 1,0,1,0,0,1} ,
{ 1,0,0,1,1,0} ,{ 0,1,0,1,0,1}

4.3 Conclusión
Los Algoritmos Genéticos son algoritmos para encontrar soluciones óptimas
en espacios de búsqueda amplios. Dichos algoritmos se basan en la Teorı́a de
la Evolución; esto es, dado un conjunto de posibles soluciones, éstas operan
cruzandose y mutando para finalmente seleccionar los más aptos, ası́ hasta
encontrar el elemento óptimo, esto es lo que establece la Teorı́a de la Selección
Natural con los individuos y las especies.
Para demostrar que el Algoritmo Genético converge al óptimo, nos basamos
en el artı́culo, de Günter Rudolph, Convergence Analysis of Canonical Ge-
netic Algorithms, en donde la principal herramienta matemática son las Ca-
denas de Markov; sin embargo, para comprenderlas de forma adecuada se
desarrolló todo un capı́tulo en este trabajo. Posteriormente se desarrolló de
la forma más clara posible el artı́culo antes mencionado; donde el Algoritmo
Genético es modelado como una Cadena de Markov y usando propiedades
de convergencia de éstas obtenemos como resultado la convergencia del algo-
ritmo bajo la condición de Elitismo.
Finalmente, se implementó, como ejemplo, un Algoritmo Genético con
ayuda del paquete Mathematica para observar computacionalmente la con-
vergencia bajo algunos cambios de operadores.
El campo de investigación sobre los Algoritmos Genéticos es muy amplio,
ya que por ejemplo, aquı́ sólo se abarcó brevemente a los algoritmos simples,
por otro lado, están los algoritmos multi-objetivo, los cuales tienen mayor
aplicación para resolver problemas de la vida dı́aria; también el cálculo de
orden de convergencia, es decir, el número de iteraciones necesarios para
encontrar el óptimo; entre otros aspectos por estudiar.
Apéndice A

Teoremas

A.1 Teorema de Convergencia


Teorema A.1.1 Sea A una matriz estocástica primitiva. Entonces Ak con-
verge cuando k → ∞ a una matriz estocástica positiva estable A∞ , con com-
ponentes diferentes de cero.

Demostración
Ver [10, pag. 123]

61
Apéndice B

Glosario

Terminologı́a Biológica
Adaptación. Conjunto de caracterı́sticas estructurales, fisiológicas o de
comportamiento que incrementan la probabilidad de que un individuo sobre-
viva o deje más progenie en un ambiente particular.
Adecuación. Conjunto de caracterı́sticas adaptativas de un organismo a su
ambiente y que se miden por su capacidad reproductiva.
ADN. Ácido presente en todas las células, es el material hereditario que
contiene toda la información genética.
Alelo. Forma alternativa de un gen.
Ambiente. Condiciones externas que afectan a un individuo y que pueden
ser fı́sicas o bióticas.
Carácter. Caracterı́stica morfológica o conductual de un organismo.
Codificar. Capacidad que tiene la secuencia de nucleótidos en el ADN para
determinar o especificar la secuencia de aminoácidos que debe tener la cadena
polipeptı́dica de cada tipo de proteı́na.
Competición. Interacción de individuos de la misma o diferente especie
en la que un recurso limitado, que es requerido por los individuos, no es
suficiente para satisfacer las necesidades de todos ellos.
Cromosoma. Estructura visible al microscopio que se observa antes de la
duplicación celular en el núcleo de las células. Por lo general tiene forma de
bastoncillo. Está compuesto por el ADN y algunas proteı́nas. El número de
cromosomas es siempre el mismo para todos los individuos de una especie
y para todas las células de un individuo, excepto para las células sexuales,
cuyo número se reduce a la mitad.
Diploide. Célula u organismo con dos juegos de cromosomas

62
APÉNDICE B. GLOSARIO 63

Diversidad biológica. Variabilidad del número de especies animales y


vegetales representadas en un área.
Dominancia. Cuando hay elelos alternativos de un gen, la dominancia la
ejerce aquél que se expresa en la presencia del otro.
Dominante. Gen que produce su efecto genotı́picamente independiente de
la forma del gen correspondiente en el cromosoma homólogo del organismo.
Especie. Grupo de organismos que pueden cruzarse en forma sexual y que
está reproductivamente aislado de otros grupos semejantes de organismos.
Evolución. Cualquier cambio permanente en la estructura genética de los
organismos de una generación siguiente.
Fenotipo. Caracterı́sticas morfológicas, fisiológicas y conductuales de un
individuo o población.
Frecuencia genética. Proporción de copias de un gen en una población.
Frecuencia genotı́pica. Proporción de un genotipo en una población.
Gameto. Célula sexual, aporta la mitad del material genético (por lo que
son haploides) y que al unirse conforman el huevo fecundado, a partir del
cual se genera un nuevo ser vivo.
Gen. Unidad hereditaria que determina cada alternativa de una carac-
terı́stica o rasgo genético.
Genes homólogos. Genes que se hallan en pares, cada uno en un cromo-
soma distinto, pero equivalente, provenientes de cada uno los progenitores.
Genotipo. Conjunto de la información genética que porta un individuo.
Haploide. Estado en el que cada cromosoma está representado una sóla
vez, en contraste con el estado diploide.
Heterócigo. Constitución genética de un individuo que porta un alelo do-
minante de un progenitor y un alelo recesivo del otro progenitor.
Hı́brido. Individuo cuya constitución genética para un determinado carácter
consiste en un alelo de un progenitor y un alelo del otro progenitor.
Homócigo. Individuo cuya constitución genética consiste en el mismo alelo,
dominante o recesivo, para carácter hereditario.
Medio. La suma total de las condiciones fı́sicas y biológicas en que vive un
organismo.
Meiosis. Proceso de división celular que llevan a cabo las células sexuales
mediante el cual se obtienen gametos.
Mutación. Cambio en un gen que modifica en forma estable las carac-
terı́sticas controladas por dicho gen.
Mutante. Individuo en el que una o varias caracterı́sticas han cambiado en
forma abrupta de las del resto de la población.
APÉNDICE B. GLOSARIO 64

Población. Biológicamente hablando, debe llenar las siguientes caracterı́s-


ticas: a) ser un grupo de organismos de una especie, b) que puedan inter-
cambiar genes, c) que interactúen, d) que se desarrollen bajo condiciones
ambientales similares, e) que se encuentren bajo la influencia de sus propios
efectos sobre el ambiente y la de sus vecinos y f) cuya seleción natural está
afectada por sus atributos demográficos y por el medio fı́sico.
Progenie. Descendencia dejada por un organismo o pareja de organismos
como resultado de una reproducción sexual.
Recesivo. Alelo cuya expresión fenotı́pica están encubierta por la forma
dominante del alélo presente.
Recombinación. Intercambio de material hereditario entre cromosomas
homólogos durante la meiosis.
Segregación. Separación de los cromosomas homólogos durante las meiosis
o formación de las células sexuales.
Selección natural. Teorı́a medular del darwinismo, que explica por qué los
organismos mejor adaptados que otros al medio en que viven dejan mayor
número de progenie fértil y viable propagando hereditariamente sus carac-
terı́sticas favorables en la población.
Sistema de cruzamiento. Forma de apareamiento entre individuos basada
en las caracterı́sticas de las parejas.
Variación fenotı́pica. Expresión de la acción de los genes y el ambiente en
las caracterı́sticas cuantitativas.
Variación genética. Variación del carácter de un organismo, resultado de
una mutación o recombinación genética.
Referencias

[1] Adke S. R. y Manjunath S. M. An Introduction to Finite Markov Pro-


cesses. John Wiley and Sons, 1984.

[2] Ash B. R., Real Analysis and Probability. Academic Press, 1972.

[3] Bäck Thomas, Evolutionary Algorithms in Theory and Practice. Oxford


University Press, New York, 1996.

[4] Barahona Ana y Piñero Daniel, Genética: La Continuidad de la Vida.


La Ciencia desde México/125, Fondo de Cultura Económica S. A. de C.
V.

[5] Coello Coello Carlos, La Computación Evolutiva en el Contexto de la


Inteligencia Artificial. Artı́culo electrónico (LANIA).

[6] Cruz Martı́nez Maximino, Convergencia de Variables Aleatorias. Tesis


de Licenciatura, Facultad de Matemáticas, Universidad Veracruzana,
1999.

[7] Günter Rudolph, Convergence Analysis of Canonical Genetic Algo-


rithms. IEEE Transactions on Neural Networks, 96-101, 1994.

[8] Hernández-Lerma O. y Hoyos Reyes L. F. Apuntes para un curso in-


troducctorio de procesos estocásticos. Departemento de Sistemas UAM-
Azcapotzalco, Septiembre 2000.

[9] Holland Jonh H., Adaptation in Natural and Artificial Systems. Univer-
sity of Michigan Press, 1975.

[10] Iosifescu Marius, Finite Markov Processes and Their Applications. John
Wiley y Sons, Romania, 1980.

65
REFERENCIAS 66

[11] Kemeny J. G. y Snell J. L. Finite Markov Chains. Van Nostrand Com-


pany, Inc. Canadá, 1960.

[12] Reyes Sierra Marı́a Margarita, Estudio de Algunos Aspectos Teóricos de


los Algoritmos Genéticos. Tesis de Maestrı́a en Inteligencia Artificial,
Universidad Veracruzana, 2002.

[13] Royden H. L. Real Analysis. Macmilla Publishing Company, Third Edi-


tion.

[14] Sarukhan José, Las Musas de Darwin. La Ciencia desde México/70,


Fondo de Cultura Económica S. A. de C. V.

[15] Seneta E. Non-negative Matrices and Markov Chains, Second Edition.


Springer-Verlag, 1981.

[16] Wolfram Stephen, The Mathematica Book, 4th Ed. Wolfram Media y
Cambridge University Press, 1999.

También podría gustarte