Don't knock randomness and occasional errors in code replication. They can be good things. Our species didn't get where we are today without randomness and error propagation.
Let's assume for a moment that no data storage system is perfect; that is to say, let's assume for a moment that occasionally disk drives crash and corrupt data, and that memory goes faulty, and that even optical media is capable of damage by various means. Heck, even quantum fluctuations can affect data storage. This is a bit of a stretch, I know, but bear with me for a moment. So, assuming your software lives on a piece of hardware which is capable of minor corruption and that no system is perfect... keep it running long enough, and errors will creep in. It just happens. DNA works like that; DNA is a very, very good information storage system, but errors do creep in (chemical errors, even molecular errors introduced by cosmic rays, that sort of thing). Almost all of the time, these errors will be harmful to the program (or the living organism), but once in a very great while, these errors -- these mutations -- will be beneficial, to the point where an organism with this particular mutation will be more successful at passing its genes on to the next generation than organisms that don't express that particular mutant phenotype. Thus it is that mutations survive and pass on. In a similar vein, a random error in a OS's code might conceivably make that code ever so slightly better at, say, retrieving data through a USB port. Very unlikely -- astronomically so -- but this is how mutations occur and get passed on. Seriously, nothing is free of randomness, just by the very nature of the universe. That's just the law of the jungle. In your ideal self-replicating and self-growing OS and software, it might even make sense for the system to introduce random code changes into a subset of its own code, which it might sequestrate into a small sandbox. There it could observe the code for possibly beneficial side-effects of the "mutation" and reintroduce favorable mutations back into its mainline. One of the benefits of such a system, of course, is that your code could simulate thousands of generations of replication within seconds in its isolated sandboxes (Petri dishes? Simulation spaces? Whatever...), whereas in a biological system, such experiments can take thousands upon thousands of years to conduct. Heh. This is all theoretical, of course. I haven't followed most of the work being done in AI since I was a philosophy undergraduate. I'm not saying your model is bad, I'm just saying that you shouldn't overlook the possible benefits of randomness of "artificial selection" within the confines of your code. For some really interesting ideas, check out an older science fiction novel called _Code of the Lifemaker_ by James P. Hogan. You might also check out _Artifical Life_ by Stephen Levy (though some of the ideas in that book are necessarily out of date), as well as a couple of good books on chaos and complexity theory, not to mention books by Stephen Jay Gould and Richard Dawkins. At 01:33 PM 12/20/2001, you wrote: >Natural selection NEVER enters into it in any way. How could it? There >is never a point where randomness comes into play. There >is no competition. There is no sexual selection. There is only logic, >deductive reasoning, research, and _Artificial_ >intelligence, which is the point. > >Now I might say that this could be limited case in _Artificial_ selection, >but again, what is it selecting against? > >Furthermore once the program has gone through _one_ cycle it should >already work bug free. From there the program should be able >to write _ANY_ program (with direction given as to what the program >requirements are (_very_ specifically given)) bug-free. I >think the next job after it has worked on itself would be the operating >system. Then it could write a new program that designs >hardware. And there it goes... Sliante, Richard S. Crawford http://www.mossroot.com AIM: Buffalo2K ICQ: 11646404 Y!: rscrawford MSN: [EMAIL PROTECTED] "It is only with the heart that we see rightly; what is essential is invisible to the eye." --Antoine de Saint Exup�ry "Push the button, Max!"
