II RESEARCH DESIGN
4. Data Collection •
Resulta evidente que la elección de un optimizador resulta condicionada por la representación del individuo, en esta propuesta se seleccionó tres algoritmos de la meta heurística Optimización basada en Colonias de Hormigas, las cuales han sido mencionadas en el capítulo anterior.
Se recuerda que seleccionamos esta meta heurística debido a la existencia de una investigación anterior donde se resuelve nuestro problema utilizando Algoritmos Genéticos y por tanto se necesita conocer si con el uso de otras meta heurísticas se hace posible obtener mejores resultados.
52 En la meta heurística propuesta para la modelación de nuestro problema específico, la construcción de las soluciones de una hormiga se determina por el cálculo de una probabilidad mediante la siguiente ecuación, la cual se deduce de la ecuación Eq. 1.20:
𝑃
𝑖𝑗= {
[𝑇𝑖𝑗]𝛼∗ [𝑁𝑖𝑗]𝛽∑[𝑇𝑖𝑗]𝛼∗ [𝑁𝑖𝑗]𝛽
}
Eq. 2.1
Donde 𝑃𝑖𝑗 denota la probabilidad de asignar el estado j al clasificador i. Los posibles estados para cada clasificador son {0,1} los cuales serán explicados en el siguiente subepígrafe.
El término 𝑇𝑖𝑗 representa la matriz de feromonas la cual tiene dimensiones n x 2, donde n es la cantidad de clasificadores individuales y solo tiene dos columnas haciéndose corresponder cada una de ellas con los posibles estados.
El término 𝑁𝑖𝑗 representa la matriz que guarda la información heurística, la cual tiene las mismas dimensiones que la matriz anterior. Dicha información se obtiene de las heurísticas que se proponen en el 2.2.3.
Los valores 𝛼 𝑦 𝛽 son importantes en la modelación del problema también por lo explicado en el 1.8.1, es preciso establecer una adecuada proporción entre la información heurística y la información de los rastros de feromona. En la modelación se utilizaron los siguientes valores: 𝛼 = 3 𝑦 𝛽 = 2 debido al resultado de una revisión bibliográfica donde la mayoría de los autores proponen dichos valores (Nápoles, 2015).
A continuación se describen otros aspectos fundamentales en la modelación de esta meta heurística para la solución de nuestro problema.
2.2.1. Diseño del individuo
En el diseño del individuo tuvimos en cuenta que estábamos en presencia de un problema combinatorio con 2𝑛 posibles soluciones, donde 𝑛 denota el número total de clasificadores elegidos por el usuario. Por tanto resulta natural que la representación de una solución sea a través de un vector binario 𝐺⃗⃗⃗⃗⃗ 𝑥 𝜖 {0,1}𝑛 donde a cada posición del vector se haga corresponder un clasificador en específico y 0 denota la no inclusión del clasificador i en la solución y 1 denota la inclusión del clasificador i en la solución, la longitud del vector
53 denota la cantidad máxima de clasificadores que pueden ser incluidos en la solución. Entonces cada individuo o solución, está representando una combinación específica de clasificadores y por lo tanto un multiclasificador. La representación matemática de lo descrito anteriormente sería la siguiente:
𝐺⃗⃗⃗⃗⃗ = (𝐶𝑥 1, 𝐶2, … , 𝐶𝐿) 𝑑𝑜𝑛𝑑𝑒 𝐶𝑖= { 0 , 𝑠𝑖 𝑒𝑙 𝑐𝑙𝑎𝑠𝑖𝑓𝑖𝑐𝑎𝑑𝑜𝑟 𝑖 𝑛𝑜 𝑒𝑠𝑡á 𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑒
1 , 𝑠𝑖 𝑒𝑙 𝑐𝑙𝑎𝑠𝑖𝑓𝑖𝑐𝑎𝑑𝑜𝑟 𝑖 𝑒𝑠𝑡á 𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑒 Eq. 2.2
2.2.2. Diseño de la función de calidad de la solución
Para conformar la función de evaluación de un individuo, es decir, de una solución, se tuvo en cuenta un balance en cuanto a la clasificación del error y reducción de la dimensión del problema.
Para una mejor comprensión de la función objetivo, primeramente se explican los términos error global y error individual mediante las siguientes ecuaciones, que están en función de los resultados de la clasificación:
𝐸𝑟𝑟𝑜𝑟𝐺𝑙𝑜𝑏𝑎𝑙 = 1 − 𝐴𝑐𝑐𝑢𝑟𝑎𝑐𝑦𝐺𝑙𝑜𝑏𝑎𝑙 Eq. 2.3
𝐸𝑟𝑟𝑜𝑟𝐼𝑛𝑑𝑖𝑣𝑖𝑑𝑢𝑎𝑙 = 1 − 𝐴𝑐𝑐𝑢𝑟𝑎𝑐𝑦𝐼𝑛𝑑𝑖𝑣𝑖𝑑𝑢𝑎𝑙 Eq. 2.4
∆𝐸 = 𝐸𝑟𝑟𝑜𝑟𝐺𝑙𝑜𝑏𝑎𝑙− 𝐸𝑟𝑟𝑜𝑟𝐼𝑛𝑑𝑖𝑣𝑖𝑑𝑢𝑎𝑙 Eq. 2.5
Se puede observar que el error global es el resultado de restar 1 menos la exactitud del
multiclasificador, mientras que el error individual es el resultado de restar 1 menos la exactitud del mejor clasificador individual incluido en la combinación del sistema. El ∆𝐸 es la diferencia entre estos dos términos.
La ecuación Eq. 2.6, representa la función de calidad de la solución, está definida por ramas, dependiendo del valor resultante de ∆𝐸, que fue explicado anteriormente.
𝐹( 𝐺⃗⃗⃗⃗⃗ ) = {𝑥 𝑓( 𝐺⃗⃗⃗⃗⃗ ) , 𝑠𝑖 ∆𝐸 < 0 𝑥 𝑓( 𝐺⃗⃗⃗⃗⃗ ) + 𝑃(𝐸𝑖, 𝐸𝑔) , 𝑠𝑖 ∆𝐸 > 0 𝑥 Eq. 2.6 𝑑𝑜𝑛𝑑𝑒: 𝑓(𝐺⃗⃗⃗⃗⃗ ) = 𝜇 ∗ (1 − 𝐴𝑥 𝐺) + (1 − 𝜇) ∗ (|𝑥|𝑛) = 𝜇 ∗ (𝐸𝐺) + (1 − 𝜇) ∗ (|𝑥|𝑛) Eq. 2.7
54 Es decir, 𝑓(𝐺⃗⃗⃗⃗⃗ )𝑥 es igual a la suma entre el error global en la clasificación de la combinación (solución o individuo) y la cantidad de clasificadores incluidos en ella. La constante 𝜇 se utiliza para otorgarle mayor prioridad a uno de los términos de la función, en este caso se usó 𝜇 = 0.6, dándole mayor importancia a la exactitud de la clasificación, es decir, al error global de la solución (individuo o combinación). En epígrafes posteriores a este capítulo se muestra un estudio realizado para proponer el valor más eficiente para esta constante según las restricciones de nuestro problema.
El valor resultante de la función objetivo siempre se encuentra en un intervalo entre 0 y 1, debido a que el mayor valor posible de cada término es igual a 0.6 y 0.4 respectivamente, esto ocurre cuando la exactitud de la solución es muy pequeña o igual a 0 y la cantidad de clasificadores incluidos en la solución es la mayor posible.
Mientras que el menor valor posible del primer término es igual a 0, esto ocurre cuando la exactitud de la solución es la máxima posible y el segundo término también está acotado inferiormente por 0, aunque su menor valor posible nunca llega a tomar este valor pues por las restricciones del problema, que se explicaran más adelante, nunca se tendrá como solución una combinación donde no se encuentre ningún clasificador incluido.
Cuando ∆𝐸 > 0 significa que el error global de la combinación es mayor que el error del mejor clasificador individual incluido en ella y esto no es lo que se desea ya que queremos encontrar combinaciones que superen al mejor clasificador individual en ella, por lo tanto se penaliza la función sumándole un término llamado factor de penalización, el cual se muestra a continuación: 𝑃(𝐸𝑖, 𝐸𝑔) =∆𝐸∗(1−𝐹(𝐺⃗⃗⃗⃗⃗⃗ ))𝑥 𝐸𝑔 = (𝑒𝑟𝑟𝑜𝑟𝑔𝑙𝑜𝑏𝑎𝑙− 𝑒𝑟𝑟𝑜𝑟𝑖𝑛𝑑𝑖𝑣𝑖𝑑𝑢𝑎𝑙) 𝑒𝑟𝑟𝑜𝑟𝑔𝑙𝑜𝑏𝑎𝑙 ∗ (1 − 𝑓(𝐺⃗⃗⃗⃗⃗ ))𝑥 Eq. 2.8
Como se puede observar en la fórmula anterior el factor consiste en penalizar a los individuos (soluciones o combinaciones) que no cumplan con superar la exactitud del mejor clasificador individual.
El término 𝑒𝑟𝑟𝑜𝑟𝑔𝑙𝑜𝑏𝑎𝑙− 𝑒𝑟𝑟𝑜𝑟𝑖𝑛𝑑𝑖𝑣𝑖𝑑𝑢𝑎𝑙 muestra en cuánto el multiclasificador está siendo peor que el mejor clasificador individual de la combinación. La división entre el
55 Cuando se usa el factor de penalización el intervalo de los valores resultantes de la función también estarán entre 0 y 1 pues el término ∆𝐸𝐸𝑔 toma valores menores o iguales a 1, cuando este término toma su máximo valor posible, entonces su multiplicación con el factor
1 − 𝐹(𝐺⃗⃗⃗⃗⃗ )𝑥 da como resultado este mismo factor y precisamente esto es lo que le falta a la
función objetivo para sumar 1.
A continuación se muestra la función con todas sus especificidades:
𝐹(𝐺⃗⃗⃗⃗⃗ ) = {𝑥 𝑓(𝐺⃗⃗⃗⃗⃗ ) +𝑥 (𝑒𝑟𝑟𝑜𝑟𝑔𝑙𝑜𝑏𝑎𝑙− 𝑒𝑟𝑟𝑜𝑟𝑖𝑛𝑑𝑖𝑣𝑖𝑑𝑢𝑎𝑙) 𝑒𝑟𝑟𝑜𝑟𝑔𝑙𝑜𝑏𝑎𝑙 ∗ (1 − 𝑓(𝐺⃗⃗⃗⃗⃗ )) , 𝑠𝑖 𝑒𝑟𝑟𝑜𝑟𝑥 𝑔𝑙𝑜𝑏𝑎𝑙− 𝑒𝑟𝑟𝑜𝑟𝑖𝑛𝑑𝑖𝑣𝑖𝑑𝑢𝑎𝑙≥ 0 𝑓(𝐺⃗⃗⃗⃗⃗ ) , 𝑠𝑖 𝑒𝑟𝑟𝑜𝑟𝑥 𝑔𝑙𝑜𝑏𝑎𝑙− 𝑒𝑟𝑟𝑜𝑟𝑖𝑛𝑑𝑖𝑣𝑖𝑑𝑢𝑎𝑙< 0 } Eq. 2.9
Finalmente se desea minimizar a 𝐹( 𝐺⃗⃗⃗⃗⃗ )𝑥 .
2.2.3. Estimación de la información heurística
En el diseño de la función de evaluación heurística se utilizó primeramente un criterio basado en la diversidad del conjunto de clasificadores en la combinación, es decir, si al clasificador i se le asigna el estado 0 (no está en la combinación) la heurística es igual a la diversidad del conjunto sin ese clasificador, en caso contrario, si se asigna el estado 1 (está en la combinación) entonces la heurística es igual a la diversidad del conjunto teniendo en cuenta ese clasificador incluido. A continuación en la ecuación Eq. 2.10 se muestra lo explicado anteriormente.
Además se proponen adicionalmente el uso de dos heurísticas más: una de ellas basada en el uso de la exactitud de la clasificación, es decir, si al clasificador i se le asigna el estado 0 (no está en la combinación) la heurística es igual a la diferencia entre la unidad y la exactitud del clasificador que es lo mismo que el error cometido por él, en caso contrario si se asigna el estado 1 (está en la combinación) entonces la heurística es igual a la exactitud del clasificador.
Finalmente la última heurística está conformada por la suma de las dos anteriores en cada uno de los respectivos estados asignados al clasificador. El valor resultante es dividido entre dos con el objetivo de asegurar que el resultado se encuentre en el intervalo [0,1], manteniéndose así el mismo intervalo para los resultados de cada heurística. En las ecuaciones Eq. 2.11 y Eq. 2.12 se muestra también lo explicado con anteriormente.
56 𝐻𝐷 → 𝑁𝑖𝑗 𝑁𝑖(𝑗 = 0) = 𝐷({𝐶1, … , 𝐶𝑛}) ∕ {𝐶𝑖} Eq. 2.10 𝑁𝑖(𝑗 = 1) = 𝐷({𝐶1, … , 𝐶𝑛}) 𝐻𝐸 → 𝑁𝑖𝑗 𝑁𝑖(𝑗 = 0) = 1 − 𝐴(𝐶𝑖) Eq. 2.11 𝑁𝑖(𝑗 = 1) = 𝐴(𝐶𝑖) 𝐻𝐷+𝐸 = 𝐻𝐷+ 𝐻𝐸 2 Eq. 2.12 2.2.4. Diseño de la restricciones
El problema tiene dos restricciones fundamentales, necesarias para la construcción de un sistema multiclasificador, estas se presentan a continuación:
1. 𝐴𝐺 > 𝐴𝐼 , ⩝ 𝑖 Eq. 2.13
2. |𝑥| >= 2 Eq. 2.14
La primera restricción significa que la exactitud global (exactitud del multiclasificador) tiene que ser mayor que la exactitud de todos los clasificadores individuales y por tanto que el mejor de ellos a la vez. .
La segunda restricción plantea que el número de clasificadores incluidos en una solución debe ser mayor o igual a dos pues no tendría sentido obtener una combinación vacía o incluir solamente un clasificador en ella.