Dave Thomas posted Entry 2567 on September 1, 2006 12:49 AM.
Trackback URL: http://www.pandasthumb.org/cgi-bin/mt/mt-tb.fcgi/2562

As promised, hot off the presses, here is a little tutorial I’ve decided to call Genetic Algorithms for Uncommonly Dense Software Engineers. Given some of the bizarre commentary issuing from the ID community over at Uncommon Descent regarding my past posts on Genetic Algorithms, I’ve developed this guide to help the folks over there figure out if the Genetic Algorithms (GAs) they are working on employ a “fixed-target” approach (like Dawkins’s Weasel), or if they are instead un-targeted, like most GAs used in research and industry are.

dummies2.jpg

Background - the War of the Weasels
For those readers wondering what this is all about, here’s a quick road-map to the key battles in this summer’s “War of the Weasels.”

Target? TARGET? We don’t need no stinkin’ Target! (Dave Thomas, July 5th, 2006)
UDSE Response (scordova, July 9th, 2006)
UDSE Response (scordova, July 14th, 2006)

Take the Design Challenge! (Dave Thomas, August 14, 2006)
Tautologies and Theatrics (part 2): Dave Thomas’s Panda Food (scordova, Aug. 15th, 2006)

Calling ID’s Bluff, Calling ID’s Bluff (Dave Thomas, August 16th, 2006)
Dave Thomas says, “Cordova’s algorithm is remarkable” (scordova, August 17th, 2006)

Antievolution Objections to Evolutionary Computation (Wesley R. Elsberry, August 18th, 2006)

Design Challenge Results: “Evolution is Smarter than You Are” (Dave Thomas, August 21st, 2006)
Congratulations Dave Thomas! (davescot, August 22nd, 2006)
Can humans compute better than computers? Dave Thomas’s design challenge (scordova, August 22nd, 2006)

Chapter 1: Check That Random Seed
It may surprise some Uncommonly Dense Software Engineers (UDSEs) that the “random” numbers generated by compilers like C or C++ are not truly “random.” Rather, they are pseudo-random numbers, generated by an elaborate algorithm that uses a deterministic formula. These pseudo-random generators are usually initialized with the “seed,” a whole number that serves to start the deterministic formula off in a different place, leading to different “random” numbers.

If this seed is a constant, such as Zero (0), then the sequence of pseudo-random numbers will be exactly the same every time the program is run.

Of course, with this bad programming practice, there is no way the UDSE could determine if a given GA is targeted or not, because, even if it was not targeted, the result would always be the same.

Here is an example of this “no-no” in a supposed GA, scordova’s ga.c listing.

As another example, consider the use of a non-targeted algorithm, the Steiner GA, for a 5-node problem. Here, the seed for the random generator has been changed from something associated with the actual time of day to a constant, 0. As can be seen, the results of several generations (1000 here) always turn out the same. Everything turns out the same - the locations of every node, the connections between every pair of points, everything!

5n0Seed1.gif
5n0Seed2.gif

When the Seed is tied to time of day, however, the results of each trial of 1000 generations can be quite different, as shown in the following two trials.
5node1.gif
5node2.gif

Chapter 1 Summary: Change the Random Generator’s Seed Every Time.

Chapter 2: Is the Answer Always the Same?

If the random generator seed is properly initialized so that the sequence of “random” numbers is different every time, the next step is to run the GA several times, and see if the Answer comes out the same every time.

For example, if if the random seed in ga.c is changed, the result is always the same - the sum of the first 1000 integers is always computed as 500,500. Similarly, the result of running Dawkins “Weasel” algorithm is always the same phrase, “METHINKS IT IS LIKE A WEASEL.”

To illustrate what a real (un-targeted) GA looks like when it is switched over to look for a fixed Target, I added a special feature to my Steiner GA to calculate fitness in a different way from the usual method, where Fitness is simply the length of all segments of a particular candidate solution.

targetB.jpg

When the “Target” button is checked, the Fitness Test is changed from its normal length calculation to the number of “DNA differences” between candidates and a specific organism (represented as a String in the GA). I could have selected the actual Steiner Solution for the 5-point problem, but decided instead to make the “Target” a rather inelegant and overly long candidate far from the actual answer to the 5-point problem.

2874.jpg

Instead of selecting based on proximity to a target phrase like “METHINKS IT IS LIKE A WEASEL,” when the Steiner GA is run in Target Mode, it selects based on proximity to the string for the 2874-unit-long Kluge,
target = “04614580132412507588758509TFFTFTFFTFFTFFTFFFFTFFFFFTTFFFFTTFFF”; // the Kluge

In subsequent runs, the Target is obtained every time. Here are two such runs; the first is an exact match to the Target (Fitness = number of DNA differences = 0), and in the second, the algorithm didn’t run quite long enough to get a perfect match to the Target, leaving it with a Fitness of 1. It certainly will achieve the precise target given more generations, however.

target1.gif

target2.gif

In summary, when a Fixed Target is employed, the GA converges to that Target every time it is run. Not surprising, actually!

Chapter 3: Is it just that Computers are Faster?

In his August 22nd response, Salvador Cordova of UD wrote the following:

Dave Thomas wrote:

What is it going to be like having to go to Bill Dembksi and admit that you’ve learned the hard way of the true meaning of what Daniel Dennett terms Leslie Orgel’s Second Law: “Evolution is smarter than you are“?

Thomas has proven no such thing, neither Dennett nor Orgel. Computers can compute certain things faster than us, that is why they exist to help us. For Thomas to argue that evolution is smarter than humans because computers can compute faster than humans is a non-sequitur.

This appears to be the Final Retreat of Intelligent Design theorists. Recall that they originally said that GA’s work only because the Answer is fed into the GA via the Fitness Test. But, given a problem with no obvious answer, and one for which a Genetic Algorithm actually out-performed ID theorist Cordova, the fall-back position is “But Computers are FASTER than humans!”

Unfortunately, the Problem Space for the 6-point Steiner Grid is incredibly large. Using the basic points+segments data structure, there are billions upon billions of different possible solutions.

I set up my GA to also look at completely random solutions for a long time. When the normal GA runs, it can complete 1000 generations (one evolutionary simulation) in a couple of minutes. It works out to examining about 8000 individual solutions every second. On the overnight run leading to the Design Challenge, the Steiner GA found one actual solution after 8 hours (Simulation #150), and found the other (different handedness) solution just 39 minutes later (Simulation #162). In the 300 Simulations of the overnight run, the very worst result had a length of 1877, or about 18% longer than the actual Steiner solution’s length (1586.5 units).

badGA.gif

Compare that to simply running one mindless random solution after another, at 8000 solutions per second. Here is the best result obtained in 14 hours from over 400 million individual solutions. This has a length of 2502 units, almost 58% longer than the formal 6-point Steiner solution (1586.5 units).

RandSrch.gif

Of course, many of our human Intelligent Designers answering the Design Challenge got the formal Steiner solution in much less time than 14 hours. Just because a computer is “fast” doesn’t make it “smart.”

Genetic Algorithms don’t find useful and innovative solutions because they are “fast.” They do so because they are using the processes of selection, mutation and reproduction to solve problems, just as happens in Nature. And because the process is essentially unguided, it might not go down the wrong roads taken by human designers who have biases about what the solutions should look like. GA’s actually evolve new information in very reasonable times.

Sure, computers can perform faster than humans at some tasks. But even blinding speed is of little use when searches are random. It is evolution’s combining of random processes like mutation with deterministic processes like selection and reproduction that enable it to be “smarter than you are.”

RESOURCES

Make your own ‘Dummiez’ Book Covers!

Put your own words on Einstein’s Blackboard!

Put your own victims ‘On Notice’ Colbert-Style!

Commenters are responsible for the content of comments. The opinions expressed in articles, linked materials, and comments are not necessarily those of PandasThumb.org. See our full disclaimer.

Comment #124998

Posted by Marek 14 on September 1, 2006 4:02 AM (e)

Very nice! Is the Windows version of the program availaible?

Comment #125001

Posted by ah_mini on September 1, 2006 5:00 AM (e)

I’m wondering, when is a fixed target not a fixed target? I’ve worked on simple GA’s that are used to program FPGAs. The task was go generate a 0V signal on the input of a 1kHz square waveform and a 5V signal on the input of a 10kHz wave. A trivial task for a human to design, except we weren’t using any supporting RC circuitry or clocks, only power to the FPGA being used.

Obviously, the above phenotype was trivially simple enough to just dump into the fitness function. That would appear to be a fixed target then. However, at the same time, the solution was different every time. This isn’t surprising, as the GA effectively treated the FPGA as an analog device, thus producing a large collection of “solutions”.

I think the above is a good example of how even supposedly fixed target GA’s can produce differing results. Also, it’s interesting to note that the solutions our particular GA produced resembled in no way anything that a human would have come up with. It completely ignored all common concepts of circuit design to come up with often bizarre signal pathways, with some sections detacted from the main circuit through the chip entirely and working merely by apparent electromagnetic coupling.

Anyway, enough of my babble! I really enjoyed reading this series of articles!

Andrew

Comment #125006

Posted by Popper's ghost on September 1, 2006 5:22 AM (e)

Dave Thomas wrote:

What is it going to be like having to go to Bill Dembksi and admit that you’ve learned the hard way of the true meaning of what Daniel Dennett terms Leslie Orgel’s Second Law: “Evolution is smarter than you are“?

Thomas has proven no such thing, neither Dennett nor Orgel. Computers can compute certain things faster than us, that is why they exist to help us. For Thomas to argue that evolution is smarter than humans because computers can compute faster than humans is a non-sequitur.

Is Sal really this dim, or is he just dishonest? Nowhere did Dave Thomas “argue that evolution is smarter than humans because computers can compute faster than humans” – that’s as transparent a strawman as you can get. Talk about non-sequitur!

Even if Sal put huge delays into the program, and then set to work trying to find the solution and the MacGyvers and managed to find them before the program did, showing that he’s at least as smart as the GA, he would still be sunk because his position is that evolution can’t do this – “evolution is smarter than you are”, while true, is a red herring in regard to ID. Evolution doesn’t have to be smarter than we are, it just has to be smart enough to produce results.

But it really does no good to shoot down some IDer’s argument; they’ll just switch to another one, or simply deny that their argument was shot down. The only people who are swayed by these exercises are those who already know that the ID arguments are bogus. But hey, if it’s fun to write these programs and see how they perform, that’s enough reason to do so, I suppose.

Comment #125023

Posted by Joe Shelby on September 1, 2006 7:21 AM (e)

well, there is an instance where a fixed seed is (well, was) actually a good thing. late 70s/early 80s video games. timer chips were cheap (and essential to the early calculators), but true clock chips with memory were epensive back then so they couldn’t rely on that to generate a seed. instead, they experimented, picked the one that seemed the “fairest”, and went with it. home consoles didn’t have memory clocks either (e.g., Atari 2600) so those games also hard-coded their seed.

sometimes, the seed would be re-generated using user reactions (or even their score at various times), so if the user missed shooting something, it would generate different objects to shoot at from that point on (air sea battle). however, if the user did exactly the same thing, then the game would do the same thing in response.

Its the reason you could buy a book on “How to Win at Pac Man”. they analysed the patterns that repeated if the player was consistent with their actions.

some games like card game cartridges also randomized by looking at “how many milliseconds has the machine been turned on” to give more variety. a card game isn’t much fun if it deals the same deck every time. ;-)

Comment #125026

Posted by Wesley R. Elsberry on September 1, 2006 8:14 AM (e)

I’m wondering, when is a fixed target not a fixed target? I’ve worked on simple GA’s that are used to program FPGAs. The task was go generate a 0V signal on the input of a 1kHz square waveform and a 5V signal on the input of a 10kHz wave. A trivial task for a human to design, except we weren’t using any supporting RC circuitry or clocks, only power to the FPGA being used.

Obviously, the above phenotype was trivially simple enough to just dump into the fitness function. That would appear to be a fixed target then.

The task description puts constraints on candidate solutions. It isn’t information of the candidate solution. Thus, it isn’t a “fixed target” or “distant ideal target”. That your set of constraints doesn’t change (is not time-variant) doesn’t make it a fixed target in the sense being discussed here.

Comment #125061

Posted by David vun Kannon on September 1, 2006 10:03 AM (e)

I’m surprised this challenge project caused much of a stir in ID circles. I thought that most ID adherents would accept the idea of microevolution, which is what this sort of optimization problem is similar to. If so, I would expect the discourse to shift from “GAs need a fixed target to work.” towards “GAs only show that function optimization is a kind of microevolution, but can’t demonstrate features of the natural world such as speciation.”

I don’t think you can answer that objection with a discussion of niching in GAs. My understanding of niching is that it is more similar to a mixed strategy within a species in evolutionary terms.

Obviously, ALife environments such as Tierra demonstrate speciation via mutation when parasites appear, but I’m sure most IDers would not think that parasites are an uptick in complexity, and therefore can be ignored. If mutation is the only operator changing the genotype, speciation is going to be very slow, or not show the growth in complexity we see in nature, IMHO.

I don’t know of any EC studies that show speciation (no interbreeding based on phenotype differences). If anyone has a reference, please share it. Algorithms that compute genotype distances and only allow close genotype matches to mate are going to be open to the argument that the algorithm has “baked in” the speciation rather than showing that speciation is an emergent phenomenon of the run.

My intuition is that a good EC speciation demonstration will require a large number of generations (like nature) and/or demes whose connectivity changes over time (like nature) and/or co-evolution (the rest of the population is part of the fitness function, like nature).

BTW, my prediction is that after “GAs can’t evolve species.”, the next issue will be “GAs can’t evolve sex.” All GAs assume sexual reproduction is available as part of the suite of genetic operators - it doesn’t emerge. That’s baking in the answer because “male and female He created them.” If you use God’s tools, of course you’re going to get similar results. But can you make God’s tools?

Comment #125069

Posted by Corkscrew on September 1, 2006 11:11 AM (e)

All GAs assume sexual reproduction is available as part of the suite of genetic operators - it doesn’t emerge.

Actually, many GAs use asexual reproduction. This is not a problem - most of the time, sexual reproduction doesn’t perform massively better. The reason for this is that, whilst sexual reproduction increases variety, it destroys perfection just as quickly.

The main reason we humans have sexual reproduction isn’t because it’s better for evolution - it’s because it makes life harder for parasites, who have trouble specialising enough to attack one generation whilst generalising enough to attack the next. A good book for this stuff is “The Red Queen” by Matt Ridley.

Comment #125070

Posted by GuyeFaux on September 1, 2006 11:12 AM (e)

How about this?

Not sure if this counts. Different species arose, but one could argue that the original population did not qualify as a species.

Comment #125088

Posted by Wesley R. Elsberry on September 1, 2006 11:57 AM (e)

The general strategy of taking up issues in biology that aren’t the focus of evolutionary computation was addressed in my post here a bit earlier this month:

4. Natural selection might be capable of being simulated on computers, and the simulations may demonstrate good capacity for solving some problems in optimization, but the optimization problems are not as complex as those in actual biology.

This objection typically appears once the first three above have been disposed of. Computer simulation, once held to be either a potential indicator of merit or an actual falsifier of natural selection, is then treated as essentially irrelevant to natural selection. It is certainly true that computer simulations are less complex than biological problems, but the claim at issue is not that EC captures all the nuances of biology, but rather that EC gives a demonstration of the adaptive capabilities of natural selection as an algorithm.

Comment #125100

Posted by jeffw on September 1, 2006 12:33 PM (e)

All GAs assume sexual reproduction is available as part of the suite of genetic operators - it doesn’t emerge.

Actually, many GAs use asexual reproduction. This is not a problem - most of the time, sexual reproduction doesn’t perform massively better. The reason for this is that, whilst sexual reproduction increases variety, it destroys perfection just as quickly.

Depends on what you mean by “perform”. Sexual operators will cover much more of the overall solution space in a much shorter time, but won’t converge as nicely at the end like asexual hill-climbing. Sexual operators also have somewhat of a defense against the destruction of perfection - junk DNA. And in the real world, of course, convergence is of relatively minor interest anyway. Evolution does not have a goal.

Comment #125130

Posted by Dave Thomas on September 1, 2006 2:36 PM (e)

Wesley wrote:

The general strategy of taking up issues in biology that aren’t the focus of evolutionary computation was addressed in my post here a bit earlier this month:

Thanks for the reminder! I’ve added a link to that splendid tome in the “War of the Weasels” sidebar above.

Marek 14 wrote:

Very nice! Is the Windows version of the program available?

Pretty soon now. I had to tweak it a bit so the intense Random Searches could be safely interrupted by other Windows processes.

Dave

Comment #125136

Posted by Inoculated Mind on September 1, 2006 3:02 PM (e)

What was Salvador Cordova using if not A COMPUTER??? His excuse was too pitiful to even be laughable.

Comment #125141

Posted by bob on September 1, 2006 3:29 PM (e)

Andrew,

I read an article about your FPGA experiment. Interesting stuff. I believe the article said you were using an asynchronous FPGA, and so the design was very sensitive to temperature and power supply voltage. Did you ever get a synchronous version working?

Comment #125142

Posted by wamba on September 1, 2006 3:32 PM (e)

Is Sal really this dim, or is he just dishonest?

Yes.

Comment #125144

Posted by David B. Benson on September 1, 2006 3:37 PM (e)

Dave Thomas — Well done again!

Comment #125152

Posted by Alann on September 1, 2006 3:55 PM (e)

You forgot one of the major criteria, the same algorithm given a different problem will still find a solution.

The example might be clearer if simplify the problem by not using long strings. I started playing with my own model when I say the contest.

Define the environment as an arbitraty rectangle (say 0,0 to 500,500)
Selectors are defined a series of points (arbitrary or random)
Define a critter as a series points connected by line segments.

Fitness:
Subtract the total length of all line segments in the critter.
Subtract the distance from the each selector to the nearest point in the critter multiplied by constant (say 100 so distance is more important than length)

Mutation:
Addition: select a random point in the critter and add a line segment to a new random point within radius x (say 10)
Reduction: select a random point and remove it from the critter. Integrity must be maintained so new line segments are created between attached points. (ie. A-B-C becomes A-C or A-B-C and B-D becomes A-C and A-D and C-D, etc).
Alteration: A given point is moved to a new random location within radius x (say 3)

Selection:
Keep the best 3rd of all variations

Given enough generations this will approximate a solution.

Comment #125156

Posted by Dave Thomas on September 1, 2006 4:14 PM (e)

Alann wrote:

You forgot one of the major criteria, the same algorithm given a different problem will still find a solution.

Good point! I guess it was so obvious that I neglected to mention that. The first “Target” post, in July, dealt with four and five-point problems, while the August Design Challenge dealt with a six-point problem.

I got the idea for doing the Design Challenge by doing just as Alann suggested, trying out the GA engine on new, unsolved Steiner problems. When the solution for the new six-point problem turned up in the GA, I was so surprised with this rather complex and skewed result that I decided to issue the Design Challenge two days later.

Cheers, Dave

Comment #125180

Posted by ah_mini on September 1, 2006 5:33 PM (e)

bob wrote:

Andrew,

I read an article about your FPGA experiment. Interesting stuff. I believe the article said you were using an asynchronous FPGA, and so the design was very sensitive to temperature and power supply voltage. Did you ever get a synchronous version working?

The article you read was most likely by Adrian Thompson, who originally ran the experiment in 1996 I believe. There is an extended abstract here. As a poxy undergraduate at a different university a couple of years after this original study was done, we merely re-ran the experiment as a tuition aid into GA’s and their potential application to novel circuit design.

So, as to the synchronous models, I can’t answer that one as I have long departed the GA and electronics scene and never contributed anything useful to this field when I was studying it as a uni course. Even so, the original asynchronous FPGA example still strikes me as an extremely intruiging piece of research. The problems of robustness and practicality are simply issues with the fact that a large part of the fitness environment was not controlled. Whilst this may restrict the applicability of solutions developed in this manner, it doesn’t stop the results being extremely interesting. The sheer weirdness of the resulting circuits, totally unlike anything that humans design, strikes me as a compelling likeness to the biological features we see evolution producing.

Andrew

Comment #125198

Posted by Corkscrew on September 1, 2006 5:57 PM (e)

Andrew: thanks, I’ve been looking for that for a while. Had found Adrian Thompson’s site, but couldn’t locate that particular demonstration.

Comment #125253

Posted by ttw on September 1, 2006 8:43 PM (e)

But, given a problem with no obvious answer, and one for which a Genetic Algorithm actually out-performed ID theorist Cordova, the fall-back position is “But Computers are FASTER than humans!”

Which would seem to be the point to using them.

Comment #125258

Posted by Popper's ghost on September 1, 2006 9:11 PM (e)

But, given a problem with no obvious answer, and one for which a Genetic Algorithm actually out-performed ID theorist Cordova, the fall-back position is “But Computers are FASTER than humans!”

Which would seem to be the point to using them.

Accuracy, precision, consistency, persistence of memory, and automation are obvious other reasons to use computers, just off the top of my head.

Comment #125305

Posted by Ken Shaw on September 2, 2006 1:33 AM (e)

As a professional software developer I would just like to say how astounded I am that anyone claiming to know anything about software dvelopment would use a hard coded constant in a call to srand(). This indicates a basic lack of knowledge of both C and RNG’s.

Furthermore is Cordova claiming this program works? It is riddled with significant errors and most certainly will not compile.

Comment #125308

Posted by Popper's ghost on September 2, 2006 1:50 AM (e)

As a professional software developer I would just like to say how astounded I am that anyone claiming to know anything about software dvelopment would use a hard coded constant in a call to srand(). This indicates a basic lack of knowledge of both C and RNG’s.

I’ve been writing software for over 40 years, C for about 30, and I have often used a hard coded constant in a call to srand() – when I need reproducibility (you can omit the call to srand() altogether in that case, but I prefer to make it explicit, and I still have habits from before such things were specified in the standard – before there was a standard, in fact).

Of course, it does not follow that Cordova has basic knowledge of C or RNG’s.

Comment #125382

Posted by Les Lane on September 2, 2006 8:12 AM (e)

Let me suggest than you replace “uncommonly” with “inordinately” so as to create a more fitting acronym.

Comment #125397

Posted by Todd on September 2, 2006 10:56 AM (e)

“Uncommonly Dense” refers to “Uncommon Descent”, Demski’s blog where much of this insanity occurs. “Uncommon Dissent” also works, both in how science looks at ID and how the blog is administrated.

Comment #125425

Posted by GuyeFaux on September 2, 2006 2:15 PM (e)

These rules are hardly formal and I don’t think they accomplish their stated goal:

I’ve developed this guide to help the folks over there figure out if the Genetic Algorithms (GAs) they are working on employ a “fixed-target” approach (like Dawkins’s Weasel), or if they are instead un-targeted, like most GAs used in research and industry are.

The rules might work for dummies, and they’re good rules of Thumb (I made a funny), but they’re not sufficient to eliminate/identify a fixed target in the fitness function.

1) Check That Random Seed

Has nothing to do with whether the target is fixed or not. It simply makes the algorithm deterministic and hence reproducible. If you do insist on using the time or whatever for the random number seed, you should store the seeds for the sake of reproducibility. It doesn’t apply here, but what if you ran the GA for over a month, published your findings, and some guy comes along who doesn’t believe you? You will not be able to reproduce your experiment exactly, unless you remember what seeds you used. (I could imagine this being particularly painful if the GA invented something really novel and we wanted to see how it got there)

2) Is the Answer Always the Same?

Unless this can be formally proven a priori (as Dave Thomas has, in the case of Cordova’s program), it’s begging the question. It’s a good hint if in 10 runs the answer is always the same, but this is not strictly proof that the search is targeted. Cf. the Halting Problem; maybe something different will happen on the tenth run.

Furthermore, (and this is really problematic for the counterarguments against ID) if the answers are different, it’s insufficient to conclude that the search is not targeted. Once again, we might not have run the program through enough generations. Who knows, maybe after a while all the McGuyver’s converge to one of the optima after 10 years on the PC?

Secondly, how did you tell that a solution was reached? Did you wait a pre-specified number of generations, or did you employ some sort of stasis criteria? Either way, it may simply be that the algorithm fails to find the target that it was searching for. How can you tell, for instance, that the McGuyver’s weren’t “striving” (whatever that means) towards the optima, and simply the mechanism of RM+NS fails to get us there?

3) Is it just that Computers are Faster?

Good idea to include the Tornado in a Junkyard as a baseline, and speaks to Cordova’s innane retreat. But it has nothing to do with whether GAs are targeted or not.

(I hate to play devil’s advocate here. I think this experiment has been wonderful and to me has aptly demonstrated that so called IC systems can evolve. However, I’m really curious about this problem in general.)

Comment #125428

Posted by GuyeFaux on September 2, 2006 2:34 PM (e)

To put it more simply, how can one tell that a fitness function f:C->[0-1], where C is the space of all critters, is targeted or encodes the solution? My guess is that in general one cannot, but also that it doesn’t matter.

Comment #125439

Posted by Ken Shaw on September 2, 2006 3:06 PM (e)

I’ve been writing software for over 40 years, C for about 30, and I have often used a hard coded constant in a call to srand() – when I need reproducibility (you can omit the call to srand() altogether in that case, but I prefer to make it explicit, and I still have habits from before such things were specified in the standard – before there was a standard, in fact).

Of course, it does not follow that Cordova has basic knowledge of C or RNG’s.

30 years? Since 1976? Since 2 years before K&R was published? So when did you leave Bell?

Yes, there can be reasons to hard code a constant into a call to srand() but none of them apply in this case. For those who say the seeds should be maintained to allow reproducibility that’s fine but it still shouldn’t be hard coded. Saved to a file or printed out is far better than actually putting it in the code.

Comment #125456

Posted by Dave Thomas on September 2, 2006 3:53 PM (e)

GuyeFaux wrote:

To put it more simply, how can one tell that a fitness function f:C->[0-1], where C is the space of all critters, is targeted or encodes the solution? My guess is that in general one cannot, but also that it doesn’t matter.

An excellent question, and one that could be addressed in the Advanced version of Genetic Algorithms for Uncommonly Dense Software Engineers. The present tome was meant as a very general and light intorduction to the field, especially for those who claim ALL GAs require specification of a precise “Target.”

Dave

Comment #125472

Posted by GuyeFaux on September 2, 2006 4:35 PM (e)

…claim that ALL GAs require specification of a precise “Target.” [emphasis in original]

Having reflected upon this further, I don’t even know what the claim means. Particularly the claim that the fitness function must specify a “Target”. Does it mean that there is one and only one optimum in the fitness space?

Comment #125483

Posted by Dave Thomas on September 2, 2006 6:16 PM (e)

GuyeFaux wrote:

Having reflected upon this further, I don’t even know what the claim means. Particularly the claim that the fitness function must specify a “Target”. Does it mean that there is one and only one optimum in the fitness space?

Here’s one incarnation of the claim “ALL GAs require specification of a precise ‘Target’,” from William Dembski:

Dembski wrote:

And nevertheless, it remains the case that no genetic algorithm or evolutionary computation has designed a complex, multipart, functionally integrated, irreducibly complex system without stacking the deck by incorporating the very solution that was supposed to be attained from scratch (Dawkins 1986 and Schneider 2000 are among the worst offenders here).

Here’s another, from Stephen Meyer’s “peer-reviewed ID paper,” “The Origin of Biological Information and the Higher Taxonomic Categories”:

Meyer wrote:

Nevertheless, as shown elsewhere (Meyer 1998:127-128, 2003:247-248), these [genetic algorithm] programs only succeed by the illicit expedient of providing the computer with a “target sequence” and then treating relatively greater proximity to future function (i.e., the target sequence), not actual present function, as a selection criterion.

That’s what I meant by “IDers/creationists claim that ALL GAs require specification of a precise “Target.” Sarite? - Dave

Comment #125487

Posted by Dave Thomas on September 2, 2006 6:28 PM (e)

It occurred to me that I should mention that the basic idea of the Design Challenge was originally suggested by Marek 14, who wrote way back on July 7th

Comment #110272 Posted by Marek 14 on July 6, 2006 02:27 AM

A suggestion: how about running the simulation again, this time with a more complex set of points where Steiner solution is neither as symmetrical, neither actually known in advance? In that case, front-loading the solution is not just a silly idea - it’s actually impossible.

Great idea!
Thanks, Dave

Comment #125497

Posted by GuyeFaux on September 2, 2006 7:10 PM (e)

Thanks, Dave. Unforunately this confused me a bit more.

Dembski’s quote doesn’t really mean anything, since he doesn’t specifiy what “specify” means to him.

The other quote is better:

…treating relatively greater proximity to future function (i.e., the target sequence), not actual present function, as a selection criterion.

I think he’s saying that a fitness function which values phenotypic closeness to the optimum can be considered “targeted”. That is, a function f:C->[0,1] is targeted if and only if f© increases when c gets closer to c_o, the optimum. But that’s tautologically equivalent to saying that f is continuous and has exactly one optimum. So your experiment is a nice refutation, having multiple optima (McGuyvers) and lots of continuity breaks.

Complaining about “targeted” fitness functions “encoding” the solution(s) is tantamount to fussing about a tautology: what a surprise that the “target” of the algorithm is the optimum of the fitness function.

Comment #125506

Posted by Don Baccus on September 2, 2006 7:30 PM (e)

30 years? Since 1976? Since 2 years before K&R was published? So when did you leave Bell?

Uh, I have a listing of Unix printed out on our PDP-11 in 1974. Written in C.

Bell labs made Unix for the PDP-11 available in source form to non-profits (in my case, a science museum) for the cost of reproduction, essentially. $200 (came on a couple of RK05s).

K&R was published largely due to the interest in C and Unix in (mostly) the university environment. In other words, after C/Unix had been out for a couple of years.

Comment #125518

Posted by Popper's ghost on September 2, 2006 8:29 PM (e)

30 years? Since 1976? Since 2 years before K&R was published?

Unix V6 was released in 1975, and that wasn’t the first public exposure of C. The old V6 C compiler allowed pointers and integers to be used interchangably without warnings, had no enums, used “=*” instead of “*=”, etc. K&R documented the version of C first released with the Programmer’s Workbench (PWB) and later with Unix V7.

So when did you leave Bell?

Bad inference; I never worked at Bell. My first hands-on experience with C was with a company called Operating Systems, Inc. “about 30 years ago”; let me check my files … according to an old resume, I worked there from 1977-1979; that could have been as much as 29.75 years ago.

Yes, there can be reasons to hard code a constant into a call to srand()

How nice that we agree, despite your categorical statement to the contrary: “astounded I am that anyone claiming to know anything about software dvelopment would use a hard coded constant in a call to srand()”.

but none of them apply in this case

I never said otherwise. However, when testing changes to algorithms, it’s wise to keep everything else fixed, especially the pseudo-random number sequence, so there is some applicability here. Often one finds code along the lines of srand(testing? 1 : random_seed());

Comment #125519

Posted by Popper's ghost on September 2, 2006 8:35 PM (e)

As long as we’re being precise, the quote is “C for about 30”, rather than “about 30 years”. Of course, since I haven’t used C each waking moment of those 30 years, one could argue … if one were being a …

Comment #125527

Posted by Popper's ghost on September 2, 2006 8:57 PM (e)

The old V6 C compiler allowed pointers and integers to be used interchangably without warnings

Which, BTW, resulted in many bugs that were eliminated when V7 C (and lint) came along. Another “fun” feature of pre-V7 C was that all struct member names shared the same name space, rather than being specific to the struct, which is why they were almost always given foo_ prefixes. It’s interesting that this practice is still in wide use (often in a degenerate “m_” form in C++) and is often accompanied by creative rationalizations from people with no knowledge of its origin. And the fact that only one or two letters were used in those prefixes, as well as the short cryptic names often found in C code, was largely a consequence of the fact that only the first 7 characters of names were significant to the compiler (the linker recognized 8, but the compiler prefixed all C names with ‘_’).

I suppose one could even draw a loose parallel between historical memetic artifacts and historical genetic artifacts.

Comment #125544

Posted by Torbjörn Larsson on September 2, 2006 10:22 PM (e)

“You will not be able to reproduce your experiment exactly, unless you remember what seeds you used…. Unless this can be formally proven a priori (as Dave Thomas has, in the case of Cordova’s program), it’s begging the question. It’s a good hint if in 10 runs the answer is always the same, but this is not strictly proof that the search is targeted. Cf. the Halting Problem; maybe something different will happen on the tenth run. Furthermore, (and this is really problematic for the counterarguments against ID) if the answers are different, it’s insufficient to conclude that the search is not targeted…. Secondly, how did you tell that a solution was reached?”

I doubt this is a serious pitfall. When we do experiments elsewhere we allow for some uncertainty. The main point must be that according to a reasonable measure, the search will end up close to a solution in enough number of cases.

Comment #125557

Posted by Stuart Weinstein on September 2, 2006 11:13 PM (e)

“Very nice! Is the Windows version of the program availaible?”

Windows?

Is there a Turing test for operating systems?

Comment #125560

Posted by RBH on September 2, 2006 11:40 PM (e)

GuyeFaux wrote

I think he’s saying that a fitness function which values phenotypic closeness to the optimum can be considered “targeted”. That is, a function f:C->[0,1] is targeted if and only if f© increases when c gets closer to c_o, the optimum. But that’s tautologically equivalent to saying that f is continuous and has exactly one optimum. So your experiment is a nice refutation, having multiple optima (McGuyvers) and lots of continuity breaks.

In every argument about this I’ve had with IDists over the last four years, “a fitness function which values phenotypic closeness to the optimum” is exactly what the IDists have meant by “targeted”, and they claim that’s characteristic of all GAs. And if some function of the distance to the (distant) optimum isn’t explicitly measured as fitness, they argue that it’s “smuggled in” by jiggering the fitness landscape, as for example in Avida where one has experimental control of the topography of the landscape. As I’ve argued repeatedly, if we knew the that much about the landscapes my company’s GAs evolve on, we wouldn’t bother to use a GA: we’d just write down the damned optimum phenotype and be done with it.

The IDists slither out of that by saying something like, “Well, you have to write a fitness function (the equation that calculates the fitness of individuals), and that smuggles in the necessary information.” But that’s vacuous, since knowing how to calculate whether one individual is fitter than another provides no more information about the topography of a fitness landscape than is available to biological populations, namely information about the shape of the volume of the landscape that is immediately occupied by the population. Like biological evolution, evolution in our GAs depends only on local differences in fitness within the current population, not on some measure of where a distant target might be.

RBH

Comment #125586

Posted by Marek 14 on September 3, 2006 2:17 AM (e)

Dave Thomas wrote:

It occurred to me that I should mention that the basic idea of the Design Challenge was originally suggested by Marek 14, who wrote way back on July 7th

Comment #110272 Posted by Marek 14 on July 6, 2006 02:27 AM

A suggestion: how about running the simulation again, this time with a more complex set of points where Steiner solution is neither as symmetrical, neither actually known in advance? In that case, front-loading the solution is not just a silly idea - it’s actually impossible.

Great idea!
Thanks, Dave

Thanks! Of course, Steiner solution still exists and some people found it, so they not only got the best solutions, but were also able to prove it.

Thus, my next suggestion: how about adding some “forbidden zones”, i.e. places no edge of the solution can cross? For one thing, this would disqualify the Steiner solution altogether; for other, the problem would become more complex - perhaps complex enough that noone would come with as good solution as genetic algorithm?

A question, BTW: Did you get ANY suggestions how to improve the program (no matter if helpful or not) from ID proponents? I.e. if they don’t think your program is good enough, did they offer anything, no matter how misguided, they thought would make it “better”?

Comment #125628

Posted by GuyeFaux on September 3, 2006 8:05 AM (e)

I doubt this is a serious pitfall. When we do experiments elsewhere we allow for some uncertainty. The main point must be that according to a reasonable measure, the search will end up close to a solution in enough number of cases.

You’re right, in light of the tautoligies expressed by Dembski et al (quoted by Dave Thomas) telling us what “targeted” means: valuing “proximity to the optimum” as opposed to “valuing the current function.”

However, they should’ve come up with a better definition of “targeted”; something about how the fitness function is expressed. Seems to me like the IDers don’t want to treat the fitness function as a black box, since they keep insisting that the programmer “smuggles in” information. The only way this is plausible is in the description (C code, logical languaeg, whatever the programmer uses to interact with the computer) of the fitness function. (Obviously, this whole notion of “sneaking-in” is ludicrous. See RBH’s comments.) Therefore, the “targeted” label ought to be applicable only a priori to the fitness function, by examination of its description.

This is why I found the detection methods unsatisfactory; I assumed the ID-ists definition of “targeted” was plausible. Silly me. Were they to use a definition of “targeted” along my lines of reasoning, they would have an easier time defending their position. I suspect that any definition of “targeted” which requires an examination of the source code to be either unsolvable or intractable. In which case they would always have an excuse to delay the “targeted fitness function” verdict until after the experiment is done.

Comment #125640

Posted by Tom English on September 3, 2006 8:56 AM (e)

RBH, ol’ pal,

Long time, no see. Hope you are doing well.

As I’ve argued repeatedly, if we knew the that much about the landscapes my company’s GAs evolve on, we wouldn’t bother to use a GA: we’d just write down the damned optimum phenotype and be done with it.

You’ve reminded me that John Holland, the (re)inventor of GA’s, came up with the Royal Road problem as something crossover would handle well. To his great surprise, it turned out that hill-climbing gave better performance.

Yup. Forget everything Herb Simon said about Sciences of the Artificial. Even if your program has complex, nonlinear dynamics, it is your Creation, and you are its omniscient Lord and Master – provided you dress as a pirate. Ramen.

… knowing how to calculate whether one individual is fitter than another provides no more information about the topography of a fitness landscape than is available to biological populations, namely information about the shape of the volume of the landscape that is immediately occupied by the population.

I have been thinking that instead of evaluating individuals one-by-one, we should pass the entire population to a procedure that assigns relative, not absolute, fitness values to individuals. This might make things more clear for the IC (Irremediably Concrete).

Comment #125700

Posted by Corkscrew on September 3, 2006 2:06 PM (e)

I’ve been meaning to relearn C/C++ for a while now. I also have an interesting idea for making the evolutionary algorithm even less “targeted”. A match made in programmer heaven!

When I have a moment, therefore, I will be rigging the GA to work via the expedient of a very simple predator/prey system, whereby the prey seek out food sources (nodes) whilst being “eaten” by carnivores - lines that’ll be randomly dropped on the surface. That will mean that the fitness function is implicit, rather than explicit, which will more closely mirror meatspace evolution.

I predict that this system will also be able to locate both solutions and MacGuyvers, thus demonstrating once again that even the least explicit fitness function can generate high-CSI results - as long as one chooses one’s specification so that it matches the fitness criteria.

Comment #125709

Posted by David B. Benson on September 3, 2006 2:39 PM (e)

Extending Marek 14’s suggestion of forbidden zones, why not assign a cost to each point of the space, so that forbidden zones have infinite cost, but more generally, some parts are more expensive than others?

Comment #125711

Posted by GuyeFaux on September 3, 2006 2:52 PM (e)

…but more generally, some parts are more expensive than others?

This is equivalent to saying that the surface on which the points lie is not Euclidean; it’s like the surface of a trampouline with some depressions. Problem with this is that it’s kind of annoying to figure out what a “straight line” connecting two points is. More annoyingly, figuring out the length of a line segment in distorted space is a bit time consuming. (I am only guessing that it’s annoying; I’m not familiar with non-Euclidian spaces)

Comment #125712

Posted by David B. Benson on September 3, 2006 2:56 PM (e)

GuyeFaux — Not my plan. Straight lines are still straight lines. But rather than the cost being the Euclidean distance, the cost is the sum of the weights along the line.

Comment #125713

Posted by BWE on September 3, 2006 3:00 PM (e)

Ok,
I’ve finally finished the whole darn set of posts, counter-posts and comments. Not being an engineer seems to really hamper my ability to process. (My schooling taught me to be a heck of a stamp collector though. And, unfortunately I haven’t put any of that resource into putting the phylogenetic tree in the proper order so I have turned out pretty useles for a lot of things)

WHat I am left with is a basic question. Are we basically talking about the math behind a generic emergent system? You are talking about fitness functions and so forth and UD claims those are the result of a designer. No? But that is not even close to the case if I read this correctly. A fitness function is simply the outcome that you would expect given the parameters of what is. No? For example: a slime mold tracks pheremones. The little single cell guy operates on a few simple rules. He emits pheremone x when he encounters situation y and reacts in z fashion when he encounters pheremone x. With a potential pheremone outut of 6 or 8 different pheremones, his options are statistically limited. Eventually he will agglomerate given the correct stimuli. Or not, given different stimuli.

You could most likely write a software program that could replicate this exactly. (I thought that this is basically what SIM City does). And the Intelligent agent would be putting in “fitness functions” that were simply the range of triggers in the environment. Not that they invented them so much as they recognized them. The fitness function then, doesn’t it merely describe what the environment is? The emergent behavior, like a Mandelbrot set, would emerge due to it’s natural constraints. The intelligent designer (software guy) is merely replicating what is not what they would like to see. Am I way off?

Comment #125715

Posted by GuyeFaux on September 3, 2006 3:09 PM (e)

Straight lines are still straight lines. But rather than the cost being the Euclidean distance, the cost is the sum of the weights along the line.

Ok, so a straight line is not the lowest cost segment between two points? That raises an interesting problem/possibility. I suspect that the GA would reduce the cost of lines by adding intermediate points. The resulting line segments would be “straight” by my definition, implicitly solving the computational issue I raised before:

Problem with this is that it’s kind of annoying to figure out what a “straight line” connecting two points is. More annoyingly, figuring out the length of a line segment in distorted space is a bit time consuming.

Comment #125718

Posted by David B. Benson on September 3, 2006 3:19 PM (e)

GuyeFaux — Precisely. One could even make it more exotic by making each intermediate joining point cost something to build…

BWE — No, you are way on! A slight change is that the fitness function describes how adapted the individual is to the environment.

Comment #125719

Posted by GuyeFaux on September 3, 2006 3:33 PM (e)

BWE, I’ve got no idea what you just said.

To clarify, a fitness function is a proxy for the environment. That is, it determines which critter gets to reproduce. Given a fitness function f and two critters X and Y,
f(X) > f(Y)
means that the GA will make sure that X has more children than Y.

In meat-space, the fitness function is the environment; it’s the thing that selects one critter over the other. It reflects the preferential survival/reproduction capabilities of critters.

(Actually, in nature critters aren’t preferentially selected; genes are. But the critter is a decent proxy for it’s genes.)

Comment #125720

Posted by BWE on September 3, 2006 3:33 PM (e)

Like whether the emergent behavior would not emerge because the environment wouldn’t support it? So you have some of the variables stop certain outcomes? Is that even a variable or simply a formula that says If (emergent behavior)=(something that doesn’t work) then goto line 10?

Where (something that doesn’t work) is a set of parameters describe the physical world?

Comment #125722

Posted by BWE on September 3, 2006 3:39 PM (e)

Posted by GuyeFaux on September 3, 2006 03:33 PM (e)

BWE, I’ve got no idea what you just said.

To clarify, a fitness function is a proxy for the environment. That is, it determines which critter gets to reproduce. Given a fitness function f and two critters X and Y,
f(X) > f(Y)
means that the GA will make sure that X has more children than Y.

In meat-space, the fitness function is the environment; it’s the thing that selects one critter over the other. It reflects the preferential survival/reproduction capabilities of critters.

(Actually, in nature critters aren’t preferentially selected; genes are. But the critter is a decent proxy for it’s genes.)

WHere the emergent behavior is speciation. So it’s more complicated than whether a slime mold will fruit but my question is: isn’t the intelligent agent simply adding parameters that already exist? I mean, they aren’t making them up from what they “want” it to look like. Right? So your fitness function is essentially determined by the parameters of the niche or environment.

Comment #125727

Posted by Popper's ghost on September 3, 2006 4:04 PM (e)

GuyeFaux — Not my plan. Straight lines are still straight lines. But rather than the cost being the Euclidean distance, the cost is the sum of the weights along the line.

A straight line is generally defined as the shortest distance between two points. In your scheme though, what is wanted isn’t the shortest distance, but rather the least costly path; the “cost space” is (generally) non-Euclidean, and the problem of finding the least costly path, as opposed to the shortest line, is NP-complete. But, the Steiner tree problem is already NP-complete; your complication indeed does not increase the computational complexity, as the cost of a path is determined linearly, as you note. But it makes it virtually impossible for a human (especially of the UD variety) to solve, no matter how fast they are relative to the computer, because of the bookkeeping involved.

Comment #125728

Posted by GuyeFaux on September 3, 2006 4:07 PM (e)

Where the emergent behavior is speciation.

Actually, I don’t know if this experiment counts as a demonstration of speciation. Critters changed to suit their environments, but it’s not clear to me if we could identify a species from which two species arose. Someone correct me here.

I mean, they aren’t making them up from what they “want” it to look like.

Who are “they”, what are “them”?

Right? So your fitness function is essentially determined by the parameters of the niche or environment.

Right. Like I said, fitness functions serve as proxies for the environment. They serve the same purpose, to determine whcih critter has more babies, which in turn determines which genes increase their frequency in the gene pool.

Comment #125734

Posted by GuyeFaux on September 3, 2006 4:29 PM (e)

Adding even the most trivial bumps to the surface makes the optimal solution stupidly hard to compute by hand. However, the fitness function need not suffer too much computationally.

So I like David B.B.’s idea.

I thought that the same type of challange could be issued with the traveling salesperson problem as well: “Here’s a matrix of distances, what’s the shortest circuit?” But unfortunately there are many known algorithms out there to solve the problem, so Sal et al could use them to “look in the back of the book”, as he’s done for this problem. But adding a small novelty would take care of that issue…

Comment #125736

Posted by Popper's ghost on September 3, 2006 4:38 PM (e)

The fitness function then, doesn’t it merely describe what the environment is?

The fitness function for a gene maps the number of instances of the gene in a population to the number of instances of that gene in the succeeding population. That function must, of course, capture everything in the environment relevant to such reproduction. It doesn’t exactly describe the environment; rather, it describes a relationship between the environment and the gene: it describes how the environment affects the gene in regard to its reproduction. Of course, every gene in an organism is part of the environment of every other gene, so these fitness functions are mutually referential (but some genes play a much bigger role in reproductive success than others).

A biological fitness function expressed in symbolic form (as opposed to being implicit in the physical relationships of the real world)
would clearly be immensely complex, and it would also shift from generation to generation as the environment changes; the “target” of this fitness function would be totally inscrutable; knowledge of the function would not at all imply knowledge of the target. Notably, those UD folks over at UD have great difficulty grasping the implications of anything ImC, and so they resort to cutting the Gordian knot with the Sword of Goddidit.

Comment #125741

Posted by David B. Benson on September 3, 2006 4:43 PM (e)

Popper’s ghost & GuyeFoxx — Right on. This essentially eliminates any attempt to use symmetries to arrive at even local minima. So one is reduced to brute force, which GAs are good at, along with other satisficing algorithms such as ‘computational swarm intelligence’ and ‘simulated annealing’.

Comment #125742

Posted by Popper's ghost on September 3, 2006 4:47 PM (e)

Actually, I don’t know if this experiment counts as a demonstration of speciation. Critters changed to suit their environments, but it’s not clear to me if we could identify a species from which two species arose. Someone correct me here.

The demarcation of species in the absence of sexual reproduction seems to be entirely arbitrary.

Comment #125787

Posted by GuyeFaux on September 3, 2006 9:01 PM (e)

The demarcation of species in the absence of sexual reproduction seems to be entirely arbitrary.

The reproduction in this particular GA is sexual, I believe. From the original TARGET thread:

During the process, occasional mutations, and sex (via crossovers) are employed in every generation.

In addition, elitism is employed.

But I still don’t know if speciation occured; I’d need proof.

Comment #125805

Posted by Michael J on September 3, 2006 10:08 PM (e)

I wrote some GA code to optimize natural gas flows around 6 years ago. I used sexual reproduction and the occasional run developed into more than one species. That is more than one optimal solution appeared simultaneously in the population. When there was mating across the species the poor child was sub-optimal and usually didn’t survive selection.

However, the situation was not permanent as the species that was slightly more optimal eventually crowded out the second species.

I enjoyed writing the GA code but my managers didn’t like the fact that the answer always came out slightly different on each run.

Michael

Comment #125826

Posted by Wesley R. Elsberry on September 3, 2006 11:12 PM (e)

I have been thinking that instead of evaluating individuals one-by-one, we should pass the entire population to a procedure that assigns relative, not absolute, fitness values to individuals. This might make things more clear for the IC (Irremediably Concrete).

Makes sense to me. From talk.origins back in 1999:

JP>Your fitness function doesn’t determine survival by ranking
JP>closenessof fit to the goal (shortest path length)?

That’s right, it does not. Outside of pedagogic exercises like WEASEL, the fitness function does not have the information of what the correct solution is (which would be a distant ideal target), or what the minimum closed path length is (which is the metric which would be found when applied to a distant ideal target). What the fitness function does is provide a metric by which the *current* candidates can be ranked.

Comment #125915

Posted by KimB on September 4, 2006 9:36 AM (e)

I’ve read this series with ever increasing interest.
I’m really fascinated by the Macgyvers (great name btw).
Not quite perfect, but good enough to survive in the given environment….which is nice.

Comment #125918

Posted by Roger Rabbitt on September 4, 2006 10:17 AM (e)

GuyeFaux says:

You’re right, in light of the tautoligies expressed by Dembski et al (quoted by Dave Thomas) telling us what “targeted” means: valuing “proximity to the optimum” as opposed to “valuing the current function.”

However, they should’ve come up with a better definition of “targeted”; something about how the fitness function is expressed. Seems to me like the IDers don’t want to treat the fitness function as a black box, since they keep insisting that the programmer “smuggles in” information.

Actually, I think it is Dave who doesn’t want a black box fitness function. I’d be happy to supply him with one, but he is smart enough to know, and indeed experimented with a couple of alternatives, that reaching results consistent with his stated purposes, requires careful selection of the fitness function. “Valuing the current function” is closely aligned with “proximity to the optimum”.

Comment #125924

Posted by k.e. on September 4, 2006 11:18 AM (e)

Why is Dembski worried about a machine producing a result that is analogous to the “set theoretic compliment of chance and regularity” …..in other words a freak accident of interacting natural forces and, or matter.

Would that make his arguments seem like Dawkins is correct?

WAD here is a new book title for you.

“The Selfish Algorithm”…..has a nice ring don’t you think?

Of course it’s not too original…and it might make you look as if you are selling out…..but hey…. you could call it “The Co-operative Design Algorithm”

…ah typed out on god’s trusty old “Imperial Typewriter” and flicked off to the great halls of angels where it was mimeographed using freshly plucked quills and then sent the great smoking DNA factories in the skies before shipping to each corner of the universe by cosmic vacuum gravity pumps.

Just an idea.

Comment #125945

Posted by GuyeFaux on September 4, 2006 2:09 PM (e)

I’d be happy to supply him with one…

Can you suggest something? I’m curious what you think an “information-free” fitness function is.

Comment #125946

Posted by Andrew McClure on September 4, 2006 2:12 PM (e)

Actually, I think it is Dave who doesn’t want a black box fitness function. I’d be happy to supply him with one, but he is smart enough to know, and indeed experimented with a couple of alternatives, that reaching results consistent with his stated purposes, requires careful selection of the fitness function. “Valuing the current function” is closely aligned with “proximity to the optimum”.

Well, yes, because the fitness function is just a restatement of the problem. If you substituted a different fitness function, you’d be solving a different problem.

I don’t think Dave really cares about Steiner solutions in specfic, though. Dave’s “stated purposes” with these articles are to demonstrate that his genetic algorithm can find the optimum for some fitness function. The fitness function describing the Steiner problem is just incidentally the one he picked. If you gave him a different fitness function, that obviously wouldn’t do the same thing as finding “short paths”, as Dave even noted in the first article on this subject. However, as long as Dave’s program could optimize for the black box fitness function you provided, it would still prove his purposes quite well.

If what you’re getting at is that you can contrive a fitness function that Dave’s evolutionary program cannot optimize for, well, heck, so can I: rand(). But this of course isn’t very surprising, because there are contrived selection pressures that not even biological evolution ever winds up satisfying (for example, American buffalo in the 18th century were under evolutionary pressure to evolve laser eye beams to fend off hunters with, but they never did, because that’s silly), and Dave’s program is but a highly simplified model of biological evolution.

An amusing experiment, of course, might be to run Dave’s program many times with different fitness functions corresponding to different graph problems (create graphs with many cycles, etc) as well as non sequitur fitness functions like “total length is divisible by seven” or rand(), and see which ones it does and doesn’t optimize well for.

Comment #125950

Posted by Wesley R. Elsberry on September 4, 2006 2:28 PM (e)

Actually, I think it is Dave who doesn’t want a black box fitness function. I’d be happy to supply him with one, but he is smart enough to know, and indeed experimented with a couple of alternatives, that reaching results consistent with his stated purposes, requires careful selection of the fitness function. “Valuing the current function” is closely aligned with “proximity to the optimum”.

No, it isn’t. “Proximity to the optimum” requires prior knowledge of the optimum. That’s not how real fitness functions work. They work by comparing the relative performance of current candidate solutions.

Consider the “travel ling salesman problem”. Back in 1997, I challenged Bill Dembski at the NTSE conference to show where in a GA producing a short tour the information of the particular tour came from. As I have explained since then, we can eliminate the GA software, the OS and programming language, and yes, even the fitness function as possible places where that information could have resided to be “infused” into the particular result. Unsurprisingly, no ID advocate tries to take that on. In the TSP, the evaluation function is pretty minimal: shorter total length of tour is preferred. You don’t have to know what the actual minimal tour length is in order to deploy it and get a short tour as the result of running the algorithm.

The evaluation function provides the relevant constraints on the problem being solved. I suspect that the “black box” evaluation function that “RR” mentions as being ready to provide is actually an empty box, one that fails to encode any constraints. If, instead, an actual “black box” evaluation function were provided, one that incorporated all the constraints that actually apply in this universe concerning physics, chemistry, and their interactions, coupled with flexibility in the candidate bit string length (and thus not strictly a GA any more), what you would get after each run is a solution to some problem posed by the way this universe works. You just wouldn’t have any way of knowing which problem it was that applied to all the problems that might be solved.

We deploy GAs to actually accomplish a known task. As the TSP case shows, “careful selection” is, for some problems, utterly trivial. And yet the resulting solutions are completely non-trivial for NP-hard problems like the TSP. The objection stated here is goalpost-moving: once it is implied that GAs can solve a particular problem, the goalpost is shifted to discount that unless the GA not only provides a solution to the problem, but also picks the particular problem from the set of all possible problems. Ridiculous.

Comment #125952

Posted by BWE on September 4, 2006 2:41 PM (e)

Ok, I will try again.

The ID group (Sal et al) says that the fitness function is (or is the result of) an Intellegent Designer. No?

But the fitness function is simply a set of parameters imposed by the natural surroundings, right?

Even though you wrote it as software, isn’t the point of the function to mimic the limits imposed by nature? The intelligent designer isn’t the one who makes CO2 heavier than O2 or N2. So the fitness function, which is seeking to replicate fitness as regards the ability to be successful in a given environment and assign it a value on a scale (right?) isn’t god putting out his finger and saying poof, it is the ability to utilize or function within existing parameters. Right?

No I-Designer, right? Is this more complicated than that? Not the software, the concept of the fitness function being, in essense, a designer. The fitness function merely imposes parameters?

Emergent systems all emerge by applying a basic set of rules within a fixed set of parameters, from fractal geometry, the golden mean, ant colonies and slime molds to evolution of the species. No?

Comment #125960

Posted by GuyeFaux on September 4, 2006 3:18 PM (e)

Syntax Error: mismatched tag 'quot'

Comment #125961

Posted by GuyeFaux on September 4, 2006 3:19 PM (e)

Ok, I will try again.

Thanks for the effot, BWE.

The ID group (Sal et al) says that the fitness function is (or is the result of) an Intellegent Designer. No?

Yes; but in the case of GAs, which are artificial, we aknowledge this as well.

But the fitness function is simply a set of parameters imposed by the natural surroundings, right?

I would say “constraints” as opposed to parameters, but yes.

Even though you wrote it as software, isn’t the point of the function to mimic the limits imposed by nature? The intelligent designer isn’t the one who makes CO2 heavier than O2 or N2. [*]

Well, to be fair, we need to agnostic about who actually decided the constraints of nature. But yes, it’s still just the Universe imposing itself that we interpret as the fitness function.

So the fitness function, which is seeking to replicate fitness as regards the ability to be successful in a given environment and assign it a value on a scale (right?) isn’t god putting out his finger and saying poof, it is the ability to utilize or function within existing parameters. Righ?

That sounds exactly right.

No I-Designer, right? Is this more complicated than that? Not the software, the concept of the fitness function being, in essense, a designer. The fitness function merely imposes parameters?

Yes, this is correct; not more complicated than that. (In my reading your post, this seems to contradict what you said above in the section marked *).

Emergent systems all emerge by applying a basic set of rules within a fixed set of parameters, from fractal geometry, the golden mean, ant colonies and slime molds to evolution of the species. No?

Ah, you speak of complexity theory. My interpretation (because I’m not a complexity theorists) is that mutation and the size of the population supply the necessary complexity to overcome the restrictions of selection (and the fitness function).

Comment #125962

Posted by David B. Benson on September 4, 2006 3:28 PM (e)

The book “Simple Genetic Algorithm” is quite good for the mathematically minded. But in particular, the author offers at least three different ways in which selection of the ‘best’ to have children might be accomplished. So-called elitism is one of these.

Comment #125995

Posted by Roger Rabbitt on September 4, 2006 6:34 PM (e)

GuyeFaux

Can you suggest something? I’m curious what you think an “information-free” fitness function is.

I don’t think I said anything about “information free” fitness functions, but as for alternatives, I suggest one, which Dave admits he tried:

For example, if I had specified “longer is better” in my Genetic Algorithm - or not considered length at all - I would have not ended up with compact structures. (I know - I did the experiments!)

So, something important is getting the right FF.

Of course, thousands upon thousands of different “fitness tests” could be conceived. - Dave Thomas

No, I think it is many orders of magnitude more than thousands upon thousands. Now, if you have an intelligent designer getting you past that hump…

Comment #125996

Posted by Roger Rabbitt on September 4, 2006 6:44 PM (e)

Andrew McClure says:

I don’t think Dave really cares about Steiner solutions in specfic, though. Dave’s “stated purposes” with these articles are to demonstrate that his genetic algorithm can find the optimum for some fitness function.

And in general, he did that. I’m not sure why some here seem to be under the impression that IDers don’t think FF’s designed to find their optimum generally can’t. I think they generally can.

Comment #125997

Posted by Wesley R. Elsberry on September 4, 2006 6:49 PM (e)

Now, if you have an intelligent designer getting you past that hump…

At my talk last year at Oklahoma State University, I had asked my host to provide a large, transparent salad serving bowl and a small rubber ball. I told the audience that I was going to find the point of low potential energy in the bowl. I dropped the ball in. After a few seconds, it came to a halt at the bottom of the bowl. “There it is.”

If I want to have a program replicate the dynamics of that system, just because I’m an intelligent agent doesn’t mean that the result is somehow tainted because of it.

Does a boulder rolling downhill require an intelligent agent to tell it which way to go? If not, “RR”’s position is completely unsubstantiated. And quite possibly completely dishonest. The point is not difficult to apprehend, after all.

Comment #125999

Posted by Roger Rabbitt on September 4, 2006 6:53 PM (e)

Wesley R. Elsberry says:

No, it isn’t. “Proximity to the optimum” requires prior knowledge of the optimum. That’s not how real fitness functions work. They work by comparing the relative performance of current candidate solutions.

I won’t debate what are the characteristics of “real fitness functions”. But it is clear, and admitted by most folks here, at least tacitly if not explicitly, that the fitness function selection was based on prior knowledge about the optimum being sought. Yes it functions by comparing “current candidates”, but on what basis do we select for “relative performance”? That’s determined by the intelligently designed FF because of how it relates to the goal Dave honestly admitted to.

There isn’t anything illegal or immoral about that. But it does stand in stark contrast to how you are trying to paint it.

Comment #126000

Posted by Andrew McClure on September 4, 2006 6:55 PM (e)

So now we have an “intelligent designer” who specifies fitness functions.

How is this not just theistic evolution? In the real world, the “fitness functions” aren’t algorithms programmed into a computer, but are the naturally arising byproduct of the way organisms interact with their environment. If all that is necessary for natural processes to innovate and problem-solve is for an environment full of fitness functions to be set up and then evolution can take care of the rest, then why is an “intelligent designer” ever important to the biological origin of species at all?

I don’t think Dave really cares about Steiner solutions in specfic, though. Dave’s “stated purposes” with these articles are to demonstrate that his genetic algorithm can find the optimum for some fitness function.

And in general, he did that.

And so the experiment was a success.

Comment #126018

Posted by BWE on September 4, 2006 9:46 PM (e)

Roger Rabbit:

Of course, thousands upon thousands of different “fitness tests” could be conceived. - Dave Thomas

No, I think it is many orders of magnitude more than thousands upon thousands. Now, if you have an intelligent designer getting you past that hump…

except that the “hump” is merely the constraints of the environment. So the software programmer only has to prove that “contraints” can affect species development. Which it seems has been done.

Maybe I am misreading this. What exactly is the objection? THat the ID’er is the fitness function? Not the way I read it. It is merely an emergent system’s constraints.

Where am I missing something?

Comment #126025

Posted by GuyeFaux on September 4, 2006 10:19 PM (e)

Maybe I am misreading this. What exactly is the objection? THat the ID’er is the fitness function? Not the way I read it. It is merely an emergent system’s constraints.

Where am I missing something?

You’ve missed the moving goalpost.

Comment #126026

Posted by GuyeFaux on September 4, 2006 10:37 PM (e)

…fitness function selection was based on prior knowledge about the optimum being sought.

That’s either patently false or disingenuous; take your pick. If you mean that we knew something about what the “winner’s” genotype was, and that’s how we picked the fitness function, then your statement is a falsehood. If, on the other hand, you meant that we knew that the winner was going to have a relatively short path length, then your complaints are tautologically vacuous.

Comment #126031

Posted by Michael J on September 4, 2006 11:04 PM (e)

I think the ID hairsplitting is getting a bit silly. As has been repeatedly said in the real world the fitness function is not in the cell but is the environment.

So in a desert the fitness function is to survive well enough to reproduce in desert conditions. Where is the Intelligent Designer in this scenario?
Behind which Cacti are the solutions hidden? So creatures better able to manage heat and lack of water do better, reproduce more and survive.

I really can’t see the difference between this and an environment which says shorter is better. The creatures that are shorter are aloud to reproduce at the expense of the longer length solutions.

Comment #126033

Posted by Henry J on September 4, 2006 11:07 PM (e)

Re “You’ve missed the moving goalpost.”

Which is probably good, since actually hitting the moving goalpost might hurt.

Henry

Comment #126037

Posted by GuyeFaux on September 4, 2006 11:46 PM (e)

I think the ID hairsplitting is getting a bit silly.

Agreed. I think in this case it comes from misunderstanding natural selection and deliberately conflating the constraints set by the environment versus critter adaptations.

Michael J’s post is apt:

… in the real world the fitness function is not in the cell but is the environment.

Claiming, as I believe RogerRabbit has, that the GA is “front-loaded” or “intelligently-designed” via the fitness function is repeating the result of Dave Thomas’s experiment. The point of the experiment was to show that evolution (selection, sex, mutation) can achieve adaptability to the environment, i.e. optimality according to the fitness function. The ID thesis (insofar I can pin it down) is the negation of this statement. Arguing that adaptation happens because of the fitness function is not arguing against the power of evolution at all.

Comment #126039

Posted by Anton Mates on September 5, 2006 12:04 AM (e)

Roger Rabbitt wrote:

I don’t think I said anything about “information free” fitness functions, but as for alternatives, I suggest one, which Dave admits he tried:

For example, if I had specified “longer is better” in my Genetic Algorithm - or not considered length at all - I would have not ended up with compact structures. (I know - I did the experiments!)

So, something important is getting the right FF.

Huh? If he’d used a fitness function where “longer is better,” or where length was irrelevant, compact structures wouldn’t be optimal any more! So it’s a good thing that the GA doesn’t produce such structures when given such a fitness function. That shows that its ability to find optimal solutions without prior knowledge of them is a very general one, and works on lots of FFs.

I won’t debate what are the characteristics of “real fitness functions”. But it is clear, and admitted by most folks here, at least tacitly if not explicitly, that the fitness function selection was based on prior knowledge about the optimum being sought.

Based on one single piece of knowledge: “I want it to be short.” Other than that, Dave already explained that he didn’t–and still doesn’t–know for sure what the optimum is.

And how exactly would people do experiments if they weren’t allowed to design them to have predictable outcomes? That’s kind of the point.

Comment #126055

Posted by Wesley R. Elsberry on September 5, 2006 2:11 AM (e)

But it does stand in stark contrast to how you are trying to paint it.

I don’t think so. I’m telling it like it is. Neither “RR” nor any other ID cheerleader has come anywhere near making an argument with the least support for the notion that the software behind a GA that doesn’t have a “distant ideal target” manages to “infuse” the information of the solution into the solution. It is simple to understand why this is the case: they can’t because it doesn’t.

The more times the hackneyed objections come forth, the less likely that ignorance or stupidity make viable explanations for ID cheerleader behavior, and the more likely the deception hypothesis becomes. Keep digging, “RR”.

Comment #126064

Posted by Popper's ghost on September 5, 2006 5:18 AM (e)

I’m not sure why some here seem to be under the impression that IDers don’t think FF’s designed to find their optimum generally can’t. I think they generally can.

What about a FF that wasn’t designed to find its optimum … won’t it find its optimum anyway? If not, why not?

Comment #126074

Posted by Popper's ghost on September 5, 2006 6:01 AM (e)

I won’t debate what are the characteristics of “real fitness functions”.

Then don’t debate whether evolution could have produced all biological diversity.

But it is clear, and admitted by most folks here, at least tacitly if not explicitly, that the fitness function selection was based on prior knowledge about the optimum being sought.

Yes, smaller segment sums are favored because the goal is to minimize the sum of the segments – of course.

Yes it functions by comparing “current candidates”, but on what basis do we select for “relative performance”? That’s determined by the intelligently designed FF because of how it relates to the goal Dave honestly admitted to.

Yes, Dave “honestly admitted” that he’s trying to produce Steiner Trees, which are defined as having a minimal sum of segments – of course.

There isn’t anything illegal or immoral about that. But it does stand in stark contrast to how you are trying to paint it.

No, no one is trying to paint anything differently; you seem to have misunderstood every relevant point. The question is, can a genetic algorithm optimize a FF? We pick a specific FF because a) we have some problem we’re trying to solve, where the solution is the optimization of the selected FF, or b) because we want to be able to recognize that we have in fact optimized the function; that’s the reason for using something simple like Steiner Trees. Dave’s exercise makes it clear that GAs can optimize FFs (without coding the specific solution into the FF). Since they can, a claim that they can’t is false. Therefore, the ID claim that evolution cannot produce organisms highly fit to their environment is false.

Comment #126108

Posted by Corkscrew on September 5, 2006 9:25 AM (e)

Roger Rabbitt wrote:

No, I think it is many orders of magnitude more than thousands upon thousands. Now, if you have an intelligent designer getting you past that hump…

Or if you pick a specification that happens to correspond to the peaks of that fitness function…

Which is (broadly speaking) what Dave does here and what Dembski does when looking at flagella. “Wow, that’s an effective way of doing stuff” is not a good choice of specification when the fitness function happens to be one that selects for efficacy.

Comment #126112

Posted by William E Emba on September 5, 2006 10:05 AM (e)

Popper's ghost wrote:

Dave’s exercise makes it clear that GAs can optimize FFs (without coding the specific solution into the FF). Since they can, a claim that they can’t is false. Therefore, the ID claim that evolution cannot produce organisms highly fit to their environment is false.

Speaking precisely, your “therefore” which I bolded is unwarranted. What can be deduced from the success of Dave’s exercise (and that of countless other GAs that have been run over the decades) is the ID argument about the alleged improbability of real world evolution is invalid.

Consider the following thought experiment. A laboratory discovery that the cellular machinery surrounding DNA systems cannot be maintained for more than 1000 generations would send shockwaves of doubt regarding evolution throughout the scientific community. There would be widespread effort to re-explain the endless thousands of evolutionary based observations. And there would be a lot of headscratching about how a factually wrong theory led to such astonishing predictions in optimization theory. In other words, your “therefore” cannot trump physical evidence. It may give you confidence that such an alleged discovery, upon announcement, is based on incompetent laboratory technique or ridiculous extrapolation, but nothing more.

Our confidence in evolution, already extremely high from both the extensive physical evidence, theoretical modelling, and sheer explanatory power of so simple an idea, has received a small boost from the fruitfulness of applying the ideas of evolution outside biology with such stunning success. But the truth or falsity of evolution has been decided independently of such external confidence boosts, and it will remain decided independently.

Comment #126121

Posted by Alann on September 5, 2006 11:04 AM (e)

About what Dave had posted earlier from Meyer:

Meyer wrote:

Nevertheless, as shown elsewhere (Meyer 1998:127-128, 2003:247-248), these [genetic algorithm] programs only succeed by the illicit expedient of providing the computer with a “target sequence” and then treating relatively greater proximity to future function (i.e., the target sequence), not actual present function, as a selection criterion.

This may be a somewhat reasonable complaint:

They are arguing that not all intermediates posses selectable traits.

In the simplest model say fitness equates to distance from a arbitrary point (0,0). In the simple approach normally taken this means (5,0) is more fit than (10,0).

It seems to me the idea is that (5,0) should be a non-functional (non-selectable) intermediate, or to put another way all points outside a given range (say 3 arbitrarily) should be treated as equal.

Of course this would not present a problem depending on the model. (Using line segment trees (as described in my earlier post) to represent a variation and keeping total length as a negative cost) The solution will still be found provided non-successful variations are not arbitrarily weeded out too quickly. Eventually a compound mutation will arise which is selectable and quickly takes precedence over its non-selectable brethren.

Then again IDs entire claim is based on the premise that compounded mutations are virtually impossible. They are unable or unwilling to comprehend that even harmful mutations are not instantly weeded out. Realistically a species is better represented as a probability distribution not a fixed version, its just harder to model. In essence though I don’t think you can get ID to admit to any terms which have any hope of finding the solution.

Comment #126128

Posted by GuyeFaux on September 5, 2006 11:50 AM (e)

Popper's ghost wrote:

Dave’s exercise makes it clear that GAs can optimize FFs (without coding the specific solution into the FF). Since they can, a claim that they can’t is false. Therefore, the ID claim that evolution cannot produce organisms highly fit to their environment is false.

Speaking precisely, your “therefore” which I bolded is unwarranted.

Actually no; “therefore” in this case means “this is sufficient to show that”. (At least that’s the meaning in math papers.) I think you’re interpreting “therefore” as saying “this is sufficient and necessary to show that”. Which, as you’ve pointed out, is not the case.

Comment #126143

Posted by William E Emba on September 5, 2006 12:23 PM (e)

GuyeFaux wrote:

Actually no; “therefore” in this case means “this is sufficient to show that”. (At least that’s the meaning in math papers.) I think you’re interpreting “therefore” as saying “this is sufficient and necessary to show that”. Which, as you’ve pointed out, is not the case.

I used “therefore” according to its meaning, which you correctly identified, and which corresponds to my argument. As such, I have absolutely no idea of how you read my assertion and got it all wrong.

Symbolically, PG said there is a creationist assertion of the form A=>B, A being about the alleged ineffectiveness of selection in GAs, and B being about the alleged ineffectiveness of selection in real world evolution. My point was that while not-A has been clearly demonstrated in an easy small-sized dose, so small that the usual creationist lies and excuses have no wiggle room, this does not allow us to conclude not-B, which has also been clearly demonstrated, but only in a large sweeping panaromic sense across a century and a half of matching theory with experiment with observation, with, unfortunately, large room for the liars to operate while never facing reality. not-A does not imply not-B, but not-A does obliterate a common lie that the creationists use to make B seem plausible.

Comment #126146

Posted by David vun Kannon on September 5, 2006 12:25 PM (e)

William E Emba wrote:

Popper's ghost wrote:

Dave’s exercise makes it clear that GAs can optimize FFs (without coding the specific solution into the FF). Since they can, a claim that they can’t is false. Therefore, the ID claim that evolution cannot produce organisms highly fit to their environment is false.

Speaking precisely, your “therefore” which I bolded is unwarranted. What can be deduced from the success of Dave’s exercise (and that of countless other GAs that have been run over the decades) is the ID argument about the alleged improbability of real world evolution is invalid.

I don’t think most IDers believe that evolution doesn’t work _at all_. Reading this IDEA Center FAQ article it sounds like microevolution is acceptable, and as I said in a previous comment what most function optimizing EC does (even with niches) looks like microevolution.

Comment #126147

Posted by Dave Thomas on September 5, 2006 12:26 PM (e)

For the benefit of those who cloak themselves in the anonymity of cartoon character pseudonyms: let me make one thing perfectly clear.

The Genetic Algorithm discussed here does not “know” when it arrives at the correct solution - in this case, the “Steiner Solution” for the most compact network connecting the given points.

This exercise demonstrates that evolutionary processes can indeed find answers – and produce “designs,” if you will – without knowing in advance, nor even upon discovery, of the specific form of the answer.

The genetic algorithm simply comes up with answers, typically every minute and a half. Generally, these solutions are different, but are usually no longer than 18% of the actual Steiner solution’s length (1586.5 units for the 6-point problem of the Design Challenge), and often much better.

Unless I solved the problem in advance, and knew that the correct answer would be less than, say, 1587 units in length, and pre-programmed that fact in as a stopping point, there is no way that my program would know that it had solved the given problem correctly. In fact, after finally achieving the right Answer, the program went back to churning out MacGyvers, finding another (and different) Correct Answer some 40 minutes later. It didn’t know to stop the second time, either.

Fact is, Mr. Anonymous Toon Character, that a Genetic Algorithm – an evolutionary process – was able to solve a difficult math problem without being fed the actual solution in any form. The problem was non-trivial, and was posed as a week-long open-book test, with all the resources of libraries and the Internet available to any one who wanted to try and derive the answer.

The problem was so difficult that even ID “theorists” were unable to derive the answer, although they were simultaneously still claiming that the Answer is imbedded in the Fitness Function, which simply compares the lengths of current candidates, and doles out passes into the next generation based on the fitness scores.

When I set up the new 6-point problem for the first time, I didn’t have to change the fitness function, nor the mutation and selection procedures. All that was changed was the given math problem itself. And so, while trying to design a system that would have a symmetrical double bowtie as its answer, I was surprised to learn that the realanswer was a “Conjoined/Mutated/Twisted Double Bowtie,” as shown here.
The algorithm didn’t know when it stumbled on the correct Answer. I recognized that it had, and thus experienced a profound “Gee, why didn’t I think of that?” moment. And that’s when I decided to issue the Design Challenge (originally suggested by Marek 14, as noted above).

If you wish to continue claiming that

“Valuing the current function” is closely aligned with “proximity to the optimum,”

then simply find and describe this close alignment in the publicly posted listing for the GA.

It’s easy to find where the program “Values the current function.” Look for subroutines Transcribe(), Fitness(), Connected(), and heybabe() in particular.

What I’m asking is for critics to pinpoint the code snippets where “proximity to the optimum” is “hardwired in,” especially for the 4-point, 5-point and 6-point systems discussed in this series.

You’ll quickly find that the number of fixed points for each given problem is a variable, m_fixdnodes. You won’t be able to find any code that does things like, for example, set up the “Conjoined/Mutated/Twisted Double Bowtie,” answer for the 6-point rectangle problem of the Design Challenge.

Since you won’t be able to find the answer, why not just come out and and publicly admit that evolutionary processes like selection, reproduction and mutation can indeed produce highly coherent, irreducibly complex, and even complexly specified designs, without having to know anything about the specifics of these designs?

Dave

Comment #126148

Posted by RBH on September 5, 2006 12:38 PM (e)

Strictly speaking, there is a difference between the fitness functions used in GAs, including Dave’s Steiner program, and the fitness functions of biological evolution. It’s a difference in level of analysis.

In all GAs I know of, including Dave’s, the fitness function selects on the basis of a particular property of the genotype or phenotype. The fitness function is univariate (though one can complicate that with ‘soft’ contraints’). In Dave’s program, that property is the phenotypic length of path, with short paths being favored. In biological evolution the fitness function does not select on the basis of a particular property of the evolving population, but rather selects on the basis of any property that increases reproductive success of the phenotype; it is indifferent to which property that might be. A population in a region of growing aridity can increase its fitness over time by evolving ways of conserving water, and/or evolving ways of extracting water from the environment, and/or evolving ways of more efficiently utilizing water, and/or something else.

In other words,

GA: F = f(p1)
BE: F = g(p1,p2,p3,.., pn)

Where F is the selective fitness (reproductive advantage) and p is some property/trait of the phenotype.

I think the “fine tuning” arguments of the IDists reduce to ignoring this difference. In GAs we “fine tune” the fitness function to evolve solution(s) to a problem that we have defined as interesting. In biological evolution there is no such fine tuning. Biological evolution grabs whatever property(ies) thrown up by the variation-generating mechanisms that provide an immediate gain in reproductive advantage in a given environment. Variations in multiple properties are on offer, and natural selection picks and chooses among them.

The more important question to ask of GAs is whether the topographies of the fitness landscapes induced by the available evolutionary operators (e.g., mutations of various kinds, recombination) from a given fitness function (equation) are similar to those in nature. We know and can control the topography of fitness landscapes in platforms such as Avida, and hence can do systematic research using them. We do not know the topography of the 62-dimensional fitness landscape of Dave’s Steiner programs, though it seems pretty clear (given the relatively fine-grained matrix in which the phenotypes are realized and the alleles – variants – available) that the landscape is smooth to a first approximation given the operators he used.

Alann wrote

This [Meyer’s] may be a somewhat reasonable complaint:

They [IDists] are arguing that not all intermediates posses selectable traits.

But of course, not all intermediates must have selectable traits. It suffices if they are selectively neutral. Relevant to this discussion is recent work by Gavrilets, discussed by John Wilkins here and here and by E. Tellgren here. Essentially, in a fitness landscape of very high dimension, Gavrilets shows that there will almost always be a path from here to there along some neutral (or possibly selectable) ridge in some dimension(s) of the fitness space. If one examines the actual evolutionary trajectory of a run in Avida, it’s clear that not all mutations in a “successful” lineage are necessarily selectively advantageous, and some in fact may be deleterious. For example, in the complete line of descent of one “successful” lineage, the 16th in the series of mutations of the genotype, a point mutation, was mildly deleterious: it reduced fitness slightly. But the lineage persisted in the population long enough for a 17th mutation, another point mutation, to occur 155 updates later, and that mutation was selectively advantageous and the lineage prospered. So long as a lineage can persist for some time in the population, it can continue to throw up variants that may find a ‘new’ pathway in fitness space.

RBH

Comment #126188

Posted by RBH on September 5, 2006 2:51 PM (e)

Dave remarked

What I’m asking is for critics to pinpoint the code snippets where “proximity to the optimum” is “hardwired in,” especially for the 4-point, 5-point and 6-point systems discussed in this series.

Don’t hold your breath. I’ve been asking a similar question of IDsts, Salvador among them, for four years, to no avail.

RBH

Comment #126199

Posted by Alann on September 5, 2006 4:12 PM (e)

In response to Dave, I think you missed my second posting.

While I am not an IDist I think I can see their point of view (warped though it is )that the nature of the selectivity is the problem.

They see this kind of algorithm as a clear chain of A-B-C-D where each step is closer to a solution and therefore more selectable. It does not matter that the solution itself is not hardcoded only that the fitness function evaluates in terms of proximity to any solution.

Perhaps if I phrase it as:
“Valuing the current function” is closely aligned with “proximity to an optimum,”

It seems like this is a ridiculous arguement that the model is invalid because we can look at two species and tell which one is more fit, as though to say selectability itself must be denied. At the same time it is accurate that in a more realistic model most mutations would have to be treated as neutral and it may take several successive mutations before a change in fitness could be determined.

I do feel the onus is on ID to open discussion and propose their own models or variations on this model which can present a selectability and fitness model which is not strictly progressive, is not considered a “targeted” approach, but must still able to identify stages where a given variant is superior.

I doubt that they will ever engage in such a discussion since they will likely realize that they are essentially defining “selectable” and “targeted” as the same thing. It is an intentional inability to grasp that an artificial selection model when supplied arbitrary or random selection criteria is accurately considered a representation of a natural selection model.

As someone said earlier all of this can be considered models of so called “micro” evolution, which most IDist are not crazy enough to dispute. Of course from a real scientific standpoint there is no reason to believe there is any significant difference between “micro” and “macro” evolution, in fact real scientists have little cause to even use such terms. In analogy gravity works equally on pebbles and boulders, so why should evolution be any different?

Comment #126201

Posted by William E Emba on September 5, 2006 4:22 PM (e)

David vun Kannon wrote:

I don’t think most IDers believe that evolution doesn’t work _at all_. Reading this IDEA Center FAQ article it sounds like microevolution is acceptable, and as I said in a previous comment what most function optimizing EC does (even with niches) looks like microevolution.

Well, trying to pinpoint the exact level of IDiocy isn’t always easy, since the whole point of the Wedge strategy is to Big Tent the IDer into the culture and side step doctrinal disagreements for the time being. But their specific attacks on GAs, regardless of how much evolution they are willing to concede, are rank nonsense.

Comment #126204

Posted by Popper's ghost on September 5, 2006 5:15 PM (e)

Speaking precisely, your “therefore” which I bolded is unwarranted.

Youre’ right; I should have said “therefore the ID argument that that evolution cannot produce organisms highly fit to their environment is invalid” … which, reading your next sentence, is what you say. It might still be true that evolution cannot produce organisms highly fit to their environment for reasons other than those that IDers offer, so I did indeed write imprecisely … not the first time!

Comment #126206

Posted by Popper's ghost on September 5, 2006 5:18 PM (e)

Another way I could have put it is “Therefore, the ID claim that evolution cannot produce organisms highly fit to their environment for the reasons they give is false.” I think that’s what I had in mind.

Comment #126211

Posted by Popper's ghost on September 5, 2006 5:39 PM (e)

Another way, William, I might have put it is Dave Thomas’s “publicly admit that evolutionary processes like selection, reproduction and mutation can indeed produce highly coherent, irreducibly complex, and even complexly specified designs, without having to know anything about the specifics of these designs”. I suppose that, despite all that, it is conceivable that evolution cannot produce organisms highly fit to their environment. When making empirical claims, it’s always risky to use deductive words like “therefore”. But it is reasonable to interpret a denial of a claim that something cannot happen as a denial that it cannot happen for the claimed reasons, not in an absolute sense. Still, the clarification has some value.

Comment #126214

Posted by Popper's ghost on September 5, 2006 6:06 PM (e)

In biological evolution the fitness function does not select on the basis of a particular property of the evolving population, but rather selects on the basis of any property that increases reproductive success of the phenotype; it is indifferent to which property that might be.

But this division into “properties” is based on a human-created abstraction. The population has a global property given by its physical state.

GA: F = f(p1)
BE: F = g(p1,p2,p3,.., pn)

g(p1,p2,p3,.., pn) = g’(ps), where ps is the physical state. So there’s no real difference analytically.

I think the “fine tuning” arguments of the IDists reduce to ignoring this difference.

I think what they miss is what I wanted to hit with my (unanswered) question to RR:

What about a FF that wasn’t designed to find its optimum … won’t it find its optimum anyway? If not, why not?

We select a particular FF because we want to find the solution in which FF is optimized; the FF of the natural world is not (AFAWK) selected for any particular end … but that has no bearing on whether the process of evolution can reach a result in which the FF is optimized. This is what the IDers cannot get their heads around, because they confuse a posteriori with a priori and take the current state of affairs – specifically, us humans – as a given, and so think that the FF must have been selected in order to produce just that outcome and no other. This is like someone who wins the lottery thinking that God must have selected them because it was so incredibly unlikely that they would win.

Comment #126215

Posted by Popper's ghost on September 5, 2006 6:15 PM (e)

Alann wrote:

Meyer wrote:

these [genetic algorithm] programs only succeed by the illicit expedient of providing the computer with a “target sequence” and then treating relatively greater proximity to future function (i.e., the target sequence), not actual present function, as a selection criterion.

This may be a somewhat reasonable complaint:

No, Meyer’s statement is just flat wrong; there is no “target sequence” in the computer anywhere (except in cases like Dawkins’ weasel) until it stumbles upon it.

In the simplest model say fitness equates to distance from a arbitrary point (0,0). In the simple approach normally taken this means (5,0) is more fit than (10,0).

No, the FF does not give distances from the solution. In the case of the Steiner Tree, the length of the path is not the solution, it’s just a property of the solution.

Comment #126218

Posted by Popper's ghost on September 5, 2006 6:24 PM (e)

Here Alann makes his statement explicitly:

It does not matter that the solution itself is not hardcoded only that the fitness function evaluates in terms of proximity to any solution.

No, it does no such thing. The proximity to a solution is given by the distance to it in the search space, which is utterly unknown (except in cases like Weasel).

Comment #126219

Posted by Popper's ghost on September 5, 2006 6:34 PM (e)

No, the FF does not give distances from the solution. In the case of the Steiner Tree, the length of the path is not the solution, it’s just a property of the solution.

Actually, I suppose that the length of the path could be taken as the solution if the problem were posed that way. But the FF still doesn’t give a distance to the solution (or any MacGyver); how could it, when the solution is unknown?

Comment #126224

Posted by Roger Rabbitt on September 5, 2006 6:53 PM (e)

Popper’s ghost says:

Yes, smaller segment sums are favored because the goal is to minimize the sum of the segments – of course.

Yes, Dave “honestly admitted” that he’s trying to produce Steiner Trees, which are defined as having a minimal sum of segments – of course.

We seem to have agreement, and then Dave says this:

If you wish to continue claiming that

“Valuing the current function” is closely aligned with “proximity to the optimum,”

then simply find and describe this close alignment in the publicly posted listing for the GA.

I’m confused. Even your allies admit, Dave, that this is what you are doing. So, why are you demanding that I produce the code for you? Are you not seeking to investigate Steiner’s trees, as you previously claimed? Are Steiner trees not defined as having the shortest length? Are you not selecting based on “shorter is better”?

You seem to be hung up on whether the specific answer (for example, the minimal length) is known in advance to either the programmer or the program. But neither is necessary to intelligently program the selection function. I can use a computer program to calculate 25 to the 25th power, even though neither I nor the program know the answer in advance.

I’m not surprised by the results, and I don’t know any IDers who are. Numerous folks are trying to make the claim that this demonstrates the ability of Darwinian evolution in the biological world, but I remain a skeptic. Darwinian evolution operates on Natural Selection. Your GA operates on intelligent selection. Now, if you can demonstrate to me that NS can do anything an intelligent selector can do, then you might be able to close the circle. But I don’t think you can do that. Heck, I don’t think Dawkins would think you could do that, judging from his description of NS.

Comment #126242

Posted by Dave Thomas on September 5, 2006 8:17 PM (e)

Mr. Anonymous Toon Character wrote:

Are you not seeking to investigate Steiner’s trees, as you previously claimed? Are Steiner trees not defined as having the shortest length? Are you not selecting based on “shorter is better”?
You seem to be hung up on whether the specific answer (for example, the minimal length) is known in advance to either the programmer or the program. But neither is necessary to intelligently program the selection function. I can use a computer program to calculate 25 to the 25th power, even though neither I nor the program know the answer in advance. I’m not surprised by the results, and I don’t know any IDers who are.

Well, then, I guess you don’t know IDer Stephen Meyer:

Meyer wrote:

Nevertheless, as shown elsewhere (Meyer 1998:127-128, 2003:247-248), these [genetic algorithm] programs only succeed by the illicit expedient of providing the computer with a “target sequence” and then treating relatively greater proximity to future function (i.e., the target sequence), not actual present function, as a selection criterion.

I have amply demonstrated that my program selects for present function, not future function.

Therefore, I am not making the illicit expedient that Meyer claims compromises ALL Genetic Algorithms.

Yes, it was my intent to develop a GA to solve Steiner’s Problem.

What you seem to be missing is that I’m simply testing the current population to find “shorter is better” candidates for breeding the next generation, and not illicitly providing the computer with a “target sequence” (e.g. the formal Steiner solution(s)), nor am I testing digital organisms for “relatively greater proximity to future function (i.e., the target sequence).”

That my program finds Steiner solutions (occasionally) at all is a neat development, and one that nicely skewers Meyer’s false claims.

If you agree with Meyer’s statement on GAs above, then you’ve been proven wrong with this series of posts.

If you disagree with Meyer’s “official ID” position, I suggest you take up the matter with Discovery Institute, and not me.

Dave

Comment #126264

Posted by Popper's ghost on September 5, 2006 9:56 PM (e)

I’m confused.

No kiddin’. That, or pretending to be.

Even your allies admit, Dave, that this is what you are doing.

No, you are taking two very different things and equating them as “this”.

Are Steiner trees not defined as having the shortest length?

No, that’s just one property of Steiner trees. If that were the definition, the program could print out “0” and be done with it. But that’s not the solution.

You seem to be hung up on whether the specific answer (for example, the minimal length) is known in advance to either the programmer or the program.

The only “hangup” is the insistence by some IDers that it is known in advance, even when it isn’t. They insist on that in order to make a false claim – that the GA can’t find the solution without “the illicit expedient of providing the computer” with it.

But neither is necessary to intelligently program the selection function.

Yes, so? The selection function isn’t the solution. But it leads to the solution when operated on by a genetic algorithm. Which is the point; no one is asserting that computers are non-deterministic and arrive at the solution by magic.

I can use a computer program to calculate 25 to the 25th power, even though neither I nor the program know the answer in advance. I’m not surprised by the results, and I don’t know any IDers who are.

And what does that have to do with whether GAs can optimize FFs, aside from absolutely nothing? But that is something that many IDers (like Meyer and Cordova) claim can’t be done without an “illicit expedient”.

Numerous folks are trying to make the claim that this demonstrates the ability of Darwinian evolution in the biological world, but I remain a skeptic.

So you paid no attention to the posts from William Emba and myself? What we are claiming is that the argument against Darwinian evolution doesn’t hold water.

Darwinian evolution operates on Natural Selection. Your GA operates on intelligent selection.

Apples and oranges. Natural Selection is of traits, not fitness functions. In nature, the fitness function is given by the natural environment; in the case of a GA, the fitness function is given to it by the programmer – an environment of sorts. Natural Selection works dumbly; the selection of entities by the GA works dumbly. And you here are working dumbly by looking at individual words without any attention to context.

Now, if you can demonstrate to me that NS can do anything an intelligent selector can do, then you might be able to close the circle.

That’s a misplaced burden; Dave’s GA is a counterargument to a claim that evolution can’t operate without front-loading.

I asked you “What about a FF that wasn’t designed to find its optimum … won’t it find its optimum anyway? If not, why not?”

You haven’t answered. Why is that, other than dishonesty?

Comment #126314

Posted by Andrew McClure on September 6, 2006 12:02 AM (e)

Dave Thomas wrote:

What you seem to be missing is that I’m simply testing the current population to find “shorter is better” candidates for breeding the next generation, and not illicitly providing the computer with a “target sequence” (e.g. the formal Steiner solution(s)), nor am I testing digital organisms for “relatively greater proximity to future function (i.e., the target sequence).”

I am pretty sure that he is trying to say is that testing for “shorter is better” is the same thing as “providing the computer with a target sequence”.

Notice the dichonomy he attempts to make between “natural selection” and “intelligent selection”. Apparently by writing the fitness function yourself, you infected it with “intelligence”. Apparently somehow you are supposed to come up with something that creates short paths without in any way applying your human knowledge that short things are short.

Comment #126362

Posted by Darth Robo on September 6, 2006 5:26 AM (e)

Roger Rabbitt wrote:

“Your GA operates on intelligent selection.”

How? Dave has pointed out that neither he or the computer knew the answer. (I hope you’re not also suggesting the computer itself is intelligent.) The computer also continued to find more solutions after it already found one. I’ll admit, the mathematics of this stuff is over my head, but the principle makes sense. The FF represents the natural environment and the GA adapts to it (is that right?). And with all these people using their own GA’s to come up with many different solutions (to which they didn’t know the solution either until their program found it), where is the intelligent selection?

As far as I can tell, the FF represents a problem to be solved and we use the computer to help us solve it. The only thing I can think of that’s selected would be the FF itself, but what difference would that make? If it represents the environment, what difference would that make to natural selection if the environment occured naturally or was “Intelligently Designed”?

If I’ve misunderstood anything (probably have) and deserve a verbal slaughtering, then feel free. :-)

In the meantime I’ll just say: “Welease Woger!”

Comment #126382

Posted by William E Emba on September 6, 2006 6:55 AM (e)

Popper's ghost wrote:

When making empirical claims, it’s always risky to use deductive words like “therefore”.

It wasn’t so much “risky” as just a bit too glib. Our side values truth, honesty, and precision, so when our side overstates things we welcome the footnotes.

But it is reasonable to interpret a denial of a claim that something cannot happen as a denial that it cannot happen for the claimed reasons, not in an absolute sense. Still, the clarification has some value.

Specifically, the argument from “A => B” to “not-A => not-B” has no logical validity, but in a scientific context it can be quite significant. This is why philosophy of science is so interesting, trying to understand how induction of any sort is not just possible, but actually seems to be justified. It’s depressing to think we still don’t really know how to answer Hume.

In this case, the smarter creationists realize they have zero empirical objections to evolution, so they invent alleged proofs of its theoretical impossibility. GAs show that one such alleged proof is obviously flawed, nothing more. But for some of them, that “one such alleged proof” is all they have. Meanwhile, the hypothetical possibility of discovering actual empirical evidence remains open. Only a Dembski could pass off such a hypothetical as an actual argument against evolution: his insanely bizarre “imagine a space alien coming to us and explaining exactly how he faked it” argument, so powerful it refutes anything and everything, not that any of the rubes would notice.

Comment #126393

Posted by Popper's ghost on September 6, 2006 7:20 AM (e)

Specifically, the argument from “A => B” to “not-A => not-B” has no logical validity

Aye, but that wasn’t my argument (as I intended it). IDists claim that A is false because of an argument they give. If that argument were valid, it would imply that B is false. But Dave Thomas demonstrated B, therefore proving the argument invalid. It thus follows that the IDist claim (that A is false because of the argument they give) is false. A may still be false for other reasons.

but in a scientific context it can be quite significant

I think I was too glib in my talk about empirical claims (as well as in other matters); there really is a deductive argument up above.

Comment #126399

Posted by Popper's ghost on September 6, 2006 7:32 AM (e)

To be a bit more specific: there’s an argument that any genetic algorithm must be “front-loaded” via “illicit expedient” with “the target sequence” in order to reach the target. If this argument were valid, then evolution (A) must be front-loaded. But the existence of a GA (B) that isn’t front-loaded yet reaches its target demonstrates that the argument is invalid, and thus the claim that evolution must be front-loaded is false (but perhaps it is front-loaded anyway). This gets back to GuyeFaux’s comment about necessary vs. sufficient.

Comment #126400

Posted by Popper's ghost on September 6, 2006 7:37 AM (e)

It’s depressing to think we still don’t really know how to answer Hume.

Oh, I think we do. Empirical epistemology is based on inference to the best explanation, not induction. David Deutsch discusses this at length in The Fabric of Reality.

Comment #126404

Posted by Popper's ghost on September 6, 2006 7:58 AM (e)

I should add that Occam’s Razor is not merely a methodological rule but is actually true when phrased something like: A simpler theory is more likely to make accurate predictions, since adding extraneous elements increases the number of predictions without making the theory fit the evidence any better. So in a sense, your namesake answered Hume.

Comment #126407

Posted by fnxtr on September 6, 2006 8:39 AM (e)

Michael J:

I enjoyed writing the GA code but my managers didn’t like the fact that the answer always came out slightly different on each run.

I suspect this is a large part of creationists’ objection to evolution: human beings are contingent on biological history. We are an accident. Rubs some people the wrong way.

Comment #126420

Posted by Alann on September 6, 2006 10:04 AM (e)

Popper's ghost wrote:

No, Meyer’s statement is just flat wrong; there is no “target sequence” in the computer anywhere (except in cases like Dawkins’ weasel) until it stumbles upon it.

In my opinion Meyers is arguing that since the problem has a solution and the fitness function can tell if one variation is a better solution than another it is a “target sequence”.

The limited merit I see is in the direct progression problem. For example in the sequence 1,2,3,…n; although n is never specified in any real sense the fitness function identifies that 3 has better survivability than 2 and would theoretically recognize the value n if reached as the most survivable.

I realize that this is not what is normally meant by “targeted sequence”, and places an onus on ID which I will get to in a moment.

Roger Rabbitt wrote:

I’m confused. Even your allies admit, Dave, that this is what you are doing. So, why are you demanding that I produce the code for you?

If you are referring to me, you are definitely confused. Dave is not including a “target sequence” in any true programming or logical sense. ID is attempting to define “target sequence” in a broader sense which is seems to be selection itself. This may be a reasonable view if an only if they can provide a good answer to a hard question:

Under the ID definition how can you model select-ability in a manner which would not be considered a targeted sequence?

Comment #126452

Posted by BWE on September 6, 2006 1:20 PM (e)

Roger Rabbit says:

“Darwinian evolution operates on Natural Selection. Your GA operates on intelligent selection.”

Aaaarrrrghhhh. That is exactly wrong. no no no no no no no no no.
I’m beginning to think you are a fundy or something.

The software rewards things that are more fit. There is NO intelligent direction to it at all. Fitness is determined by whatever. Anything. The point is that the rules and constraints of the system produce an emergent system; in this case, evolution. This isn’t specifically evidence for evolution, merely showing that it is possible. The variables for the real deal are way way too complex and numerous to reproduce but there is no intelligent agency intervening in the equations.

I’m going out on a limb here but essentially, you have something similar to climate models. The resulting climate may not reflect reality but it does reflect what the climate would look like given the parameters included in the software. In fact, it does come pretty close but that is tangential to the point.

Or maybe ant colonies: An ant doesn’t know to put the garbage in the most mathematically convenient place. A few possible pheromone signals, combined with environmental constraints create that behavior as an emergent property of the system. It just happens that way. The ant doesn’t plan it at all.

Fish don’t know to school. They have a limited number of responses to the fish next them. Schooling is an emergent behavior of the system. The specific school pattern includes environmental constraints/inputs (a fitness function) but the generic “schooling” behavior is simply the result of an algorithm of the various cues that the schooling fish respond to. There is no Intelligent agency at work. Blind watchmaker perhaps, but, once the wheels are in motion, the result is an emergent system.

The software merely models an emergent system. No Intelligent agency in the fitness function.

Unfortunately for those of us who are god-fearing decent folks who know the value of a dollar and can tell you that no matter what the bible says, gays shouldn’t marry and no damn school board ought to tell us which kind of religion to use in our schools, this idea might lead to a much larger equation showing that our immortal souls are an emergent function of our brain chemistry and that would be the point when we turn our plowshares into swo..Um, sorry about that last bit. I got carried away in the moment. Damn Darwinist elitist fancy pants trying to show me a picture of heaven and hell that look the same. But I know the difference. As do all of us god-fearing salt of the Earth chosen people who have been saved.

Comment #126494

Posted by RBH on September 6, 2006 4:45 PM (e)

Alann wrote

ID is attempting to define “target sequence” in a broader sense which is seems to be selection itself. This may be a reasonable view if an only if they can provide a good answer to a hard question:

Under the ID definition how can you model select-ability in a manner which would not be considered a targeted sequence?

As I’ve noted before, I’ve asked IDists in several venues to point to where the ‘target’ or ‘solution’ is front-loaded in the Avida code. The only one who responded pointed at the mutation/selection procedures. I thought that was a telling answer.

RBH

Comment #126507

Posted by Popper's ghost on September 6, 2006 5:27 PM (e)

Syntax Error: mismatched tag 'kwickxml'

Comment #126508

Posted by Popper's ghost on September 6, 2006 5:30 PM (e)

In my opinion Meyers is arguing that since the problem has a solution and the fitness function can tell if one variation is a better solution than another it is a “target sequence”.

Your opinion does not hold up against the clear, obvious, and well-established meaning of Meyer’s words.

For example in the sequence 1,2,3,…n; although n is never specified in any real sense the fitness function identifies that 3 has better survivability than 2 and would theoretically recognize the value n if reached as the most survivable.

There is so much wrong with this. The fitness function doesn’t “recognize” anything, and certainly doesn’t “recognize” the optimum; it’s simply a comparison. If 3 is preferred over 2, then 3 is preferred over 2. But there is no progression from 2 to 3. In the Steiner network problem, the algorithm does not find a network of length m, and then turn it into a network of length m-1, and so on, until it reaches the optimum. And if it does reach the optimum, it doesn’t stop; it has no way of knowing that it is an optimum.

If you are referring to me, you are definitely confused.

No, he wasn’t referring to you, and frankly I’m not sure which of you is the more confused, but neither of you is reading very carefully.

Comment #126537

Posted by Darth Robo on September 6, 2006 7:58 PM (e)

BWE said:

“Fish don’t know to school. They have a limited number of responses to the fish next them. Schooling is an emergent behavior of the system. The specific school pattern includes environmental constraints/inputs (a fitness function) but the generic “schooling” behavior is simply the result of an algorithm of the various cues that the schooling fish respond to.”

I’ve seen a documentary showing that. It also showed birds too, operating on the exact same principle. Another thing they also did was do a computer simulation. All of the “birds” on screen were represented by coloured dots. All of the dots were given the same specific parameters of motion - two or three simple instructions (follow the dots nearest them, don’t get too close or too far). Then the simulation was run. We saw a few hundred dots all flying around the screen moving exactly like a flock of birds, with some footage of real birds for comparison. It was pretty cool.

Comment #126568

Posted by BWE on September 6, 2006 10:07 PM (e)

What was it called? I’d like to send it to someone.

Comment #126571

Posted by Sir_Toejam on September 6, 2006 10:13 PM (e)

I too remember seeing that video a while back.

ITMT, you might get a kick out of this BWE:

http://www.humboldt.edu/~ecomodel/clupeoids.htm

Comment #126572

Posted by Sir_Toejam on September 6, 2006 10:17 PM (e)

ahh, and speaking of schooling being an emergent property, I did remember the name Parish, and found a more recent article than the ones I recalled:

http://www.biolbull.org/cgi/content/full/202/3/296

Comment #126574

Posted by Sir_Toejam on September 6, 2006 10:21 PM (e)

..and finally, this is where you can play with the basics of the models yourself, IIRC:

http://depts.washington.edu/~birdfish/schooling/model.shtml

Comment #126590

Posted by BWE on September 6, 2006 11:05 PM (e)

STJ, I’ve seen that stuff many, many times but it is always good to repeat it. And it is especially good for a step by step process of enquiry that might lead a fundy straight to heck. Where all the good people go. :-)

Comment #126602

Posted by BWE on September 6, 2006 11:15 PM (e)

STJ, I’ve seen that stuff many, many times but it is always good to repeat it. And it is especially good for a step by step process of enquiry that might lead a fundy straight to heck. Where all the good people go. :-)

In fact, way back before we knew to call them “Emergent Systems” I had a fancy for some particularly peculiarly prickly starfish that could tear your ass bad if you sat on them. Seems that populations of the prickly bastards could fluctuate rather drastically

Comment #126603

Posted by Sir_Toejam on September 6, 2006 11:21 PM (e)

I had a fancy for some particularly peculiarly prickly starfish that could tear your ass bad if you sat on them. Seems that populations of the prickly bastards could fluctuate rather drastically…

you wouldn’t by chance be referring to crown of thorns, would ya?

If so, PM me over at ATBC.

Comment #126640

Posted by Darth Robo on September 7, 2006 3:03 AM (e)

Sorry, BWE, it was a few years ago. I wish I could remember for the life of me. We only had terrestrial TV back then so I’m guessing it was on BBC2’s “Horizon” programme, or on Channel 4 maybe. If I do manage to find out, I’ll certainly let you know. Sorry ‘bout that. :-(

Comment #126703

Posted by Rob-ot on September 7, 2006 9:12 AM (e)

If anyone here is a physicicst, and knows GA’s, could you drop me an email at rkhull@roanoke.edu?

Comment #126851

Posted by BWE on September 7, 2006 4:34 PM (e)

I’ve looked around and I can’t find it. My wife teaches middle school science and she could use something like it.

Minions of Christ, do you get why the FF isn’t an Intelligent agency? I don’t understand all too well what it is you mean by the idea that you are pre-selecting for the answer. Maybe Roger Rabbit can spell it out. This seems too important to let it lie.

Do you agree that the software is demonstrating that evolution is possible?
Why or why not?

Comment #126909

Posted by Darth Robo on September 7, 2006 6:47 PM (e)

Not too which person you’re responding to there, but I get that the FF isn’t intelligent and the software IS demonstrating that evolution is possible. Far as I can tell, only the Rabbitt has that problem. Probably the reason why we don’t usually let rabbits near computers. :)

Comment #126914

Posted by Roger Rabbitt on September 7, 2006 7:05 PM (e)

Dave Thomas says:

What you seem to be missing is that I’m simply testing the current population to find “shorter is better” candidates for breeding the next generation,

I’m fully aware of that. And since you’ve now explicitely admitted such, hopefully we can dispense with the “show me the code” requests.

and not illicitly providing the computer with a “target sequence” (e.g. the formal Steiner solution(s)),

I’ve said nothing about a “target sequence”. So, although you seem passionate in your arguments, you have addressed them to the wrong “target” (Sorry, I couldn’t resist).

nor am I testing digital organisms for “relatively greater proximity to future function (i.e., the target sequence).”

Now it’s this last part that demonstrates your confusion. Testing for proximity to a future goal doesn’t require a target sequence in many cases, including this one. Despite claims to the contrary, you did have prior knowledge about the solution: you know that it is the shortest total length connecting all the fixed nodes. You need not know what the genome will look like, or even what the shortest length will turn out to be, for the GA to frequently find the Steiner’s solution. Because you have directed it to the subspace where it resides.

Now, when you claim:

I have amply demonstrated that my program selects for present function, not future function.

I don’t think you have. You’ve selected for a characteristic, not a function, and that characteristic is relevant to the goal of the program.

There seem to be some here who wish to ignore the differences between intelligent and natural selection. Allow me to quote Dawkins:

Life isn’t like that. Evolution has no long-term goal. There is no long-distance target, no final perfection to serve as a criterion for selection,

All appearances to the contrary, the only watchmaker in nature is the blind forces of physics, albeit deployed in a very special way. A true watchmaker has foresight: he designs his cogs and springs, and plans their interconnections, with a future purpose in his mind’s eye. Natural selection, the blind, unconscious, automatic process which Darwin discovered, and which we now know is the explanation for the existence and apparently purposeful form of all life, has no purpose in mind. It has no mind and no mind’s eye. It does not plan for the future. It has no vision, no foresight, no sight at all. If it can be said to play the role of watchmaker in nature, it is the blind watchmaker.

Comment #126925

Posted by Popper's ghost on September 7, 2006 7:32 PM (e)

Since you’re back, Roger, how about answering my questions?

What about a FF that wasn’t designed to find its optimum … won’t it find its optimum anyway? If not, why not?

Also, I already addressed all your points in
http://www.pandasthumb.org/archives/2006/09/genetic_algorit.html#comment-126074

Despite claims to the contrary, you did have prior knowledge about the solution

No one ever claimed that Dave did not have prior knowledge about the solution. You’re either stupid or lying; which is it?

Comment #126927

Posted by Popper's ghost on September 7, 2006 7:36 PM (e)

Allow me to quote Dawkins:

It’s nice to see that you approvingly quote Dawkins’s statement that “the only watchmaker in nature is the blind forces of physics”.

Comment #126929

Posted by Roger Rabbitt on September 7, 2006 7:39 PM (e)

“Proximity to the optimum” requires prior knowledge of the optimum. That’s not how real fitness functions work. They work by comparing the relative performance of current candidate solutions. - Wesley R. Elsberry

Comment #126930

Posted by Popper's ghost on September 7, 2006 7:43 PM (e)

Ok, I vote stupid, since the statement RR just quoted goes against him.

Comment #126931

Posted by Popper's ghost on September 7, 2006 7:45 PM (e)

Specifically, RR is too stupid to grasp that “requires prior knowledge of the optimum” means “requires prior knowledge of what the optimum is”, not “requires prior knowledge about the optimum”.

Extremely stupid bunny.

Comment #126932

Posted by Popper's ghost on September 7, 2006 7:47 PM (e)

OTOH, perhaps RR does know that ““requires prior knowledge of the optimum” means “knows the optimum ahead of time” and is just pretending not to. After all, just how stupid can someone be?

Comment #126933

Posted by Popper's ghost on September 7, 2006 7:51 PM (e)

BTW, Wesley made it explicit in the very post from which RR mined that quote: “You don’t have to know what the actual minimal tour length is in order to deploy it and get a short tour as the result of running the algorithm.”

Comment #126937

Posted by Darth Robo on September 7, 2006 8:11 PM (e)

“Ok, I vote stupid, since the statement RR just quoted goes against him.”

That’s what I thought.

“ “Proximity to the optimum” requires prior knowledge of the optimum. That’s NOT how real fitness functions work.” [emphasis mine]

Lettuce, anyone?

Comment #126944

Posted by CJ O'Brien on September 7, 2006 8:42 PM (e)

The Toon quotemines Dawkins:

Life isn’t like that. Evolution has no long-term goal. There is no long-distance target, no final perfection to serve as a criterion for selection

We’re letting the Toon get away with a fast one here if we allow a certain feature of this argument to go unchallenged. Remember that the purpose of the challenge was not to “prove evolution.” It was to rebut a very specific argument made by creationists, to the effect that GA’s represent “intelligent selection,” and do not faithfully model natural selection.

The confusion has already been addressed in these comments, by Richard Hoppe. My modest role here is simply to call Mr. Rabbit’s attention to the fact that his specious objection has already been dealt with.

RBH wrote:

In all GAs I know of, including Dave’s, the fitness function selects on the basis of a particular property of the genotype or phenotype. The fitness function is univariate (though one can complicate that with ‘soft’ contraints’). In Dave’s program, that property is the phenotypic length of path, with short paths being favored. In biological evolution the fitness function does not select on the basis of a particular property of the evolving population, but rather selects on the basis of any property that increases reproductive success of the phenotype; it is indifferent to which property that might be. A population in a region of growing aridity can increase its fitness over time by evolving ways of conserving water, and/or evolving ways of extracting water from the environment, and/or evolving ways of more efficiently utilizing water, and/or something else.

In other words,

GA: F = f(p1)
BE: F = g(p1,p2,p3,.., pn)

Where F is the selective fitness (reproductive advantage) and p is some property/trait of the phenotype.

I think the “fine tuning” arguments of the IDists reduce to ignoring this difference. In GAs we “fine tune” the fitness function to evolve solution(s) to a problem that we have defined as interesting. In biological evolution there is no such fine tuning. Biological evolution grabs whatever property(ies) thrown up by the variation-generating mechanisms that provide an immediate gain in reproductive advantage in a given environment. Variations in multiple properties are on offer, and natural selection picks and chooses among them.

Comment #126965

Posted by BWE on September 7, 2006 11:29 PM (e)

Silly Rabbit, ID is for Maroons. And you’re proving that over and over and over. Take 3 steps back, forget the equations and realize that the entire argument is wrong. You have missed the whole point or you are deliberately obfuscating and you know your arguments to be wrong.

Comment #126983

Posted by Popper's ghost on September 8, 2006 1:26 AM (e)

The Toon quotemines Dawkins:

To be fair, he didn’t quote Dawkins out of context. But the Dawkins quote works in the wrong (from ID’s POV) direction. An IDer might want to argue that, since there’s an intelligent programmer, that shows that evolution must have an intelligent programmer too. But the Dawkins quote is all about how nature is different in that there is no programmer; the fitness function of nature wasn’t chosen by anyone for any intended purpose. If RR thinks Dawkins is right (and why else would he quote him?), then he should think ID is wrong. He thinks somehow that the Dawkins quote is in his favor, but he might not if he were to honestly answer the question that I have (repeatedly) put to him:

What about a FF that wasn’t designed to find its optimum … won’t it find its optimum anyway? If not, why not?

The point, of course, is that a genetic algorithm can find the optimum of an FF regardless of whether it was intelligently selected, so the point where intelligence was applied by Dave – the selection of the FF – is irrelevant.

The confusion has already been addressed in these comments, by Richard Hoppe.

In #126214 I offered a counterargument to his analysis.

Comment #127093

Posted by Alann on September 8, 2006 10:28 AM (e)

For example in the sequence 1,2,3,…n; although n is never specified in any real sense the fitness function identifies that 3 has better survivability than 2 and would theoretically recognize the value n if reached as the most survivable.

Popper's ghost wrote:

There is so much wrong with this. The fitness function doesn’t “recognize” anything, and certainly doesn’t “recognize” the optimum; it’s simply a comparison. If 3 is preferred over 2, then 3 is preferred over 2. But there is no progression from 2 to 3. In the Steiner network problem, the algorithm does not find a network of length m, and then turn it into a network of length m-1, and so on, until it reaches the optimum. And if it does reach the optimum, it doesn’t stop; it has no way of knowing that it is an optimum.

The fitness function is just a mathematical expression f(x). It is a fact that there is a value or values of x which result in the highest possible result for f(x). In this sense the fitness function does “recognize” an optimum by returning the highest possible result.

It is the process which does not recognize an optimum and will continue to produce new variations even after an observer identifies that the optimum has been reached.

There is progression here. Using a simple representation of mutation +/-1 it is equally likely for 2 to become 1 or 3. The selection model will favor 3. This is a silly complaint anyway since evolution predicts a progression towards fitness.

Lets alter the example slightly: The fitness function calculates such that numbers with the fewest number of integer factors have the best survivability. As an observer we realize that prime numbers have the best survivability in this environment.

2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41

Depending on how we model this we might easily find the numbers through 23 are common but 29 and on never appear. This is because this is a 6 mutation gap and 24 is a very unfavorable number.

This seems to me a reasonable representation of so called Irreducible Complexity. In the end though its a probability game, alter the rate of selection, frequency of mutation, size of the population and suddenly the jump to 29 happens readily.

IC may have a sound theoretical basis but it is virtually impossible to prove for a real biological system since you would have to accomplish the astounding feat of having complete and accurate models for fitness and mutation; process using a real population size, and either follow the precise lineage or disprove any possible lineage. In addition IC must show that the probability is almost statistically impossible, and even a small the margin of error in your model would easily account for such a result.

Comment #127108

Posted by Popper's ghost on September 8, 2006 11:12 AM (e)

It is a fact that there is a value or values of x which result in the highest possible result for f(x).

Point-missing tautologies are ridiculous.

In this sense the fitness function does “recognize” an optimum by returning the highest possible result.

Point-missing redefinitions of words are ridiculous.

There is progression here. Using a simple representation of mutation +/-1 it is equally likely for 2 to become 1 or 3.

That’s ridiculous. Mutations don’t act directly on the value of the fitness function; the change in the value can be arbitrary.

This is a silly complaint anyway since evolution predicts a progression towards fitness.

It’s not a silly complaint, it’s a fact; progress is not “a progression” in the sense I used the phrase. Such word games are ridiculous.

Lets alter the example slightly: The fitness function calculates such that numbers with the fewest number of integer factors have the best survivability. As an observer we realize that prime numbers have the best survivability in this environment.

What example? The example here is Steiner networks, which are not numbers.

If you have a fitness function that favors numbers with the fewest factors, and mutate numbers by, say, adding or subtracting 1, then you’re liable to get stuck at all sorts of false peaks, because the fitness of the mutated number isn’t related to the fitness of the previous value. Consider the number 26, with 2 factors. Add 1 and you get 27, with 3 factors, which fares worse. Subtract 1 and you get 25, with 2 factors, which fares the same. Subtract 1 again and you get 24, with 4 factors, which fares badly. So you get stuck bouncing between 25 and 26. The example is ridiculous and doesn’t make any interesting or relevant point.

This seems to me a reasonable representation of so called Irreducible Complexity.

That’s ridiculous. Irreducible Complexity is “a single system composed of several interacting parts that contribute to the basic function, and where the removal of any one of the parts causes the system effectively to cease functioning”; go see the article all about it at the top of the PT main page.

IC may have a sound theoretical basis

Beyond being ridiculous, that’s blatantly and ignorantly false. Go learn about this stuff instead of making up all sorts of ridiculous nonsense and wasting your and everyone else’s time.

Comment #127110

Posted by Popper's ghost on September 8, 2006 11:26 AM (e)

P.S.

It is the process which does not recognize an optimum and will continue to produce new variations even after an observer identifies that the optimum has been reached.

That’s ridiculous; an observer has no way of knowing the optimum has been reached unless the observer already knows the optimum. In the case of Steiner trees, Dave inferred that the smallest path length that was produced by either humans or the GA was optimal, but he wasn’t able to recognize it simply by seeing it.

And the comment is ridiculous because I was responding to the pathetically ridiculous claim that “the fitness function identifies that 3 has better survivability than 2 and would theoretically recognize the value n if reached as the most survivable”. The fitness function recognizes nothing, and that fact isn’t changed by putting ridiculous scare quotes around “recognize” and ridiculously claiming that the tautology that the function has an optimum some-ridiculously-how counts as “recognizing” the optimum.

Comment #127127

Posted by Alann on September 8, 2006 12:19 PM (e)

I think you are trying to dismiss my point out unfairly.

In a real world sense natural selection does recognize an optimized variant, this does not in any way imply that natural selection or any other fitness model is inately an intelligent process. We can and have engineered species like disease resistant crops which have better survivability then the purely natural variants.

I never said mutations act on the fitness function. The range of mutation is limited but the result does not favor fitness. That is why I said with a range of +/-1 for mutation 1 and 3 are equally likely offspring of 2. It is the probability of 3 having offspring vs 2 having offspring which is favored independent of mutation.

I specifically restated my example which I realize is differnt than the stienr. I am trying to express the principles as simply as possible but it applies equally to the Stiener problem:

What ID is calling the “target sequence” (and yes I agree this is bad termonology) is the idea that the fitness equation has an optimal solution and in the conceivable lineage there are no necessary steps which are neutral or less fit.

They do miss the idea that the Stiener solution could model Irreductible Complexity as well. In principle there exists several possible initial states which will almost invariable favor mutation into McGuyver solution. Once a McGuyver variant exists selection will strongly favor the McGuyver over the steps needed to reach the double bowtie solution. Put another way one of the steps between the McGuyver and the double bow tie is sufficiently harmful when compared to the existing McGuyver that it will invariably be selected out.

I tried to expressed this as the jump from 23 to 29 where 24 has multiple factors (1,2,3,4,6,8,12,24).

My understanding of IC in biological terms does not require that the intervening step (removed piece) is inherently lethal, only that the value of the selectable trait has been lost, such as a flagella tail which cannot propel.

In principle IC has merit. You can show in principle that a catalyst is required, and is missing from our current understanding of the formula. If you argued IC in chemical terms you could prove it. The problem is IC has little practical value in biology because we are already so many factors which we cannot define precisely that create a margin of error while small in reasonable terms more than sufficient to account for IC.

Comment #127142

Posted by Coin on September 8, 2006 1:07 PM (e)

What ID is calling the “target sequence” (and yes I agree this is bad termonology) is the idea that the fitness equation has an optimal solution

Well, of course, in this particular case, there isn’t an optimal solution; there are two optimal solutions.

Comment #127183

Posted by Alann on September 8, 2006 3:50 PM (e)

Anyway I am through playing the Designer’s Advocate.

Dave’s point against inference of design loses none of its potency.

The McGuyver results strongly refutes the suggestion of a true target sequence. Getting stuck with these non-optimal variants is very much in line with evolution and natural selection.

As much as ID wants to complain that the problem is unfair, this places the burden on them to explain what a fair problem would be. Too bad they suck at coming up with alternatives.

Comment #127194

Posted by Scott on September 8, 2006 4:46 PM (e)

Alann wrote:

What ID is calling the “target sequence” (and yes I agree this is bad termonology) is the idea that the fitness equation has an optimal solution and in the conceivable lineage there are no necessary steps which are neutral or less fit.

If I understand correctly, this isn’t true. It may happen that all the offspring of a given generation are in fact “less fit” than the parents. One of those less fit offspring must eventually yield a locally “optimal” solution, yielding a lineage that does not have a monotonically increasing fitness. The algorithm and the fitness function don’t care. Now, admittedly, given enough test cases, there will likely be a lot where a “successful” lineage does have monotonically increasing fitness, but it’s not required.

In fact, one could conceive of a fitness space with a “ridge” in it, whereby the lineage *must* contain a necessary step that is less fit than its parents if the line traced through the fitness space is to achieve a more global optimum.

Comment #127288

Posted by Popper's ghost on September 8, 2006 8:42 PM (e)

I think you are trying to dismiss my point out unfairly.

I think that’s ad hominem bullpucky. I find your “points” to be complete and utter drivel that display ignorance and severe confusion, and I treated them far more fairly than they deserved.

As much as ID wants to complain that the problem is unfair, this places the burden on them to explain what a fair problem would be. Too bad they suck at coming up with alternatives.

Indeed, but that was established without any of your “help”.

Comment #127295

Posted by Popper's ghost on September 8, 2006 8:58 PM (e)

What ID is calling the “target sequence” (and yes I agree this is bad termonology) is the idea that the fitness equation has an optimal solution

Well, of course, in this particular case, there isn’t an optimal solution; there are two optimal solutions.

On top of that, the statement is complete and utter malarkey; that isn’t what the Meyer is calling the “target sequence” – what he means by “target sequence” is Darwin’s Weasel phrase – the predefined goal. And when the problem is changed to something like Steiner networks, the IDiots still mean that, even though it doesn’t apply. So now the “target sequence” refers to the optimal solution (even though, as you point out there isn’t one), even though that wasn’t predefined and does not exist anywhere in the program – or even in the programmer. So then they argue some nonsense about it being “implicit” in the fitness function – which in the Steiner network case is merely a comparison function that prefers the shorter path, which is a characteristic defined by the problem – to find the network with the shortest path. But the solution isn’t implicit in the FF at all; apply a broken GA to that FF, and it will never find the solution. All that was shown here is that there is some GA that, when applied to that FF, will produce (what we think are) the optimal solutions. Meyer’s and Cordova’s claims, and Alann’s claims about their claims (as well as his nonsense about intermediate steps), are complete hogwash.

Comment #127305

Posted by Popper's ghost on September 8, 2006 9:58 PM (e)

As a refresher, here is Meyer’s statement:

Nevertheless, as shown elsewhere (Meyer 1998:127-128, 2003:247-248), these [genetic algorithm] programs only succeed by the illicit expedient of providing the computer with a ”target sequence”´ and then treating relatively greater proximity to future function (i.e., the target sequence), not actual present function, as a selection criterion.

He equates “target sequence” to “future function”. This obviously isn’t the fitness function, of which there is no present vs. future version in the program; he’s referring to the actual entity, which is a string of characters in the Weasel case and a specific Steiner network in this case. He says that the computer is provided with this entity, which is true in the Weasel case but not in the Steiner case. And he claims that the fitness function selects for proximity to that entity, which is true in the Weasel case but not for the Steiner case. In the Steiner case, that entity isn’t known, so it isn’t possible to calculate proximity to it. And, as Coin points out, there are two such entities – which are mirror images of each other, so they aren’t close to each other in the search space; proximity to one is not proximity to the other, and if the algorithm worked the way Meyer portrays it, it could never reach either one. What folks like Alann can’t seem to get their heads around is that these mutating entities follow paths through search space, not along the linear sequence of values of the FF, and so “proximity” is a matter of the former, not the latter. You can’t just take an arbitrary Steiner network and mutate it such that it now has a shorter path length; if you could, there would be no need for a GA. That’s why “examples” like 1,2,3,…n or 2,3,5,7,11,… are inappropriate and downright ludicrous.

Comment #128229

Posted by Alann on September 11, 2006 3:35 PM (e)

Popper's ghost wrote:

You can’t just take an arbitrary Steiner network and mutate it such that it now has a shorter path length

All right now you’re not making any sense. When the model mutates the Stiener path a shorter path must be a possible outcome; otherwise you’ve reached an evolutionary dead-end.

And proximity in search space versus linear sequence? Really I think you are the one who is lost. What is ludicrous about presenting a simplified alternative? An integer domain (search space) is easier to discuss, and there is no reason why you cannot express mutation and selection in those terms.

As for future vs. present function this is a philosophical agrument about non-selectable intermediates. In the lineage A->B->C where the fitness of C is greater than the fitness of A, the issue is what the fitness of B should be. If you believe that B is in reality a detrimental step; however the abstract problem uses a fitness model where B is a positive step, can you not argue that the reason B is overrated is because you have created a model where future function is innately expressed in present function? Although to be accurate this is in the abstraction of the problem, not in the fitness model.

I do not consider this argument ludicrous, but it is far from compelling.

Comment #128276

Posted by Dave Thomas on September 11, 2006 6:25 PM (e)

Alann wrote:

As for future vs. present function this is a philosophical agrument about non-selectable intermediates. In the lineage A->B->C where the fitness of C is greater than the fitness of A, the issue is what the fitness of B should be. If you believe that B is in reality a detrimental step; however the abstract problem uses a fitness model where B is a positive step, can you not argue that the reason B is overrated is because you have created a model where future function is innately expressed in present function? Although to be accurate this is in the abstraction of the problem, not in the fitness model.

I’m not sure where Alann thinks all this is going. And I don’t know why Alann has to make his points by referring to other types of problems, such as sequences of primes.

As regards the topic of this series of posts, Steiner’s problem, remember that mutations are not applied to “networks,” but rather to strings of data that look like “0845617892168435168TFTFTTFFTTFTFTFTF…”

These strings are what are mutated, bred (crossovers), and transcribed. The Fitness is based on the lengths of segments in the “expressed” version of the creatures (phenotypes).

I haven’t put any restrictions on the program to ensure, for example, that “fitness” is a monotonically increasing function of the number of generations.

Because of the stochastic nature of the breeding/selection process, less-fit individuals can still be selected for breeding. Even if two individuals have higher levels of fitness, there’s no guarantee their offspring (crossovers) will have a similar high fitness.

I hope that helps.

Dave

Comment #128398

Posted by Popper's Ghost on September 12, 2006 3:32 AM (e)

All right now you’re not making any sense. When the model mutates the Stiener path a shorter path must be a possible outcome; otherwise you’ve reached an evolutionary dead-end.

Sigh. Do you know what a local peak is? Do you know anything?

Comment #128543

Posted by Alann on September 12, 2006 10:12 AM (e)

I was attempting to abstract a general issue from the complexity of the problem. I realize this is not working.

My point was that the argument about future fitness vs. present fitness can be taken to refer to the nature of the problem (that the problem lends itself to functional intermediates) and not as a direct argument against the fitness function.

I do not agree with the ID argument on this point, I am only trying to see their point of view. I apologize for letting this take the conversation so far off topic.

Oh and for the record (since someone seems to think I am and idiot) my background is mathematics, logic, and computer science. I do not consider myself in any way an expert on biology.

Comment #130083

Posted by Popper's ghost on September 15, 2006 5:29 AM (e)

Odd then that you show no understanding of mathematics, logic, computer science, or biology.

Comment #131397

Posted by Dave Thomas on September 18, 2006 8:19 PM (e)

Comments are now Closed.

It’s been fun. Let’s do it again some day, shall we?

Thanks & regards, Dave