We present a survey of the first 21 years of web-based artificial life (WebAL) research and applications, broadly construed to include the many different ways in which artificial life and web technologies might intersect. Our survey covers the period from 1994—when the first WebAL work appeared—up to the present day, together with a brief discussion of relevant precursors. We examine recent projects, from 2010–2015, in greater detail in order to highlight the current state of the art. We follow the survey with a discussion of common themes and methodologies that can be observed in recent work and identify a number of likely directions for future work in this exciting area.

© 2016 Massachusetts Institute of Technology. Published under a Creative Commons Attribution 3.0 Unported (CC BY) license.

1 Introduction Section: Choose Top of page Abstract 1 Introduction << 2 Review Scope and Method... 3 The Precursors to WebAL 4 The 1990s: Early WebAL 5 The 2000s: WebAL Develo... 6 The 2010s: Current WebA... 7 Emerging Themes and Fut... 8 Conclusion Acknowledgments Notes References CITING ARTICLES In recent years there has been a growing body of work in artificial life (ALife) that makes use of web technology in one way or another. Over the last five years or so, web technologies have shifted away from proprietary browser plug-ins and towards standardized, native application programming interfaces (APIs) for providing graphics, animation, multimedia, and other advanced features. This progress is due to the development and adoption of the HTML5 language and associated API specifications introduced by the World Wide Web Consortium (W3C).1 This movement has made it much easier to develop and deploy rich web-based applications that work reliably and consistently on any browser, across multiple platforms and devices. It is therefore unsurprising that a number of high-profile ALife projects have emerged over this period that utilize web technology in various different ways. We refer to such work as WebAL, and broadly construe the field to include the multitude of ways in which ALife and the web might intersect. Examples include the creation of massively distributed user-guided evolutionary systems, the creation of open science platforms, the use of web-based applications for public outreach and engagement, and the use of crowdfunding platforms for supporting the development of ALife systems. As we demonstrate in this review and summarize in Section 7, there are many other points of intersection in addition to these. In light of this emerging trend, an inaugural Workshop on Artificial Life and the Web (WebAL-1)2 was held at the 14th International Conference on the Synthesis and Simulation of Living Systems (ALIFE 14) in New York City on 31 July 2014 [128]. Inspired by the success of the workshop, a number of its participants decided to collaborate on writing a comprehensive review of the field—the result of which is the current article.3 Although recent years have witnessed a rapid growth in this area, the first web-based ALife systems date back 21 years to the mid-1990s, with various antecedents employing alternative forms of network technology dating back to the 1970s. In Figure 1 we present a timeline showing some of the main WebAL projects discussed in this article, plotted against developments in the underlying web technology. We will refer to this figure throughout the review. The organization of the rest of the article is as follows. In Section 2 we define the scope of this review and describe the methodology adopted to collect the materials upon which the review is based. In Section 3 we review various non-web or non-ALife projects that have heavily influenced the state of the art of modern-day WebAL. In Section 4 we cover the first true WebAL systems that appeared in the 1990s soon after the birth of the web itself, and in Section 5 we explore developments in the following decade, the 2000s. In Section 6 we look in slightly more detail at WebAL systems that have appeared since 2010, in order to present the current state of the art. On the basis of the work reviewed, we identify some of the important emerging themes in Section 7, and comment on likely directions for future research as well as projects in active development. Finally, we present our conclusions in Section 8.

2 Review Scope and Methodology Section: Choose Top of page Abstract 1 Introduction 2 Review Scope and Method... << 3 The Precursors to WebAL 4 The 1990s: Early WebAL 5 The 2000s: WebAL Develo... 6 The 2010s: Current WebA... 7 Emerging Themes and Fut... 8 Conclusion Acknowledgments Notes References CITING ARTICLES As described in Section 1, we have approached this review with an open-minded perspective on what constitutes WebAL, in order to examine the many different meeting points of ALife and the web. Although such an approach allows us to address a variety of topics that might not have been covered in a more narrowly focused review, there is a danger that it might lead us into vast areas of research where there is no hope of providing a comprehensive, coherent review that would be of interest to readers of this journal. This danger is compounded by the fact that the boundaries of ALife research are indeterminate, and the distinction between web applications and other forms of Internet application is also becoming increasingly blurred (particularly in the case of mobile apps and social media). To guard against these dangers, we have taken a number of measures to enhance the focus of the review and to provide a clear methodology. To determine what counts as ALife in this context, we considered work that describes itself as ALife, or is published in the ALife literature, as a de facto definition of the field. Specifically, we searched for relevant work among all articles ever published in publications affiliated with the International Society for Artificial Life—that is, every issue of the Artificial Life journal, and every proceedings volume of the International Conference on Artificial Life and the European Conference on Artificial Life.4 We acknowledge that other ALife-related journals and conferences exist, but we needed to draw a line somewhere in order to keep the task manageable. The initial search yielded approximately 450 potentially relevant articles, but many of these were spurious results. These articles were then investigated in more detail in order to determine which were of genuine relevance. In addition to this systematic search, we also tapped into the collective knowledge of the coauthors of this article (all of whom are actively working in WebAL), as well as asking a number of other colleagues associated with the field for feedback on an early draft. Furthermore, we have attempted to draw a distinction between work relating to the web and work related more generally to the Internet. We use the terms WebAL and NetAL, respectively, for the narrower and broader fields. The major focus of this review is on WebAL, although it has not always been sensible to draw a clear distinction here. In cases where we feel that specific NetAL work is especially relevant, we have included it in our review. In particular, we highlight some of the most relevant NetAL work in Box 1 and Box 2. For completeness, any other NetAL work that was uncovered in our systematic search of the Artificial Life journal and conference proceedings is listed in a bibliographical appendix. Box 1. Highlights of other NetAL work from the 1990s. Box 2. Highlights of other NetAL work from the 2000s. Having established our criteria for what work to review, we chose particular aspects of this body of work to focus on. In terms of current work, we are primarily concerned with modern HTML5 and associated APIs as a platform, an environment, and an enabler for ALife. We are especially interested in how the modern web enables new ways of working that were previously not possible or feasible—at the end of the review we highlight the most important of these in Section 7. In our review of earlier work, we are primarily interested in pioneering work that used ALife and the web in novel ways, and in tracing the important antecedents to today's WebAL projects. There are other areas of work that we have chosen not to focus on because they are large fields that would have taken us too far from our core topics, and because comprehensive reviews of those areas are available elsewhere. These include the general areas of web crawling and information retrieval, distributed multi-agent systems, and frameworks for distributed evolutionary algorithms. We do, however, discuss specific work in these fields that have a particular ALife-oriented focus, and we provide pointers to broader reviews of these areas where appropriate.

3 The Precursors to WebAL Section: Choose Top of page Abstract 1 Introduction 2 Review Scope and Method... 3 The Precursors to WebAL << 4 The 1990s: Early WebAL 5 The 2000s: WebAL Develo... 6 The 2010s: Current WebA... 7 Emerging Themes and Fut... 8 Conclusion Acknowledgments Notes References CITING ARTICLES Many of the WebAL projects discussed in later sections involve the use of network technology and distributed human interaction to produce some kind of emergent artefact. Seen in this general light, a wide variety of potentially relevant antecedents can be found. We cannot provide an exhaustive review of such a broad body of prior work, but instead highlight a few significant landmarks and waypoints. The arts world provides many interesting studies of the combination of network technology, communication, emergent behavior, and inhabited virtual worlds. In 1977, the artists Kit Galloway and Sherrie Rabinowitz exhibited the Satellite Arts project, with funding and technical support from NASA [26, 84]. The project was a live performance piece involving two sets of dancers, located on opposite coasts of the USA, connected by a satellite-linked video feed that blended the images of both sets of dancers to produce a live, shared virtual space in which the performance happened. The project was one of the first examples of the use of network (in this case, satellite) technology to explore distinctions such as real versus virtual, subject versus object, and here versus there. In the years since the Satellite Arts project, the arts world has continued to push the boundaries of technology to explore issues of networks, communication, virtuality, and emergent behavior.5 Besides the arts world, computer games have an equally long history of development of shared virtual worlds. Real-time, shared virtual worlds date back to the development of the original Multi User Dungeon (MUD) by Roy Trubshaw in 1978 [83]. MUD initially allowed multi-user play via ARPANet before being licensed to CompuServe,6 where it ran until 1999. The MUD source code has recently been acquired by Stanford University Library as part of an ongoing effort to preserve virtual worlds [58]. MUD spawned a diverse and distinguished lineage of massively multiplayer online games (MMOs) that still thrives today [83]. The 1970s witnessed the emergence of computer viruses on mainframes, and by the early 1980s viruses and worms were also appearing on microcomputers [125]. One of the first examples of a worm that spread via the Internet, causing widespread damage and attracting the attention of the mainstream media, was Robert Morris' Internet worm of November 1988 [23]. Referring to the growth of computer viruses, Christopher Langton warned in his introduction to the proceedings of the Second Interdisciplinary Workshop on the Synthesis and Simulation of Living Systems (Artificial Life II, 1990):7 There is a caution here that we all must attend to. Attempts to create Artificial Life may be pursued for the highest scientific and intellectual goals, but they may have devastating consequences in the real world, if researchers do not take care to insure that the products of their research cannot ‘escape,’ either into computer networks or into the biosphere itself. [50, p. 18] Although the general history of computer viruses is beyond the scope of this review, we will refer back to Langton's warning when we discuss recent developments with client-centric WebAL in Section 7.7 . For further discussion of the broader topic of computer viruses and their relation to ALife, we refer the interested reader to Eugene Spafford's review article [ 114 ]. Relevant antecedents to WebAL can also be found in the development of distributed evolutionary systems, with theoretical work on parallel genetic algorithms starting in the 1960s and implementations in the 1980s—see [14] for a good review. One of the most ambitious examples of a distributed evolutionary system is Karl Sims' Evolved Virtual Creatures [110], released in 1994, which ran on a Connection Machine CM-5 supercomputer across 1024 cores. In this simulation, Sims fully evolved the morphology and behavior of a population of virtual organisms in a 3D world, inspiring many subsequent systems. Furthermore, Sims' gallery installations of interactive evolutionary art, such as Genetic Images (1993)8 and Galápagos (1997),9 were important precursors for WebAL evolutionary art systems such as Picbreeder (discussed in Section 5.1.1) and later projects (Section 6.1). Huge advances have been made in the more general field of distributed computing over the last couple of decades. The WebAL projects discussed in later sections have developed in the context of noteworthy successes in several major scientific projects using distributed computing and Internet crowdsourcing, including [email protected] [5], Foldit [46], and Galaxy Zoo [56]. The continued advances in large-scale distributed systems over this period have also stimulated the growth of the new field of autonomic computing, which aims to use bio-inspired techniques to produce large-scale, self-managing distributed IT systems that are substantially more robust than traditional complex computing systems [45]. In this section we have only briefly touched upon some of the most relevant precursors to WebAL. By the early 1990s, the technological milieu was pregnant with many of the ideas outlined above. As the Internet matured and the World Wide Web was born, such ideas were invigorated by the development of easy-to-use, standardized network technology and the mushrooming uptake of Internet and Web technology not just by special interest groups but by the general public the world over. In the next section, we look at the earliest examples of work that truly deserves the label WebAL.

4 The 1990s: Early WebAL Section: Choose Top of page Abstract 1 Introduction 2 Review Scope and Method... 3 The Precursors to WebAL 4 The 1990s: Early WebAL << 5 The 2000s: WebAL Develo... 6 The 2010s: Current WebA... 7 Emerging Themes and Fut... 8 Conclusion Acknowledgments Notes References CITING ARTICLES One of the first examples of WebAL was Michael Witbrock and Scott Neil-Reilly's evolutionary art project International Interactive Genetic Art 1 (IIGA1), developed in 1994, along with the subsequent IIGA2 system developed by John Mount [134].10 In this work, the fitness of images generated by genetic programming representations was determined by taking the average ratings for each image as scored by users accessing the system via the web. Both IIGA1 and IIGA2 attracted tens of thousands of users, and the work was mentioned in Wired magazine [115]. The IIGA2 site, built upon CGI scripts and HTML forms,11 racked up nearly 4000 generations (each of 10 images) on its original server, with over 115,000 page views of the images. The use of the web as a means of collecting distributed aesthetic evaluation of 2D and 3D images in evolutionary art systems remains a strong component of WebAL work to this day, as will be highlighted in later sections.12 Moving from 2D to 3D, the year 1995 saw the launch of the web-based artificial life virtual world TechnoSphere, created by Jane Prophet and Gordon Shelley [87]. The front end of the system was a website where users could design their own creatures by selecting from a limited range of predesigned body parts (see Figure 2). Once created, the user submitted their creature to the web server, and it was tagged with the user's email address and a unique ID. Submitted creatures were released into a 3D virtual world (which was not rendered live on the website), featuring a fractally generated landscape and other creatures (many of which were designed by other users), subject to ecological rules that governed their interactions. At key events, the users would receive email updates. For example, when creatures interacted with each other, the email addresses of the two authors were shared, to facilitate discussion. Users could even request “postcards” of their creatures, which were generated by rendering a scene showing the creature in its current location. In 1996 the TechnoSphere world reached a peak population of 90,000 creatures. In 1998, work started on a version with real-time 3D rendering [88], which was exhibited at a number of art galleries and museums over the period 1999–2001; this version, however, ran on a local network of PCs rather than on the web.13 An early example of using the web to mix real and virtual worlds—and thereby addressing some of the same topics investigated by the pre-web Satellite Arts project described in Section 3—was Telegarden.14 Building upon their work on web-based tele-operated robotics [32], Ken Goldberg and colleagues created a system in which web users could tend to a remote real-world garden, using a tele-operated robotic arm to plant and water seedlings. Telegarden ran successfully for 10 years (1995–2004), amassing 9000 active users by August 199615 and attracting coverage from many mainstream media channels. A sociological study of the community of users was reported in [62]. Bruce Damer and colleagues' Nerve Garden, launched in 1997, shared some of the ideas of Telegarden, but swapped the mixed-reality aspect for a shared 3D virtual environment [19]. The system allowed users to grow 3D plant models, generated by L-systems, on a client-side Java application. Users could then select their favorite plants, name them, and submit them to a central server, where they would be planted in a shared VRML-based16 3D environment that could be viewed by anyone with a browser suitably equipped with a VRML viewer plug-in (see Figure 3). By the mid-1990s, projects such as Telegarden were attracting growing attention in the popular media. In some cases, the rapidly expanding media interest in cyberculture even led to funding for new WebAL projects. Following the publication of Kevin Kelly's book Out of Control [44], Absolut Vodka (sponsors of Kelly's website) funded the development of a web-based genetic art system called Absolut Kelly, built upon the ideas of distributed intelligence and the “hive mind” discussed in the book. The system, developed by Jeffrey Ventrella, used an interactive genetic algorithm to allow users to evolve images featuring the distinctive outline of Absolut's vodka bottles.17 Extending the hive mind approach to evolving art even further, and taking its name from the sci-fi novel Do Androids Dream of Electric Sheep? [24], Scott Draves' Electric Sheep is a distributed, interactive artwork system launched in 1999 [25].18 The software exists in the form of a screensaver that can be downloaded by users and used to render frames of abstract artworks. Once complete, these frames are sent back to a central server, where they are used to generate animations (known as “sheep”). The animations are compressed by the server and sent back to the client-side screensavers for display (the system is therefore not web-based as such, but relies on Internet communications between the server and client-side screensavers). Users can vote for their favorite animations, their votes being used by a genetic algorithm to guide the future evolution of new sheep. The sheep are therefore the result of massively distributed computation and human participation from tens of thousands of users. While genetic art projects such as Electric Sheep and the Absolut Kelly employed web users purely for the aesthetic selection step of the evolutionary process,19 the shared virtual environment projects such as TechnoSphere and Nerve Garden provided users with tools to directly manipulate the design of their contributed virtual inhabitants. In TechnoSphere this manipulation was accomplished by the composition of standard elementary parts, and in Nerve Garden by providing an interface to adjust various parameters of the L-system. A somewhat more abstract approach, in which users used a web interface to enter written text that was then treated as a genetic code and mapped to a 3D creature, was developed by Laurent Mignonneau and Christa Sommerer in a series of projects they developed in the late 1990s [112]. The first of these projects was Life Spacies, introduced in 1997 and followed by Life Spacies II in 1999 [69]. This project was an interaction environment installed in a museum in Tokyo and connected to a website through which users from all over the world could design virtual creatures by entering text messages that would then be mapped into 3D creatures and introduced into the environment displayed at the museum. Once uploaded to the shared environment, the creatures could interact with each other there. Furthermore, visitors to the museum could interact with the creatures by touching them,20 thereby blurring the boundary between real and virtual worlds (a recurring theme that has come up in various of the projects already discussed). A related web-based system, Verbarium, was also introduced in 1999, and allowed users to create shapes and forms in real time using the same idea of a text-to-form encoding and an online interactive text editor [112, 113]. In addition to arts projects, the mid-1990s saw the birth of many WebAL-related projects in the fields of computer games and animation. 1996 saw the release of the ALife focused game Creatures, designed by Steve Grand.21 The characters in the game were digital life forms, called Norns, that were capable of lifetime learning, and possessed a physiology, drives, and communication abilities, all of which could evolve over generations. Although the first version of the game ran on standalone PCs, a growing online community of players soon started exchanging their Norns via enthusiast websites [16, 41]. By 2001, Creatures Docking Station was released, an Internet-based add-on to Creatures 3 that allowed Norns to travel between different online worlds.22 The growing popularity of the Java programming language in the mid-1990s (Figure 1), and the ease with which it allowed programs to be distributed via applets embedded in web pages, led to a flourishing of websites hosting ALife-related applets. In 1996, Craig Reynolds ported his well-known Boids work, which had originally been published in 1987 [97], to a Java applet on his website.23 Various other Boids applets also appeared around the same time.24 One particularly noteworthy example was Floys by Ariel Dolan,25 which extended the basic Boids design by adding territorial behaviors to the creatures [80]. Floys (along with Boids) was described in a popular science article in Scientific American in 2000, which highlighted the potential for amateur scientists to modify the code and use it for their own investigations [15]. An example of a more extensive ALife-related Java application was developed by the British design group Soda Creative in 1998. Their system, Soda Constructor,26 employed a 2D physics engine and presented users with an online editor with which they could construct creatures based upon mass-spring systems with oscillating muscles. By mid-2000, the popularity of the game had soared through “word of email,” and an online forum enabled users to share their creations.27 Soda Creative won an Interactive Arts BAFTA Award in 2001 for their work.28 In 2002, they teamed up with Queen Mary University London to develop Sodarace, a shared online environment where users from around the world could pit their creations against each other in competitions [63].29 The development of Sodarace was supported by the UK's Engineering and Physical Sciences Research Council, and had a strong public outreach and educational flavor.30 Elsewhere, an early example of work employing a distributed web-based genetic algorithm was reported in 1998 by Jens Astor and Christoph Adami [6] (with further experiments reported a couple of years later [7]). The work investigated the evolution of developmental artificial neural networks (ANNs), and utilized a server program written in Java that farmed out evaluations of individual ANNs to heterogeneous clients running a browser-based Java applet (or a local desktop Java program).31 The authors saw the potential of web-based distributed architectures for running computational tasks at a massive scale. However, their publications only reported results from experiments run over a local network; they cited Java's lack of speed as a problem, but they foresaw that improvements in Java compiler technology would make this kind of architecture more feasible in the future.32 As demonstrated in the preceding discussion, by the late 1990s WebAL was already a fertile and vibrant field of research. A short review article entitled “ALife Meets Web: Lessons Learned,” published in 1998, summarized some of the work discussed in this section and drew some conclusions about what might be the most productive areas for WebAL research going forward [80]. Areas highlighted included using the web as a shared testing ground—a global laboratory—for ALife experiments, and using the close parallels between the web and natural biological environments (e.g., both are large, dynamic, heterogeneous, noisy, and distributed) to inspire the design of complex WebAL worlds. As we will see later on (Section 7), both of these areas have become important components of current WebAL research.

5 The 2000s: WebAL Develops Section: Choose Top of page Abstract 1 Introduction 2 Review Scope and Method... 3 The Precursors to WebAL 4 The 1990s: Early WebAL 5 The 2000s: WebAL Develo... << 6 The 2010s: Current WebA... 7 Emerging Themes and Fut... 8 Conclusion Acknowledgments Notes References CITING ARTICLES We begin this section by describing a rather different kind of intersection between ALife and the web that took place at the Artificial Life VII conference in 2000, held in Portland, Oregon. One aspect of the conference theme of “Looking backwards, looking forwards” was a drive to better understand the interests and opinions of the community regarding the status and direction of ALife as a field of study. In addition, the organizers wished to canvass the community on the establishment of a professional society. In order to achieve these tasks, Steen Rasmussen and colleagues set up a web-based survey that allowed open-ended responses to a number of questions formulated by a group of community members [93]. The survey was implemented using Active Server Pages33 technology, and stored responses in a database for further analysis. The survey authors produced histograms and mind maps from the results in order to better understand the interests and concerns of the community, and also to investigate differences in opinion between respondents from computer science and biology. In addition, the positive responses to the questions regarding the establishment of a professional society led to the formation of the International Society for Artificial Life. In reporting the survey design and analysis, Rasmussen et al. explained that they wished to use the web to harness the collective intelligence of the ALife community. In addition to reporting the specific results of their survey, they also described a more general methodology for performing this kind of web-based collective intelligence gathering and self-organization of knowledge from a community [93]. This is an early example of WebAL crowd creativity—we will come across other examples later in the article, and briefly summarize these projects in Section 7.1. Returning to more familiar flavors of WebAL, the general increase in the computing power of desktop PCs in the 2000s over the 1990s allowed the introduction of more sophisticated web browsers, and meant that it was feasible to run more powerful programs on the client side (within the browser). Hence, the 2000s witnessed an increase in complexity of WebAL projects, made possible by the parallel improvements in hardware and web technology in addition to the scientific progress of the field itself. In the remainder of this section we look at how the changing landscape of web technology affected the development of WebAL during the 2000s. 5.1 The Changing Technology Landscape of WebAL 5.1.1 Java Applications and Applets of Growing Sophistication Countless Java applets appeared in the late 1990s and early 2000s that simulated ALife-related concepts, some of which were already described in Section 4. In addition, various cellular automata (CA) were popular.34 While many of the earlier examples were fairly simple, some serious academic projects made their code available as applets as a means of distribution to encourage experimentation by other researchers (e.g., [68]).35 In addition, some more elaborate projects were developed as interactive educational tools, including Soda Constructor (described in Section 4 but further developed in the 2000s). Another example is Organic Builder,36 an accessible tool for experimenting with artificial chemistries, developed by Tim Hutton and first launched in 2005. The system allowed users to edit the reaction rules of an artificial chemistry and immediately observe the results in a browser-based graphical simulation of interacting particles (see Figure 4). A series of progressively harder challenges was presented, to test a user's skill in devising reaction rules to achieve particular behaviors. All 19 challenges set by Hutton were solved by users, sometimes in very unexpected and ingenious ways. As well as solving the challenges individually, some users also discussed and shared their results on an online discussion forum.37 Reflecting on the experience of running the system for a number of years, Hutton commented: “Though it was initially intended as a set of challenges to be tackled as a game, the users experimented with the system far beyond this and discovered several novel forms of self-replicators. When searching for a system with certain properties such as self-replication, making the system accessible to the public through a Web site is an unusual but effective way of making scientific discoveries, credit for which must go to the users themselves for their tireless experimentation and innovation” [39, p. 21]. Thus, in addition to the education and outreach goals, Organic Builder also provides an early example of web-mediated crowdsourced human computation for solving complex tasks. Another important WebAL project in the late 2000s was the evolutionary art system Picbreeder [109, 108]. The system, launched in 2007 and still running today, allows users to evolve two-dimensional images using a Java applet that sends results back to a central server. The evolved images and their lineages can then be viewed via the project's website.38 The images are encoded by a neural network variant called compositional pattern-producing networks (CPPNs) [116] and evolved through an implementation of the neuroevolution of augmenting topologies (NEAT) algorithm [118, 119].39 A major innovation of Picbreeder was its support for a process called branching, which enables genuine collaborative interactive evolution; users are allowed not only to evolve their own images, but also to select and continue evolving images produced by other users. As branch accumulates upon branch, the system facilitates the interactive evolution of deep lineages of evolved pictures encompassing the contributions of many users, and accordingly also enables the collective exploration of a vast search space of images. Results from Picbreeder demonstrate that it is possible to effectively harness the input of many unrelated users through branching. Some examples of images evolved with Picbreeder are shown in Figure 5. Java-based projects such as Organic Builder and Picbreeder capitalized on the opportunities for distributed interaction and crowdsourced computation afforded by the web. Elsewhere, other projects continued to utilize Java and applets purely as a means for easy distribution, dissemination, and engagement. A prominent example is Hiroki Sayama's Swarm Chemistry project40 [104], introduced in 2006 and still being actively developed.41 5.1.2 Adobe Flash In addition to Java, Adobe Flash42 was another widely used technology in the 2000s for delivering animated multimedia web content (see Figure 1). There are various examples of Flash-based WebAL projects, one of the most notable being a web-based genetic algorithm for evolving cars to run over uneven terrain in a 2D simulated physics environment, which first appeared in 2008.43 This simulation served as the inspiration for the more recent and very popular reimplementation of the idea called BoxCar2D.44 Developed in 2011 by the UC Santa Cruz graduate Ryan Weber, BoxCar2D was also written in Flash and used a Flash port45 of the popular Box2D physics engine.46 Also in 2011, shortly after the arrival of BoxCar2D, Rafael Matsunaga released a reimplementation of the system using native HTML5 technologies rather than Flash.47 5.1.3 WebAL in Online Virtual Worlds Beyond the realms of academic research, Linden Lab's online virtual world Second Life was launched in 2003 and gained massive worldwide popularity over the following years.48 A number of ALife-related projects were developed within this platform, two of the most notable being Svarga and Terminus, which both came to prominence in 2006. Svarga, created by Second Life user Laukosargas Svarog, was an island with a fully functioning ecosystem comprising a weather system and various types of plants and animals.49 The island can still be visited in Second Life today,50 but it was purchased from Svarog by Linden Lab in 201051 and some of its original ecosystem features may no longer be present. Shortly after the release of Svarga, a separate effort was launched by the Ecosystem Working Group and associated with the in-game location Terminus.52 The group's aim was to develop an open-source programming language that would not only allow developers to freely create their own creatures, but also allow the creatures in Terminus to interact and evolve using a shared language. However, the project apparently ran into funding and resource problems, and is no longer available.53 5.1.4 Native HTML and HTTP Technologies The 2000s also saw the beginnings of a drive for native technologies and APIs in preference to Java applets and other techniques that required browser plug-ins. This drive accelerated towards the end of the decade, boosted by developments such as the beginnings of work on the HTML5 specification in the mid-2000s,54 and the emergence of fast JavaScript engines offering substantial speed-up for client-side code, led by the introduction in 2008 of the V8 JavaScript engine by Google55 (see Figure 1). Even before these developments, there are examples of WebAL work that chose to focus on native technologies. An interesting early WebAL project that explored the potential of distributed computation and native client-side storage was William Langdon's Pfeiffer website, released in late 2001 and still running today56 [49]. This browser-based system allowed users to evolve 2D patterns described by L-systems (see Figure 6). A user was presented with a variety of patterns on screen, and could select those they thought were good and bad, which directly influenced their evolutionary fitness. The patterns were presented as GIF files that had been generated by the server, based upon the genetic description of an L-system, and then sent to the user's browser. The user could also select patterns to be parents for a new offspring. Surviving patterns were made persistent on the client side using HTTP cookies.57 Users could name their favorite patterns and save them, in which case they were not only stored locally but also uploaded to the system's global server, where they would become available to be sent to other users. Pfeiffer therefore implemented distributed web-based evolution with aesthetic selection. Also noteworthy is Alexander Wait's project Quantum Coreworld, first reported in 2004 [132]. The basic system was inspired by Rasmussen et al.'s early ALife system Coreworld [92], with the addition of “physics” inspired by quantum mechanics. The program was written in the C language and ran continually on a web server. The novel WebAL aspect of Quantum Coreworld was that it allowed users to inject “biotic” or “abiotic” changes into the system by uploading an instruction file via the system's web interface.58 An early example of a WebAL project using native HTML5 technologies is AlteredQualia's Image Evolution website,59 developed in 2008. This was inspired by Roger Johansson's earlier (non-web-based) work on evolving a polygon-based representation of the Mona Lisa.60 At the time, the required HTML5 canvas element for drawing graphics was not widely supported by browsers, but the situation has now greatly improved, as we'll see in the next section.

8 Conclusion Section: Choose Top of page Abstract 1 Introduction 2 Review Scope and Method... 3 The Precursors to WebAL 4 The 1990s: Early WebAL 5 The 2000s: WebAL Develo... 6 The 2010s: Current WebA... 7 Emerging Themes and Fut... 8 Conclusion << Acknowledgments Notes References CITING ARTICLES We have explored many different ways in which web technologies and ALife techniques have intersected in past and current work. The projects we have reviewed demonstrate the diverse domains in which WebAL has been applied, including: collaborative design; human computation; education; outreach; persistent and long-running experiments; the archiving, sharing, reproduction, and reuse of scientific experiments and platforms; collaborative open science; art; computer games; crowdfunding; and more besides. As web technology continues to develop, and particularly with the move towards native APIs in place of proprietary plugins, the potential for developing complex web-based ALife research and applications grows greater each year. Whether or not a WebAL project is primarily focused on education or public outreach, the very nature of the web means that WebAL research is inherently open and can reach a wide audience (unless steps are taken to actively prevent this accessibility). As funding councils around the world place increasing emphasis on the public understanding of science, WebAL is well placed to play an important role in the communication of ALife research to a wide and diverse audience. Furthermore, WebAL not only enables wide dissemination of results, but it also promotes public engagement with and participation in ALife research. Looking back over the research reviewed here, it is clear that great strides have been made over the last 21 years. However, as web technology and APIs develop, it is likely that current work represents only the tip of the iceberg of what could be possible. The work surveyed here represents a great showcase of some of the possibilities of WebAL, and yet we suspect there are many other possibilities, some as yet unimagined. Advances will doubtless be made in all of the areas outlined in our discussion of emerging themes and future directions (Section 7), and likely in completely different areas as well. It is a truly exciting time to be involved in WebAL research. We expect the current rapid pace of development to continue, and indeed to accelerate, over the next few years. We look forward to witnessing the advances and achievements, both expected and unexpected, that will emerge from these efforts.

Acknowledgments Section: Choose Top of page Abstract 1 Introduction 2 Review Scope and Method... 3 The Precursors to WebAL 4 The 1990s: Early WebAL 5 The 2000s: WebAL Develo... 6 The 2010s: Current WebA... 7 Emerging Themes and Fut... 8 Conclusion Acknowledgments << Notes References CITING ARTICLES We would like to thank two anonymous reviewers for their insightful comments and constructive criticism on an earlier draft of this article. Thanks to Alan Dorin for providing references to relevant early work on ALife art. Thanks also to Bruce Damer, Steve Grand, Tim Hutton, Jane Prophet, Craig Reynolds, Hiroki Sayama, Terence Soule, and Sebastian von Mammen for verifying details relating to their work. We gratefully acknowledge use of Overleaf, the free, online collaborative LaTEX authoring tool (https://www.overleaf.com/), in preparing the draft of this article. Tim Taylor and Simon Hickinbotham acknowledge funding from the EU FP7 project EvoEvo, grant number 610427. Joshua Auerbach acknowledges funding from the EU FP7 project Insight, grant agreement number 308943. Josh Bongard acknowledges funding from the National Science Foundation awards PECASE-0953837 and INSPIRE-1344227. Jeff Clune was supported by an NSF CAREER award, grant number 1453549. Charles Ofria acknowledges funding for the BEACON Center for the Study of Evolution in Action from the US National Science Foundation, under Cooperative Agreement DBI-0939454. Jason Yosinski was supported by a NASA Space Technology Research Fellowship. Image credits: Figure 2 courtesy of Jane Prophet, used with permission; Figure 3 courtesy of http://www.biota.org/nervegarden/publish.html, used according to the licensing information on that page; Figure 6 is a screenshot taken by one of the authors (T.T.), used with permission of Bill Langdon; Figure 4 courtesy of Tim Hutton, used with permission; Figure 13 courtesy of Sebastian von Mammem, used with permission. All other figures were provided by the authors.

Notes Section: Choose Top of page Abstract 1 Introduction 2 Review Scope and Method... 3 The Precursors to WebAL 4 The 1990s: Early WebAL 5 The 2000s: WebAL Develo... 6 The 2010s: Current WebA... 7 Emerging Themes and Fut... 8 Conclusion Acknowledgments Notes << References CITING ARTICLES 1 See http://www.w3.org/TR/htm15/ and https://en.wikipedia.org/wiki/HTML5. 2 http://alife.org/ws/webal1 3 This article is a vastly expanded and more detailed revision of a previous review one [127], with additional contributions from many of the participants and organizers of the WebAL-1 Workshop. 4 Where electronic copies of articles were available, searches were performed using the following keywords: (web, internet, Java, applet, HTML, Flash, browser, Android, iOS, screensaver, JavaScript). Where no electronic copies were available, abstracts were read to determine potential relevance. 5 To briefly mention just two more recent examples: Karlheinz Stockhausen's Helikopter-streichquartett (Helicopter String Quartet), first performed in 1995, involved a coordinated live performance of four musicians each flying in separate helicopters [122]. Elsewhere, Matthew Fuller's group performance project The Human Cellular Automaton, first performed in 2000, implemented cellular automata rules (such as Conway's game of Life) in a crowd of human participants [133, pp. 173–174], thereby creating a distributed human-powered computer. 6 http://british-legends.com/CMS/index.php/about-mudi-bl/history 7 Similar concerns were also raised by Harold Thimbleby, who presented at the Artificial Life II workshop but did not appear in the proceedings; his ideas were later published elsewhere [129]. 8 http://www/karlsims.com/genetic-images.html. Like Evolved Virtual Creatures, this work also ran on a massively parallel Connection Machine supercomputer. 9 http://www/karlsims.com/galapagos/ 10 See also http://www.win-vector.com/blog/2009/06/what-is-genetic-art/. 11 http://www.mzlabs.com/MZLabsJM/page4/page4.html 12 The work on Web-based evolutionary art systems reported here is part of a larger field of work on evolutionary art, much of which is not Web-based. A good review of the wider field can be found in [52]. 13 At the time of writing, a new version of TechnoSphere, in the form of an augmented-reality mobile app, is currently under development (see Section 6.2.2). 14 http://goldberg.berkley.edu/garden/ 15 http://web.archive.org/web/19980203215817/http://telegarden.aec.at/html/nyt.html 16 http://www.w3.org/MarkUp/VRML/ 17 Example images can be seen at http://www.ventrella.com/Tweaks/Absolut/absolut.html. The work is also described in [133, 45] and on Kevin Kelly's website: http://kk.org/ct2/2007/10/17/mutating-art-from-chaos/. 18 http://electricsheep.org. See also [133, pp. 154–157]. 19 Another early example of this kind was the Artificial Painter project, a genetic art system that included a limited Web-based interface allowing user-guided aesthetic selection (archived at http://web.archive.org/web/19980503002715/http://gracco.irmkant.rm.cnr.it/luigi/lupa_ap.html) [81]. 20 This interaction was achieved using a camera tracking system that captured a visitor's image and projected it into the display, thereby integrating them into the virtual environment [69]. 21 http://en.wikipedia.org/wiki/Creatures_(artificial_life_series) 22 See http://creatures.wikia.com/wiki/Docking_Station. The information in this paragraph has been verified by personal communication with Steve Grand. 23 See http://www.red3d.com/cwr/boids/applet/. Date of original publication confirmed by personal communication with Craig Reynolds. 24 For example, Conrad Parker's implementation http://www.vergenet.net/∼conrad/boids/. Various other examples are listed at http://www.aridolan.com/ad/Alife.html. 25 http://www.aridolan.com/ofiles/JavaFloys.html 26 http://soda.co.uk/work/sodaconstructor 27 http://www.acmi.net.au/soda.htm 28 http://awards.bafta.org/award/2001/interactive/interactive-arts 29 See also http://sodarace.net/, http://soda.co.uk/work/sodarace-online-olympics 30 In 2013, Szerlip and Stanley developed an open-source browser-based version of Sodarace, called IESoR [123]. It features a developmental encoding of creatures suitable for evolutionary experiments, and is designed to be an accessible platform that other researchers can easily use. 31 An archived copy of the project's website is available at http://web.archive.org/web/20050126162950/http://norgev.alife.org/. 32 They were right in that this kind of architecture is now more feasible, although in modern systems this can be accomplished using native HTML5 technology rather than Java—see Section 7.2. 33 https://msdn.microsoft.com/en-us/library/aa286483.aspx 34 For lists of many of these, see http://cell-auto.com/links/ and http://www.aridolan.com/ad/CA.html. 35 As the decade developed, the growing popularity of agent-based modeling toolkits such as NetLogo [111] made it easier than ever to package simulation models as Java applets. 36 http://organicbuilder.sourceforge.net/ 37 http://groups.google.com/group/OrganicBuilder/ 38 http://picbreeder.org 39 A earlier, but much more limited project in Web-based evolutionary art based upon the NEAT algorithm was the Living Image Project (http://w-shadow.com/li/), written by Jānis Elsts and operational over 2006–2007. The server-side application was partially based upon Mattias Fagerlund's Delphi NEAT package (http://nn.cs.utexas.edu/?neatdelphi), and generated PNG image files of evolved images to be displayed on the client-side Web page. 40 http://bingweb.binghamton.edu/∼sayama/SwarmChemistry/ 41 Swarm Chemistry has inspired various more recent independent projects, including an iOS app (https://itunes.apple.com/us/app/emergent/id965513030) and an Adobe Flash-based Web version (http://flexmonkey.blogspot.co.uk/2013/08/advection-swarm-chemistry-with.html). 42 https://en.wikipedia.org/wiki/Adobe_Flash 43 The original site is now defunct, but it can still be seen on the Internet Archive at https://web.archive.org/web/20100729074214/http://www.wreck.devisland.net/ga/. We have been unable to trace the author of this work, beyond his anonymous announcement on Reddit (https://www.reddit.com/r/programming/comments/7i22c/genetic_programming_evolution_of_mona_lisa/c06pt65). 44 http://boxcar2d.com/ 45 http://sourceforge.net/projects/box2dflash/ 46 http://box2d.org/ 47 See http://rednuht.org/test/simulator/. Matsunaga has more recently also written other Web-based evolutionary systems using 2D physics, including one for biped walkers (http://rednuht.org/genetic_walkers/) and another for a quadruped (http://rednuht.org/geneticat/). 48 http://secondlife.com/ 49 http://nwn.blogs.com/nwn/2006/05/god_game.html, http://nwn.blogs.com/nwn/2010/03/svarga-returns.html 50 http://secondlife.com/destination/svarga 51 http://nwn.blogs.com/nwn/2010/03/svarga-returns.html 52 http://news.nationalgeographic.com/news/2007/03/070308-second-life.html 53 http://forums-archive.secondlife.com/191/83/133314/1.html 54 http://www.w3.org/TR/html5/introduction.html 55 https://en.wikipedia.org/wiki/JavaScript_engine 56 http://www0.cs.ucl.ac.uk/staff/W.Langdon/pfeiffer.html 57 https://en.wikipedia.org/wiki/HTTP_cookie 58 It appears that this system was not developed much further after its initial publication. 59 http://alteredqualia.com/visualization/evolve/ 60 http://rogeralsing.com/2008/12/07/genetic-programming-evolution-of-mona-lisa/ 61 http://www.w3.org/TR/webstorage/ 62 http://www.w3.org/TR/websockets/ 63 http://www.w3.org/TR/workers/ 64 http://www.w3.org/TR/webaudio/ 65 https://www.khronos.org/webgl/ 66 The final specification was published in October 2014. See http://www.w3.org/blog/news/archives/4167 67 http://thewildernessdowntown.com/. The project was an interactive interpretation of the band Arcade Fire's song “We Used to Wait.” For further information, see http://b-reel.com/projects/digital/case/57/the-wilderness-downtown/. 68 http://docubase.mit.edu/project/the-wilderness-downtown/ 69 https://www.chromeexperiments.com/arcadefire/ 70 http://endlessforms.com 71 http://www.shapeways.com 72 https://www.djangoproject.com/ 73 https://jquery.com/ 74 https://www.khronos.org/webgl/ 75 http://rasmustaarnby.dk/drawcompileevolve/ 76 http://www.genolve.com/. For further details, see http://wildwebwidget.com/. 77 http://www.google.com/imghp?sbi=1 78 http://www.image-net.org 79 https://www.mturk.com/mturk/welcome 80 http://bthj.is/breedesizer/ 81 http://webaudioapi.com/, http://www.w3.org/TR/webaudio/ 82 https://apps.facebook.com/petalzgame 83 https://developers.facebook.com/docs/graph-api 84 https://unity3d.com/ 85 Unity Personal Edition is free but proprietary software. It runs on many different platforms—with the notable exception of Linux, although an experimental Linux build is currently under development (see http://blogs.unity3d.com/2015/08/26/unity-comes-to-linux-experimental-build-now-available/). 86 http://jallov.com/thesis/ 87 http://adamilab.msu.edu/evolve-and-conquer/ 88 http://fold.it/portal/ 89 http://braincrafter.dk/ 90 http://www.wiggleplanet.com/ 91 https://www.kickstarter.com/projects/1582488758/peck-pecks-journey-a-picture-book-that-spawns-virt 92 http://technosphe.re/ 93 http://www.appeco.co.uk/ 94 http://www.reddit.com/r/ludobots/ 95 Implemented using ammo.js (https://github.com/kripken/ammo.js/), a JavaScript port of the popular Bullet Physics engine (http://bulletphysics.org), and the Three.js WebGL programming library (http://threejs.org/). 96 http://evolve-a-robot.github.io/ 97 Like Ludobots, Evolve-A-Robot also uses a JavaScript port of the Bullet Physics engine: specifically, PhysiJS (http://chandlerprall.github.io/Physijs/), which is actually built on top of ammo.js but runs the physics simulation in a separate thread using Web Workers (http://www.w3.org/TR/workers/) to improve performance. The Web-based simulation component of Ludobots does not (yet) incorporate an evolutionary algorithm; hence Evolve-A-Robot is novel is this respect. 98 https://github.com/jaredmoore/WebGLVisualizer 99 Such as the MakerBot Replicator 2x: http://store.makerbot.com/replicator2x 100 http://www.robogen.org 101 Including an evolution engine complete with a physics simulator, as well as utilities both for generating design files of body components for 3D printing, and for compiling neural network controllers to run on an Arduino microcontroller board (http://www.arduino.cc). 102 Including the Open Dynamics Engine physics simulator (http://www.ode.org) 103 http://kripken.github.io/emscripten-site/ 104 http://avida.devosoft.org/ 105 http://avida-ed.msu.edu/ 106 http://kripken.github.io/emscripten-site/ 107 https://github.com/devosoft/avida/tree/AvidaEd-Web 108 http://www2.cs.uidaho.edu/∼tsoule/ladybug-lesson/ 109 For further details, see also http://beacon-center.org/blog/2012/12/03/beacon-researchers-at-work-teaching-evolution-the-ladybug-game/ 110 https://processing.org/ 111 http://www.usasciencefestival.org/component/content/article/66-2012-exhibits/213-2012-exhibits?&offset=12 112 http://www.vonmammen.org/SG-GD/ 113 http://stringmol.york.ac.uk/webapp/ Source code available at https://github.com/adamnellis/StringmolWeb and for the underlying Stringmol simulator at https://github.com/franticspider/stringmol. 114 https://en.wikipedia.org/wiki/Common_Gateway_Interface 115 https://www.cs.york.ac.uk/nature/plazzmid/external/RUTSAC11/ 116 http://www.openworm.org/ 117 https://www.kickstarter.com/projects/openworm/openworm-a-digital-organism-in-your-browser 118 http://www.e-bug.eu/ 119 http://www.evograder.org 120 E.g., https://www.coursera.org/, https://www.edx.org and http://online.stanford.edu/. 121 E.g., http://www.complexityexplorer.org/ 122 The implementation of scalable assessment mechanisms is a challenge for MOOCs. Current approaches typically involve either the use of simple forms of assessment (e.g., multiple choice questions or formulaic questions with well defined answers), or peer grading [10] Systems such as EvoGrader which allow automated assessment of free-form written responses, could provide an important additional tool for realizing the full potential of MOOCs and other Web-based educational tools. 123 http://coel-sim.org 124 https://developers.google.com/chart 125 http://winark.org 126 http://nodejs.org 127 http://kripken.github.io/emscripten-site/ 128 http://devosoft.org/an-introduction-to-web-development-with-emscripten/ for a quickstart guide to working with Emscripten. 129 https://github.com/mercere99/Empirical 130 http://d3js.org/ 131 http://ade.sourceforge.net/ 132 We also give an honorable mention to breve.js (http://artificial.com/breve.js/), a slimmed-down, browser-based version of Jon Klein's popular Breve 3D simulation platform for multi-agent systems http://www.spiderland.org/. At the time of writing, breve.js is described as “work in progress.” 133 http://www.evogrid.org/ 134 https://en.wikipedia.org/wiki/MapReduce 135 https://aws.amazon.com/elasticmapreduce/ 136 https://www.dropbox.com/ 137 https://www.sugarsync.com/ 138 http://www.w3.org/TR/websockets/ 139 In a similar vein to [email protected], the long-running DarwinBots desktop ALife simulation (http://www.darwinbots.com) added an Internet mode in 2011 (http://wiki.darwinbots.com/w/Internet_Mode). If enabled, this mode allowed bots evolved on one user's machine to be teleported to other users' machines via an FTP server. 140 While the analogies between networked computer systems and living systems have been highlighted before (e.g., [28]), Oka et al.'s work takes the idea of the Web as a living system more literally. Bedau et al. had previously suggested that social communities on the Web might display some aspects of genuinely living systems (in their terminology, they are borderline between “primary” and “secondary” living technology) [12], but Oka et al. develop this idea much further. 141 An interesting recent study that conceptualizes human decision making and creativity as evolutionary computation is described by Sayama and Dionne [105]. Elsewhere, Woolley and Stanley have also recently explored novel architectures for human-computer collaboration within an ALife context [135]. 142 http://www.w3.org/TR/websockets/ 143 http://www.w3.org/TR/workers/ 144 http://www.w3.org/TR/webstorage/ 145 http://en.wikipedia.org/wiki/Asm.js 146 http://en.wikipedia.org/wiki/Google_Native_Client 147 https://github.com/kripken/emscripten 148 https://www.w3.org/community/webassembly/ 149 https://en.wikipedia.org/wiki/WebAssembly 150 http://aws.amazon.com/ (as used, for example, in Radenski's work [91] discussed in Section 6.4.5). 151 https://cloud.google.com/ 152 See [72] for a good review and outlook on the topic of citizen science, which intersects open science, education, and outreach and is therefore relevant to the future direction of the WebAL projects discussed here. 153 In other words, effectively a persistent, native, worldwide, peer-to-peer (P2P) architecture. 154 The initial target platforms for the game are PCs and Macs. For more details, see https://www.kickstarter.com/projects/1508284443/grandroids-real-artificial-life-on-your-pc

References Section: Choose Top of page Abstract 1 Introduction 2 Review Scope and Method... 3 The Precursors to WebAL 4 The 1990s: Early WebAL 5 The 2000s: WebAL Develo... 6 The 2010s: Current WebA... 7 Emerging Themes and Fut... 8 Conclusion Acknowledgments Notes References << CITING ARTICLES