Context Breeder

by John Klima

Context Breeder is a genetic algorithm and 3d interface into the Rhizome ArtBase. Users select four ArtBase objects which comprise a "gene sequence" that is added to a pool of all the sequences other users have created. Sequences similar to the user's sequence are returned and displayed, and the user can "breed" with these sequences to create new sequences. Through the cumulative affect of all user's selections and breeding choices, a context emerges organically.

Let's put aside the notion of Art for a moment and consider what this commission is by definition--an alternate interface to the Rhizome ArtBase. In my mind, this means that the end result should have a function; it should actually be useful in some way. To bring art back into the definition means that the function need not be useful in only a practical sense. It does not need to improve upon an existing methodology for ArtBase access, because as art, it is not a tool. Art needs only to supply the unusual methodology. However, I believe Context Breeder does improve ArtBase access. Minimally, it makes the "surfing" experience more fluid.

At current count, the ArtBase has approximately 800 entries. Not a big number, but not a small number either. So if you do not have knowledge of net art, you don't know the artists or works, where do you start? Perhaps you would ask an expert. The interface might be a list of "top picks" or some such thing. There might be a hit count, or Slashdot vote mechanism. These mechanisms are useful, but flawed. The expert has prejudices, or simply doesn't have time to look at everything, so they only suggest works by artists they already know. Vote mechanisms are popularity contests. So my goal in a functional sense was to create an organic mechanism that assembled a collection of works that relate to each other and somehow represent examples of key concepts in net art without the assemblage being the dogmatic choice of a single individual or the "oppression of public opinion" in a vote system.

We often see in movies such as "Minority Report" fabulous interfaces seamlessly providing precisely the information the user needs, in glorious 3d, with effortless manipulation. This seems in stark contrast to the reality of the computer interfaces we actually have. The reason for this is twofold--we don't have equipment actually capable of presenting data in these fabulous ways and we don't have the mental capacity to utilize such an interface if it did exist. So my goal as far as presenting the data was to do so in an atypical way, in a way that did not suggest any of the interface metaphors we are accustomed to and perhaps debilitated by. I don't mean to suggest that my Context Breeder interface is that glorious interface of Hollywood, but I do think, like glasbead, it is a necessary first step in that direction.

So how does it work? To start with, the user selects four ArtBase objects to create a short gene sequence. The "select four" interface is very important to Context Breeder function. You press Create, and your sequence appears in the 3d interface. Now other sequences refered to as "relatives," begin to appear. The first to appear are sequences that have the greatest number of object matches with your sequence. Previously someone created a sequence that is similar to yours, and this sequence appears in proximity to your gene. The sequences are positioned by similarity -- 4,3,2,1 matches, after which it positions ten "strangers," ten objects that have no relation to yours. All the objects are also ranked by a second criteria, "fitness," which I will get to in a moment. Suffice to say, the genes most similar to yours will appear first, spiraling out and around by fitness and similarity. The spiral is an excellent way to represent this twofold type of hierarchy.

So what does this mean? It means that if you happen to have included a Levin in your sequence, you also might see a Napier, and perhaps a Kanarek and perhaps me, because someone else created a gene that has Levin, Napier, Kanarek, Klima. This isn't a vote system, it's a context system. Perhaps the Levin, Napier, Kanarek, Klima gene was created by someone interested in multi-user. Perhaps another gene was created by someone interested in hacktivism. In a sense, the gene pool is self-organizing, without having any "knowledge" of itself. It has no "expert" rules. It is the cumulative result of all the four unit sequences that everyone has ever created (that survived). Though Context Breeder is just a simple demonstration of the notion, this idea is really exciting to me. Each gene is a little portion of a thought, by an individual. Each gene is a little piece of an "idea."

You have created a four object gene sequence and added it to the pool, you see your gene located in the center of the space and you see other genes that other people have created spiraling out from yours. To navigate, click and drag. "Mousing over" other gene sequences retrieves information about the artworks in the gene. Click the Go To button to launch the artwork in a new window. Mousing over a gene also displays the sequence, next to your sequence, in the breeding area at the bottom of the window. Once the Breed button appears, you are ready to breed these two genes to create two new genes that are subsequently added to the pool.

By clicking the Breed button, you start the breeding process. A new interface opens, showing you the two new genes created from your original gene and the gene you bred with. By combining the first two objects from your original sequence with the last two objects of the sequence you bred with, flipping the position, the first new gene is created. The second new gene is created from the last two objects of your sequence and the first two objects of the other sequence, again flipping positions. This is called a genetic crossover algorithm. In the case of context breeder, it is a very simple, four unit crossover. In other genetics-based software, sequences and crossover patterns can be very complex. For this project I chose simplicity to foster understanding.

Every genetic algorithm has what is called a "fitness heuristic." After crossover, the new gene is evaluated by some criteria and assigned a fitness. You will notice words appearing below each object. These are the keywords (in green) and the categories (in blue) the original artist assigned to their work when they added it to the ArtBase. Context Breeder's fitness heuristic is based on word matching across the sequence. When a word appears in two objects, the fitness is increased. If it appears in three objects, it is again increased. The fitness increases exponentially as the occurrences of keywords and categories accumulate.

When breeding occurs, the two original parent genes automatically increase their fitness. Conversely, every other gene in the entire system decreases its fitness when breeding occurs, if it is not bred with. In other words, the more a gene is bred with, the greater its fitness, and vice versa. If a gene's fitness level drops below zero, it is forever removed from the system, the result being, the system is both self organizing, and self maintaining. Matt Mirapaul of the New York Times described it as a form of social Darwinism.


Circa 1978, Brooklyn-based Klima (b. 1965) attempted to code a 3D maze on a TRS-80 with 4k RAM and failed miserably. He has been obsessed with 3D ever since. Fascinated by the first primitive flight simulators and CAD programs, he began to build 3D graphics environments, and to write source code.

Klima's work has been exhibited extensively - most notably his solo show at Postmasters Gallery titled "Go Fish," his market simulation "ecosystm" included in "BitStreams," curated by Larry Rinder at the Whitney Museum of American Art, the massive "EARTH" browser, part of the 2002 Whitney Biennial Net Art Selection, and the "glasbead" performance in the Media Z Lounge at the New Museum of Contempory Art. His international exhibitions include The Museum for Communication in Bern, Switzerland, the NTT InterCommunication Center in Tokyo, Japan, and numerous international festivals.

By drawing upon gaming and the various possibilities of manipulating and transliterating data, John Klima's work occupies new territory in media art. Although there is an obvious connection between gaming and interactive digital art, and the gaming industry has played an important role in the development of multi-user environments, the parameters of this connection are almost never subjected to serious, aesthetic investigation.

Employing a variety of technologies to produce both hardware and software, Klima's work consistantly connects the virtual to the real, addressing issues of remote responsibility and bluring the distinctions between the simulated and the concrete.