Navigation Salon Salon Technology email print
Arts & Entertainment
Books
Comics
Health & Body
Media
Mothers Who Think
News
People
Politics2000
.Technology
- Free Software Project
Travel & Food
_______
Columnists

 

Current
Wire Stories

Click here to read the latest stories from the wires.

- - - - - - - - - - - -

- - - - - - - - - - - -

View From the Top

Full list of profiles

- - - - - - - - - - - -

Also Today

For a full list of today's Salon Technology stories, go to the Technology home page.

- - - - - - - - - - - -

Search Salon


  
Advanced Search  |  Help

- - - - - - - - - - - -

Recently in Salon Technology

Silicon Follies
Silicon Follies
Chapter 42: Bidding for a date with the CFO on the eBay of Love

By Thomas Scoville
[08/07/99]


New ethics for the new economy?
Technology journalists aren't supposed to own stock in the companies they cover. But to participate in the high-flying tech sector, some are writing a new definition of "conflict of interest."

By Janelle Brown
[08/06/99]


Life or death software
A proposal for open-source anesthesia software heightens the drama of the question: Who's at fault when software fails?

By Andrew Leonard
[08/05/99]


The yuks server
Laff.net has crafted, copied and stolen 50,000 jokes. Soon it will unleash them on you.

By Mark Gimein
[08/04/99]

Silicon Follies
Silicon Follies
Chapter 41: IPO -- where'd Paul's office go?

By Thomas Scoville
[08/04/99]

Complete archives for Technology

- - - - - - - - - - - -

- - - - - - - - - - - -

Technology
by e-mail
Sign up here to receive our weekly e-mail newsletter listing recent and upcoming articles and events in Technology.

 
Unsubscribe

- - - - - - - - - - - -




Software that writes software | page 1, 2, 3

Genetic programming can be used to tackle a wide variety of problems, such as creating satellite controllers, designing artificial limbs and solving tricky problems in molecular biology. The beauty of genetic programming is that the programmer doesn't need to be an expert in satellite design, physiology or molecular biology to do this. The programmer creates a "fitness measure" -- a way for the software to know when it has successfully "evolved" a working solution -- and the software arrives at the solution using the evolutionary process of GP.

Early work in GP focused on designing circuits similar to those found in stereos. The "problem" given to the software was to design a type of circuit known as a low-pass filter; a successful "solution" would be a circuit that could pass low-frequency sounds to the stereo's woofer. The "fitness measure" in that case was the ability to separate the low- and high-frequency sounds.

Automatic programming is something of a holy grail in computer science. Koza, who holds the patent on the process of genetic programming and is the president of Genetic Programming Inc., has high standards for what he considers a successful system of automatic programming. The most important, he says, is that it produce results that stand on their own.

"The results must be interesting in their own right," he says -- "not simply because they were machine-produced." He's not interested in what he calls "toy problems." Instead, he says, he wants to use GP to tackle the sort of problems that challenge the best human minds.

In fact, he is not being unrealistic. Already there are GP-evolved solutions that compete with (and in some cases even surpass) human ingenuity.

In 1996, Koza used genetic programming to evolve a design for a specific type of electrical circuit. The computer produced several solutions; but one result infringed on a 1947 patent, while others infringed on patents filed in the 1920s. In other words, the GP results closely matched ideas conceived by humans. Koza's genetic programming has produced circuit designs that infringe on 21 patents in all, and duplicate the functionality of several others in novel ways.

Recently, researcher Lee Spector, an associate professor of computer science at Hampshire College in Massachusetts, used genetic programming to create a fast algorithm for evaluating data structures known as and/or trees. The GP-evolved algorithm was faster than any created by humans and led to the discovery of a new quantum rule.

GP also has been used to evolve protein-analyzing programs that are better than programs written by professional molecular biologists, and to design circuits that many electrical engineers previously thought to be impossible. On a very complex mathematical problem called the 1-d majority cellular automata problem, a GP-produced solution was the best in the world for about a year. It was eventually beaten out by a solution created by another evolutionary algorithm similar to GP. The human-created solution to this problem remains in third place.

With striking frequency, people who are considered the best in their fields are finding that GP-evolved solutions are better than anything they've come up with after years of research. As Koza points out, GP-evolved solutions are winning accolades even outside of the genetic programming world. "These are inherently publishable results," he says, "even as judged by standards external to our field."

Genetic programming's capacity for innovation extends beyond the realm of math and science problems into more subjective territory as well. It has been used to create artificially evolved music, art and images.

Spector has combined his research in quantum algorithms with dabblings in jazz. He's the director of the GenBebop program, which uses genetic programming to create interactive jazz music-making programs. A human plays a four-measure "call." The program improvises a four-measure "response." Spector says modestly that the responses are "not brilliant" -- though they are judged to be "good" by the music critic software used in creating the artificial musician, and GenBebop is working to make them better.

Genetic programming can be used to create images based on other aesthetic criteria as well, or even help us to understand the criteria themselves. The Faceprints project uses genetic programming to study human perceptions of physical beauty. Human test subjects are presented with several computer-generated images of faces. They vote on which faces are most attractive. The faces that the test subjects consider most attractive are crossbred, using GP techniques. As wave after wave of human test subjects rate the faces on attractiveness, a face evolves that matches most people's conception of beauty. The "most evolved face" in the Caucasian Female category is a green-eyed, Teutonic vixen who would not be out of place on "Baywatch." A study of attractiveness in Caucasian males is under way.

Someday, a similar program may be used instead of a police sketch artist to turn eyewitness accounts into images of suspects.

. Next page | Will computers be the inventors of the future?



 

Salon | Search | Archives | Contact Us | Table Talk | Ad Info

Arts & Entertainment | Books | Comics | Life | News | People
Politics | Sex | Tech & Business | Audio
The Free Software Project | The Movie Page
Letters | Columnists | Salon Plus

Copyright © 2000 Salon.com All rights reserved.