Uncommon Descent Serving The Intelligent Design Community

Tautologies and Theatrics (part 2): Dave Thomas’s Panda Food

Share
Facebook
Twitter
LinkedIn
Flipboard
Print
Email

(this also servers as a partial response to a formal request for a response fielded by the UDer’s mortal enemies, the Pandas, specifically Dave Thomas in Take the Design Challenge!)

This is part 2 a of discussion of evolutionary algorithms. In (part 1): adventures in Avida, I exposed the fallacious, misleading, and over-inflated claims of a Darwinist research program called Avida. Avida promoters claim they refuted Behe’s notion of irreducible complexity (IC) with their Avida computer simulation. I discussed why that wasn’t the case. In addition, I pointed out Avida had some quirks that allowed high doses of radiation to spontaneously generate and resurrect life. Avida promoters like Lenski, Pennock, Adami were too modest to report these fabulous qualities [note: sarcasm] about their make-believe Avidian creatures in the make-believe world of Avida. One could suppose they refrained from reporting these embarrassing facts about their work because it would have drawn the ridicule the project duly deserves from the scientific community.

In contrast to the spectacular computation theatrics of Avida, Dave Thomas of Pandas Thumb put together a far less entertaining but no less disingenuous “proof” of the effectiveness of Darwinian evolution. Every now and then, the Panda faithful need some food to help them sustain their delusions about naturalistic evolution. This food I call Panda food, and chef Dave Thomas cooked up a pretty nice recipe to feed delusions to the faithful Pandas at our rival weblog. Perhaps if Dave Thomas refines his Panda food recipes, he should consider opening a restaurant chain, and maybe he should call it Panda’s.

To introduce what is at stake, I first introduce the idea of known explicit targets and unknown but desired targets. An explicit known target is a target which we clearly can see, describe, and precisely locate. Examples of such a target would be the bulls-eye an archer aims for.

We can build machines to help us hit such explicit targets. A good example of such an intelligently designed explicit-target hunter is the Infra-red Maverick Missile.

IR Maverick

When on a mission to destroy something like a tank, the aircrew tasked to fly the mission, locates the explicit target (i.e. a tank), and then describes the target to the missile through the process of designation (the designation process is analogous to a point-an-click on the aircrews video screen). Upon launch, the missile employs a feedback and control strategy very akin to classical control theory to home its way to the target.

But those are examples hitting explicit targets. What about unknown, but desired targets? Let me call such targets “targets of opportunity”. A target of opportunity would be the kind of target we know inexplicitly, but still seek after. A good example of such a target of opportunity would be deer in forest during a deer hunting season. Hunters have a general strategy for tracking and hunting the deer, but they don’t know in advance what their target will be (be it Bambi or Bambi’s mother, for example). We don’t know what kind of game we may or may not bag, just that we have a general idea of what we’re striving after.

Does the military have human/machine systems with “target of opportunity” capability? Ahem. Even if I did know of such things, I’d have to deny the existence of such missiles like SLAM-ER Target-of-Opportunity Missile.

SLAM

In the field of engineering and human endeavors, many of the solutions can be thought of like the process of hunting down targets of opportunity. Sometimes we are confronted with a problem, we have strategy we know in advance will yield a solution even before we explicitly know what the solution is.

A VERY simple case in point. Take the integers from 1 to 1000. The following question is posed to us, “what is the sum of these integers, 1 to 1000?” Do we have to know in advance what the answer is? Maybe, maybe not. I’ll cheat and give you the answer. It’s 500,500.

The important point is, that even if you did not know the answer (the target of opportunity) in advance, you have well-proven strategies to find and hit the target. One such strategy would be to sit down with a calculator or spread sheet and add the numbers form 1 to 1000. Another would be to write a computer program which added them together. Yet another would be to write a genetic algorithm to find the answer. I’ll provide several such examples a the end of this essay for you computer geeks out there! But the most important thing in hitting such a target of opportunity is that by intelligently designing the right strategy, one can hit a target of opportunity without the target being explicitly described. Get the picture?

Adding of numbers is a very primitive example of hunting down a target of opportunity. A far more sophisticated example, is finding the optimal design of a computer chip given certain constraints. The space of possibilities is extremely large, but engineers can program genetic algorithms (much like they build sophisticated calculators) to hunt down solutions on their behalf.

Back to the Pandas challenge of me. To build their case, anti-IDers will often need to equivocate and obfuscate the issues. Clarity is their enemy, confusion is their friend. Such was the recent offering by Dave Thomas of Pandas in a long, tedious essay, Target? TARGET? We don’t need no stinkin’ Target!.

He shows how a genetic algorithm can hunt down a target of opportunity. But as I hope I’ve shown, such a thing is unremarkable! However, he hints his program demonstrates mindless forces can find such targets without intelligent design.

Dave employs equivocation and Orwellian Double Speak to argue his case. He takes a designed selection strategy and tries to pass it off as an example of mindless undesigned forces which can magically converge on a target of opportunity. How does he promote his theatrical gimmick? Read what he says, and then read the challenge he poses to IDers:

Genetic Algorithms are simplified simulations of evolution that often produce surprising and useful answers in their own right. Creationists and Intelligent Design proponents often criticize such algorithms for not generating true novelty, and claim that these mathematical recipes always sneak the “answer” into the program via the algorithm’s fitness testing functions.

There’s a little problem with this claim, however. While some Genetic Algorithms, such as Richard Dawkin’s “Weasel” simulation, or the “Hello World” genetic algorithm discussed a few days ago on the Thumb, indeed include a precise description of the intended “Target” during “fitness testing” on of the numerical organisms being bred by the programmer, such precise specifications are normally only used for tutorial demonstrations rather than generation of true novelty

I have placed the complete listing of the Genetic Algorithm that generated the numerous MacGyvers and the Steiner solution, at the NMSR site.

If you contend that this algorithm works only by sneaking in the answer (the Steiner shape) into the fitness test, please identify the precise code snippet where this frontloading is being performed.

Thomas sneaks the answer in by intelligently designing a strategy which will find the target of opportunity. This sort of gimmickry is not much beyond the following illustration:

One kid goes up to another with a paint ball gun and shoots him, and says,

“Don’t get mad, I wasn’t aiming at you, I was aiming at the shirt you were wearing.”

bulls eye shirt

By giving the computer the correct strategy (like a method of adding numbers) one guarantees the answer (or target) will be hit, or at least a near miss. There are numerous strategies which will succeed, but they still must be intelligently designed. For the less technically minded readers, I hope what I’ve written so far gives a narrative explanation of what’s really going on.

To get an idea of how easy it would be to give the wrong search strategy, consider a long sequence of driving directions. If even one occurence of the word “left” is substitutted for “right” or vice versa, the directions will fail. Without intelligence programming the selection strategy, the target would have missed in Dave’s program. However, Dave Thomas used intelligence to ensure a miss wouldn’t happen, or at least, less likely. He thus snuck the answer in after all, contrary to his denials.

In the post script, for the benefit of the technically minded readers, I’ll address the more technical details to help put all of Dave’s nonsense to rest.

Salvador Cordova

PS

TECHNICAL DETAILS

Dave’s Challenge:

If you contend that this algorithm works only by sneaking in the answer (the Steiner shape) into the fitness test, please identify the precise code snippet where this frontloading is being performed.

I’ll identify it plain and simple, and call his bluff. The major front loading is in how selection is made. With the wrong selection description, the wrong target of opportunity, if any, will be hit. Simple!

Dave counts on a bit of obfuscation to make his work unreadable. He chooses an antiquated computer language known as FORTRAN to make his demands. “Lets invite UD software engineers to read my hieroglyphics and invite them to show where I sneaked the answer in!” Sheesh.

That said, I will identify an important part of his barely readable code, which, if removed will cause the genetic algorithm to miss the target. The fact that this section is essentially irreducibly complex is testament that intelligent design was needed to enable the genetic algorithm to do its thing.

If any section is even slightly re-written in a mindless way, the program likely misses the target at best and fails to even functionally compile at worst. I’m sorry the following link will look like hieroglyphics to some, but of necessity, I need to show it to call Dave’s bluff with it. Here is one of the many places where Dave sneaks the answer in:

Dave Thomas’s Code Bluff

Does Dave Thomas doubt me that I’ve identified where he snuck the answer in? How about we allow 5 random changes to the code segment I pointed to? Does he think such mindless modification can be introduced and the algorithm will still function? Do we think the GA will successfully hit the target (assuming the GA can even run) in the midst of 5 measly random changes? Will Dave run away from the fact that the above selection strategy needs intelligent design? Or will he represent that the above code segment came to be of its own accord, and that the selection strategy described by the above code is the product of blind mindless processes?? Will he continue to insist what he did is not sneaking the answer in?

The selection strategy in his program is anything but natural. Just because the terms Darwinian and selection are used in the argument does not mean intelligent agency is not permeating the entire project. Such labelings are doublespeak. If I went through and re-labeled everything intelligently designed selection vs. natural selection, you’d get the real gist of what’s happening!.

All right, as I promised, I’ll now present several ways to add the numbers 1 to 1000 and get the answer 500500. With the exception of the first program, in each case the target answer will not be an explicitly stated target, but rather a target of opportunity which is hit via an intelligently designed hunting strategy.

The sample programs are written in the C language.

This program will give the explicit answer to question, “What is the sum of the numbers from 1 to 1000?” :

explicit.c

This program will give the answer to question, “What is the sum of the numbers from 1 to 1000?” through a brute force computation which involved adding all the numbers from 1 to 1000:

brute.c

This program will give the answer to question, “What is the sum of the numbers from 1 to 1000?” through Gauss’s method of mathematical induction:

gauss.c

This program will give the answer to question, “What is the sum of the numbers from 1 to 1000?” through recursive addition of all the numbers from 1 to 1000 :

recurs.c

This program will give the answer to question, “What is the sum of the numbers from 1 to 1000?”
through a genetic algorithm. The algorithm pairs up numbers form 1 to 1000. Rather than compute the midpoint via a simple calculation it takes a random number as a starting point and then mutates the random number and uses a fitness function to select between the mutant and the original number to give the current best midpoint estimate. The process is repeated with increasing refinement. 2 times the sum of the midpoints then becomes the sum we are seeking. Snapshots of the algorithm’s progress are given along the way. The following computational theatrics are akin to what Dave Thomas performed:

ga.c

PPS
I and my co-workers (while I was in school in the 90’s) worked on target recognition systems and simulations of missile guidance systems. Dave can feed the biologists at Pandas Thumb his Panda food, but half the UDers here have relevant engineering backgrounds to see through the charade. He could not have picked a worse thing to do than challenge the UDers to disprove the flimsy claims of his intelligently designed program.

Comments
Caligula responded: *Of course* it is intelligently designed.
Thank you for responding. Can you, for the benefit of the reader explain what would happen to this algorithm in the absence of 1. intelligent design of the selection process 2. intelligent design of the "creatures" such that they are amenable to intelligently designed selection Would you count on the system still hitting the target in question? In the absence of such intelligent design of the system, would you expect the system to generate CSI?scordova
August 15, 2006
August
08
Aug
15
15
2006
09:12 AM
9
09
12
AM
PDT
Everyone, please see: https://uncommondescent.com/index.php/archives/802Scott
August 15, 2006
August
08
Aug
15
15
2006
09:06 AM
9
09
06
AM
PDT
scordova: "....I request you answer this question. Is the selection process in Thomas’s code natural or intelligently designed?" I don't think that you are asking the right question. Of, course, a human wrote this program, so it is, (by definition, I hope) intelligently design. The question is: does it properly model or mimick the intended process of some random variation followed by some sort of an evaluation step?ofro
August 15, 2006
August
08
Aug
15
15
2006
09:05 AM
9
09
05
AM
PDT
Since no one pays any attention to me anyway, I will continue to let others speak for me whenever possible. "The struggle for existence and natural selection are not progressive agencies, but being, on the contrary, conservative, maintain the standard." Leo Berg, Nomogenesis, page 406, 1922 From Reginald C. Punnett's book - Mimicry in Butterflies: "Natural selection is a real factor in connection with mimicry, but its function is to conserve and render preponderant an ALREADY EXISTING likeness, not to build up that likeness through the accumulation of small variations as is so generally assumed." page 152, 1915, My emphasis as it is in perfect accord with the Prescribed Evolutionary Hypothesis. Neither Berg nor Punnett exist in the Darwinian literature. I don't believe Gould even mentions these two books in his opus magnus - The Structure of Evolutionary Theory. It constitutes a scandal unprecedented in the history of science. "A past evolution is undeniable, a present evolution undemonstrable." John A. DavisonJohn A. Davison
August 15, 2006
August
08
Aug
15
15
2006
08:40 AM
8
08
40
AM
PDT
Salvador: *Of course* it is intelligently designed. The fitness function is indeed intelligently designed. However, the fitness test applies to each test in such a way as to compare competing organisms for a quality considered a measure of "fitness", in this case the conservation of energy. Has any of the targets let alone even a *vague* route to any of the "targets" (the formal solution or the MacGyvers) been intelligently designed? Not at all. Thomas has no idea whatsoever by which routes any of the lineages in the algorithm proceeds. All he's assuming, or hoping, is that the winning lineage will hit upon a fairly good solution (hopefully at least a "MacGyver"). In this problem, they seem to do so. The problem is complicated enough for the end results to qualify as CSI. Whether the ever-changing fitness landscapes of biological evolution also produce such impressive results, is not proven by Thomas' work, of course. Evolution simulations are leagues too simple to be compared to real life. But Thomas' work does disprove Dembski's claim that only intelligence can ever produce CSI. My apologies if my rambling starts to annoy. From now on I'll try and restrain myself by at most responding to your comments addressed to me.caligula
August 15, 2006
August
08
Aug
15
15
2006
08:18 AM
8
08
18
AM
PDT
caligula asserts: The point under discussion is, can gradual random mutations and selection ever produce CSI. This *can* be readily demonstrated by the program Thomas has described.
Before you spam this thread with any more misdirection, I request you answer this question. Is the selection process in Thomas's code natural or intelligently designed? Salvadorscordova
August 15, 2006
August
08
Aug
15
15
2006
07:59 AM
7
07
59
AM
PDT
Caligula asked: Are you saying that nature does *not* select for the functions seen in phenotypes?
No. Besides, \"select\" is double speak. Read Allen Orr\'s slamming of Daniel Dennett: Dennett\'s Strange idea:
Dennett is fond of speaking of selection as leading organisms through “Design Space”: Selection “lifts” organisms along “ramps” of good Design. Although this imagery is often useful, it invites two subtle misconceptions about adaptation. The first is that natural selection cares about Design. In reality, selection “sees” only brute birth, death, and reproduction, and knows nothing of Design. Selection — sheer, cold demographics — is just as happy to lay waste to the kind of Design we associate with engineering as to build it. Consider the eyes of cave organisms who live in total darkness. If eyes are expensive to make, selection can wreck their exquisite engineering just as surely as it built it. An optic nerve with little or no eye is most assuredly not the sort of design one expects on an engineer’s blueprint, but we find it in Gammarus minus. Whether or not this kind of evolution is common, it betrays the fundamental error in thinking of selection as trading in the currency of Design.
Caligula: Are you saying the fitness tests made by an organism’s environment are *random*? No biologist would agree.
The organism\'s environment is random with respect to fitness, and fitness is also based on whims of what an human observer would deem \"fit\". Fitness is a non-rigorous conception. You may want to read Lewontin\'s article in Santa Fe 2003 to see that \"fitness\" is a highly suspect quality based on the observer\'s preferences. Evolutionary biology pretends to be objecive, Lewontin\'s essay crushes that pretense. For example, one could easily conclude a lineage is more fit since it survived. Well, it may have survived simply because it was lucky. Thus, by definition it has a survival advantage because it has the quality of being lucky! See David Raup\'s book: Extinction: Bad Genes or Bad Luckscordova
August 15, 2006
August
08
Aug
15
15
2006
07:43 AM
7
07
43
AM
PDT
ofro: Additionally, the code running GAs also simulates the very *laws of nature*. As the latter are hardly mutating around us in the real world, it would very silly to mutate them in the computer, as per scordova's requirements. As I said, mutating the program as a whole is really like mutating the OS or the CPU or the motherboard. Of course, there have long been GAs where the organisms *themselves* are virtual code snippets. However, this kind of "genome" is hardly a general requirement for organisms used in GAs. The point under discussion is, can gradual random mutations and selection ever produce CSI. This *can* be readily demonstrated by the program Thomas has described. Provided that his fitness function does not "peek" into the future (i.e. peek at a pre-set "target"). Well, it doesn't. It checks whether the connectivity (basic functionality) is maintained, and whether the energy waste (road length) is *relatively* shorter than that on the competitors on every step. It's just as generic as any evolutionary arms race could be: conserve energy without losing a needed functionality. It does not, in any way, contain a definite path to a pre-set goal. In fact, the algorithm used by Thomas tends to find a local optimum which it can't escape by gradual changes, and the end results of separate test runs vary greatly. Almost all of the winners (the "MacGyvers") do *look* as if the winning lineage had "smelled" the basic principle of the problem, by not leaving any redundant road segments or by not using extra dots outside the polygon formed by the cities. This leaves the *impression* of design, but was clearly not front-loaded by human intelligence. I think Salvador is making an unsuccessful argument here. He'd be better off by trying to deny that the "MacGyvers" qualify as CSI, perhaps because they are too numerous to his taste to qualify as "specified". Maybe only the formal solution is CSI? Of course, the problem is that Thomas' algorithm *does* occasionally come up with the global optimum. Also, the "MacGyvers" are *vastly* outnumbered by solutions that look, well, just random noise.caligula
August 15, 2006
August
08
Aug
15
15
2006
07:32 AM
7
07
32
AM
PDT
(note to Bob OH, I had fixed the misspellings you suggested last night, thanks, so that's why your spelling suggestion comments didn't appear, but please feel free to post to this thread. Thanks for the help. Sal)scordova
August 15, 2006
August
08
Aug
15
15
2006
06:54 AM
6
06
54
AM
PDT
1. Could you provide the intelligently designed answer to Thomas’ challenge, please? Failing to do that would, rightly, cast doubt on the essay above
Go to http://www.diku.dk/geosteiner/ and grab the software and use it to answer Thomas's challenge. A good engineer would try to intelligently co-opt someone else's work first. :-) Salvadorscordova
August 15, 2006
August
08
Aug
15
15
2006
06:51 AM
6
06
51
AM
PDT
I don’t understand your argument, and certainly not the validity of your program with respect to the question asked. I have only very limited programming experience, but if I understand your ga.c program, you included the Gaussian solution in the program and then used some random process to zero in on that pre-determined solution. This would be equivalent to taking an explicit geometric solution to the given Steiner problem (I’ll let the experts tell me if there is one at all) and work your way towards that. More basically, I fail to see how your summation example comes remotely close to simulating a selection process in nature. If I understand it correctly, the whole process of checking for fitness is one of optimizing an outcome. I can’t think of a process in nature where a target like a sum needs to be obtained (somebody may mention checking the several quality control points during mitosis, but that is not an optimizing process, either). Thus I don’t see how approaching an explicit solution could be a genuine solution to the question posed. Also, your proposal to mutate the code makes no sense to me. The GA code is the software version of the behavior of the hardware called “enzyme” or “cell” or “organism”, plus a way to randomly changing this behavior in random directions and testing the outcome. Let’s take the example of an enzyme catalyzing a reaction X going to Y. The code is supposed to simulate how I can modify the enzyme such that the reaction output is optimized, i.e. either a (relative or absolute) maximum or minimum is reached. If I change the code like you proposed, I will either change the enzyme’s function so that it catalyzes a different reaction X going to Z or even P going to Q or, more likely, totally destroy the enzyme. I don't think that this was the purpose of the exercise.ofro
August 15, 2006
August
08
Aug
15
15
2006
06:18 AM
6
06
18
AM
PDT
sagebrush gardener: I would surely want to see you "tweak" by hand, say, the weights of a neural network "until it does" (give the "correct" results)! It's a better idea to just let the NN learn the "target" using a blind and extremely generic method called "backpropagation". How is a NN not self-learning? NN/backpropagation is a generic method for automatically finding factors for the terms of a generic sum expression capable of approximating any non-linear function. (See e.g. Taylor's polynomes; a NN is just a computational representation for such polynomes, and backpropagation is a blind technique for learning the factor for each term of the polynome.) If you think that a human is always front-loading the learning process by providing the backpropagation algorithm with the correct outputs of the function to be learned, well that is simply not true. There are various techniques (bundled under the term "reinforcement learning") for finding good approximations for mathematical functions unknown to humans -- or simply too complex for the human mind to even comprehend. A neural network is perfectly capable of learning a function *without* ever being told any "correct" output produced by that function for a given input. See, for example, Gerry Tesauro's paper on "temporal difference" learning and how it was applied to the game of backgammon. This paper changed the whole backgammon hobby in the 90s. It changed not only how computers play the game but also how human grand masters play the game. As a programmer, you should have little trouble understanding how Tesauro's techniques work, and *why* they work without human interference. You probably need to know more than the basics of backgammon in order to fully appreciate this paper; but it's a great game well worth learning, a promise! http://www.research.ibm.com/massive/tdl.html (Tesauro's paper on TD-gammon: backgammon AI based on temporal difference learning) http://www.cs.ualberta.ca/%7Esutton/book/ebook/the-book.html (introduction to reinforcement learning; TD in-depth; case studies)caligula
August 15, 2006
August
08
Aug
15
15
2006
04:40 AM
4
04
40
AM
PDT
1. Could you provide the intelligently designed answer to Thomas' challenge, please? Failing to do that would, rightly, cast doubt on the essay above. 2. "The major front loading is in how selection is made. With the wrong selection description, the wrong target of opportunity, if any, will be hit. Simple!" Are you saying that nature does *not* select for the functions seen in phenotypes? Are you saying the fitness tests made by an organism's environment are *random*? No biologist would agree. If the fact that fitness functions are not random but fairly specific is what you call "front-loading", then your term seems rather empty. Nature quite blindly "front-loads" just as much as GAs do. Think especially of evolutionary "arms races". 3. It is unreasonable to require GAs to mutate the program wrapped around and running the GA. It is exactly the same as requiring GAs to mutate the very OS. That is because the OS and the GA engine together effectively constitute a virtual OS for the GA being run. They, among other things, provide the environment (i.e. the fitness function) for the organisms of the GA. Granted, requiring the environment to mutate randomly (and FAST on evolutionary timescale) would surely prevent us from gaining the target we are looking for. But it would hardly be a simulation of Earth or even cosmos; it would rather simulate chaos. What's the point in proving that chaos doesn't produce CSI? No one doubts *that*.caligula
August 15, 2006
August
08
Aug
15
15
2006
02:31 AM
2
02
31
AM
PDT
Non-programmers may not understand that computers are just tools for automating the assumptions of the programmer. If the program doesn't give the correct results the first time, the programmer tweaks it until it does. Not surprisingly, programs designed with evolutionary assumptions demonstrate the success of evolution.sagebrush gardener
August 15, 2006
August
08
Aug
15
15
2006
01:40 AM
1
01
40
AM
PDT
A good example of such a target of opportunity would be dear in forest during a deer hunting season.
Wives and girlfriends beware... Bob P.S. "implicitly" not "inexplicitly"Bob OH
August 14, 2006
August
08
Aug
14
14
2006
10:26 PM
10
10
26
PM
PDT
1 2 3

Leave a Reply