algoritmo genetico , triz
TRANSCRIPT
Generación de Network Evolution Trend mediante la utilización de
Algoritmo Genético, en base al análisis de patentes.
1. Introducción
En la actualidad son incontables los métodos desarrollados que buscan anticiparse a los escenarios futuros, tanto de
forecasting como de prospectiva tecnológica, con distintas características y procesos individuales, pero que comparten
la finalidad de determinar cuál de estos escenarios efectivamente ocurrirá[Ref]. Lo cual no es difícil de explicar al
tener en consideración que vivimos en un mundo rápidamente cambiante en todo aspecto, la competencia a nivel
mundial se incrementa cada día, además las fuerzas relacionadas con la explosión de la las tecnologías de informática,
comunicaciones y medios de comunicación en adición de las desregulaciones internacionales están reorganizando la
economía mundial en lo fundamental[Ref]. Una consecuencia de estos factores es que la innovación, las nuevas
tecnologías y el apoyo a la investigación científica son cada vez más importantes, siendo ahora recursos estratégicos a
ser utilizados tan efectivamente como sea posible. Debido a los costos asociados a la investigación, no es posible
desarrollarse en todos los ámbitos de ciencia y tecnología, por lo que se necesita de un mecanismo para la toma de
decisiones entre diferentes alternativas y para vincular la ciencia y tecnología con las verdaderas necesidades actuales.
La prospectiva tecnológica ofrece tales mecanismos.
En pocas palabras, la prospectiva tecnológica ha tomado relevancia debido a que cumple las funciones de proveer un
enfoque para tomar decisiones en relación a la ciencia y tecnología y para identificar prioridades, ofrecer un
mecanismo para integrar oportunidades de investigación con necesidades económicas y sociales, y por lo tanto
vincular la ciencia y la tecnología más estrechamente con la innovación, la creación de riqueza, y una mejor calidad de
vida y finalmente puede ayudar a estimular la comunicación y forjar alianzas entre los investigadores, los usuarios y
financiadores (B. & Johnston, 1999)
Por otra parte, el forecasting tecnológico indica todos los procesos para anticipar la dirección genérica o específica de
la evolución tecnológica de un producto o familia de productos, centrándose principalmente en las invenciones e
innovaciones (Verhaegen, D’hondt, Vertommen, Dewulf, & Duflou, 2009). Varios métodos de forecasting de
tecnologías se han desarrollado en las últimas décadas, tales como extrapolación lineal, método morfológico, método
Delphi, interlocking matrix, árbol de relevancia, modelo de simulación dinámica. A pesar de ser diversas y en general
útiles, estas técnicas comparten ciertas limitaciones, tienen que lidiar con parámetros más que con estructuras que sean
capaces de la comprensión de estos parámetros, no hay criterios objetivos para la evaluación del forecasting, además
de que la referencia fundamental para el forecasting tradicional son las capacidades tecnológicas de los sistemas de los
sistemas siendo previstos. Sin embargo, muchos productos de consumo destinados a complacer los gustos de
diferentes personas no puede ser descritos sólo en las dimensiones convencionales de ingeniería y, por tanto, no se
someten a tal análisis de forecastig (Fey & Rivin, Guided Technology Evolution (TRIZ Technology Forecasting),
1999).
Las herramientas de TRIZ no se han quedado ausentes en relación a estas tendencias, siendo desarrolladas diversas
que se han propuesto apoyar las actividades del forecasting tecnológico: S-curve, sistema operador, las leyes de la
evolución de los sistemas técnicos, las líneas de la evolución (tendencias), el aumento de la idealidad, el análisis
morfológico, el modelo de la onda de los sistemas de evolución y ARIZ. Sin embargo, aunque estas herramientas
pueden revelar potencialidades relevantes en situaciones específicas, su uso integrado se limita a tareas de resolución
de problemas inventivos, por lo que aun existe la necesidad de desarrollar aplicaciones de forecasting (Cascini &
Rotini, TRIZ-based Networks of Evolution Trends supporting R&D Stratey Definition, 2010). Estos métodos son
útiles en para explorar variantes del sistema tecnológico, pero no proporcionan direcciones para identificar elementos
y funciones a ser evaluados y después desarrollados de acuerdo a las leyes de evolución, por otra parte no se dispone
de medios comparación específicos. Esto da como resultado que la repetitividad del proceso es deficiente y depende
directamente de las habilidades y experiencia del analista.
Bajo estas premisas surge el desarrollo de un procedimiento sistemático para analizar un sistema técnico, comparar
medios alternativos que entreguen las mismas funciones, sintetizar nuevas oportunidades de desarrollo y evaluar las
limitaciones del resultante forecasting (Cascini, Rotini, & Russo, Networks of Trends: Systematic Definition of
Evolutionary Scenarios, 2011). De esta manera surge Network Evolutionary Trends (NET).
En este trabajo, se presenta una nueva metodología para la formulación de la NET, en base a los mecanismos
evolutivos presentes en la propia naturaleza, a través de la aplicación de algoritmo genético. Con esto se pretende la
formulación de un modelo que pueda determinar la siguiente etapa de evolución de los sistemas tecnológicos, en base
al análisis de patentes.
2. Marco Teórico
2.1. TRIZ
En el marco de la Teoría de Resolución de Problemas Inventivos (TRIZ), el primer axioma en el cual se basa,
descubierto por Altshuller a través de su estudio de patentes, plantea que los sistemas de ingeniería evolucionan de
acuerdo a leyes y no se desarrollan al azar (Altshuller, 1984). Estas leyes no dependen de los humanos, deben ser
observadas, formuladas y usadas con el fin de desarrollar métodos eficientes de resolución de problemas (Cavallucci,
Rousselot, & Zanni, 2009)
2.1.1. Leyes
Las leyes en las cuales se basan esta evolución se entregan a continuación:
Ley 1 Integridad: Un requerimiento esencial para la existencia de sistemas técnicos es la presencia de las partes
principales y capacidades funcionales mínimas del sistema. Cada sistema técnico necesita cuatro componentes
principales, estos son suministro (motor), control, transmisión y herramienta. La herramienta es el componente que
directamente desarrolla la función principal del sistema, la transmisión transforma la energía producida por el motor
en energía que pueda controlar la herramienta, el medio de control permite cambiar los parámetros de las otras partes
principales.
Ley 2 Transmisión de la energía: Una de las condiciones necesarias para una funcionalidad y control efectivo de
transformar energía es el paso de esta a través del sistema hacia su destino (herramienta). Los sistemas tecnológicos
evolucionan en la dirección de acortar el paso del flujo de energía a través del sistema.
Ley 3 Armonización: La condición necesaria para óptimo desarrollo de un sistema tecnológico es la coordinación de
su periodicidad de acciones de sus partes. Los sistemas más viables se caracterizan por la coordinación de sus partes
principales, las acciones de estas partes se apoyan mutuamente y están sincronizadas (armonizados) unas con otras.
Ley 4 Idealidad: La evolución de los sistemas tecnológicos va en la dirección de aumentar el grado de idealidad, esto
implica que en el proceso de evolución, el sistema desarrollando una función se vuelve menos complicado, costoso y/o
problemático, o se vuelve capaz de desarrollar su función mejor o desarrollar más funciones.
Ley 5 Evolución no uniforme: La tasa de evolución de varias partes de un sistema no es uniforme, mientras más
complejos es el sistema, es mayor la no uniformidad de sus partes.
Ley 6 Transición a súper-sistema: Sistemas tecnológicos evolucionan de un mono-sistema a un poli-sistema. Un
mono-sistema está diseñado para desarrollar una función, un poli-sistema consiste en dos o más mono-sistemas, estos
pueden cumplir tareas iguales o distintas, o tener las mismas o distintas propiedades.
Ley 7 Transición a nivel micro: Cualquier estructura física que ocupa algún nivel en la jerarquía es una estructura a
nivel micro para todas las estructuras que ocupan niveles más altos (nivel macro), los sistemas tecnológicos
evolucionan hacia el incremento de estructuras a nivel micro, en un proceso de utilizar niveles más bajos de
estructuras físicas.
Ley 8 Aumentar interacción sustancia-campo: Los sistemas tecnológicos evolucionan hacia la mejora de sus
interacciones sustancia-campo. Para aumentar su desempeño, los sistemas deben ser más controlables. (Fey & Rivin,
Innovation on Demand, 2005)
La herramienta idónea para predecir la evolución de un sistema o de sus elementos se conoce como patrones de
evolución de los sistemas tecnológicos. En TRIZ existe una serie de tendencias de evolución de las cuales se han
tomado las principales, estas son:
2.1.2. Postulados
Mono-Bi-Poli: La evolución Mono-Bi-Poly plantea que el desarrollo de un sistema tecnológico a menudo se
presenta como la adición de más funciones, desde un simple mono-sistema, a un bi-sistema y a un poli-
sistema.
Recorte: Consiste en eliminar funciones o partes redundantes, reemplazándolas con sustitutos más baratos;
combinar varias partes en una sola, desarrollar la función de una parte por recursos ya existentes.
Complejidad del sistema: Plantea que los sistemas tecnológicos en una etapa temprana de desarrollo entregan
sólo una función básica muy simple, con una capacidad limitada, pero a medida que la tecnología madure, el
sistema agregará más funciones con una mayor capacidad en términos de calidad y de cantidad. El sistema
también añade más componentes y se vuelve más complejo, a medida que continúe su desarrollo, la
estructura del sistema va a mejorar, lo que significa un número reducido de componentes, complejidad
reducida y mejor uso del espacio, materiales y otros recursos.
Dinamismo: Cuando un nuevo sistema técnico se desarrolla, por lo general es rígido e inflexible y capaz de
desarrollar sólo las funciones básicas. La rigidez obstaculizará el funcionamiento del sistema en diferentes
entornos de uso. A medida que el sistema se desarrolla, el grado de dinamismo mejorará (Yang & El-Haik,
2003).
Segmentación de espacio: Introducción de un vacío, segmentación de un vacío o creación de poros y
capilares
Segmentación de superficie: Superficies planas, superficies rugosas, superficies ásperas
Segmentación de objetos: Cuerpo sólido, cuerpo segmentado, líquido o en polvo, gas o plasma, campo.
Grado de control: Aumentar la capacidad de control de las aportes del sistema, pasando de control manual a
semiautomático y finalmente automático (El-Haik & Roy, 2006).
Coordinación de Ritmos: La coordinación de las frecuencias de vibración de todos los elementos de los
sistemas técnicos (dinámica y estática) o la periodicidad de la operación de los procesos tecnológicos es
importante para el aumento de la idealidad técnica. Desde este punto, todos los ST y sus elementos se pueden
dividir en aquellos que tienen "buen" ritmo y los que vibran "mal".
Grado de dimensión: Una tecnología avanza hacia Idealidad cuando cambia su dimensión de un punto (0D) a
la situación de una línea, y luego a un plano, y más tarde a un volumen (3D). Cambiando la dimensión de sus
subsistemas por lo general mejora el desempeño de las funciones útiles (Savransky, 2000).
2.2. Network Evolution Trends
NET propone un algoritmo paso a paso para analizar sistemas técnicos y la manera en que sus funciones útiles
principales son entregadas a diferentes niveles de detalle. El principio de funcionamiento es comparado con previas
generaciones de sistemas con el fin de construir una clasificación estructurada de la información, adecuada para
comparaciones evolutivas. Estas comparaciones permiten construir una red de escenarios con la participación de
diferentes recursos, lo que constituye un mapa de la evolución de un sistema tecnológico, donde los productos ya
comercializados se visualizan en conjunto con las nuevas invenciones patentadas y espacios libres para la inversión.
La opción presentada limita el espacio de evolución por medio de un análisis detallado de recursos (Cascini, Rotini, &
Russo, Networks of Trends: Systematic Definition of Evolutionary Scenarios, 2011). Los siguientes modelos se
adoptan como referencia primaria para la definición de la NET:
2.2.1. Materia y/o señal: Esto puede ser representado mediante cajas negras, en las cuales el proceso desarrollado al
interior se ignora en un primer momento y se realiza la conversión para alcanzar un resultado deseado (Pahl, Beitz, &
Wallace, 1996).
2.2.2. Sistema Técnico Mínimo: Para tratar con modelos replicables, se deben reconocer cuatro elementos, estos son:
herramienta, el elemento de trabajo que realiza la función del ST; un suministro, el elemento que proporciona la
energía necesaria para producir el efecto deseado de la función; una transmisión, el elemento transmitiendo la energía
desde el suministro a la herramienta; un controlador, un elemento gobernando al menos uno de los elementos
mencionados.
2.2.3. Sistema Operador: El sistema operador ayuda en la resolución de problemas a presentar y revisar los elementos
del problema en relación los unos con otros en varios niveles en una división jerárquica para diversos propósitos y en
el contexto de varios procesos (Khomenko & Ashtiani, 2007). Cada uno de los cuatro elementos del sistema técnico
mínimo puede ser descompuesto además en cuatro subsistemas con la misma estructura.
2.2.4. Función-Comportamiento-Estructura: La función describe la teología del objeto, es decir para que sirve; el
comportamiento describe los atributos que son derivados de las variables estructurales del objeto, es decir lo que hace
y finalmente la estructura describe los componentes del objeto y sus relaciones, es decir lo que es (Gero &
Kannengiesseri, 2006).
2.2.5. Base Funcional para Ingeniería de Diseño: La necesidad de una representación formalizada es fundamental,
debido a que reduce la ambigüedad a nivel de modelado, estas ocurren cuando múltiples términos son usados para
explicar la misma cosa o cuando el mismo término se usa con distintos significados. La obtención de una base concisa
a partir de un gran cantidad de términos no elimina completamente este problema, pero disminuye significativamente
su ocurrencia. Mientras mayor es el número de términos en un vocabulario, existe una mayor cantidad de opciones
para describir o modelar un concepto de diseño determinado, haciendo que procesar la información sea más difícil
(Hirtz, R.Stone, McAdams, Szykman, & Wood, 2002).
Los modelos presentados pueden ser integrados para entregar un medio sistemático y repetible de desarrollo de
análisis a sistemas técnicos antes de aplicar comparaciones y extrapolaciones basadas en las leyes de evolución. La
construcción de una NET requiere recolectar y clasificar datos e información de diversas fuentes, siendo la principal
de estas fuentes correspondiente a la información provista por patentes. Una vez que se ha recolectado toda la
información se debe clasificar de acuerdo a las leyes y parámetros de evolución entregados previamente.
2.3. Algoritmo Genético
2.3.1. Terminología a usar
Las células que forman todos los organismos vivientes contienen cromosomas, correspondientes a cadenas de ADN.
Un cromosoma está formado a su vez por genes, cada uno de estos genes está codificando una característica o rasgo,
como por ejemplo el color de ojos. Los diferentes posibles valores para un rasgo se denominan alelos. Cada gen se
ubica en un locus (posición) particular dentro del cromosoma. Muchos organismos tienen múltiples cromosomas en
cada célula. La colección completa de material genético, es decir todos los cromosomas juntos, se denominan genoma.
El genotipo corresponde a un conjunto particular contenido en un genoma. El genotipo origina durante el desarrollo
fetal y posterior al fenotipo (Mitchell, 1999).
Los organismos cuyos organismos se arreglan en pares se llaman diploides, los que no se organizan en pares se llaman
haploides. En la naturaleza la mayoría de las especies que se reproducen sexualmente son diploides, incluyendo a los
seres humanos, quienes poseen 23 pares de cromosomas en cada célula somática. Durante la reproducción se da el
proceso denominado crossover, en el cual los genes de cada uno de los padres se intercambian entre cada par de
cromosomas para formar un gameto (un cromosoma individual), y luego los gametos de los dos padres se emparejan
para crear un conjunto completo de cromosomas diploides. En el caso de organismos haploides, los genes son
intercambiados entre los cromosomas de un filamento de ambos padres. Los descendientes son objetivo de la
mutación en la cual los nucleótidos individuales (partes elementales de ADN) son cambiados de padres a
descendientes, estos cambios resultan generalmente de errores en el copiado. El valor fitness (aptitud) de un individuo,
se define como la probabilidad de que el organismo sobrevivirá para reproducirse (viabilidad) o en función del número
de descendientes que el organismo tenga (fertilidad).
En algoritmos genéticos, generalmente el término cromosoma se refiere a una posible solución de un problema (K. S.
Swarup, 2002), codificada como una cadena de bits. Los genes son bits individuales o bloques de bits adyacentes que
codifican un elemento particular de la solución candidata. Un alelo en una cadena de bits es 0 o 1; para alfabetos más
grandes, existen más posibles alelos para cada locus. La forma más simple de AG involucra tres operadores: selección,
crossover y mutación.
Selección: Este operador selecciona los cromosomas de la población que se reproducirán, mientras más apto sea el
cromosoma, es probable que sea seleccionado más veces para reproducirse.
Crossover: Este operador elige de manera aleatoria un locus e intercambia los valores antes y después de ese locus
entre dos cromosomas para crear dos descendientes.
Mutación: Este operador cambia de manera aleatoria algunos de los bits del cromosoma.
El AG requiere de una función fitness que asigna un puntaje a cada cromosoma de la población actual. El fitness de un
cromosoma depende de cuán bien el cromosoma resuelve el problema planteado.
Cada solución en una población es evaluada basada en cuán bien resuelve el problema planteado, es decir, a cada
miembro se le asigna un valor fitness. Los AG usan un espacio de búsqueda distinto del espacio de soluciones. El
espacio de búsqueda es el espacio de soluciones codificadas, es decir, genotipos o cromosomas compuestos por genes.
El espacio de soluciones es el fenotipo. Cualquier genotipo deber ser transformado en su correspondiente fenotipo para
evaluar su valor fitness (Renner & Ekart, 2003). El número de individuos de una población se llama popsize y una vez
que se obtiene la calidad de cada uno de los individuos (determinada por el valor fitness), se usa el proceso de
selección para generar lo que se denomina mating pool. Los individuos tendrán mayores probabilidades de ser
seleccionados, mientras mayor sea su calidad, esto genera que los mejores individuos tendrán mayores oportunidades
de reproducirse y los peores individuos no serán seleccionados. Los individuos que están en la mating pool son
llamados padres, generalmente se seleccionarán dos padres sin reemplazo para generar dos descendientes. La nueva
población generada reemplaza a la antigua y comienza una nueva generación. Al tener la información contenida en los
mejores individuos mayores probabilidades de pasar a la siguiente generación sumado a los pequeños cambios en la
descendencia que promueven la búsqueda de mejores individuos; la nueva población se volverá cada vez más apta
(mejorará su valor fitness), hasta que se alcance el óptimo o la solución cercana al óptimo (Yu & Gen, 2010).
2.3.2. Pasos para la optimización de una función simple (Michalewicz, 1996)
1. Representación
Se utilizan vectores como cromosomas para representar los valores reales de las variables x, la longitud del vector va a
depender de la precisión requerida. Para convertir el código binario en número real.
2. Población inicial
El proceso de inicialización consiste en crear la población inicial de cromosomas, donde cada uno corresponde a un
vector binario, inicialmente estos son creados de manera aleatoria.
Comentario [T1]: Aqui es bueno
colocar la matematica para realzar el valor
del paper solamente...
3. Evaluación de la función
Corresponde a evaluar el valor de cada uno de cromosomas en la función fitness.
4. Operadores Genéticos
Como ya se mencionó previamente, se utilizan los operadores mutación y crossover. Para el primer caso, se genera de
manera aleatoria y en base a la probabilidad de su ocurrencia, que genes van a sufrir mutación y se cambia el valor del
alelo correspondiente (por ejemplo si el valor corresponde a 0, se reemplaza por un 1 y vice-versa). Para el segundo
caso, se seleccionan los padres (mating pool) de manera aleatoria y, de la misma forma se genera el punto en el cual se
generará el crossover. De esta forma, los genes que están después del punto de cruce se intercambian con el otro padre,
generando la descendencia.
5. Parámetros
Existen distintos parámetros que deben ser considerados al llevar a cabo este proceso:
Tamaño de la población.
Probabilidad de crossover.
Probabilidad de mutación
6. Resultados experimentales
Posterior a que se realicen diversas iteraciones, las generaciones irán evolucionando, convergiendo a la solución
óptima que finalmente debe ser evaluada en la función fitness.
3. Desarrollo de NET utilizando Algoritmo genético
3.1. Definición de parámetros involucrados
Según la información planteada respecto a la formulación de la NET, los parámetros a considerar son tanto las leyes
como los postulados de evolución, data que será obtenida y analizada en base al estudio de patentes. Por otra parte, se
debe identificar las funciones útiles del sistema tecnológico, sus parámetros característicos y valores esperados,
posterior a eso se debe identificar las funciones dañinas y el consumo de recursos asociados a las funciones útiles.
(Cascini, Rotini, & Russo, Networks of Trends: Systematic Definition of Evolutionary Scenarios, 2011). Las
funciones útiles (FU), funciones dañinas (FD) y consumo de recursos (CR) serán los parámetros de evaluación a
considerar en el análisis, siendo estos los criterios que describan las necesidades y resultados de un proceso industrial
y de sus fases (Becattinia, Cascini, Petralib, & Pucciarinib, 2011).
3.2. Definición y formulación del cromosoma
El cromosoma que representa la población de posibles soluciones debe considerar todos los parámetros que definen a
la NET previamente seleccionados. Para esto el cromosoma se compondrá de tres secciones independientes.
La primera porción corresponde a la identificación de las leyes de evolución, por lo que en esta sección se debe
trabajar con un modelos particular de algoritmo genético, considerando variables de tipo “on-off switches” . Cada
cromosoma será representado por una fila de longitud 8, donde cada uno de los locus corresponde a una de las leyes de
evolución y estará ocupado por valores 1 ó 0, siendo 1 la representación de que la ley en cuestión se encuentra activa y
0 en caso contrario. Cada cromosoma podrá tener activa sólo una ley.
Ilustración 1
La segunda porción del cromosoma, representativa de los postulados de evolución se comportará de manera similar a
la porción anterior, con la variación de que esta tendrá una longitud de 10 genes, cada uno representando un posible
0 0 0 0 0 0 1 0
Comentario [T2]: Inserter definicion
matematica..
Comentario [T3]: Colocar como
variables...y expresiones matematicas mas
frecuentes
Comentario [T4]: Aca se puede apoyar
en la teoria de decsiones para trabajar con
valores de 0 a 1, de esta manera queda
justificado este punto.
Comentario [T5]: Recomendable la
nomenclatura matematica, mas que nada
por formalidad.
postulado que el cromosoma (solución) considere. Para este caso pueden existir distintos postulados activos de manera
simultánea en un mismo cromosoma.
Ilustración 2
0 1 1 0 0 1 1 0 0 0
La tercera y última porción del cromosoma buscará representar los parámetros de evaluación, compuestos en el caso
genérico por 48 genes: los 10 primeros son las FU, los 15 siguientes las FD y los 23 últimos el CR. El grado de
satisfacción o cumplimiento para cada uno de los parámetros, se puede asignar a través de un ranking que va desde 0
hasta 3 (Becattinia, Cascini, Petralib, & Pucciarinib, 2011).
Ilustración 3
1 0 1 3 1 2 1 2 3 2 1 1 2 0 3 0 0 0 1 0 2 1 1 3 1 0 2 1 3 1 2 2 2 1 3 1 1 2 1 2 2 1 2 1 2 2 2 2
Para esta última porción del cromosoma los valores correspondientes a cada gen varían entre 0 y 3, por lo que la
información se codifica convirtiendo cada valor en su contraparte en código binario. En este proceso el número de
genes aumentará, pasando de 48 a 96.
Ilustración 4
0 1 0 0 0 1 1 1 0 1 1 0 0 1 1 0 1 1 1 0 0 1 0 1 1 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 1 1 1
0 1 0 0 1 0 0 1 1 1 0 1 1 0 1 0 1 0 0 1 1 1 0 1 0 1 1 0 0 1 1 0 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0
3.3. Generación de la población inicial
Al estar definido la forma del cromosoma y la representación del cromosoma, se debe inicializar el cromosoma por
medio de la creación de la población inicial. Esta se genera de manera aleatoria, con un tamaño N, que determina el
número de individuos que forman parte de la población.
3.4. Descripción de función objetivo y función fitness.
De manera paralela a la generación de la población inicial, se debe asignar información propia de cada cromosoma que
permitirá posteriormente el proceso de selección. Se incorpora una probabilidad de ser seleccionado, que representa
que tan apta es la solución para dar solución al problema en base a cada una de las variables utilizadas en la
formulación del cromosoma. Esta probabilidad se genera en base al estudio de patentes de del sistema tecnológico
analizado para el caso de las leyes y postulados de evolución, desde donde es posible obtener un peso ponderado.
En la Ilustración 5, se observa un ejemplo genérico, en donde se ha generado de la asignación de probabilidades de
manera aleatoria para la primera porción del cromosoma correspondiente a las leyes para una población de tamaño
.
Ilustración 5
0,534
0,900
0,112
0,136
0,679
0,495
0,190
0,495
Comentario [T6]: Tambien definer
como variable y depues asignarle los
valores..
0,148
0,055
En este caso debe ser una matriz y por ejemplo
Continuando con el ejemplo anterior, se ha generado de manera aleatoria la probabilidad de ser seleccionado para la
misma población, para el caso de los postulados.
Ilustración 6
0,851
0,561
0,930
0,697
0,583
0,815
0,879
0,989
0,001
0,865
Para seleccionar la probabilidad asociada a los parámetros se utilizan dos unidades de medida, por una parte la función
de idealidad (Altshuller, 1984), que se buscará maximizar.
UFi = Utility function of the each Useful Function of the technological system.
Cj = Cost function of the resource consumption to obtain the Main Useful Function (MUF) for all the
components of technological system.
HFk = Cost function of the Harm Functions which has the system for obtain the MUF.
Al ser normalmente la finalidad de un algoritmo genético la minimización, se calcula el inverso de la idealidad, como
se señala en la Ilustración 7
Ilustración 7
0,281
3,556
0,235
4,250
0,265
3,778
0,273
3,667
0,182
5,500
0,226
4,429
0,237
4,222
0,281
3,556
0,290
3,444
0,194
5,167
Por otra parte, dentro de los mismos parámetros se busca además que la suma de los valores que toma cada uno de los
parámetros sea máxima de modo de maximizar la satisfacción de las FU y minimizar el daño de las FD y el consumo
del CR, de manera similar al caso anterior se calcula el inverso de estos valores.
Ilustración 8
70,000
0,014
76,000
0,013
78,000
0,013
71,000
0,014
63,000
0,016
68,000
0,015
80,000
0,013
75,000
0,013
62,000
0,016
62,000
0,016
Al existir 4 distintas funciones objetivo a optimizar, se tiene un caso de optimización multiobjetivo, que busca
optimizar los componentes de una función de costo vectorial. A diferencia de la optimización con un solo objetivo, la
solución a este problema no es una solución de un solo punto, sino que una familia de puntos conocidos como Pareto-
optimo (Fonseca & Fleming, 1993).
Ilustración 9
0,534
0,851
3,556
0,014
0,900
0,561
4,250
0,013
0,112
0,930
3,778
0,013
0,136
0,697
3,667
0,014
0,679
0,583
5,500
0,016
0,495
0,815
4,429
0,015
0,190
0,879
4,222
0,013
0,495
0,989
3,556
0,013
0,148
0,001
3,444
0,016
0,055
0,865
5,167
0,016
Comentario [T7]: Matematica darle
formalidad nada mas..despues en el caso de
studio colocamos los valores, de ejemplo
3.5. Aplicación de operadores biológicos
El primer paso es aplicar un ranking a las posibles soluciones para cada una de las funciones objetivo, el ranking
actúa como una transformación que asigna un nuevo valor fitness a un genotipo basado en su desempeño relativo a
otros genotipos (Whitley, 1989).
Donde representa la posición en la población y la presión de selección. En la Ilustración 10, se observa que las
cuatro nuevas funciones objetivos poseen ahora valores que van desde 0 a 2, permitiendo ahora establecer
comparaciones equivalentes entre las variables. Siendo asignado un 2 al cromosoma más apto y un 0 al menos apto.
Ilustración 10
0,222
0,889
0,167
0,889
0,178
0,178
0,667
0,156
0,156
0,222
0,111
0,178
0,133
0,133
0,133
0,111
0,000
0,156
0,000
0,444
0,444
0,111
0,444
0,667
0,889
0,444
0,889
0,200
0,667
0,000
0,167
0,133
0,111
0,200
2,000
0,111
2,000
0,667
0,222
0,111
En base a los nuevos valores calculados, se busca seleccionar los cromosomas más aptos para reproducirse,
considerando que se tienen cuatro distintas funciones objetivo que optimizar. Una característica en estos casos es que
las funciones objetivo normalmente se contradicen unas con otras, lo que hace que la solución termine teniendo
valores aceptables más que valores óptimos para la función fitness (Renner & Ekart, 2003). Diversas metodologías se
han desarrollado para resolver este tipo de problemas, tales como NSGA (Srinivas & Deb, 1994), SPEA2 (Zitzler,
Laumanns, & Thiele, SPEA2: Improving the Strength Pareto Evolutionary Algorithm, 2001), VEGA (Schaffer, 1985),
NPGA (Horn, Nafpliotis, & Goldberg, 1994), HLGA (Hajela & Lin, 1992) entre otros.
El elitismo es un factor importante en optimización evolucionaria multiobjetivo. Por una parte esto es soportado por
SPEA, que incluye el elitismo, por otra parte se ha demostrado que el rendimiento de los otros algoritmos mejora
significativamente cuando se le agrega la estrategia de elitismo. NSGA con elitismo iguala el rendimiento de SPEA
(Zitzler, Deb, & Thiele, Comparison of Multiobjective Evolutionary Algorithms: Empirical Results, 2000).
En este análisis se usa el método NSGA que incluye elitismo: NSGA II (Deb, Agrawal, Pratap, & Meyarivan, 2000).
Bajo esta metodología se define el Pareto front, para esto se compara los cuatro valores correspondientes de cada
cromosoma, con todos los restantes cromosomas que conforman la población y se determina si esta solución es
dominada o no-dominada. Una vez realizadas todas las comparaciones posibles entre la población, se seleccionan
aquellas de tipo no-dominada que conformarán el primer pareto front , para los integrantes de este, no existe
cromosoma que posea una mejor solución, ya que si se mejora una de las variables necesariamente otra empeora.
Continuando con el ejemplo anteriormente, se realizan las comparaciones correspondientes y se determina que los
cromosomas número 5 y 6, son dominados, por lo cual son removidos de la población actual, lo que deja el primer
pareto front , conformado como se señala en la Ilustración 11.
Ilustración 11
1
0,222 0,889 0,167 0,889
2
0,178 0,178 0,667 0,156
Comentario [T8]: Nuvamente darle una
lenguaje matematico mas formal.
Comentario [T9]: Generalizar el caso
3
0,156 0,222 0,111 0,178
4
0,133 0,133 0,133 0,111
7
0,889 0,444 0,889 0,200
8
0,667 0,000 0,167 0,133
9
0,111 0,200 2,000 0,111
10
2,000 0,667 0,222 0,111
Para encontrar los individuos de la siguiente frontera, se eliminan momentáneamente las soluciones de la primera, se
repite el procedimiento y así sucesivamente hasta determinar los distintos niveles de pareto front.
De esta manera el segundo pareto front , queda conformado como muestra la Ilustración 12. Es preciso destacar que
al ser un ejemplo explicativo con una población de 10 individuos se obtienen dos pareto front, en una aplicación real,
este número será superior, siendo requeridas numerosas iteraciones para llegar al resultado final.
Ilustración 12
5
0,000 0,156 0,000 0,444
6
0,444 0,111 0,444 0,667
Posteriormente se estima la densidad de soluciones rodeando un punto en la población, se toma una distancia
promedio de los dos puntos a cada lado, esta cantidad , sirve como estimado del tamaño del rectángulo
encerrando el punto , sin incluir ningún otro punto en la solución, a esto se le denomina crowding distance (Deb,
Agrawal, Pratap, & Meyarivan, 2000). Crowding distance es la suma de los valores de distancia individuales
correspondientes a cada función objetivo. La frontera está ordenada de acuerdo al valor de la función objetivo en
orden ascendente de magnitud. A los primeros y últimos individuos de una frontera se les asigna una distancia infinita
respecto a . Para los individuos intermedios se les asigna un valor de distancia igual al absoluto de la diferencia
normalizada de dos soluciones adyacentes para cada (Choi, Oh, & Kim, 2010). Para el ejemplo tratado, se le
asignó una igual a 100 para los valores extremos, su representación grafica se puede observar en la
Ilustración 13.
Ilustración 13
1
0,56 0,56 0,33 0,44
2
0,00 0,00 0,44 0,44
3
0,33 0,33 0,44 0,44
4
0,56 0,56 0,56 0,44
5
0,56 0,56 100,00 0,56
6
100,00 100,00 0,44 0,44
7
0,67 0,67 0,44 100,00
8
0,33 0,33 0,33 0,44
9
100,00 100,00 100,00 100,00
10
0,56 0,56 0,44 0,33
El valor final de para cada cromosoma corresponde a la suma de de los cuatro .
Ilustración 14
1
1,89
2
0,89
3
1,56
4
2,11
Comentario [T10]: Aca debe ser
n...despues diez es en el caso de studio...
5
101,67
6
200,89
7
101,78
8
1,44
9
400,00
10
1,89
Según lo visto, cada individuo de la población posee dos atributos:
Ranking de no-dominancia
Crowding distance
Con lo cual se define un orden parcial para toda la población de cromosomas, que plantea que entre dos soluciones con
diferente ranking de no-dominancia se prefire al que posee menor ranking. De otro modo, si ambos pertenecen a la
misma frontera, se prefiere al que está ubicado en una región con menor número de puntos (Deb, Agrawal, Pratap, &
Meyarivan, 2000).
De esta manera a cada cromosoma se le asigna un valor (1 es el mejor nivel, asumiendo una minimización),
que permite guiar el proceso de selección, siendo este su valor fitness.
Ilustración 15
1
4
2
8
3
6
4
3
5
10
6
9
7
2
8
7
9
1
10
5
Para realizar el proceso de selección propiamente tal, se utiliza el método binary tournament selection, en este método
dos individuos son elegidos al azar y el mejor es seleccionado (Goldberg & Deb, 1991), este proceso se realiza tantas
veces como individuos se busque que la población posea. Con la población seleccionada, se aplican los operadores
mutación y crossover.
Trabajos citados
Altshuller, G. (1984). Creativity as an Exact Science: The Theory of the Solution of Inventive Problems. Rusia:
Gordon and Breach Science Publishers.
B., M., & Johnston, R. (1999). Technology Foresight for Wiring Up the National Innovation System. Technological
Forecasting and Social Change , 60 (1), 37-54.
Becattinia, N., Cascinia, G., Petralib, P., & Pucciarinib, A. (2011). Production processes modeling for identifying
technology substitution opportunities. Triz Future Conference 2011. Dublin.
Cascini, G., & Rotini, F. (2010). TRIZ-based Networks of Evolution Trends supporting R&D Stratey Definition.
Comentario [T11]: Preguntas a
responder...
1)Que es lo que obtenemos finalmente?
2)Que suece si algunos de las
características son incompatibles con
otras.
3)Creo que el caso palas aplica bien para
el estudio de este trabajo.
4)Es importante saber cual es resultado
final, porque desde el punto de vista de
aplicación y matematica esta bien.
Cascini, G., Rotini, F., & Russo, D. (2011). Networks of Trends: Systematic Definition of Evolutionary Scenarios.
Procedia Engineering , 9, 355-367.
Cavallucci, D., Rousselot, F., & Zanni, C. (2009). Linking Contradictions and Laws of Engineering System Evolution
within the TRIZ Framework. Creativity and Innovation Management , 18 (2), 71-80.
Choi, J., Oh, S., & Kim, H. (2010). Design of Information Granulation-Based Fuzzy Radial Basis Function Neural
Networks Using NSGA II. Advances in Neural Networks - ISNN 2010 , 215-222.
Deb, K., Agrawal, S., Pratap, A., & Meyarivan, T. (2000). A Fast Elitist Non-Dominated Sorting Genetic Algorithm
for Multi-Objective Optimization: NSGA-II. Proceedings of the Parallel Problem Solving from Nature VI Conference.
Paris.
El-Haik, B., & Roy, D. (2006). Service Design for Six Sigma.
Fey, V., & Rivin, E. (1999). Guided Technology Evolution (TRIZ Technology Forecasting). The TRIZ Journal .
Fey, V., & Rivin, E. (2005). Innovation on Demand.
Fonseca, C., & Fleming, J. (1993). Genetic Algorithms for Multiobjective Optimization: Formulation, Discussion and
Generalization. Genetic Algorithms: Proceedings of the Fifth International Conference, (págs. 416-423).
Gero, J., & Kannengiesseri, U. (2006). The situated function behaviour structure framework. Design Studies , 25 (4).
Goldberg, D., & Deb, K. (1991). A comparative Analysis of Selection Schemes Used in Genetic Algorithms. 1, 333-
362.
Hajela, P., & Lin, C. (1992). Genetic search strategies in multicriterion optimal design. Structural Optimization , 4 (2),
99-107.
Hirtz, J., R.Stone, McAdams, D., Szykman, S., & Wood, K. (2002). A Functional Basis for Engineering Design:
Reconciling and Evolving Previous Efforts.
Horn, J., Nafpliotis, N., & Goldberg, D. (1994). A niched pareto genetic algorithm for multiobjective optimization.
Proceedings of the First IEEE Conference on Evolutionary Computation , 1, 82-87.
K. S. Swarup, S. Y. (2002). Unit Commitment Solution Methodology Using Genetic Algorithm. Power Systems, IEEE
Transactions on , 17 (1), 87-91.
Khomenko, N., & Ashtiani, M. (2007). Classical TRIZ and OTSM as a scientific theoretical background for
nontypical problem solving instruments.
Michalewicz, Z. (1996). Genetic Algorithms + Data Structures = Evolution Programs.
Mitchell, M. (1999). An introduction to Genetic algorithms.
Pahl, G., Beitz, W., & Wallace, K. (1996). Engineering design: a systematic approach.
Renner, G., & Ekart, A. (2003). Genetic algorithms in computer aided design. Computer-Aided Design , 35 (8), 709-
726.
Savransky, S. (2000). Engineering of Creativity: Introduction to TRIZ Methodology of Inventive Problem Solving.
Florida: CRC Press.
Schaffer, J. (1985). Multiple objective optimization with vector evaluated genetic algorithms. Proceedings of an
International Conference on Genetic Algorithms and Their , 93-100.
Srinivas, N., & Deb, K. (1994). Multiobjective Optimization Using Nondominated Sorting in Genetic Algorithms.
Evolutionary Computation , 2 (3), 221-248.
Verhaegen, P., D’hondt, J., Vertommen, J., Dewulf, S., & Duflou, J. (2009). Relating properties and functions from
patents to TRIZ trends. CIRP Journal of Manufacturing Science and Technology , 1 (3), 126-130.
Whitley, D. (1989). The Genitor Algorithm and Selection Pressure: Why Rank-Based Allocation of Reproductive
Trials is Best. 116-121.
Yang, K., & El-Haik, B. (2003). Design for Six Sigma.
Yu, X., & Gen, M. (2010). Introduction to Evolutionary Algorithms.
Zitzler, E., Deb, K., & Thiele, L. (2000). Comparison of Multiobjective Evolutionary Algorithms: Empirical Results. 8
(2), 173-195.
Zitzler, E., Laumanns, M., & Thiele, L. (2001). SPEA2: Improving the Strength Pareto Evolutionary Algorithm.