TítuloMetodología para la construcción de modelos cognitivos complejos : exploración de la "creatividad artificial" en composición musical

200 

(1)' 4. ^. '. ^. ^' ;. ^ S. ^^.^^ r,. ^'^^ ^ ^ ;. ^,-. ^'_^". ^^ '. s^ ^^. ^^^. ^ -• ^ ^' ^M` ^ ^ ^'; .. ^. y^^^ ^ ° ^i' :,; ^. •.^'^r ^. 9. ,i,. 1. :Is ^. .. ^:.. 1' ^ ... . 'l " ^ ^. ^ 1 '^^i!' s ^#`. ^` ^. ` ^! `^^ ,`. ^. ,^'... _. ^^.^. y. ^. ^. ^^. #. ^ :.. ^ ^ ^^^^. ^ ^^. `. ^. -,^ ^` ^ -. f. ^. ^"' :^,. f`^. ^^^. >..# ^. kl ^' m. ^ ^ ,^. ^ '` ^. s. ^ ^^. ^. +. .. ^". ^^. ^^. 1. s^. -. ^ ^ .^. I. :^,,_^. .^^. i,. z. i.. ^^^ .'^^. `^,.. ;^:. 1. ' ^,; .^. ` " °i. ^. -. ^^^^. ::i^'^ '. ^t. ,If' 1. `^. ^ "^!. ^. 4^..

(2) Universidade da Coruña FACULTAD DE INFORMÁTICA Departamento de Tecnologías de la Información y las Comunicaciones. METODOLOGÍA EVOLUTIVA PARA LA CONSTRUCCIÓN DE MODELOS COGNITIVOS COMPLEJOS. EXPLORACIÓN DE LA `CREATIVIDAD ARTIFICIAL' EN COMPOSICIÓN MUSICAL.. DOCTORANDO:. JUAN JESÚS ROMERO CARDALDA. DIRECTORES:. ALEJANDRO C. PAZOS SIERRA ANTONINO SANTOS DEL RIEGO A Coruña, Diciembre 2001.

(3) D. ALEJANDRO PAZOS SIERRA, Catedrático de la Universidade da Coruña y D. ANTONINO SANTOS DEL RIEGO, Profesor Titular de la Universidade da Coruña.. HACEN CONSTAR QUE: "METODOLOGÍA. La memoria titulada. EVOLUTIVA. PAR.A. LA. CONSTRUCCIÓN DE MODELOS COGNITIVOS COMPLEJOS.. EXPLORACIÓN. DE. LA. `CREATIVIDAD ARTIFICIAL' EN COMPOSICIÓN MUSICAL." ha sido realizada por D. JUAN JESÚS ROMERO CARDALDA, bajo nuestra dirección, en el Departamento de Tecnologías de la Información y las Comunicaciones de la Universidade da Coruña, y constituye la Tesis que presenta para optar al Grado de DOCTOR en Informática.. A Coruña, 10 de Diciembre de 2001. Fdo: D. Aleja. o Pazos Sierra. Fdo: D. Antonino Santos del Riego.

(4) Agradecimientos. Deseo expresar mi completo agradecimiento a Alejandro Pazos Sierra y Antonino Santos del Riego por su sabiduría y por la confianza depositada en mi durante estos años de trabajo. Gracias a mis más estrechos colaboradores, Jose Luis y Alberto por sus días y noches sin dormir y por su sabiduría. A Delia, Anita y Taibo por sus atentas revisiones y útiles consejos. Gracias por las eternas horas de charlas a los que colaboraron en la discusión de los conceptos desarrollados en este trabajo de investigación entre los que cabe citar a Julián Dorado, Peter Todd, Juan Rabuñal, Manuel Riveiro, Colin Johnson, Nieves Pedreira, Santiago Rodríguez, Jose Enrique, Monica, Anuska y Tani. Gracias a mi traductora, Eva Celeiro, por su capacidad profesionalidad Gracias a todos los que forman la familia del RNASA-GIB, de la Facultad de Informática de la Universidade da Coruña, por convertir el ambiente de trabajo en un segundo hogar. Gracias, también a mi familia y amigos y en especial a Eugenia Carrera por su imprescindible compañía en los buenos y malos momentos..

(5) A mi familia.

(6) Indice ,. Indice .................................................................................................................................1 Resumen ............................................................................................................................4 Abstract .............................................................................................................................6 Capítulo 1.- Introducción ..................................................................................................8 1.1. Obj etivos ..............................................................................................................12 1.2. Justificación ..........................................................................................................18 1.3. Aportaciones .........................................................................................................18 1.4. Beneficios .............................................................................................................19 Capítulo 2.- Fundamentos ...............................................................................................22 2.1. Redes de Neuronas Artificiales ............................................................................22 2.2. Computación Evolutiva y Algoritmos Genéticos .................................................25 2.3. AA.GG. para el Ajuste de los Pesos de Conexión ...............................................27 2.4. Vida artificial ........................................................................................................28 Capítulo 3. "Metodología de Modelización Evolutiva" ..................................................31 3.1. Estado del arte ......................................................................................................33 3.1.1. Metodologías de Ingeniería del Soflware ......................................................33 3.1.2. Metodologías de Inteligencia Artificial .........................................................34 3.1.3. Metodologías de Simulación .........................................................................35 3.2. Metodología propuesta .........................................................................................38 3.2.1. Planteamiento general. Etapas, fases y bloques ............................................39 3.2.2. Roles de los Participantes .......................................................................... 43. 3.2.3. Etapas ............................................................................................................45 3.2.4. Acciones previas ............................................................................................48 3.2.5. Fases ..............................................................................................................49 3.2.6. Bloque I: Conceptualización .........................................................................49 3.2.7. Bloque II: Creación de módulos ....................................................................54 3.2.8. Bloque III: Validación ...................................................................................58 3.3. Comparativa con otras metodologías ...................................................................60 Capítulo 4.- Sociedad Híbrida .........................................................................................63 4.1. Planteamiento del Problema .................................................................................64 4.1.1. Importancia de un marco de aplicación común ................................. ............65 4.1.2.Modelo de sociedad humana ..........................................................................66 1.

(7) 4.2.Descripción Conceptual ........................................................................................71 4.2.1.Sociedad Híbrida y Test de Turing .................................................................72 4.3.Caracterización de la SH .......................................................................................78 4.3.1.La SH como mecanismo de aprendizaje ........................................................79 4.3.2.La SH como grado de autonomía computacional ..........................................81 4.4.Formalización de la SH .........................................................................................82 4.4.1.Escenario ........................................................................................................83 4.4.2.Individuos .......................................................................................................84 4.4.3.Comportamiento del individuo .......................................................................85 4.S.Implementación .....................................................................................................98 4.S.1.Mensajes .........................................................................................................98 4.5.2.Arquitectura del sistema .................................................................................99 4.6.Implantación ........................................................................................................108 Capítulo 5.- Aplicación de la Metodología y la Sociedad Híbrida al ámbito de la Creación Musical .......:...................................................................................................110 5.1. Justificación del dominio seleccionado ..............................................................113 5.1.1. El arte ..........................................................................................................114 5.1.2. La Música ....................................................................................................116 5.2. Estado del arte en Informática Musical ..............................................................117 5.2.1. Sistemas Generativos o algorítmicos ..........................................................118 5.2.2. Sistemas de Análisis-Síntesis ......................................................................119 5.2.3. Sistemas Adaptativos ..................................................................................119 5.2.4. Problemas que plantean ...............................................................................120 5.3. Descripción del problema ...................................................................................123 5.4. Metodología de Modelización ............................................................................124 5.4.1. Acciones preliminares .................................................................................125 5.4.2. Bloque I. Conceptualización .......................................................................126 5.4.3. Bloque II. Diseño y Creación de Modelos Computacionales .....................136 5.4.4. Modelo de Composición .............................................................................137 5.4.5. Módulo "Público" basado en RR.NN.AA ...................................................154 5.4.6. Bloque III: Validación .................................................................................166 Capítulo 6.- Conclusiones .............................................................................................174 Capítulo 7.- Bibliografia ................................................................................................177 , Indice de Ecuaciones .....................................................................................................191 2.

(8) ,. Indice de Tablas .............................................................................................................192 , Indice de Ilustraciones ...................................................................................................194. 3.

(9) Resumen En esta tesis doctoral se propone una metodología de desarrollo de entes artificiales creativos, facilitando la colaboración, cooperación y comparación de sistemas desarrollados por diversos grupos de investigación y mediante diferentes paradigmas computacionales. Además, se desarrolla una generalización del Test de Turing denominada "Sociedad Híbrida" que permite validar un modelo de una capacidad creativa mediante la utilización de una "sociedad" compuesta por humanos y sistemas informáticos.. Para ello, una vez realizada la introducción, presentación de obj etivos y motivaciones del presente trabajo de investigación en el capítulo 1, en el capítulo 2, se analizarán los fundamentos computacionales necesarios para la comprensión de este trabajo de investigación.. A continuación, en el capítulo 3, se propone una metodología para la generación de modelos creativos inspirada en las distintas metodologías existentes en la Ingeniería del Software, Ingeniería del Conocimiento y modelización que permite la especificación, análisis, creación y validación de sistemas creativos complejos. No se tiene constancia de la existencia de otra metodología de generación de sistemas creativos como la que aquí se expone.. Además, se expone en el capítulo 4 un marco de desarrollo, basado en la Vida Artificial, denominado "Sociedad Híbrida", que modeliza el comportamiento de una sociedad ante la existencia de comportamiento creativo. Este marco permite la interacción de diversos elementos artificiales realizados con distintas aproximaciones computacionales, tanto de computación tradicional como de Inteligencia Artificial, dentro de un marco común, así como la comunicación entre estos "elementos" artificiales y los "elementos" humanos. Uno de los mayores problemas a la hora de desarrollar sistemas computacionales creativos es la definición de criterios de validez en dominios creativos. Se expone en este capítulo como la "sociedad híbrida" proporciona una solución posible a este problema.. 4.

(10) En el capítulo 5 se aplica el criterio, la metodología y el marco de desarrollo propuestos, en la construcción de sistemas en el dominio musical, planteando las primeras fases de un sistema cuyo objetivo es la creación y adquisición de música en colaboración con individuos humanos. Se aplican, así, distintos elementos artificiales, tanto de forma aislada como formando parte de un sistema completo.. Finalmente, en el capítulo 6, se incluye la discusión de los resultados y las conclusiones de este trabajo de investigación.. 5.

(11) Abstract This PhD Thesis proposes a methodology for developing creative artificial beings, facilitating the collaboration, co-operation and comparison among systems developed by several research teams using various computational paradigms.. Moreover, a. generalisation of Turing's Test called "Hybrid Society" is developed. This allows the validation of a model of creative capacity by means of using a"society" integrated by humans and computer systems.. Within this scope, Chapter 1 presents an introduction, together with the goals and motivations behind this work, while Chapter 2 analyses the computational basis which is necessary in order to understand this research project.. Next, Chapter 3 proposes a methodology for the generation of creative models inspired by the different methodologies existing in Software Engineering, Knowledge Engineering and modelling which allow the specification, analysis, creation and validation of complex creative systems. There is no record of the existence of another methodology for generating creative systems such as the one presented here.. Subsequently, Chapter 4 explains a development framework based on Artificial Life which is called "Hybrid Society". This framework serves as a model for the behaviour of a given society in which creative behaviour takes place. It also enables the interaction of several artificial elements produced by means of different ^ omputational approaches, including traditional computational techniques and Artificial Intelligence, within a common framework, thus allowing communication to take place among human and artificial "elements". One of the main problems faced when trying to develop creative computational systems is the definition of valid criteria within creative dominions. This chapter explains how a"hybrid society" provides a possible solution to this problem.. Chapter 5 applies the criterion, methodology and development framework which have been presented to the building of systems in the music field, proposing the first stages of a system whose goal is the creation and acquisition of music in collaboration with human beings. Several artificial elements are applied, both in isolation and as part of a whole system.. 6.

(12) Finally, Chapter 6 includes the results discussion, together with the conclusions of this research work.. 7.

(13) Capítulo 1.- Introducción. "En cualquier fase de la técnica, desde Déda/o o Herón de A/ejandría, la habi/idad del artí/'ice para producir un símulacro mecánico de un organismo ^^ivo siempre ha //amado la atención ". / 4V/EN-85/.. Hoy en día se está má.s cerca que nunca de conseguir máquinas que simulen al ser humano, no sólo desde el punto de vista físico, sino también desde el punto de vista cognoscitivo. Del estudio de este comportamiento y de los sistemas artificiales que lo simulan se encarga la rama de la computación denominada Inteligencia Artificial (en adelante IA).. Se podría definir la IA como el estudio de la inteligencia en elementos artificiales y la creación de elementos que posean un comportamiento inteligente. Desde este punto de vista, se pueden definir dos enfoques de la IA, el enfoque tecnológico y el científico.. La rama tecnológica persigue la creación de sistemas que realicen tareas para las que se precisa inteligencia. Se busca, desde este planteamiento, la resolución de problemas concretos, sin limitar las técnicas a utilizar a aquellas que utilizan los seres inteligentes.. La rama científica de la IA se puede definir como "el estudio del comportamiento inteligente, siendo su fin el conseguir una teoría de la inteligencia que explique la conducta que se produce en seres de natural inteligentes, y que guíe la creación de entes artificiales capaces de alcanzar dicho proceder inteligente" [GOME-97].. La IA científica es tan antigua como la computación. Así, desde los primeros tiempos de la ciencia del tratamiento de la información se planteó el interés de utilizar computadoras en la simulación de comportamiento inteligente. Es revelador el hecho de que varios de los padres indiscutibles de la ciencia de la computación, como son Norbert Wiener [WIEN-85], Von Neumann [NEUM-66] y Alan Turing [TURI-50], hayan dedicado un gran esfuerzo al estudio de la inteligencia humana y la IA.. 8.

(14) En particular, la contribución de Alan Turing al mundo de la computación en general y al de la IA fue muy grande. Además de participar en el diseño de una de las primeras computadoras que existieron, entre los años 40 y 50, ayudó a establecer las bases de lo que posteriormente serían las tendencias principales en IA (la rama simbólica, la conexionista y la que se puede considerar como evolutiva). En un artículo transcendental en la historia de la IA [TURI-50] definió el test que sería central en la definición de un elemento artificial que posea "inteligencia" denominado el "Test de Turing" (en adelante TT). En este test, también denominado juego de la imitación, se sitúan dos terminales en una sala conectados a una computadora y un humano.^ Se pretende que un interrogador realice preguntas a través de los dos terminales. El test es superado cuando el interrogador no puede discernir cuál de los dos terminales está conectado a una computadora y cuál está conectado a un ser humano.. El TT es una referencia en el estudio de la IA y uno de los mayores focos de controversia en las discusiones acerca de la viabilidad de la IA en su intento de modelizar la Inteligencia humana. Turing propone que "el juego de la imitación debía aceptarse como un criterio básico. Porque es así como nosotros reaccionamos entre nosotros " [STRA-99]. Se podría plantear, siguiendo la filosofia del TT, la opción de superarlo situando a las computadoras "entre nosotros", en una sociedad común. Esta componente social también es destacada por otros autores. Así, Dreyfus [DREY-92] arguye que las computadoras no tienen un cuerpo, unos propósitos y necesidades y no comparten la cultura humana, así que no pueden ser inteligentes.. Además de este carácter social, la visión que, desde el punto de vista de la IA, se presenta de la Inteligencia Humana (en adelante IH), es enormemente compleja y amplia. Juan Pazos atribuye entre otras las siguientes capacidades diferenciadoras a la IH "capaz de derivar conocimientos de la información, contemplar las relaciones entre los fenómenos del mundo, crear formas estéticas y apreciarlas " [PAZOS-95]. Turing recoge en su artículo las siguientes tareas propias de un ser inteligente "... make mistakes, fall in love, enjoy strawberries and cream, make some one fall on love with it, learn from experience, ..., have as much diversity of behaviour as man, do something. 9.

(15) new... "1[TURI-50]. Estas últimas dos capacidades señalan claramente hacia la creatividad.. La resolución del primer obstáculo de Dreyfus, que hace referencia a la incorporalidad de las computadoras, se corresponde con una amplia área dentro de la IA denominada Robótica, y algunas de las capacidades nombradas por Turing como enamorarse, o apreciar las fresas con nata pueden requerir una mayor madurez de la IA como ciencia. Sin embargo, algunas de las capacidades presentadas tienen una relación muy estrecha con el presente . trabajo de investigación ya que con él se pretende facilitar la incorporación de las "computadoras" a la sociedad, diseñando computadoras "sociables" que puedan crear nuevas formas estéticas y apreciarlas manifestando una gran diversidad de comportamiento complejo. Que presenten, en definitiva, un comportamiento social, creativo e inteligente.. La posibilidad de crear máquinas que realicen procesos creativos que superen los Iímites de 1a comprensión humana resulta a la vez interesante e inquietante y constituye un paso necesario para alcanzar un estado de verdadera IA y aportar soluciones a problemas de naturaleza creativa.. A lo largo de este trabajo de investigación se utilizarán una serie de términos relacionados con la creatividad que es importante definir. Una solución creativa es aquella que muestra creatividad. De la misma forma, una labor o tarea creativa es aquella que para ser realizada requiere creatividad. Así como pueden existir soluciones creativas a problemas no creativos (un paso, un beso, etc.), todas las posibles soluciones a tareas creativas muestran creatividad. De esta forma, la creatividad es un requisito para la resolución de una tarea creativa. Además de considerar el resultado de la creatividad se puede analizar la creatividad dentro de un proceso. Se habla de proceso creativo cuando la "realización" de una acción muestra creatividad.. '"cometer errores, enamorarse, disfrutar de las fresas con nata, hacer que alguien se enamore de ello, aprender de la experiencia ,..., comportarse de maneras tan diversas como las personas, hacer algo nuevo de verdad". 10.

(16) La creatividad es uno de los pocos términos que puede rivalizar con la "inteligencia" en el número y diversidad de las definiciones. Entre estas definiciones se pueden citar "Capacidad de crear algo nuevo" o"capacidad de solucionar un problema nuevo" Bentley lo asocia con las siguientes palabras "aesthetic, lovely, poetic, beatiful, skilled, profient, inventive, elegant "2[BENT-99]. En un artículo de Battle et al. se define como el "proceso creativo cuando dos o más elementos de conocimiento se unen por primera vez para formar una nueva idea, una hipótesis o una solución a un problema " [BATT89].. Margaret Boden estudió ampliamente la creatividad en una obra titulada "la mente creativa" [BODE-84]. En esta obra se comentan dos tipos de creatividad, la Pcreatividad o creatividad personal y la H-creatividad o creatividad histórica. La diferencia entre ambas radica en que en la primera el producto creativo es nuevo para la persona creativa, mientras que en la segunda forma de creatividad el producto creativo es nuevo para la humanidad. En la primera el ámbito es personal, individual, mientras que en la segunda el ámbito es social. El término creatividad se suele asociar con la segunda acepción, ya que ésta tiene una mayor relevancia social. Esta será la acepción utilizada en el presente trabajo de investigación.. Como consecuencia de lo anterior se puede deducir que un producto creativo debe ser "nuevo", pero existen más características que debe cumplir un producto para ser creativo.. •. Un producto creativo debe ser "bueno" desde el punto de vista de una sociedad "una idea creativa debe ser útil, iluminadora o desafiante de algún modo" [BODE-84]. Esta interpretación por la sociedad de las ideas creativas no siempre es fácil. Kuhn comenta que la ciencia revolucionaria, las nuevas ideas en ciencia, tiene éxito porque los viejos científicos mueren [KUNH-62]. El termino "bueno" puede ser interpretado desde un punto de vista "estético". Poincaré puntualiza que "de entre los grandes números de combinaciones ciegamente formadas por el yo subliminal, casi ninguna tiene interés o utilidad; pero, justamente por esa razón, tampoco tienen ningún efecto sobre la sensibilidad. 2"estético, encantador, poético, hermoso, habilidoso, competente, inventivo, elegante". 11.

(17) estética. La conciencia nunca las conocerá; solo algunas son armoniosas y, por consiguiente, instantáneamente útiles y hermosas. Ellas serán capaces de tocar la sensibilidad especial del geómatra ^u otros científicosJ " [POIN-82].. •. Asimismo, un producto creativo debe ser un elemento válido dentro de una cultura y estar "construido" con elementos de la misma. Para que una obra de arte o una teoria científica pueda ser apreciada como creativa debe ser comprendida en una relación específica con lo que le precedía. O sea, que un producto creativo debe ser nuevo pero poder haber sido construido antes con los elementos de la cultura en la que se crea. Por ello, Szent-Gyorgyi definió el acto creativo como "consiste en ver lo que todo el mundo ha visto y pensar lo que nadie ha pensado " [SZEN-64].. •. Además de todo esto, un producto creativo debe ser original, "cuanto más improbable e inesperada sea la nueva combinación, tanto más original o creativa es "[BATT-89].. Una vez que se han definido una serie de caracteristicas de un producto creativo, cabria analizar cuales son las capacidades que se pretenden de un ser creativo. En principio, se puede afirmar que para poder ser creativo es necesario crear o elaborar un producto creativo. En este sentido, un generador de soluciones aleatorio podría ser creativo ya que algunas de las múltiples soluciones aportadas por él pueden resultar creativas. Sin embargo, como se puede entender en la cita anterior de Poincare, el ser creativo reconoce las soluciones buenas, estéticas; en fin, creativas. Entonces, para que este ente sea creativo también debe poder identificar estos productos como creativos.. 1.1. Objetivos. Como se verá a lo largo del presente trabajo de investigación, se han desarrollado sistemas basados en computadoras que abordan distintos problemas o capacidades creativas. Estos sistemas, aún obteniendo resultados muy esperanzadores en algunos casos, no abordan el problema o capacidad que tratan de una forma general, dando respuesta a situaciones muy concretas, carentes de integración con otras soluciones y 12.

(18) propósitos comunes. Por lo tanto, al igual que sucedió anteriormente en la utilización de técnicas de computación e IA en otras áreas, es necesario pasar de una etapa de desarrollos aislados a la creación de una metodología que permita el desarrollo organizado y común de modelos computacionales de capacidades creativas.. Con esto en mente, el presente trabajo de investigación se centrará en la elaboración de una metodología original de desarrollo de modelos computacionales de capacidades humanas complejas, creativas y sociales.. La metodología deberá cumplir una serie de objetivos:. •. Uno de los problemas más importantes a la hora de abordar sistemas computacionales en dominios creativos es la definición de un criterio de calidad o validez. La metodología debe proporcionar un criterio único y general, o sea independiente de la capacidad, para la validez o adecuación de un producto creativo.. •. Deberá poseer un vínculo con las metodologías actuales y poder ser asimilada rápidamente por expertos de distintos dominios. Por ello, se establecerán vínculos con diferentes metodologías utilizadas en modelado, en investigación cognoscitiva, Ingeniería del Conocimiento, etc.. •. Deberá mantener una correspondencia con la referencia humana en la tarea a modelar a través del tiempo, bien desde el punto de vista histórico, o bien considerando la adquisición cultural por parte de un individuo. Para ello, la metodología deberá incorporar la figura de "etapas". Cada una de estas etapas se corresponderá con una época o fase en el hombre realizando esta tarea.. •. Estas etapas de la metodología deberán presentar un "crecimiento modular". Así, cada una de las etapas deberá constituir un modelo cógnoscitivo más complejo, ampliando el ámbito de la etapa anterior, pero permitiendo la inclusión de cualquier resultado de las etapas anteriores. De esta forma, cualquier instancia de la etapa "N" lo será de cualquier etapa mayor que "N".. 13.

(19) •. Cada una de estas etapas tendrá una serie de subfases validables. Cada subfase deberá generar una definición formal en la forma de un modelo y una serie de características que permitan comprobar que elementos se corresponden con esta etapa.. La metodología permitirá la participación de diversos expertos en distintas áreas, lo que resulta importante en dominios multidisciplinares como es el caso en este tipo de sistemas. Así, en esta investigación tienen cabida una serie de especialidades, muchas de las cuales ya de por sí muestran un claro carácter interdisciplinar. Entre ellas se pueden citar los siguientes:. •. El estudio de la creatividad entra de lleno dentro del ámbito de la investigación cognoscitiva. Las investigaciones de la modelización del comportamiento humano involucran a psicólogos, filósofos, informáticos, antropólogos, etc.. •. Las investigaciones que se centran en aspectos concretos del hombre precisan una serie de expertos en el dominio concreto. En el caso de la música estos expertos incluyen a musicólogos, estudiosos del arte, etc.. •. El presente proyecto de investigación tiene una de sus bases en la Vida Artificial.. Esta. disciplina. está. principalmente integrada. por. expertos. computacionales y biólogos, pero participan en ella sociólogos, filósofos y psicólogos.. •. En esta clase de proyectos existe una participación clara por parte de expertos computacionales, cuyo conocimiento de paradigmas y técnicas permiten la construcción de modelos creativos.. Estos expertos de diferentes disciplinas deben participar en fases distintas de la metodología y realizan labores distintas. Así, el papel de los expertos en el dominio es más importante en las primeras fases, mientras que el papel de los expertos en Vida Artificial, en IA y en Ciencia Cognitiva tiene mayor relevancia en fases posteriores.. 14.

(20) Estos distintos roles y su participación en cada fase, deben estar representados en la metodología.. La metodología debe ser integradora, estableciendo el papel de los expertos de distintas áreas relacionadas y permitiendo la participación de distintos grupos, aproximaciones y técnicas computacionales en la creación de modelos. Para ello, una vez definidas las caracteristicas de una etapa concreta en la creación de un modelo de una capacidad humana, se deben habilitar los mecanismos que permitan que de forma independiente, se elaboren distintas soluciones computacionales y se validen estas en conjunto.. Por ello, se hace necesario incorporar, dentro de la metodología, la definición de un marco de trabajo general que permita la integración, competición, colaboración y validación de las distintas soluciones computacionales propuestas por los distintos grupos. Este marco de trabajo se adaptará para cualquier capacidad humana o etapa de una capacidad humana.. Este marco de Trabajo debe cumplir una serie de objetivos:. •. Constituir un modelo de una sociedad humana que permita a los modelos computacionales integrados en ella la adquisición de una cultura dinámicamente. Para ello, es necesario determinar algún medio de incorporación directa de los seres humanos dentro del marco de trabajo. Los distintos roles que participen dentro de un modelo social deben poder ser realizados por modelos computacionales o por personas. En este sentido, uno de los objetivos centrales del trabajo es habilitar los mecanismos que permitan situar elementos software artificiales "entre nosotros" en el seno de una sociedad común. Esto constituirá un paso adelante en la superación del TT, y por lo tanto en la creación de máquinas inteligentes.. •. Deberá ser totalmente neutro a la técnica computacional utilizada para la elaboración de cada modelo computacional. Considerando su papel de validación de distintas propuestas, el marco debe carecer de restricciones sobre la técnica de las mismas. También debe facilitar en lo posible la adaptación de propuestas ya elaboradas al uso dentro del marco. 15.

(21) •. Incorporará un elemento central que integrará los distintos modelos creados por grupos distintos para una etapa concreta. Este elemento central deberá elaborarse a partir de la definición de la etapa teniendo en cuenta sus caracteristicas.. •. El marco de desarrollo incluirá un conjunto de reglas que definirán el comportamiento del elemento central. Estas reglas regularán el comportamiento de los distintos modelos computacionales. Es importante asegurar la correcta definición de un conjunto de reglas que permitan mantener una interrelación social entre estos modelos.. •. Debe incluir la definición de una interfaz básica que incluya el conjunto de mensajes que pueden producirse entre un modelo creado y el elemento central. Esta interfaz permitirá independizar el trabajo de creación de los distintos modelos además de permitir el uso de distintas técnicas informáticas para la creación de los mismos. Esta interfaz se complementará con una serie de mensajes que dependerán de la etapa de la tarea creativa que se este modelizando.. •. Permitirá la participación de elementos artificiales a través o mediante ^. ^. computadoras conectadas a través de una red de comunicaciones. En este sentido, el marco de desarrollo contendrá un protocolo de comunicación que se corresponderá con la interfaz definida en el subobj etivo anterior. Este protocolo deberá resolver una serie de problemas de sincronización, actualización, etc. que están asociados a la creación de un sistema distribuido.. •. Es necesario dotar al marco de trabajo de una metodología de adaptación que permita la elaboración de marcos de trabajo concretos para una capacidad o una etapa de una capacidad humana. Esta metodología de adaptación debe definir los pasos necesarios para realizar esta adaptación.. Para ilustrar la metodología definida, ésta se aplicará en un dominio que presenta un carácter creativo y social y en el que ya existen actualmente un cierto número de. 16.

(22) trabajos aislados. Este dominio es el de la creación o composición musical. Para ello se realizarán las distintas fases de la metodología para la primera de las etapas en la generación de modelos de creación musical.. Además, se abordará el diseño y la construcción de un marco de desarrollo adaptado al dominio de la creación musical siguiendo la metodología de adaptación del marco general de trabajo. De esta forma, se proporciona una herramienta que permite la creación y validación de modelos computacionales de creación musical. Con el fin de mostrar la capacidad del marco de trabajo de integrar soluciones hetereogéneas se deben incorporar al mismo, modelos computacionales realizados con distintas técnicas.. La materialización de este marco de desarrollo en el dominio de la creación musical incluye los siguientes obj etivos:. •. Desarrollo de un individuo artificial soflware que realice la composición de temas musicales siguiendo las características definidas en las anteriores fases de la metodología. Este individuo artificial debe producir piezas musicales en función de los "gustos estéticos" de seres humanos y otros individuos artificiales. Se empleará una técnica de Computación Evolutiva para la creación de este individuo.. •. Desarrollo de un individuo artificial que "escuche" temas musicales y los valore. Este individuo también se debe adaptar a la estética del entorno social formado por seres humanos y otros individuos artificiales. Para ello, se emplearán técnicas de IA conexionista.. •. Prueba de los individuos y el marco de trabajo en el dominio de la creación musical. Se considera imprescindible probar el sistema con usuarios humanos de distinto nivel musical y utilizando herramientas musicales familiares para los usuarios.. •. Análisis y estudio de los resultados obtenidos.. 17.

(23) 1.2. Justificación Parece adecuado y justificado intentar resolver este problema con la definición de una nueva metodología y un marco de trabajo por las razones que a continuación se exponen:. •. Si bien existen metodologías de desarrollo de sistemas computacionales de apoyo a la creatividad humana, no se tiene constancia de la existencia de metodologías de creación de sistemas computacionales "creativos", ni de metodologías específicas para la elaboración de sistemas en dominios que requieran creatividad.. •. Los dominios que requieren creatividad incluyen gran cantidad de elementos que dependen de factores sociales, individuales y temporales.. Requieren la. participación de elementos humanos que proporcionen una referencia dinámica. No se tiene constancia de ningún marco de trabajo desarrollado que incorpore elementos humanos y artificiales en un entorno común de una forma social.. •. No se tiene constancia de la existencia de técnicas adecuadas para abordar problemas de naturaleza creativa. Los dominios de naturaleza creativa presentan un alto grado de complejidad al incluir todas las características de los citados dominios. Esto es: subjetividad, cambios en el tiempo, dependencia de una cultura, etc.. 1.3. Aportaciones El presente trabajo aporta un amplio conjunto de posibles soluciones a los diferentes campos de la IA, entre los que se pueden destacar:. •. Se ha diseñado una metodología que permite participar a expertos de distintas especialidades en la realización de modelos con capacidades creativas mediante la "integración social" de distintas aproximaciones y técnicas computacionales.. •. La validación de las distintas propuestas se realiza de una forma natural, es el modelo de sociedad a través de la interacción entre las propias propuestas y los. 18.

(24) humanos participantes la que define la calidad de las soluciones que se aportan. Este acercamiento al problema es el adecuado para un amplio rango de problemas de naturaleza creativa, incluyendo los relacionados con el arte o la estética.. •. Se ha elaborado un marco de desarrollo, partiendo de una generalización del TT, que permite resolver la integración de elementos humanos y artificiales en un mismo entorno. De esta forma, se pueden abordar problemas en los que es necesaria la unión "cultural" de máquinas y personas.. 1.4. Beneficios Los sistemas ofrecerán la posibilidad de una solución satisfactoria a problemas o tareas como los que aquí se abordan, dentro del campo de la creación musical. Proporcionarán beneficios tanto científicos como técnicos, sociales y económicos que pueden resumirse en los siguientes puntos:. •. Exploración del espacio de composición musical, ayudando al compositor humano en la búsqueda y prueba de nuevos caminos musicales.. •. Acerca el mundo de la composición musical a personas que por su limitada experiencia, formación, dedicación o capacidades se ven imposibilitados para participar directamente en la creación de temas musicales.. •. La creación de sistemas computacionales cuyo comportamiento supere el marco de lo definido explícitamente por su creador abre un enorme universo de nuevas posibilidades a explorar y un nuevo marco de interrelación hombre - máquina en el que ambos pueden colaborar para obtener resultados nunca antes obtenidos.. •. Las posibilidades futuras que abre este campo son prácticamente ilimitadas. La creación de artistas artificiales dirigidos por el "gusto" estético del usuario permite la adaptación completa del artista al usuario, hasta el punto en el que cada individuo podría disponer de un artista a su medida. Este artista crecería con el usuario, aprendiendo continuamente e interaccionando con él, podria. 19.

(25) localizar fuentes estéticas agradables para su usuario e incluso podría interaccionar con otros artistas para la colaboración en la consecución de mejores y más agradables obras artísticas.. •. El papel del usuario, además, pasa de ser pasivo a ser parcialmente activo. El usuario no se limita a adquirir experiencias, sino que, con sus elecciones define las futuras creaciones, así como el carácter del individuo artificial. Se puede considerar que aporta una estética al conjunto, estética que puede ser mostrada y compartida por otros individuos.. •. La pertenencia a una cultura musical cambiaría también completamente. El crecimiento de Internet, y de su papel en la vida cotidiana, así como la progresiva aunque más lenta utilización de sistemas informáticos basados en entornos inmersivos, provocan que los vínculos culturales estén mucho menos relacionados con la distancia fisica y má.s con la afinidad cultural. La incorporación de sistemas creativos a este tipo de culturas "virtuales" resultaría de todo grado natural y daría lugar a una comunicación indirecta. La afinidad musical podría definir una cultura o subconjunto de usuarios bien directamente, mediante la interacción entre usuarios o indirectamente, mediante la interacción de artistas artificiales.. •. La cultura musical, o mejor dicho culturas musicales, a las que perteneciera un individuo influirían directamente en la estética, y por lo tanto en la "obra". Esta influencia es mutua y se manifiesta de igual modo, aunque en distinto grado, en la cultura artística actual. De hecho, se puede plantear el dilema de si es el ambiente cultural el que hace una estética o viceversa.. •. La experimentación de esta interacción en comunidades de usuarios que podríamos denominar "virtuales" resulta apasionante por su desvinculación con una cultura asociada a una localización fisica, en la que las personas que lo componen puedan tener, por un lado, un papel activo ya que sus "obras" forman parte de esta cultura y, por otro, pasivo ya que puede ser un elemento intermedio el que realice la interacción.. 20.

(26) •. Las posibilidades de este tipo de sistemas se multiplican mediante la comunicación de los distintos artistas artificiales a través de una red como Internet, de forma que puedan recoger aquellas influencias de los otros artistas que son acordes con el gusto de su "usuario". Además, esta clase de sistemas pueden ser utilizados por usuarios de cualquier nivel musical siendo una herramienta de ocio y aprendizaje perfectamente adecuada.. •. Por último, este tipo de sistemas pueden generalizarse a otras áreas donde el concepto de estética tenga un papel importante. Estas áreas incluyen además de todas las manifestaciones artísticas, el diseño, proceso de compra, el estudio de las relaciones humanas, etc.. 21.

(27) Capítulo 2.- Fundamentos 2.1. Redes de Neuronas Artificia/es Las Redes de Neuronas Artificiales (en adelante RR.NN.AA) se inscriben en la perspectiva conexionista de la IA, siendo su objetivo principal el de la emulación o simulación estructural y funcional de las redes de neuronas biológicas [PAZO-91]. El primer modelo de neurona artificial fue propuesto por McCulloch y Pitts en 1943 [McCU-43]. En la Ilustración 1 se muestra una posible modelización de una Neurona Biológica simplificada. NEURONA FORMAL TÍPICA TRAi^SFERENC IA. SU MACI ÓN. Z ona Inte g^adora. Z ona Re c eptora "Función Surnatorio". "Función de Transferencia". O Z ona Exnis ora "Función de S alida". Ilustración 1. Modelización de la Neurona Biológica. Se puede hablar de las RR.NN.AA como un conjunto de neuronas artificiales o elementos de proceso (EE.PP. en lo sucesivo) capaces de ajustar los pesos de sus conexiones, mediante un proceso de aprendizaj e, para que su comportamiento sea el esperado. En otras palabras, se puede ver el aprendizaje como la relación entre una entrada y una salida acompañada, la mayor parte de las veces, por cambios en los valores de algunas de las conexiones existentes entre los elementos de la red.. 22.

(28) Las características específicas de los sistemas conexionistas son [SMOL-88] [HONA94] [RUNiE-89] [HAYK-94] [PAZO-91 ] [PAZO-96a] :. 1. Aprendizaje a partir de ejemplos del dominio de trabajo. Es lo que se conoce como "aprendizaje socrático". Esta cualidad se hace más determinante cuando se . abordan problemas donde no existe un experto "genuino" que posea los conocimientos precisos y que sea capaz de explicitarlo en una forma que permita al Ingeniero del Conocimiento hacerlo comprensible y manej able por la computadora. 2. Capacidad de generalización. Las RR.NN.AA poseen la capacidad de extraer regularidadés del conjunto de ejemplos. Gracias a ello se pueden abordar, de una forma eficaz, situaciones nuevas no contempladas con anterioridad. 3. Direccionamiento por el contenido. Otra de las posibilidades de las RR.NN.AA es el de la reconstrucción de patrones a partir de entradas incompletas. 4. Tolerancia parcial a ruido y errores. Los sistemas conexionistas tienen un buen comportamiento ante entradas con ruido y, o, parcialmente erróneas. Con ello se considera que puedan tener un comportamiento aceptable en problemas del mundo real donde las entradas a los sistemas raramente son "limpias" y"completas". 5. "Creatividad. computacional". o"descubrimiento computacional". Es la. capacidad de estos sistemas para encontrar nuevas relaciones no previstas entre los elementos del conjunto de entrenamiento para el aprendizaje.. Los sistemas que incorporan estas caracteristicas han demostrado que pueden tener capacidad de aprendizaje; tomado éste como un proceso que cambia los pesos de las conexiones entre los elementos constituyentes de la red, de forma que los patrones de los datos de entrada al sistema son almacenados en dichas conexiones. La inmensa mayoria de los mecanismos de aprendizaje que utilizan estos sistemas conexionistas están inspirados biológicamente y surgen a partir de los trabajos de Donald Hebb, sobre todo de aquel en que define cómo se podrian modelizar las conexiones entre los elementos formales que emulan el comportamiento de los biológicos, en las denominadas "Sinapsis de Hebb" [HEBB-49]. Las reglas de aprendizaje son las encargadas de indicar cómo se han de modificar los pesos sinápticos de las RR.NN.AA para que su respuesta sea "correcta". Sin entrar en detalles de cada una de ellas, únicamente indicar que entre las reglas de aprendizaj e más conocidas están [SANT-96]: la regla de Hebb [HEBB-49], la regla de Widrow Hoff o. 23.

(29) regla Delta, la regla de Rosemblatt o regla del Perceptrón [ROSE-62] [MINS-69], la regla de Retropropagación o regla Delta Generalizada [RUME-86] [BLUM-92], etc. También se pueden utilizar para esta tarea técnicas de computación evolutiva como se analiza en el apartado 2.3.. La Ilustración 2 representa un modelo de Red de Neuronas Artificiales (RNA en lo sucesivo) con tres capas de EE.PP: de entrada, oculta y de salida, relacionadas por medio de dos matrices de pesos.. Ilustración 2. Modelo de RNA. Cada neurona estará formada por una serie de entradas x1. Cada conexión que va de la neurona i a la neurona j estará ponderada con el peso w^1. La función de activación de la neurona será la suma de los productos de cada entrada a esa neurona por su peso correspondiente. Normalmente, se empleará una función sigmoide o hiperbólica tangente (continuas, monótonas, no decrecientes y derivables), dependiendo de si los valores de entrada a los EE.PP están entre -1 y+1 ó entre 0 y 1 respectivamente.. En la actualidad, las RR.NN.AA se están aplicando, sobre todo, en tareas de [MAMM91 ]: reconocimiento de patrones, adquisición de conocimientos a partir de ej emplos o de grandes BB.DD, captación y clasificación de datos de grandes BB.DD del dominio de. 24.

(30) trabajo, creatividad o descubrimiento computacional, control de procedimientos complejos, etc.. 2.2. Computación Evolutiva y A/goritmos Genéticos El campo de la Computación Evolutiva (CE en lo sucesivo) aglutina técnicas como los algoritmos genéticos (AA.GG. en adelante), las estrategias evolutivas y la computación evolutiva. Todas estas técnicas se basan en la evolución natural [FOGE-66] [RAY-91 ] aportando modelos computacionales de aspectos concretos de esta evolución, tanto con el fin de entender mej or los modelos naturales como para resolver problemas no resolubles por métodos algoritmicos como los relacionados con la creatividad computacional.. La base de teorías sobre la evolución más comúnmente aceptada es el paradigma neoDarwiniano. En esta teoría se afirma que la mayor parte de la historia de la vida puede ser completamente justificada mediante los procesos de la reproducción, la mutación, la competición y la selección. En las técnicas evolutivas están presentes al menos uno de los cuatro procesos.. Los AA.GG. son una clase de algoritmos evolutivos que se usan para resolver problemas de búsqueda y optimización. Se distinguen del resto de las técnicas de CE por la utilización, principalmente, del operador de cruce como método evolutivo.. Los AA.GG. presentan una analogía directa con el comportamiento natural. Trabajan con una población de individuos, representado cada uno a una posible solución del problema que se trata. A cada individuo se le asigna una puntuación dependiendo de lo buena que sea la solución que aporta al problema. A los individuos con mayor adaptación en función de las técnicas de selección utilizadas se les da la oportunidad de "reproducirse", cruzándolos con otros individuos de la población. Así, se produce la descendencia; estos nuevos individuos comparten caracteristicas de cada uno de los padres. Además, los individuos menos adaptados de la población tienen menos probabilidades de ser escogidos para reproducirse y más de ser sustituidos por las nuevas generaciones. Por lo tanto, las siguientes generaciones heredan caracteristicas de los mejores miembros de la población constituyendo mejores soluciones.. 25.

(31) Las primeras ideas en las que se basan los AA.GG. se pueden encontrar en los artículos de Holland de principios de los años 60 [HOLL-62]. Durante una década, Holland y sus colaboradores [HOLS-71] trabajaron en este campo en soledad. En el año 1975, Holland compiló todas estas ideas en su libro más importante de esta época "Adaptation in Natural and Artificial Systems" [HOLL-75]. En 1976, algunas universidades como Michigan, Pittsburgh y Alberta, organizaron el primer "Workshop " sobre sistemas adaptativos en Ann Arbor, Michigan. A éste le seguirian muchos otros en una clara tendencia que se haria clara a partir de 1990, en el que es evidente la diversificación de la comunidad investigadora en AA.GG, como se refleja en el éxito organizativo de las distintas conferencias y la proliferación de libros y publicaciones periódicas.. El funcionamiento de un Algoritmo Genético (AG en lo sucesivo) comienza con una población inicial de individuos generados normalmente de forma aleatoria. Cada individuo de esta población se evalúa para conocer su adaptación al problema. Después, se seleccionan algunos individuos de la población para realizar los cruces. En el AG original. de. Holland [HOLL-75] [HOLL-85] los. individuos. se. escogían. probabilísticamente, asignando a cada individuo una probabilidad proporcional a su rendimiento. De esta forma se les da a los mejores individuos más probabilidades de producir descendencia.. Después de la selección se aplican los operadores genéticos, normalmente cruce y mutación, sobre los individuos seleccionados produciendo la descendencia de esa generación. Los ratios de cruce y mutación son una decisión de configuración del AG. Otros detalles de la implementación son escoger cuantos descendientes se generan de cada cruce, uno o dos, y cuantos individuos se seleccionan y emparejan para el cruce.. Los individuos y las especies pueden ser vistos como una dualidad de su código genético, el genotipo, y su forma de plasmarse con respecto al mundo, el fenotipo. El genotipo ofrece la posibilidad de almacenar la experiencia acumulada, adquirida de la información histórica. Un problema importante en la utilización de AA.GG es el de la codificación de la información del problema, de forma que ésta sea susceptible de ser utilizada por los operadores genéticos. Esto es, la función de transformación Fenotipo-> Genotipo y viceversa. Esta función debe representar adecuadamente las características del problema a solucionar. Lo ideal en la mayoría de los casos es usar una codificación 26.

(32) binaria para esta cadena, siendo la opción más utilizada, aunque existen también otras posibilidades como la de utilizar números reales o árboles jerárquicos.. La función de evaluación también es un parámetro importante ya que define qué individuos serán seleccionados. Una mala especificación en la definición de dicha función producirá individuos no aptos para el problema. Existe un tipo de AG en los que la función de evaluación es producida por el usuario. Estos sistemas se denominan Sistemas de Computación Evolutiva Interactiva [CALD-91 ][VENT-97].. 2.3. AA. GG. para el Ajuste de los Pesos de Conexión Uno de los mayores problemas de las RR.NN.AA., a pesar del gran número de algoritmos de aprendizaje desarrollados con sus múltiples variantes, es la obtención de un buen algoritmo de aprendizaj e. El tipo tradicional de algoritmos de aprendizaj e está basado en métodos de gradiente, como el de "retropropagación del error", que son bastante sencillos de implementar y se pueden ajustar para una rápida convergencia. Sin embargo, estos métodos tienen un serio problema en que no garantizan que la solución que alcanzan sea la mejor. Esto supone que, en aplicaciones reales, los algoritmos de gradiente pueden converger a soluciones no óptimas o mínimos locales de las que no pueden escapar.. Los AA.GG. han sido aplicados con éxito al entrenamiento de RR.NN.AA estimando el conjunto óptimo de los pesos de conexión de las redes. Se han estudiado numerosas aproximaciones: desde el simple proceso de evolución del conjunto de pesos mostrado a continuación, hasta algoritmos con sofisticados operadores de recombinación de individuos con intercambios de partes de la topología de las redes.. En el caso del algoritmo más simple, se parte de que la topología de la RNA ya es fija (número de neuronas de entrada y salida, número de capas ocultas, número de neuronas en cada capa oculta y la conectividad entre todas las neuronas) y el algoritmo genético debe encontrar los valores óptimos de pesos; esto es, el AG realiza el entrenamiento de la RNA. Ya se ha aplicado sin problemas a RR.NN.AA "feed-forward" o alimentadas hacia adelante, cambiando el algoritmo de aprendizaj e de retropropagación [RUME-86] por el AG.. 27.

(33) El funcionamiento del AG para este caso se expone a continuación. Primero se generan todos los individuos de la población, estando compuesto cada individuo por la concatenación de los pesos de esa red "genotipo". Para poder evaluar la adecuación de cada individuo, el genotipo se descodifica asociándole una estructura de RR.NN.AA "fenotipo" con los valores de los pesos codificados. En este proceso de evaluación de la población, se le presentan los pares de entrenamiento entrada-salida a cada individuo de la población, calculando el error cuadrático medio entre las salidas ideales y las obtenidas al evaluar las redes. El valor de error conseguido supondrá el valor de ajuste o adaptación del individuo. Después de esta etapa de inicialización, se aplican, iterativamente, los operadores genéticos de selección, cruce y mutación para obtener una nueva generación. Estos pasos se repiten hasta que el error cometido por las redes alcance un cierto mínimo prefijado.. Ejemplos de trabajos que emplean este método híbrido son reflejados por múltiples autores [WHIT-90], [SCHR-92], [MONT-89], [RABU-98], [SEBA-92]. Un estudio más amplio de este tipo de sistemas, así como de la utilización de técnicas de CE, como los AA.GG para la definición de otros parámetros de las RR.NN.AA se pueden encontrar en varios trabajos [DORA-99][RABU-98].. 2.4. Vida artificial La vida artificial presenta un gran número de definiciones. Una de las más completas es la realizada por Ronald, "Alife is an experimental discipline, fundamentally consisting of the observation of run-time behaviors, those complex interactions generated when populations of man-made, artificial creatures are immersed in real or simulated environments. i3 [RONA-99]. La vida artificial puede considerarse, así, como el estudio de ciertos sistemas creados artificialmente que siguen algunos comportamientos caracteristicos de la vida natural "The study of man-made systems that exhibit behaviors characteristic of natural living. 3"La Vida Artificial es una disciplina experimental que consiste fundamentalmente en la observación de los comportamientos de ejecución, aquellas interacciones complejas generadas cuando las poblaciones de criaturas artificiales hechas por el hombre están inmersas en entornos reales o simulados". 28.

(34) systems'^[LANG-89]. Los materiales utilizados para crear dichos sistemas pueden ser los mismos que los de la vida natural, denominándose de este modo sistemas de vida húmeda debido a que la vida natural está caracterizada por la existencia de agua, u otros diferentes, como el metal y el silicio con lo que se denominan sistemas de vida seca. Dentro de los de vida seca existe una especialización. Por una parte, los que implican la presencia de determinados sistemas mecánicos, como por ejemplo los robots. Y, por otra, los que se desarrollan como una construcción binaria instalada en la memoria de una computadora.. La Vida Artificial posee su propia perspectiva del fenómeno vital que incluye las ideas siguientes:. • La esencia de la vida es el proceso, no la estructura ^sica. Los experimentos que se efectúan en el estudio de la Vida Artificial intentan imitar los procesos de la vida antes que su estructura fisica. • E1 medio en el cual se desarrolla el proceso constituye simplemente una cuestión de conveniencia. Por ejemplo, si se quiere estudiar el proceso de la evolución, los principios son los mismos, tanto si el proceso se desarrolla en la materia viva, en robots que posean la capacidad de automodificarse, o bien, en el reino de las memorias de las computadoras. Por tanto, convendrá elegir el medio que presente más ventajas. En los sistemas de Vida Artificial, siendo más simples que los de vida real, puede comprenderse el funcionamiento de los procesos de forma más directa. • E1 aspecto organizativo de la vida es una consecuencia de la ley o las leyes naturales y se asume que dicho principio opera en cualquier sistema de estructura compleja. Uno de los rompecabezas que presenta el fenómeno de la vida es su tendencia a desarrollar principios de orden a partir del desorden, elementos complejos a partir de raíces simples. La Vida Artificial ha descubierto muchos ejemplos importantes de autoorganización y de comportamiento complejo que emerge a partir de sistemas relativamente simples.. '"El estudio de sistemas hechos por el hombre que exhiben comportamientos característicos de sistemas de vida natural". 29.

(35) Cabe mencionar la existencia de dos posturas diferenciadas con respecto a este tema. Por un lado la denominada a^rmación débil, que postula que el estudio de la Vida Artificial puede ofrecer nuevas visiones que arroj en luz sobre la comprensión de la vida real. Por otro está la a^rmación í'uerte, que asume que si la vida es un proceso, la plataforma en que se desarrolla dicho proceso resulta irrelevante, un sistema que exhibe las propiedades de la vida está simplemente vivo.. Independientemente de estas dos posturas, no cabe duda que este campo de estudio aporta importantes avances a muchas investigaciones actuales "ALife also holds potential for developing new technologies: software evolution, sophisticated robots, ecological monitoring tools, educational systems, and so on. "5 [SIPP-95]. 5"La Vida Artificial contiene también el potencial de desarrollar nuevas tecnologías: evolución de software, robots sofisticados, herramientas de control ecológicas, sistemas educativos, etc.". 30.

(36) Capítulo 3. "Metodología de Modelización Evolutiva" "Entre /as carencias que presenta cua/quier nueva tecno%gía, tal vez /a más notoria sea /a e,^istencia de una metodo%gía comúnmente aceptada" ^GOME-97^. La palabra "metodología" proviene del griego "método" que significa "camino para alcanzar la verdad" y"logo" que significa "Tratado o ciencia". Así, una metodología se puede ver como el conjunto de métodos y técnicas para llegar a una meta. Además, las metodologías suelen definir una serie de fases, indicándose en cada fase las actividades que deben realizarse, el perfil de los participantes, así como los productós u objetivos que se deben obtener. Esto permite llevar un control permanente del trabajo realizado en cada una de las fases y proporcionar información que permita tomar decisiones acerca de las fases restantes.. Si bien la necesidad de una metodología es evidente en cualquier desarrollo informático, en el caso de los modelos computacionales que resuelven tareas creativas se dan dos circunstancias que hacen más necesaria la definición de una metodología. Estas circunstancias son:. •. La complejidad hace que la resolución de tareas creativas pueda ser abordada de formas muy diferentes y con distintas técnicas computacionales. Así, por ej emplo, la composición musical ha sido abordada con varios paradigmas computacionales: RR.NN.AA, Sistemas Expertos, técnicas de CE, etc.. •. La amplitud de una gran diversidad de capacidades creativas implica que puedan interpretarse desde perspectivas muy distintas y con objetivos diferentes. Por ello, distintos investigadores pueden estar analizando distintas formas de la misma capacidad siendo sus investigaciones totalmente inconexas y por lo tanto incomparables. Utilizando el mismo ejemplo que en el caso anterior, la improvisación de Jazz y la armonización son aspectos de la composición musical que presentan una escasa relación.. Debido a estas circunstancias, la falta de una metodología da lugar a la existencia de trabajos de investigación que resuelven aspectos disjuntos de un problema con técnicas 31.

(37) distintas, de forma que se dificulta en gran medida la elaboración de estudios comparativos entre ellos.. En el área del desarrollo de sistemas creativos una metodología debería permitir colaborar a los distintos investigadores, así como comparar los distintos trabajos realizados y organizar el trabajo de expertos de distinta naturaleza, como por ejemplo los expertos en la capacidad creativa y los expertos en computación. En este capítulo, se presenta una metodología original denominada "Metodología de Modelización Evolutiva", para la creación de sistemas computacionales con capacidades creativas.. Para e11o, se analizan en primer lugar las metodologías existentes, tanto de Ingeniería del Software como de Ingeniería del Conocimiento y Simulación. Destaca la falta de metodologías comúnmente aceptadas orientadas hacia la rama científica de la IA y por lo tanto adaptables a la elaboración de modelos creativos.. A continuación, se presenta la metodología propuesta desde un punto de vista^ general, para analizar posteriormente los roles que son reflejados en ella y la organización de las etapas, bloques y fases que la componen. Se describe como las distintas etapas se constituyen reflejando distintas épocas históricas de la capacidad en el hombre o distintas etapas en el aprendizaje de la capacidad, siendo cada etapa un modelo completo de la capacidad en las circunstancias de una de estas épocas históricas o etapas educativas. La denominación de la metodología "Metodología de Modelización Evolutiva" hace referencia al carácter incremental de las distintas etapas, de forma que éstas reflejan la evolución de la capacidad en el hombre.. También se analiza la estructura de cada etapa, en la que se distinguen tres bloques, cada uno de los cuales presenta distintas fases. Estos bloque se enfocan hacia la descripción del modelo y de los roles presentes en él, la construcción de modelos y la validación común de los distintos modelos desarrollados.. Finalmente, se realiza un análisis de las similitudes y diferencias existentes entre la metodología propuesta y las señaladas anteriormente, y de cómo se reflejan en la metodología los distintos niveles de abstracción propios de los problemas creativos.. 32.

(38) 3.1. Estado del arte Es necesario, a la hora de elaborar una nueva metodología, realizar un estudio de las metodologías existentes para evaluar si una metodología ya desarrollada o una modificación de ésta puede resolver el problema que se plantea. Por ello, en este apartado se muestran las familias de metodologías más relacionadas con el objetivo del presente trabajo, así como los problemas o dificultades más importantes en su adaptación para la creación de modelos con capacidades creativas.. Las familias de metodologías consideradas son:. •. Metodologías de Ingenieria del Software. •. Metodologías de IA e Ingenieria del Conocimiento. •. Metodologías de Simulación. 3.1.1. Metodologías de Ingeniería del Software Existe una gran experiencia en la definición de metodologías de ingenieria en el campo de la Ingeniería del Software (en adelante IS) [BOEH-81] [PRES-O1]. La meta en estas metodologías es un producto software que cumpla los objetivos del cliente que lo solicita. Estas metodologías presentan una serie de pasos comunes que se pueden ver más o menos enfatizados según el enfoque y que a continuación se muestran:. •. Detección, identificación y definición del problema. •. Definición de la solución o requisitos funcionales. •. Diseño de procedimientos o programas e implementación. •. Verificación integrada y validación. •. Conversión e Instalación. •. Operación y Mantenimiento. Sin embargo, esta serie de pasos no siempre se realizan de una forma lineal. Así existen distintos modelos de ciclos de vida que definen los pasos a realizar en cada momento.. 33.

(39) Los principales modelos de ciclo de vida son los siguientes:. Ciclo de Vida en Cascada: Se realiza un conjunto de pasos secuencialmente. Cada vez que termina una fase se comprueba su validez en función de sus resultados, que en la mayor parte de los casos consisten en una serie de documentos. Si se identifica algún error, se podrán modificar aspectos de la fase finalizada o de fases anteriores sin influir en otras cuestiones del proyecto. Parte de una definición de los requisitos iniciales, que no debe ser modificada.. Ciclo de Vida en Espiral, o de prototipado: En este modelo existen diferentes ciclos en cada uno de los cuales se define sucesivamente el proyecto mediante la interacción con el usuario. Cada vez que se termina un ciclo se definen las características que debe tener el siguiente y se realiza un análisis de riesgos, hasta que se desarrolla el producto final. El obj etivo de cada ciclo es un prototipo.. Las razones por las que estas metodologías no son adecuadas para la realización de modelos de capacidades creativas se basan fundamentalmente en sus distintos objetivos. Frente a la construcción de sistemas en áreas tan poco definidas como el arte, en las metodologías de IS el producto final debe ser determinista y responder a los deseos o necesidades de un cliente. Frente a la experimentación de distintas técnicas computacionales y de IA, en las metodologías de IS las acciones a llevar a cabo por el producto desarrollado, aún cuando puedan ser muy complej as, deben poder ser descompuestas en subacciones que responden a un algoritmo claro. Por todo esto las metodologías de IS no se muestran adecuadas para el propósito de este trabajo, por lo que es necesario evaluar otras metodologías.. 3.1.2. Metodologías de Inteligencia Artificial Una vez. analizados. los. distintos. acercamientos. metodológicos. aplicados. tradicionalmente a la IS, cabría preguntarse que aproximaciones metodológicas se podrían utilizar en IA. La rama ingenieril, teniendo en cuenta la importancia que tiene la creación de productos factibles y controlables, tiene una amplia trayectoria en la definición de metodologías de Ingeniería de Conocimiento (en adelante IC) [GOME-. 34.

Show more

Nuevo documento

Regional I, Análisis de registros Periodísticos LocalRegional, los estudiantes deben realizar un seguimiento a los registro periodísticos en el orden nacional y local, sobre la

aproximación al caso Colombiano, Políticas públicas que hacen justicia, cuatro temas en la agenda de reparación en Colombia y la “justicia verdad y reparación en los derechos

En este sentido, los procesos de justicia transicional buscan, como consecuencia, lograr cambios estructurales en aspectos relacionados con la verdad, la reparación y la memoria, para

Imatge de la cubeta amb l’hidrogel SQ1-NB passades 72 hores d’estar amb contacte amb aigua mQ, on s’observa que el pigment es troba dins la fase hidrogel i l’aigua mQ tan sols

Es Importante para la comunidad académica y para los estudiosos del Derecho hacer un análisis crítico de las normas Constitucionales, su posible aplicación en la sociedad y las

Esto se debe a que el σ-hole del átomo de yodo es más positivo y por lo tanto, desde un punto de vista electrostático, la interacción será más fuerte que con el átomo de bromo, lo que

Partiendo de que la Constitución Política de Colombia como carta magna de Colombia y norma de normas establece en su artículo primero como estado de derecho el garantizar la dignidad de

Fuente: Base de datos SRI Elaboración: Autoras 1 Amnistía, sector económico, región, gran contribuyente, contribuyente especial, ln_total_activo, ln_total_pasivo, ln_total_ingresos,

Compuestos de base escuaramida Se han seleccionado 5 compuestos de base escuaramida Figura 3.1.1 como objeto de estudio de agregación vía enlace N-H mediante enlace de hidrógeno.. El

Vale la pena resaltar en este punto el carácter descriptivo que busca tener esta investigación, pues sin prescindir de que en el futuro se puedan desarrollar sobre este tema muchos y