• Starting today August 7th, 2024, in order to post in the Married Couples, Courting Couples, or Singles forums, you will not be allowed to post if you have your Marital status designated as private. Announcements will be made in the respective forums as well but please note that if yours is currently listed as Private, you will need to submit a ticket in the Support Area to have yours changed.

  • CF has always been a site that welcomes people from different backgrounds and beliefs to participate in discussion and even debate. That is the nature of its ministry. In view of recent events emotions are running very high. We need to remind people of some basic principles in debating on this site. We need to be civil when we express differences in opinion. No personal attacks. Avoid you, your statements. Don't characterize an entire political party with comparisons to Fascism or Communism or other extreme movements that committed atrocities. CF is not the place for broad brush or blanket statements about groups and political parties. Put the broad brushes and blankets away when you come to CF, better yet, put them in the incinerator. Debate had no place for them. We need to remember that people that commit acts of violence represent themselves or a small extreme faction.

Computer program "mutate"

random_guy

Senior Veteran
Jan 30, 2005
2,528
148
✟3,457.00
Faith
Christian
mikeski52 said:
how much longer tho? I'm thinking genetics. like if the human genome contains 20-25000 genes, how long would it take for them to converge into current human form? Also remember it would take much longer in real life than it would in a simple computer program. This is also presupposing that the beginnings of the human ancestry started out with the same number of genes.

Well, you have to remember, evolution doesn't have a goal like this GA does. The only thing populations care about is survival. This GA doesn't model that behavior as well.

I have to go to orientation, but I can go into more depth about GA's and how to model something like evolution closer (one of my undergrad projects). If you want to learn more, just post your specific questions here or PM me.
 
Upvote 0
C

Code-Monkey

Guest
wagsbags said:
I just remembered that in intro programming we had to decode a scrambled message. Each letter stood for a different one and to solve it we used a function called "mutate" which randomly substituted one word for another, over and over. At each step it applied the substitution to the message and checked the dictionary for words. It did this until it eventually decoded the message.

So equating "finding more dictionary words" to "more likely to breed" many creationists will claim that this program created information and therefore would not work. Thoughts?

EDIT: I guess my question is really to creationists. How did this program work? The letters appeared random so there was no information but the program seemed to "create" information!! Or do you just think I'm lying and the program actually doesn't work?

Finally -- a question in my field.

I think this would be a poor analogy. First of all, the program isn't itself mutating, rather it's just systematically trying out all the possible combinations until it reaches a set of words that match words found in a dictionary. The program would be pretty basic. Do you want to know how the actual program works -- ie, what the code would look like? I'm not sure the question makes sense as you already described what the program does.

But a much better analogy would be if you had the Windows operating system. Now that's a fairly complex piece of software. Now imagine if Windows was setup to remotely install itself onto another computer (well, i'm not an admin, but I think they can do this already). Now if during that install a bug happens and some bit or byte of information changed, then that change may could be propagated down to all consecutive installs from the new machine.

So A is the starting machine.
A installs onto B and some byte mutation occurs
Since B is now modified, B may or may not install onto C.

But the analogy would be that Windows OS, through mutations like this, would eventually evolve where something like the Google Desktop Search was a new evolved feature.

This analogy seems a great deal better in that that mutation is more likely to cause problems than benefits. Some could just be lucky benefits... but there could also be some bugs that just persist for a long time until a new feature (google desktop search, tabs in browser, etc...) was realized.
 
Upvote 0

random_guy

Senior Veteran
Jan 30, 2005
2,528
148
✟3,457.00
Faith
Christian
Code-Monkey said:
Finally -- a question in my field.

I think this would be a poor analogy. First of all, the program isn't itself mutating, rather it's just systematically trying out all the possible combinations until it reaches a set of words that match words found in a dictionary. The program would be pretty basic. Do you want to know how the actual program works -- ie, what the code would look like? I'm not sure the question makes sense as you already described what the program does.

No, the program isn't mutating but the data stored is. The program is the equivalent of the enviroment, and the data is the equivalent of the DNA. The program (environment) chooses which data (life) is fit to live and pass on it's genes (again, the data).

GA's don't just brute force search the entire search space. If it did, it would be a useless algorithm. GA's can be viewed as a gradient search (hill climbing) with little jumps, kind of like simulated annealing.

But a much better analogy would be if you had the Windows operating system. Now that's a fairly complex piece of software. Now imagine if Windows was setup to remotely install itself onto another computer (well, i'm not an admin, but I think they can do this already). Now if during that install a bug happens and some bit or byte of information changed, then that change may could be propagated down to all consecutive installs from the new machine.

So A is the starting machine.
A installs onto B and some byte mutation occurs
Since B is now modified, B may or may not install onto C.

But the analogy would be that Windows OS, through mutations like this, would eventually evolve where something like the Google Desktop Search was a new evolved feature.

This analogy seems a great deal better in that that mutation is more likely to cause problems than benefits. Some could just be lucky benefits... but there could also be some bugs that just persist for a long time until a new feature (google desktop search, tabs in browser, etc...) was realized.

Have you heard of genetic programming? It's very similar to that. There is a set of operations, a fitness test, and a set of mutation functions. The "DNA" is the operations of the algorithm, and the mutation function (such has cross over, insert, delete) change the DNA. From this, your algorithm can change from adding a list of numbers to sorting the list of numbers.

It's a relatively new field, but it's pretty fun to read.
 
Upvote 0

mikeski52

Active Member
Jul 15, 2005
86
1
44
Maryland
Visit site
✟30,212.00
Faith
Christian
Marital Status
Single
Politics
US-Others
random_guy said:
No, the program isn't mutating but the data stored is. The program is the equivalent of the enviroment, and the data is the equivalent of the DNA. The program (environment) chooses which data (life) is fit to live and pass on it's genes (again, the data).

GA's don't just brute force search the entire search space. If it did, it would be a useless algorithm. GA's can be viewed as a gradient search (hill climbing) with little jumps, kind of like simulated annealing.



Have you heard of genetic programming? It's very similar to that. There is a set of operations, a fitness test, and a set of mutation functions. The "DNA" is the operations of the algorithm, and the mutation function (such has cross over, insert, delete) change the DNA. From this, your algorithm can change from adding a list of numbers to sorting the list of numbers.

It's a relatively new field, but it's pretty fun to read.
I don't really think any of these analogies are quite right. The slightest variation in a byte of a program file involved with Windows OS could completely crash the system, perhaps disastrously. Not that it doesn't get enough crashes the way it already is ;)
 
Upvote 0

random_guy

Senior Veteran
Jan 30, 2005
2,528
148
✟3,457.00
Faith
Christian
mikeski52 said:
I don't really think any of these analogies are quite right. The slightest variation in a byte of a program file involved with Windows OS could completely crash the system, perhaps disastrously. Not that it doesn't get enough crashes the way it already is ;)

That's because Windows OS is more like special creation than genetic programming. That's why a change in a code in the data will probably cause a bad data read or cause the program to crash.

Genetic programming are more like evolution. Changes to the data will change how the algorithm operates.

I guess the appropriate analogy is:

Windows XP::Special Creation
Genetic Program::Evolution
 
Upvote 0

futzman

Regular Member
Jul 26, 2005
527
18
71
✟771.00
Faith
Atheist
Politics
US-Libertarian
wagsbags said:
I just remembered that in intro programming we had to decode a scrambled message. Each letter stood for a different one and to solve it we used a function called "mutate" which randomly substituted one word for another, over and over. At each step it applied the substitution to the message and checked the dictionary for words. It did this until it eventually decoded the message.

So equating "finding more dictionary words" to "more likely to breed" many creationists will claim that this program created information and therefore would not work. Thoughts?

EDIT: I guess my question is really to creationists. How did this program work? The letters appeared random so there was no information but the program seemed to "create" information!! Or do you just think I'm lying and the program actually doesn't work?

The more general version of this type of programming is genetic programming, which is actually patented. You can find more information at John Koza's web site on this subject.

Genetic programming takes it one step further by using the fundamental constructs of computer programs, assembly them into "genes" (a program) then executing the program while comparing it to the desired solution. In a nutshell, genetic programming "evolves" a set of programs that can solve a program -- intelligence and information arises purely from a feedback system. Genetic programming is a great model to help understand how evolution works and provides strong evidence that a good design does not necessarily involve an intelligent designer. The programs produced by a genetic programming system arise from mutation, cross-over and feedback.

Futz (still wondering why those 4400 genera of Brachiopoda weren't worthy...)
 
Upvote 0

futzman

Regular Member
Jul 26, 2005
527
18
71
✟771.00
Faith
Atheist
Politics
US-Libertarian
random_guy said:
Have you heard of genetic programming? It's very similar to that. There is a set of operations, a fitness test, and a set of mutation functions. The "DNA" is the operations of the algorithm, and the mutation function (such has cross over, insert, delete) change the DNA. From this, your algorithm can change from adding a list of numbers to sorting the list of numbers.

It's a relatively new field, but it's pretty fun to read.

Genetic programming is one of my favorite subjects, because it illustrates rather powerfully how "intelligence" and complexity can arise from a simple feedback system that incorporates program building blocks and genetic processes. In my opinion genetic programming is an under-used powerful piece of evidence to dispel this silly notion that a complex design requires an intelligent designer.

Futz (still wondering about those brachiopods...)
 
Upvote 0