Mailing List |
This page is still being drafted.
Please bookmark this page and return from time-to-time to see updates.
BIOTA-AT-HOME WHITE PAPER
Biota-At-Home presents a white paper on the implementation of Artificial Nature system through peer-to-peer distributed computing.
From the early 1980s, the field of artificial life ('ALife') has developed through experimentation and inter-disciplinary collaboration. ALife includes such areas as cellular automata, digital organisms and evolutionary art.
Natural life exhibits an amazing variety of properties such as structure (squid vs squirrel vs oak-tree), reproductive strategy (ape vs yeast), diet (methane-eating bacteria vs cows), size (elephant vs vole), social-structure (bee vs polar bear), and many, many more.
Biota-At-Home ('B@H') wishes to promote advanced forms of ALife, that will go further towards capturing the whole character of natural life, while not necessarily mimicking it. Recent advances in computation and networking, allow a new perspective on this work.
B@H proposes the term artificial nature ('ANat') for this new field. B@H also recognise the enormous computer resources required for such activities, and therefore propose a distributed computing approach. B@H simulations scattered between the spare CPU cycles of thousands of volunteers' machines all over the world.
B@H has no special bias on the style of simulation for these artificial environments. Very highly abstract, simplistic but lifelike, or intricately detailed approaches are equally acceptable. B@H simulated environments need not necessarily resemble conditions on Earth, or even the reality of physics in the Universe.
B@H project is also about connecting ANat users to share their use over the Internet. This shared use will improve the user experience and create an immediate community of like-minded users. Developers will benefit from a community of users and a shared community of developers working with B@H.
WHAT IS BIOTA-AT-HOME?
B@H is a sub-project of Biota.org designed to;
WHAT IS THE HISTORY OF BIOTA-AT-HOME?
The shared idea of distributing ANat processing over the Internet has existed in community for a number of years. B@H owes its creation to Gerald de Jong (Fluidiom) who coined the term 'Darwin At Home', and Bruce Damer (biota.org) who launched the project. The combination of these two produced Biota-At-Home.
In mid-to-late 2004, Bruce contacted a group of advisers to give feedback for the initial seed of B@H. B@H launched in January 2005. In late February 2005, a mailing list started to allow public contributions in the direction of the project. Through the discussion on the mailing list the objectives of B@H solidified.
WHAT ARE THE OBJECTIVES OF BIOTA-AT-HOME?
(1) Build a new community of developers and users relating to current updated and new dynamic projects. B@H provides a site for constantly updated information and articles about the development of ANat, current projects, features on specific developers and highlighting end users and their use of ANat projects.
(2) Create a set of libraries for diverse programming languages and operating systems that run on a shared protocol. These libraries enable existing and new projects to have a powerful yet simple method of communicating with users over the Internet. This protocol allows a look-up of the B@H server on which Internet users are currently running the specific program and enable the program to communicate with users over a peer-to-peer communication.
(3) Investigate and create a B@H program that potentially runs in a screen-saver like SETI@Home but enables the user to interact with the creations that move over the B@H programs currently online. This program developed over the B@H community potentially takes aspects of other ANat programs integrated with agreement from their specific developers and possibly something totally new.
To-date there have been no time-frames indicated for the three objects of B@H. Although all objectives are ongoing projects, they are short, medium and long term goals respectively. In the future there may be additional objectives. The initial three represent those discussed and refined through the mailing list.
OBJECTIVE 1. BUILD A COMMUNITY
Central to the development of B@H is creating a community that provides feedback and assistance to users and developers of ANat projects. This community displays its work through a central site, biota.org.
This site could include;
OBJECTIVE 2. PROVIDE AN ANAT PROTOCOL/LIBRARY ONLINE
Part of the B@H experiment is to explore what happens to ANat projects run by numerous users distributed over the Internet. Whilst projects may have a number of different methodologies, there is a shared need for Internet network interfaces.
On the network end, is the need for a shared protocol in communicating the needed information on the ANat program end, is the need for libraries for C/C++ and Java for Windows, Mac and possibly Linux.
The library needs to open and close a connection between the client program and the B@H server.
The B@H server then transmits the IP addresses and port numbers of machines running the particular program. Central to this communication, of IP addresses and port numbers, is the need to have the information compressed and encrypted. There are potentially many IP/port numbers containing roughly the same information, thus easily compressed. This information is sensitive, thus encrypted to avoid hacking.
The library displays the B@H-server-received users information as an index or through simple information - number of organisms, speed of connection, reliability of connection. The program then can address each of these users or selective pick a user to communicate with. This interface is as basic as possible and assumes that the ANat program can add as much or as little transmitted information as they desire.
The real-time nature of this communication eliminated the BOINC API (http://boinc.berkeley.edu/) used in SETI@Home and other @Home projects. The large compiled and source size of the BOINC API also made it inapplicable to the size of ANat projects.
OBJECTIVE 3. CREATE A SHARED PROGRAM
A goal of B@H is to allow community collaborations between existing and new developers. Part of this is the potential to create a single program that combines features from a wide variety of methodologies.
In interface terms, SETI@Home and online first person and third person games provide possible interfaces. Other interface options included programmable organisms where the user can download and tinker with the organism's 'code' as it moves from machine to machine in the B@H universe. In addition, there may be emerging interfaces that occur through the development of such a program.
In order for B@H to succeed it needs a diversity of contributors. As an open source development project B@H needs;
As an ANat development project B@H needs;
For more information on B@H;
To join the B@H mailing list;