Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver...

12
Revista Ingenierías Universidad de Medellín ISSN: 1692-3324 [email protected] Universidad de Medellín Colombia Zapata, Santiago; Montoya Quintero, Diana María Aplicaciones de los mundos virtuales: método de generación fractal en el proyecto Guardián Ángel Revista Ingenierías Universidad de Medellín, vol. 4, núm. 6, enero-junio, 2005, pp. 13-23 Universidad de Medellín Medellín, Colombia Disponible en: http://www.redalyc.org/articulo.oa?id=75040602 Cómo citar el artículo Número completo Más información del artículo Página de la revista en redalyc.org Sistema de Información Científica Red de Revistas Científicas de América Latina, el Caribe, España y Portugal Proyecto académico sin fines de lucro, desarrollado bajo la iniciativa de acceso abierto

Transcript of Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver...

Page 1: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

Revista Ingenierías Universidad de Medellín

ISSN: 1692-3324

[email protected]

Universidad de Medellín

Colombia

Zapata, Santiago; Montoya Quintero, Diana María

Aplicaciones de los mundos virtuales: método de generación fractal en el proyecto Guardián Ángel

Revista Ingenierías Universidad de Medellín, vol. 4, núm. 6, enero-junio, 2005, pp. 13-23

Universidad de Medellín

Medellín, Colombia

Disponible en: http://www.redalyc.org/articulo.oa?id=75040602

Cómo citar el artículo

Número completo

Más información del artículo

Página de la revista en redalyc.org

Sistema de Información Científica

Red de Revistas Científicas de América Latina, el Caribe, España y Portugal

Proyecto académico sin fines de lucro, desarrollado bajo la iniciativa de acceso abierto

Page 2: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

13

Universidad de Medellín

Aplicaciones de los mundos virtuales:Método de generación fractal en el

proyecto Guardián Ángel

RESUMEN

Este artículo define qué es un Mundo Virtual y las características de las entidades que lo pueblan,proponiendo algunos usos prácticos de esta abstracción en el campo de la ingeniería y un marcoabstracto en el cual la simulación es controlada por módulos de selección de acciones de diferen-tes clases que son asignados a cada actor. También muestra la estructura del mundo virtual en elproyecto Guardián Ángel, incluyendo el proceso de generación física del mundo basado en fractalesde desplazamiento aleatorio de punto medio y el modelo social, usando diferentes métodos defabricación que crea sociedades de actores independientes colaborativos con diferentes rolesasignables.

Palabras clave: Ambientes Virtuales, Fractales, Simulación, Generación Aleatoria, Vida Artificial

ABSTRACT

This article defines what is a Virtual World and the qualities of the entities that populate it, propos-ing some practical uses of this abstraction in the engineering field and an abstract framework inwhich the simulation is controlled by Action Selector modules of different kinds that are assignedto each Actor. It also shows the structure of the virtual world in the Guardian Angel Project, includ-ing the physical world generation process based on random midpoint displacement fractals andthe social model which using different factoring methods creates societies of collaborative inde-pendent actors with different assignable roles.

Key words: Artificial Life, Fractals, Simulation, Virtual Environments, World Generation.

SANTIAGO ZAPATAEstudiante del programa de Ingeniería de Sistemas, Universidad de Medellín, [email protected]

DIANA MARÍA MONTOYA QUINTEROLicenciada en Computadores y Magíster en Ingeniería de Sistemas, Profesora de Tiempo Completo,

programa de Ingeniería de Sistemas, Universidad de Medellín, email: [email protected]

Page 3: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

14

Revista Ingenierías

1. INTRODUCCIÓN

Una de las principales causas que llevaron aldesarrollo de la ciencia informática en la se-gunda mitad del siglo pasado fue la necesi-dad creciente de manejar grandes volúmenesde información de manera que pudiéramosresumirla y comprenderla fácilmente. Estaevolución, que ha beneficiado nuestro estilode vida y ha permitido el avance en diferentescampos sociales, también ha hecho quemuchas personas usen las computadoras so-lamente como medios para almacenar,procesar y transmitir grandes volúmenes deinformación.

Sin embargo, como se verá en este artículo, lascomputadoras pueden brindarnos muchos másbeneficios que simplemente servir como maes-tros de datos. En efecto, la informática nosbrinda la posibilidad de crear nuestros propiosmundos y, mediante éstos, resolver diferentesproblemas, usando actores o agentes quecolaboran entre ellos para lograr cada uno hacerun aporte, ya sea a una solución aceptable alproblema o simplemente al funcionamiento deun sistema completo que se desea analizar.

El modelado de mundos virtuales es unafilosofía de diseño para implementar métodosde inteligencia artificial distribuida. Se podríadecir que un mundo virtual encapsula unsistema multiagente, el cual es “Una colecciónde agentes autónomos (posiblementepreexistentes) que buscan resolver unproblema dado” [O’HARE 96: 5].

La idea principal de la filosofía es mantenerun mundo consistente, en el cual cada acciónsea justificada por un efecto ya sea en el en-torno del actor que la ejecuta o en otros actoresrelacionados con éste.

1.1. Definición del mundo virtual

Un mundo virtual se puede describir como unespacio discreto poblado por un conjunto de

actores independientes, el cual puede ser re-presentado por medio de un programa de soft-ware ejecutado en una computadora

El objeto principal del modelado de mundosvirtuales es proveer una forma controlada deinteracción entre los actores, y al mismotiempo definir unas reglas que hagan queexista una consistencia espacial, con el fin deque estos actores puedan interactuar entre síy con el entorno. El modelado de mundosvirtuales, más que un método con reglasdefinidas, es una filosofía que busca asegurarla independencia de los actores y de la repre-sentación del mundo virtual que puedeapreciarse desde el mundo exterior, incluyendolos resultados estadísticos que arroje lasimulación interactiva.

Para lograr esto, cada actor que habita elmundo debe ser capaz de decidir qué accio-nes ejecutar independientemente de los demásactores; esto se logra mediante la asignaciónde “Módulos de Decisión de Acción” a cadaactor; estos módulos pueden ser tan simplescomo repositorios de acciones que sonelegidas al azar, o tan complejos comoimplementaciones de métodos de Inteligen-cia Artificial tales como redes neuronales oautómatas de estado finito, que toman comoentrada la percepción y el estado actual delactor para producir como salida la acción quese desea ejecutar.

La implementación de estos módulos no debeconcernir directamente al diseño del mundovirtual y su estructura, ya que el diseñador decada mundo solamente debe garantizar queexista un orden de interacción donde a cadaactor se le pida tomar una decisión, sinimportar el método mediante el cual el actorllegó a decidirla. Esto permite que diferentesimplementaciones de selectores de acciónsean asignadas a los actores dentro del mundo,permitiendo que sean controlados por diferen-tes mecanismos y así mismo puedaninteractuar transparentemente entre ellos. Por

Zapata & Montoya

Page 4: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

15

Universidad de Medellín

ejemplo, podemos tener actores con Selectoresde Acciones basados en árboles de decisión,mientras otros cuenten con un selector deacción que es una fachada a una entrada quese encuentra fuera del sistema, tal como unusuario humano a través de dispositivos deentrada.

El mundo virtual cuenta con un módulo cen-tral que controla las interacciones de los dife-rentes actores; hay diferentes alternativas paraeste control; una de ella es simular un flujocontinuo de Acciones abstractas con un costode tiempo asociado; los actores son luegoinsertados en una estructura de cola de priori-dades, en la cual se le pide al primer elementodecidir la acción que quiere ejecutar, luego decuya ejecución éste es relocalizado en unaposición dentro de la cola dependiendo delcosto de la acción. También se podría es-tablecer un control en tiempo real, donde losactores que desean actuar hacen una peticiónal controlador del mundo virtual y éste asignael orden en el cual deben actuar, controlandola concurrencia de peticiones.

Un mundo virtual puede definirse como unambiente que cuenta con un número deagentes acoplados a Éste. RUSELL [96]propone una clasificación de los ambientessegún sus propiedades, las cuales determinanel programa de agente o el mecanismo decoordinación que se necesita para trabajar conellos de manera eficiente.

1.2. Métodos de generación fractal

El proceso que utiliza el siguiente trabajo esbasado en la creación de un fractal de despla-zamiento de punto medio que representa unmapa de alturas. Los métodos de desplaza-miento del punto medio pueden trabajar conmallas cuadradas de puntos. Si el tamaño demalla delta identifica la resolución de lamisma, obtenemos otra malla cuadrada de re-solución d/21/2 añadiendo los puntos mediosde todos los cuadrados. La orientación de los

nuevos cuadrados está girada 45º respecto dela primitiva.

Añadiendo de nuevo los puntos medios detodos los cuadrados, se puede tener una nuevamalla con la misma orientación que la primera,con una resolución de d/2. En cada etapa laresolución escala con un factor de

r =1

2

De acuerdo con el axioma, se puede añadir undesplazamiento aleatorio haciendo uso de unavarianza que es r2H veces la varianza de la etapaprevia.

Si se supone que los cuatro primeros puntosde la malla tienen asociado un incrementocuadrático medio de s2, entonces en la etapa ndel proceso se debe añadir muestras aleatoriasgaussianas de varianza

r2 2Hn

=2

nH

� �

1

2

En el método básico, las muestras se añadena los puntos medios nuevos en cada etapa,mientras que en el método de adición aleatorialas muestras se añaden a todos los puntos.

2. USOS PRÁCTICOS DE LOSMUNDOS VIRTUALES

La implementación de un mundo virtual tienediferentes usos prácticos en las áreas científi-cas y de ingeniería; en el campo de la ingenieríaambiental, por ejemplo, un mundo virtualpuede similar el comportamiento de diferen-tes especies animales dentro un hábitatsimulado, donde variables tales como la dis-tribución de la comida y de las especies puedenser controladas.

Aplicaciones de los mundos virtuales...

Page 5: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

16

Revista Ingenierías

El proceso para su implementación seríaobtener un método para crear el mundo vir-tual, poblarlo con los especímenes y darlesvida mediante módulos de Selección de Acciónadecuados que acudan a implementaciones deinteligencia artificial basadas en datos de com-portamiento animal disponibles de diferentesestudios de zoología, y luego actuar comoobservadores del hábitat para estudiar losresultados emergentes a lo largo del tiempo.

El factor más importante para llegar aresultados experimentales útiles es diseñar losmódulos de selección de acción tomando todoel conocimiento del dominio, refiriéndose adiferentes fuentes tales como ayuda experta,libros de estado del arte, artículos e investiga-ción Web. Todos estos datos experimentalesdeben ser luego modelados con técnicasadecuadas, tales como Autómatas de EstadoFinito o Redes Neuronales; DILLINGERmuestra maneras muy prácticas de usaralgunas de las técnicas de inteligencia artifi-cial en espacios discretos tales como losmundos propuestos aquí.

3. EL MUNDO DE GUARDIÁN ÁNGEL

Guardián Ángel implementa un mundo virtualusado para simular un mundo con un nivel detecnología similar a la Edad Media; estasimulación busca permitir al usuario delprograma interactuar con los actores de estemundo, mediante la personificación de uno deellos

El proceso de generación de este mundo serácomplementado con un generador de historiasque le permitirá al usuario tener una metamesurable, permitiéndole tener una experien-cia lúdica similar a la percibida en los juegosde rol de computadora.

Siguiendo la clasificación de RUSELL [96], elmundo de Guardián Ángel se puede definircomo un ambiente con las siguientes caracte-rísticas:

• No accesible: Cada ser dentro del mundodebe mantener un estado actual percibido,el cual puede diferir de la realidad delmundo.

• No determinista: Las acciones ejecutadaspor los diferentes actores pueden causarefectos que el agente no puede determinardirectamente.

• No episódico: El flujo de acciones escontinuo y, por lo tanto, el actor debe estarpreparado para responder a las acciones deigual manera al principio de la simulacióncomo al final.

• Estático: El mundo virtual no sufre modifi-caciones mientras el agente se encuentradecidiendo su acción.

• Discreto: Existe una cantidad limitada depercepciones, cada una de las cuales esclaramente discernible.

Estas características hacen que el mecanismoprincipal de control de los actores dentro deGuardián Ángel sea implementado con unacola de prioridades, en la cual son insertadostodos los actores activos dentro del mundo.El programa de ambiente que controla lacolaboración entre agentes toma el primerelemento de esta estructura, y le pregunta porla acción que quiere ejecutar. La elección deesta acción se hace recurriendo al módulo dedecisión de acciones de cada actor.

Una vez que la acción ha sido decidida, seprocede a ejecutarla, llevando a que se realicenmutaciones dentro del mundo, necesarias parallevar el funcionamiento del sistema en suconjunto así como para avanzar hacia lasolución buscada por los agentes.

La ejecución de la acción conlleva un costodeterminado en una unidad abstracta, y es conbase en este costo que el actor que acaba deactuar sea nuevamente insertado en laestructura de cola de prioridades, dependiendodel costo de las acciones ejecutadas por losactores precedentes.

Zapata & Montoya

Page 6: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

17

Universidad de Medellín

El mundo físico de Guardián Ángel está com-puesto por una colección cúbica de Actoresdenominados Celdas. Cada uno de estoselementos describe una porción discreta delmundo ubicada en una localización física,como se muestra en la figura 1.Adicionalmente, estas Celdas pueden tenertambién un comportamiento dinámicoasociado a ellas. Por ejemplo, las Celdas tipoRío pueden reaccionar cuando un Actor sedesplaza sobre ellas, moviéndolo a unadistancia determinada por la fuerza del flujo yel peso del actor.

Sin embargo, la mayor parte del comporta-miento dinámico del mundo es producida porun tipo diferente de Actor, los Seres. Los Seresse distinguen de las Celdas en que suestructura incluye un cuerpo compuesto dediferentes partes, en cada una de las cuales sepueden portar un número de ítems. Los serestambién cuentan con módulos de decisión deAcción más avanzados que les permiten tenerun rol definido dentro del mundo virtual.

Figura 1. Estructura Física de un mundo de GuardianAngel. La figura muestra tres niveles, con detalleadicional en el nivel de la superficie. En este ejemplohay cuatro clases de Celdas que se localizan en una po-sición fija de la estructura cúbica que representa elmundo.

Los seres pueden definirse como los agentescon más posibilidades de acción dentro delsistema; son éstos los que cooperan entre síbuscando objetivos comunes mediante accio-nes que los afectan a ellos mismos o al mundovirtual que pueblan.

Toda comunicación entre estos seres se realizamediante acciones; el mundo no contemplala generación de estructuras adicionalesusadas en entornos colaborativos de agentestales como tableros o listas de mensajes. Sepermite que se transfiera información directa-mente entre éstos mediante accionesinformativas que afectan la memoria y conoci-miento del ser comunicado.

Estos seres normalmente pertenecen a una delas ciudades o pueblos que son creados dentrodel mundo, y tienen un rol específico en estacomunidad. Por ejemplo, en un pueblomediano puede haber un tendero, un herrero,un grupo de soldados defensores, entre otros.

4. GENERACIÓN DEL MUNDO

El concepto más interesante de los mundosvirtuales es que no tienen que ser definidosmanualmente; podemos acudir al uso de unmétodo algorítmico el cual produce un mundocon las características deseadas, sólorequiriendo un conjunto adecuado deparámetros.

En Guardián Ángel, el proceso de generacióndel mundo se basa en el uso de un generadorde números aleatorios, el cual controla cadauna de sus fases. Esto permite la creación deun nuevo mundo cada vez que el método esaplicado, con la posibilidad de replicar unmundo si así se desea, alimentando elgenerador de número aleatorios con unnúmero constante.

4.1. Generación física del mundo

4.1.1. Generación de la masa continental

El proceso de generar la masa continentaldetermina la apariencia global del mundo; seencarga de generar los diferentes continentese islas, como también las cordilleras y colinas.Este método se basa en el método clásico de

Aplicaciones de los mundos virtuales...

Page 7: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

18

Revista Ingenierías

generación de fractales, del cual ANDERSONmuestra una implementación sencilla.

El método que es usado en Guardián Ángelpuede ser resumido en los siguientes pasos:• Creación de un fractal de desplazamiento

de punto medio que representa un mapade alturas.

• Cálculo de las alturas para los mares ymontañas basado en parámetros definidos.

• Proceso de limpieza que define las diferen-tes zonas claramente.

El proceso de generar un fractal de desplazamientoaleatorio de punto medio consiste principalmen-te en tomar una estructura cuadrada de segundoorden, tomar cada par consecutivo de esquinas,calcular el promedio de sus valores y luegodesplazar este valor aleatoriamente y asignarlo ala posición media entre las dos esquinas; luegolos cuatro puntos medios son promediados y estevalor se desplaza aleatoriamente y se posicionaen el centro del cuadrado.

El proceso se repite para cada uno de los cuatrocuadrados más pequeños que se formaron enel proceso, llegando al resultado que semuestra en la figura 2.

Figura 2. Ejemplo de Fractal de Plasma. Una estructurabidimensional de valores numéricos es generadaaleatoriamente; la figura muestra diferentes tonos degris cuya intensidad depende del valor de la estructuraen una posición determinada.

Refiérase a MARZ para una descripción paso apaso del algoritmo para generar un fractal dedesplazamiento aleatorio de punto medio, el cualpuede estar fuera del alcance de este artículo.

Cuando este proceso ha finalizado, el nivel delmar es calculado basándose en una proporcióncon la cual el generador es alimentado. Por ejem-

plo, puede decidirse que el mundo debe estarcompuesto por agua en un 70%. Esto se hacemediante el cálculo del percentil correspondienteentre todos los valores de altura del mapa,llegando a los resultados de la figura 3.

Figura 3. Apariencia continental en bruto. Los diferen-tes niveles de altura son establecidos a partir deparámetros del generador de mundos. Se asignan valo-res discretos a cada elemento de la estructura basadoen su posición en los rangos de altura.

Después de este proceso, las muchas islas ylagos pequeños que parecer emerger en elmundo son llenados con el fin de darle a esteuna apariencia más sólida. Esto se lograrecorriendo el mapa calculando recursivamenteel tamaño de cada zona, y llenándola con elvalor deseado en caso de que éste nosobrepase el límite dado. Los resultados semuestran en la figura 4.

Figura 4. Apariencia continental final. Los lagos e islaspequeños son resueltos para mejorar la consistencia delmundo.

4.1.2. Generación de zonas de temperatura

El proceso de generación del mundo continúa conla definición de un grupo de zonas de tempera-tura, simulando las condiciones del mundo. Elmétodo para calcularlas en Guardián Ángel esgenerar una serie de fractales monodimensionalesde desplazamiento, cada uno de los cuales de-fine una proporción relativa a una fracción hori-zontal del mundo que es más pequeña cada vez,como se muestra en la tabla 1.

Zapata & Montoya

Page 8: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

19

Universidad de Medellín

TABLA 1. CALCULOS DE FRACTAL MONODIMENSIONAL

A B C D E F G H Iinit ds(a,c) ds(a,e) ds(c,e) ds(a,h) ds(e,g) ds(e,i) ds(g,i) init40 53 39 13 23 25 39 20 4052 36 39 63 61 55 63 28 5257 58 58 39 69 63 47 52 57

Ds (a,b) es una función que corresponde al punto medio desplazado aleatoriamente de a y b

Estos valores son luego trasladados a unaestructura mediante un algoritmo que toma losvectores de proporción y calcula la tempera-tura para todas las posiciones del mundo deacuerdo con ésta. Para la estructura de ejem-plo podemos ver que el hemisferio norte detemperatura ocupa las siguientes proporcio-nes a medida que recorre el mundo deizquierda a derecha: 40%, 53%, 39%, 13%, 23%,25%, 39%, 20% para volver al 40% al final. Estehemisferio norte es luego dividido también conlas proporciones del extremo nortedeterminadas por el segundo fractal y elhemisferio sur es también dividido con la pro-porción para el extremo sur determinada porla tercera serie de valores. Los resultados semuestran en figura 5.

Figura 5a. El primer fractal es usado para calcular eltamaño de cada hemisferio de temperaturas.

Figura 5b. Los fractales consecuentes se usan paracalcular las subáreas de temperatura dentro de cadahemisferio.

Alternativamente para el cálculo de las zonasde temperatura se puede usar también unfractal que ha sido preinicializado con valoresextremos a lo largo de unas franjas definidas,obteniendo resultados similares aunque unpoco menos uniformes.

4.1.3. Generación de zonas de lluvia

El último factor que determina la composiciónfísica del mundo son las zonas de lluvia; altener éstas mayores variaciones que las zonasde temperatura, también son determinadas porfractales de plasma, con la excepción de quela estructura es preinicializada con valoresextremos en posiciones clave del mundo. Losresultados se muestran en la figura 6.

Figura 6. Fractal de distribución de lluvia. El blancorepresenta zonas con poca lluvia en el año, las zonasoscuras representan zonas de lluvia pesada

4.1.4. Combinación de biomas

Una vez que los continentes y las zonas de tem-peratura y lluvia están determinados, elgenerador recurre a una tabla de transforma-ciones mediante la cual decide qué biomaresulta de una combinación del terreno inicialy los rangos de temperatura y lluvia (figura 7).

Aplicaciones de los mundos virtuales...

Page 9: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

20

Revista Ingenierías

Figura 7. Resultados Físicos Finales. Después de

combinar el tipo de terreno, la temperatura y la lluvia,

diferentes biomas son creados en el mundo de acuerdo

a una tabla de transformaciones.

Esta tabla de combinaciones se basa aproxi-madamente en datos geográficos que sonsimplificados para facilitar el proceso de trans-formación.

4.1.5. Generación subterránea

El proceso de generación para el interior delmundo se basa el la estructura de masa conti-nental calculada en el primer paso. El nivel delmar de esta estructura es recalculado con unamenor proporción de agua buscando dar laimpresión de que los mares se estrechan mien-tras el mundo es más profundo. Finalmente,todo lo que no sea mar es reemplazado porroca sólida o piso cavernoso, contrastando conla variación de temperatura y lluvia presenteen el nivel de la superficie.

4.1.6. Características complementarias

Como un último paso, podemos considerar lainclusión de características tales como ríos ycavernas dentro del mundo.

Los ríos pueden ser calculados eligiendoaleatoriamente una posición dentro delmundo, revisando su altura y la variación dealtura a su alrededor para saber si es unaestructura tipo montaña. Luego se marca estelugar como el nacimiento del río y se procedebuscando un lugar con menos altitud en el cualcontinúa el río; hay una probabilidad de queel río terminará en este lugar, y también sepueden formar lagunas si no se encuentranlugares donde el agua pueda fluir hacia abajo.

En cuanto a las cavernas, el proceso es similarcon la diferencia de que éstas deben serconstruidas dentro de las cordilleras, y quepueden sobrepasar los límites verticales delnivel llegado a partes más profundas delmundo.

4.2. Generación social del mundo

Aplicando estas técnicas tenemos una cantidadcasi infinita de mundos virtuales, en los cualesnuestros actores pueden interactuar y asínosotros podemos experimentar. Sin embargo,sólo contar con un mundo físico no servirá demucho si no se generan actores queinteractúen dentro de éste.

Siguiendo con nuestro ejemplo de losecosistemas, el generador de mundo podríaser envuelto dentro de un programa quepermita la distribución de la posición inicialde los nidos de cada especie animal y vegetal,y luego podríamos ejecutar la simulación conel fin de monitorear la población de cadaespecie llegando a nuestras conclusionesexperimentales. Este proceso podríacontrolarse mediante una interfaz similar a lamostrada en la figura 8.

Figura 8. Interfaz de un Simulador de Ecosistemas: Esteprograma tendría una interfaz que permitiría el posicio-namiento de los diferentes actores antes de ejecutar lasimulación.

Sin embargo, la meta de Guardián Ángel no essimular sistemas ecológicos sino las interac-ciones sociales de los seres que viven dentrode su mundo virtual.

Zapata & Montoya

Page 10: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

21

Universidad de Medellín

Aunque la parte más crítica necesaria parallegar a esta meta es diseñar cuidadosamentelas implementaciones de módulos de selecciónde acción, haciendo un equilibrio entre lafacilidad de su mantenimiento y la compleji-dad de los resultados, la distribución yconfiguración inicial de los seres dentro delmundo, como también la asignación de susdiferentes roles dentro de la sociedad, es im-portante y debe estar correlacionada con elproceso de generación física, permitiendo unamanera conveniente de generar centros depoblación de entidades seudo – inteligentes.

Mediante la definición de diferentes objetosdescriptores que definen características simi-lares compartidas por un grupo distinguiblede seres podemos llegar a una solución basadaen objetos especiales denominados Fábricasde Actores.

Por ejemplo, el objeto descriptor para los sereses la Raza, definida como las característicascomunes, como la estructura del cuerpo, losparámetros de comportamiento de susmódulos de Inteligencia Artificial y el equipoinicial con el cual deben ser generados.

Adicionalmente, estos objetos descriptoresdeben permitir acceso a diferentes clases deroles, con el fin de que podamos subclasificarlas razas de los seres tomando sus roles comoel clasificador. Estas subclases definenrefinamientos de los parámetros de compor-tamiento como también del equipo inicial, masno de la estructura del cuerpo.

Tomando esta estructura de diseño, podemosincluir una Fábrica de Seres dentro del procesode generación del mundo, y luego invocar unmétodo de creación de seres alimentándolocon parámetros para la raza y el rol.

Ya que contamos con un dispositivo adecuadopara generar rápidamente seres individuales,debemos proceder con la definición demódulos que generen centros de población de

una clase dada de seres dentro del mundo.Estos módulos toman parámetros tales comoel tamaño deseado de la población, el nivelde la tecnología y el sistema de gobierno quelo rige.

El trabajo de este módulo incluye la creaciónde las diferentes infraestructuras físicas delpoblado y la generación de los seres que lopueblan, cada uno con su rol dentro de éste.

Estos centros de población existentes dentrodel mundo se pueden definir como socieda-des cooperativas de agentes, que puedenperseguir objetivos comunes como son la su-pervivencia y mejora de su comunidad frentea las restantes dentro del mundo. Para lograresto, debe existir la noción de “intenciónconjunta” [O’HARE 96], donde los agentes decomprometen a obedecer un “código de con-ducta” que restringe la libertad de sus accio-nes para acomodarlas a las actividadesconjuntas.

5. IMPACTO ESPERADO

Este artículo espera mostrar las estructurasbásicas de los Mundos Virtuales y proponer alos desarrolladores y analistas de dominiosconsiderarlas como una herramienta muyvaliosa en el diseño de soluciones parasimulaciones en el campo de la investigación,así como para la solución de problemas me-diante métodos de inteligencia artificialdistribuida y agentes independientes.

La meta de Guardián Ángel es proveer unmarco sobre el cual diferentes clases desimulaciones sean posibles, dado el diseñoabierto de su estructura de mundo y losmecanismos de extensibilidad de lasdefiniciones de actor y las interfaces paramódulos de Acción.

Guardián Ángel pretende ser una herramientase aprendizaje para la implementación de di-ferentes métodos de Inteligencia Artificial en

Aplicaciones de los mundos virtuales...

Page 11: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

22

Revista Ingenierías

grupos de investigación de diferentes univer-sidades, ya que los estudiantes pueden diseñarsus implementaciones de Inteligencia Artificialsin preocuparse por los dispositivos de repre-sentación y administración de Actores.

6. CONCLUSIONES

Los Mundos Virtuales se componen de unespacio poblado por un grupo de actores inde-pendientes que toman sus decisiones median-te módulos de Selección de Acción asignables,que varían desde implementaciones de méto-dos de Inteligencia Artificial hasta interfases adispositivos de entrada.

Los mundos virtuales son una herramientaimportante ya que permiten experimentar lasinteracciones entre un grupo de actores dadauna configuración inicial del mundo. Losresultados de esta simulación pueden serinterpretados más fácilmente que los de otrosmétodos, y tienen la ventaja de facilitar unanálisis evolutivo de las variables bajo estudiosi éstas están sujetas al análisis en una dimen-sión temporal discreta.

El mundo virtual de Guardián Ángel estáimplementado como una estructura extensible

que es generada y poblada aleatoriamente;este método de generación puede seradaptado y especializado para permitir su usoen aplicaciones específicas para diferentescampos de la ciencia y la ingeniería.

También es posible extender el algoritmo degeneración del mundo con el fin de usar reglasde Autómata Celular que permitan mezclar losdiferentes biomas especificando la distribuciónde sus características en vez de asignarlas alazar para cada bioma calculado.

El método de generación social usado enGuardián Ángel puede ser extendido para queincluya variables políticas y económicas quepermitirían una aplicación específica ensimulación social o financiera; la generaciónfísica del mundo también puede ser adaptadaa una estructura tridimensional de polígonos,cambiando las reglas de nivel de agua y decálculo de los biomas para que afecten elmundo teniendo en cuenta la altura en lafunción de transformación. Toda clase deespecialización dependerá en último términode la meta pretendida en la aplicación delmundo virtual y las formas de interacción ycolaboración esperada entre los agentes quelo poblarán.

Zapata & Montoya

Page 12: Aplicaciones de los mundos virtuales · 2018. 7. 18. · mundos y, mediante éstos, resolver diferentes problemas, usando actores o agentes que colaboran entre ellos para lograr cada

23

Universidad de Medellín

7. BIBLIOGRAFÍA

O’HARE, G. M. P. y JENNINGS, N. R. (1996), “Foundations of Distributed Artificial Intelligence”,New York, Wiley-Interscience, páginas 5, 20.

RUSELL, Stuart (1996) “Inteligencia artificial: Un enfoque moderno”, México, Prentice Hall, páginas47 – 52.

DILLINGER, R. “AI for roguelike games”, (2004) (Online article). Available: http://www.icestormcity.com/szdev/dillinger.htm

ANDERSON M., (2002) “Fractal Landscapes” (Online article). Available: http://www.icestormcity.com/szdev/mikera.htm

MARZ P. “Generating Random Fractal Terrain” (Online article), Available: http://www.gameprogrammer.com/fractal.html#midpoint

RECIBIDO:17/03/2005ACEPTADO: 29/04/2005

Aplicaciones de los mundos virtuales...