Objectives Research on ALife Apply VR technologies to the visualization of ALife experiments Build a customizable experimental development framework Implement AL experiments within the developed framework
Project Parts Theoretical part –Related studies –“State of the Art” research look up –Open problems Practical part –Framework development –Experiment development based on it
About ALife Combines biology and computer science to create synthetic models of living systems evolution A tentative to elucidate the logical structure (in a most general form) of biological evolution Originally dominated by computer scientists Nowadays studied by researches of almost all areas
Artificial Life The expression was first introduced by Christopher Langton in 1987, when was used as a conference name held in Los Alamos, New México, about “The Synthesis and Simulation of Living Systems”. “Artificial life: The proceedings of an Interdisciplinary Workshop on the Synthesis and Simulation of Living Systems” September, 1987, Los Alamos, New Mexico, Addison-Wesley Pub. further information...
Key concepts The initial definition considered two types: –Strong AL: re-creation of life in-silico, i.e. in the computer –Weak AL: simulation of biological phenomena Possible attacks –Bottom-up –Top-down
Bottom-Up –Observed in the nature –No planning –Comes from emergence/evolution –Generally associated to strong AL Top-Down –Humanistic procedures –Comes from planning/foresight –Generally associated with weak AL Attacks
Life Simulations Rules –Local rather than global –Simple rather than complex –Emergent rather than pre-defined (behavior)
Types of ALife research Origins of Life, self-organization and self- replication Development and replication Evolutionary dynamics and adaptation Autonomous agents and robots Communication, cooperation and social behavior Simulation, synthesis tools and methodologies
Open problems in Artificial Life A. How does life arise from the nonliving? 1. Generate a molecular proto-organism in vitro 2. Achieve the transition to life in an artificial chemistry in silico 3. Determine whether fundamentally novel living organizations 4. Simulate a unicellular organism over its entire lifecycle. 5. Explain how rules and symbols are generated from physical dynamics in living systems.
Open problems in Artificial Life B. What are the potentials and limits of living systems? 6. Determine what is inevitable in the open-ended evolution of life. 7. Determine minimal conditions for evolutionary transitions from specific to generic response systems. 8. Create a formal framework for synthesizing dynamical hierarchies at all scales. 9. Determine the predictability of evolutionary consequences of manipulating organisms and ecosystems. 10. Develop a theory of information processing, information flow, and information generation for evolving systems.
Open problems in Artificial Life C. How is life related to mind, machines, and culture? 11. Demonstrate the emergence of intelligence and mind in an artificial living system 12. Evaluate the influence of machines on the next major evolutionary transition of life 13. Provide a quantitative model of the interplay between cultural and biological evolution 14. Establish ethical principles for artificial life further information... From Bedau et. al – “Open Problems in Artificial Life”
ALife tools Examples: State Machines Non-linear Systems / Chaotic Dynamics Fuzzy Logic Artificial Neural Networks Evolutionary Search Genetic Algorithms
Multi Agent Systems Autonomous agents Biological agentsRobotic agentsComputational Agents...Artificial biological agents Search agents Entertainment agents VirusesIntelligent agents ALife agentsElectronic agents...
Experiments in ALife Actor Agent EnvironmentVirtual scene UI / Interaction Visualization device
Examples of ALife Programs
State of the Art in ALife * Neves, Rogério “Karl Sims videos”, access 18/09/2003 further information...
Motivation Weak visualization and Interaction –Most of ALife programs provides a poor visual representation of the Virtual Environment –The programs allow only the change of some parameters at start-up or during the experiment Hard code access –When available, the sources are frequently in low-level or at least not object oriented languages (ASM, C) Support to parallel architectures –Allowing the performance improvement in concurrent execution of agents in a Multi-threaded, Multi-Agent context A full 3D Environment simulation –Allowing the employment of vector mathematics to operate objects in the scene Apply the “State of the Art” in visualization technologies –Employ computer graphics, accelerator boards and VR technologies to the visualization of the Virtual Environment
Project features OOP Paradigm –Allows easy object/agent description/operation Cross-platform execution capability Open source philosophy Simulation of a true 3D space with vector dynamics –Providing easy manipulation of objects into 3D space Multiple-device 3D graphical support Visualization in Virtual Reality and immersive environments Concurrent execution of programs –Allow experiment speed-ups in multi-processed and distributed architectures Browser applet / Internet execution
Techniques / tools OOP MAS Vector Mathematics Discrete Time-Dynamics Concurrent Programming Computer Graphics Networking ALife Related
Development resources Java / Java3D API (from SUN) Personal Computers Graphical Workstations (Silicon Graphics) Multi-processed systems (SPADE project) Cluster of PCs (CAVE) Visualization devices (from monitors to CAVES) GB Ethernet Network
Java & Java3D Java Cross-platform capability Internet compliant Built over the OOP paradigm Concurrent programming support ( through Threads) Extensible Reliable Java3D New standard in VR development OpenGL/DirectX hi-level interface Scene description through scene-graphs Extend Java features
Java3D scene-graph example
Visualization Directed, but not limited to: Ordinary 3D boards Professional graphical accelerators From ordinary to stereo Monitors Shutter Glasses Head Mounted Displays (HMD) CAVES Other VR devices
Levels of operability A.L.I.V.E. Framework Java/Java3D Byte code Super classes Java VM/Machine Code User Interface User Classes Mid-Level/Language Code Hi-Level/Pseudo Code Custom User Interface Runtime Interface/Interaction Project Scope
Platform architecture RenderClient Subset
Render Client Scene Multicast Packages Server RenderClient Env
Agent diagram example
Demo code DEMO CODE
EXPERIMENTS & RESULTS
Developed Experiments Program test ALGA – Evolution / Adaptation Predator-Prey system Fish Schooling Flocking Biological demos –Cellular dynamics –Fungus growth –Lymphocytes & virus –Mitosis
Predator sight R G B + ACT W1W1 W2W2 W3W3 FILTER RADIATION
Predator DNA Reproduction condition Death condition Sensibility radius Strength Stamina Metabolism temperature Temperature tolerance Toxic resistance W1: red filter weight (R) W2: green filter weight (G) W3: blue filter weight (B)
Predator-Prey population graphs
Predator-Prey population graphs
Visual improvements Cellular dynamics
Conclusions The project explores the representational potential of ALife experiments employing 3D and VR to the visualization of experiment environment The developed framework provides a quick experiment prototype development tool The developed experiments demonstrates the framework capabilities and resources, serving as models to new user experiments
Conclusions Making the project available in Sourceforje.net, users around the world are allowed to contribute to the framework improvement The developed experiments can be published thought the internet allowing greater and faster interaction between research groups Also allows ordinary people outside the scientific community to experiment with this experimental virtual lab, serving as a scientific divulgation tool The experiments can take advantage of new coming visualization technologies while they appear, without the need of code adaptation
Possible employments ALife experiment development Biological scholar demonstrations Problem solving in sciences/engineering * System training in robotics * Simulation of genetics and evolutionary systems User oriented pattern search in virtual spaces Employment in future technologies (such nanotechnologies) * Neves, Rogério P. O. and Netto, Marcio L. “Evolutionary Search for Optimization of Fuzzy Logic Controllers” 1st International Conference on Fuzzy Systems and Knowledge Discovery, Volume I, on Hybrid Systems and Applications I further information...
Proposal to future works Interaction through sensitive devices File access Experiments: –Variable morphology –Intelligent agents / humanoids * Cavalhieri, Marcos, “Virtual Human Project”, access in 18/09/2003http://www.lsi.usp.br/~mac/ further information...
Acknowledgments Claudio Ranieri, Group ARTLIFE, LSI, USP Marcos Cavalhieri, Group ARTLIFE, LSI, USP Prof. Emilio Hernandez, LSI, USP Artur Gonzalez, PCS, USP Prof. Wolfgang Banzhaf, Dortmund University
Related Documents Rogério Neves, ALIVE Project Site & thesis Official ALIVE Project site ARTLIFE Site, Artificial Life group Questions & doubts