Uncommon Descent Serving The Intelligent Design Community

Dave Thomas says, “Cordova’s algorithm is remarkable”

Share
Facebook
Twitter
LinkedIn
Flipboard
Print
Email


Dave Thomas is in a bit of a tizzy over my humble offering: Tautologies and Theatrics (part 2): Dave Thomas’ Panda Food. He responds at Pandas Thumb with: Calling ID’s Bluff, Calling ID’s Bluff. I thought I’d alert the readers at UD what horrible things I’m accused of, that I might be some sort of vile scoundrel. 🙂

[Dave writes:]

Imagine my surprise, then, when I found Salvador Cordova at Uncommon Descent spewing blatant falsehoods about this work. I was shocked – shocked, I say – to catch the UD Software Engineers in a lie. And quite a lie it is – with the help of mathematicians like Carl Gauss, I’m going to lift the veil from the obfuscations of IDers, and prove it’s a Lie, much as you would prove a mathematical theorem.
….
which the brilliant Gauss found useful

Thomas then correctly identified the formula I implemented via Genetic Algorithm:

[Dave writes:]

The Software Engineering Team of Uncommon Descent has been caught lying – Q.E.D.

Where did I ever claim there wasn’t smoke and mirrors involved in the gimmickery here? Fer cryin’ out loud, my post was talking about mathematical theatrics, and I presented that program as an example of gimmickery! I even alerted the reader with these words before presenting my program, “The following [are] computational theatrics”. Sheesh!

[Dave writes:]

As an exercise in Smoke and Mirrors, Cordova’s algorithm is remarkable

Well dog gone, he actually says something nice about my work. It’s REMARKABLE! 🙂

I fully take pride in the smoke and mirrors I used, I never pretended otherwise. In contrast, Thomas refuses to admit he’s also using smoke and mirrors in his GA. He pretends somehow his steiner-solving program should persuade us that mindless undesigned forces can hit specified targets.

Well, did he have some Chimpanzee create the fitness functions in his software for him? Without intelligent design on his part, his fitness functions will fail to guide the system to the intended target. He has thus snuck the answer his GA, much the same way I snuck the answer in my GA. At least I alert the readers of where the trickery is, but Thomas would rather have his faithful congregation at Pandas Thumb believe that mindless evolution can truly work magic.

As Haeckel said:

Evolution is henceforth the magic word by which we shall solve all the riddles that surround us.
Ernst Haeckel1

Instead of “abracadabra” the Pandas say, “evolution”. Ramen.

Comments
16 Michaelst says: “What was uncalled for is calling Salvador a liar.” When did I call him a liar? What does this statement have to do with what I said in my posting #12, to which you are responding? Perhaps it was my earlier post #3 where I accused him of tiptoeing around the facts even though he knew what I meant? If anybody was not honest with the truth in this context, I'll have to pass the compliment on to Salvador Cordova. “Anyone reading his initial premise understood exactly what he intended in his reponse and it was not misleading in the least.” Excuse me? He knew from an earlier popst that I had limited programming expeience. And he triumphantly trumpeted afterwards, in the introduction of this thread that he “fully [took] pride in the smoke and mirrors I used, I never pretended otherwise.” I would have remained quiet, but he didn’t need to add insult to injury. “I think this is misleading to the average person on the street without software knowledge.” So maybe I am that average person on the street who hasn’t programmed since the days of Fortran or earlier. At least I have enough biological expertise to know how an evolutionary mechanism works in Nature and to know what to expect from a program that is supposed to mimic this mechanism. Your apologies are gladly accepted.ofro
August 17, 2006
August
08
Aug
17
17
2006
08:31 PM
8
08
31
PM
PDT
Rats!, that was the first time I didn't save a copy (due to the accidental early submission) Could you mail a copy back to me please, so I can post it at ATBC or PT? Failing that, I'll try and reconstruct from memory and you may feel free to indicate if I have made signicant alterations. However, as before, this won't happen before tomorrow (actually this) evening (EU). I would be interested to hear what those alleged representations were. You may post them as an example of Evolutionist's misrepresentations if you like. (saved).steveh
August 17, 2006
August
08
Aug
17
17
2006
08:20 PM
8
08
20
PM
PDT
steveh, I thought your last round wasn't very productive to the discussion, I therefore didn't publish your latest. Thank you however for the time you spent trying to respond, but I didn't think it added to the discussion. Sorry it didn't make the editors cut. Your offerings were replete with misrepresentations. I feel I'm under no obligation to give them air time. Salvadorscordova
August 17, 2006
August
08
Aug
17
17
2006
07:55 PM
7
07
55
PM
PDT
steveh wrote: Dave Thomas showed exactly how your program was a disguised version of the Gauss formula.
Oh gee do you think he thought it was disguised by statements where I pretty much pointed out something was disguised? Such as when I said:
Rather than compute the midpoint via a simple calculation ... The following [are] computational theatrics
Sheesh! A solution can be disguised in software such that it's not explicit. The solution can be snuck in without being explicit. That was the whole point of my software examples.
steveh wrote: You have not done the same for his.
So what? Showing the disguise in plain English is only a sufficient, but not necessary condition to establish an answer is sneaking in. An alternative method is code knockout or replacement to show the answer is snuck in. Besides, I don't see his mathematical forumla explictly stated in my code, do you??? So what if Dave's strategy is so novel there is no analogue in terms of the work of a known mathematicial genius like Gauss. That does that detract from the design Dave had to perform to make the code work. Does establishing design require that I make some English language summary of what the code does versus restating every last bit of Dave's code? Do you think his fitness function and the rest of the code were not assembled with the purpose of finding Steiner solutions? Do you think a Chimpanzee can even describe the algorithm in pseudo-code? Pull the snippet I identified, and let me know if you think it will still guide to target. How about you replace the fitness function with the reverse of choosing LARGER solutions, and tell me if it still guides toward the desired optimal solution so easily. How about you replace this:
double dx = xP[k] - xP[j]; double dy = yP[k] - yP[j];
with this:
double dx = xP[k] * xP[j]; double dy = yP[k] * yP[j];
Tell me what you think will happen. :-) Or how about replacing fitness() with a random number generator? What do you think will happen? If it still doesn't guide to target, that shows he's sneaking the solution in partly through that code.
steveh wrote: The FORTRAN snippet you presented doesn’t seem to include the code for determining if all points are connected to the same network.
Because I didn't feel like pointing out his whole program is permeated with design, and all those other details help sneak the answer in. I pointed to the highlights. To be technical, almost all his software is part of the method for sneaking the solution. As I pointed out, he is specifying a strategy, much like giving driving directions instead of giving an explicit address. He's being highly disingenuous if he's suggesting his answer is snuck in at one spot, when the fact the it is practically the whole program (minus a few areas) when executed constitutes sneaking the answer in. I merely tried to humor his leading question to some extent by highlighting where the selection choice most strongly reflected his design goals. In truth, most of his entire program is what sneaks the solution in, but I pointed the highlights. Whether his method can be compactly described as mine was is beside the point. In fact, I chose an example that could be compactly described and has been known for a long time so that there will be transparancy in what is happening. I even wrote in the comment section of my code to make it transparent where I was adding some theatrics:
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.
Which means, rather than add 2 numbers and divide by 2 to get the midpoint, I went via an extremely circuitious, rube-goldberg type route. Despite all that, Thomas still accuses me of lying, when in fact I pointed the reader what exactly was being done and where something was purely for show to illustrate the shennanigans of what could be committed against the unsuspecting. The first programs were very direct and transparent, and I contrasted them with some that were deliberately obtuse, and which were identified as such. The point was to encourage readers not to be too persuaded by computational theatrics.scordova
August 17, 2006
August
08
Aug
17
17
2006
06:24 PM
6
06
24
PM
PDT
The program is told to randomly search for a minimal length under a given set of rules, so the program has no idea about the goal of the programmer.
I’m afraid that is horribly incorrect. The progam relfects the goals of the programmer, it is an expression of his goals (hopefully anyway, for human programmers). It is not randomly searching, the search is assisted in the way the programmer describes.
No, ofro is right. The fitness function does "guide" the evolution of the organisms. However, it does this by proliferating the organisms that do the best job of meeting the goal. The goal, whatever it happens to be, is not as important as the mechanism: allow some subgroup of organisms to proliferate while another subgroup dies, and the whole species moves in the direction of certain mutations (those mutations might be the ones you want in order to meet your goal, or, in nature, they might be the mutations that help the species survive). If camouflaged organisms survive better than uncamouflaged ones, then the entire species will become progressively more camouflaged with each generation. The mutations introduce novelty to the species, and the survival/reproduction numbers determine whether that mutation is eliminated in the species or proliferates in the species. The GA's goal is simply used to hand-out death and proliferation to the individual organisms. Nature has it's own way of handing out death and proliferation to organisms (do you disagree with this?)
Salvador’s point still stands, the mechanisms are in fact seeking a solution
The mechanism is to allow a subgroup of the population to reproduce better than another subgroup. We, as GA programmers, guide the evolution of the species to a particular goal by killing off the organisms that are moving away from our particular goal. Do this iteratively, and you end up tuning the species to accomplish your goal. Nature guides the evolution of organisms by killing off the organisms that have bad mutations and proliferating the ones that have good ones. Do this iteratively, and you end up with species that have a lot of benefitial mutations (camouflage, ability to run quickly, etc)
I think Dave’s intentions while I’m sure well intentioned at first lead the lay person to believe design in the simulation is not present when in fact guidance and conditional processing are done. I think this is misleading to the average person on the street without software knowledge.
Nature supplies the guidance and conditional processing for biological organisms. I think Sal's presentation is misleading to laypersons who don't understand the software. I am saying this as a software engineer with decades of experience.BC
August 17, 2006
August
08
Aug
17
17
2006
06:14 PM
6
06
14
PM
PDT
ofro states, "So there has to be a more specific goal of some form. This higher-level goal was to write the code such that it mimicked, as well as possible for simplifying computer model, a certain process, namely the randomness that is assumed to underlie mutations in nature." And this is the problem in a nutshell. The "assumptions of each side are different, therefore we talk across each other with little insight at times. In Daves case the assumption is that it would lead to evolution and survival. Yet it is guided by conditional processing - which is itself a hallmark of design. Snowflakes do not conditionally decide where to fall or when to melt and therefore cannot adapt to external forces. A snowflake cannot avoid the human boot about to step on it like a lizard, fly or any number of life forms. Living organisms can and this is the assumptive difference. One side believes material forces alone can explain adaptive technology of life forms. The other recognizes only intelligence can adapt and therefore program adaptable objects. Salvador's point still stands, the mechanisms are in fact seeking a solution, though they are not "hard-coded" which in fact he never stated. You cannot have unguided - yet guided without design not touching it. This confuses snowflakes with life. Its not that simple. Snowflakes do not repair themselves in order to conserve the original copy. "So here is where I think the “goal” stops". The goal preceded the outcome. Intelligent agents designed code which "mimicked" various solutions to reach an endpoint. However, this does not prove evoulution works the way the program does. It does show interesting solutions to "variations" within species. I think its a key point to focus on adaptation within boundaries. This is still largely a guessing game, although I appreciate the effort. What was uncalled for is calling Salvador a liar. Anyone reading his initial premise understood exactly what he intended in his reponse and it was not misleading in the least. I think Dave's intentions while I'm sure well intentioned at first lead the lay person to believe design in the simulation is not present when in fact guidance and conditional processing are done. I think this is misleading to the average person on the street without software knowledge.Michaels7
August 17, 2006
August
08
Aug
17
17
2006
05:20 PM
5
05
20
PM
PDT
Dave Thomas showed exactly how your program was a disguised version of the Gauss formula. You have not done the same for his. The only fitness function you have identified measures the length of a candidate network. Knowing how to measure that length does not give you a shortcut to finding a near-optimum or novel solution. You've seen the challenge, you've seen the 'disguised FORTRAN solution', if you don't understand FORTRAN, I've put a C version at http://altsteve.nfshost.com/fitness.c If that doesn't give the game away, you can also get that length by drawing the solution on paper and using a rule, or you could build a wire model of the candidate and weigh it. Please, could you show me how that "secret insider knowledge" sneaks in a solution. The FORTRAN snippet you presented doesn't seem to include the code for determining if all points are connected to the same network. If you draw the code on paper you can do that quite easily by eye. If you build a model, you can move the model it and see if any bits stay behind. But I'm giving game away. Sorry Dave.steveh
August 17, 2006
August
08
Aug
17
17
2006
05:05 PM
5
05
05
PM
PDT
ofro wrote: The program is told to randomly search for a minimal length under a given set of rules, so the program has no idea about the goal of the programmer.
I'm afraid that is horribly incorrect. The progam relfects the goals of the programmer, it is an expression of his goals (hopefully anyway, for human programmers). It is not randomly searching, the search is assisted in the way the programmer describes. I appreciate the time you gave for a lenghthy reply, but it is wrong on a very important point on which much of the whole ID debate hinges. Let us be exceedingly generous and hypothetically assume selection was used to create the design of life. On that assumption, would those selection pressures have to be carefully tuned, as in designed? The answer seems to be yes, and that is the ID position. That is the theme of The Displacement Theorem. Thomas tried to refute that, but he failed miserably because his selection code was permeated with intelligent design. To model a random selection force would be to have a random number generator randomly pick a solution. But even that would be too generous because it assumes mutation can even create a selectable solution in the first place! Thank you and Strangelove, however, for trying to answer my querries.scordova
August 17, 2006
August
08
Aug
17
17
2006
04:56 PM
4
04
56
PM
PDT
I was going to reply, but I think ofro's post is good enough.Strangelove
August 17, 2006
August
08
Aug
17
17
2006
04:03 PM
4
04
03
PM
PDT
#7. scordova: "Ofro, Strangelove, Please answer these questions, 1. Do you think Thomas’s evoltuionary algorithm would have worked if he did not have the goal in mind when writing the software?" I gues I first have to know what mean here with “goal”. Obviously, the basic goal was to write some code. Strictly speaking, if Thomas didn’t have that goal in mind there would not be any program at all. This would be the first (trivial) answer to your question. So there has to be a more specific goal of some form. This higher-level goal was to write the code such that it mimicked, as well as possible for simplifying computer model, a certain process, namely the randomness that is assumed to underlie mutations in nature. So here is where I think the “goal” stops. The program is told to randomly search for a minimal length under a given set of rules, so the program has no idea about the goal of the programmer. However, these rules in no way prejudice the program, except for the prejudice not to come up with nonsenical results like turning on the printer or not doing anything at all. Let’s draw the analogy between program and natural mutation/selection. According to the evolution theory, mutations occur randomly. The biochemical reactions that lead to mutations may "know" how they happened, such as after dose of radiation or a misread nucleotide by the polymerase, but they don’t know any more about a goal than the program's random generator. Instead of searching for a length minimum in a geometrical problem, in Nature the outcome is that the individual survives (or not) or has other means to have more (or less) progeny. Asking whether the program would work without a goal is similar to asking whether nature has a goal. So the answer to your question depends on how you view evolution itself. Does the evolution process have a “goal in mind”? “Goal” for me excludes or at least greatly restricts randomness; I guess it can also be referred to as “bias”. So I have to ask how randomness can be excluded in nature: Is there no such thing as a random mutation that can change the phenotype of an individual? Is there no such thing as different organisms with different abilities to survive (due to mutational differences in some phenotype)? If you answer with “there is absolutely no such thing” to both questions, then the necessary conclusion from this your premise is that Thomas’ program is not appropriate since it did not model your picture of nature.ofro
August 17, 2006
August
08
Aug
17
17
2006
01:34 PM
1
01
34
PM
PDT
For the record, I had one of Dave Thomas\'s burgers today and it was remarkable.Scott
August 17, 2006
August
08
Aug
17
17
2006
12:50 PM
12
12
50
PM
PDT
Another thing to point out in regards to GAs, is that a lot of the spe"cificity comes in just in the selection of variables to modify". Right johnnyb. All these points make GAs poor solutions for genuinely random evolution. And we could also add the huge difference between genotype and phenotype natural selection, the unfeasibility of complexity hierarchy, etc etc ... K.kairos
August 17, 2006
August
08
Aug
17
17
2006
12:24 PM
12
12
24
PM
PDT
[Dave writes:] As an exercise in Smoke and Mirrors, Cordova’s algorithm is remarkable
Well Dave, I must credit the masters of computer smoke and mirror trickery who served as my role models: you, Richard Dawkins, Chris Adami, Lenski, Robert Pennock, Elsberry & Shallit, and the rest of the evolutionary community -- you all showed me how its done, and I'm flattered that you would compliment me in my emulation of your achievements. Although, I must admit, I feel like I'm fulfilling the role of Th Masked Magician in showing your magic tricks are the products of intelligent engineering, not magic after all.scordova
August 17, 2006
August
08
Aug
17
17
2006
12:02 PM
12
12
02
PM
PDT
Another thing to point out in regards to GAs, is that a lot of the specificity comes in just in the selection of variables to modify! Most people don't think about this, but in fact this is a huge part of the teleology in any program. When you restrict the answer to only a few given quantities to vary, that is completely different than if you went the atelic route of selecting quantities to vary at random, hoping that the quantity you need to vary is even in your list of possibilities!johnnyb
August 17, 2006
August
08
Aug
17
17
2006
11:40 AM
11
11
40
AM
PDT
Ofro, Strangelove, Please answer these questions, 1. Do you think Thomas's evoltuionary algorithm would have worked if he did not have the goal in mind when writing the software? 2. Do you think the reason his sofware succeeded is attributable to his pre-meditated efforts? Salvadorscordova
August 17, 2006
August
08
Aug
17
17
2006
11:39 AM
11
11
39
AM
PDT
"I don’t understand this. Why does the fitness function have to be random, chimpanzee programmed, or evolve itself? Doesn’t the fitnes function represent a particular environment that the evolving creature survives in, and the pressures it faces?" The problem is that the fitness function cannot be directly related to the problem being solved. Natural selection simply says the animal must survive or be better at reproduction, but somehow guides processes such as eye formation. Therefore, in a fitting scenario the selection algorithm should not directly correspond with what you are searching for, in fact there should be a large disconnect. Without such a disconnect, what you are doing is moving the design to the environment. You aren't getting rid of design, you're just moving it around. Take Avida, for instance. Without carefully crafting the fitness landscape, nothing at all evolved. This was even in their silly-simple little environment. Also, what is missing in _all_ of these examples, is the ability for the copying function to change by the same mechanisms that everything else does, which would be required for a Darwinian scenario.johnnyb
August 17, 2006
August
08
Aug
17
17
2006
11:36 AM
11
11
36
AM
PDT
Ofro wrote: I would have eventually figured it out myself that the Gauss solution to the problem was part of your program, but your admission makes it easier.
Well there was a pretty blatant hint in that one of the four programs was called gauss.c! I pointed out what explit meant in my usage, that means explictly using the string "500500" in the program. The route toward that outcome was indirect, and inexplicit, or shall I say implicit. It was to help the readers see what gimmickery can be employed in attempts to use genetic algorithms to support the Blind Watchmaker thesis. Thomas invited readers to point out where he was explicitly specifying the target. Well, it depends on what means by "explicitly specifying" doesn't it? One can specify the target implicitly by using a strategy rather than giving the exact locations. I can tell you where the White House is via: 1. travelling directions from where you are 2. giving you the exact address 3. giving Latitude and Longitude 4. visiting a websites that will give you one of the above There are many roads to Rome, so to speak. A GA is one but many ways to reach a destination. At issue is whether the GA requires intelligence to infuse it with sufficient specifity to hit a target. Thomas has not proven mindless forces can successfully implenent an evolutionary route. For evolution to succeed via mutation and selection, it still requires intelligent design. But who is to say that an evolutionary algorithm was the route which intelligence had taken. I demonstrated 5 ways the same answer could be arrived at via intelligence. explicit.c was analogous to special creation and ga.c to prescribed evolution, but all 5 programs (explicit.c, brute.c, recurs.c, guass.c, ga.c) still required intelligent design to hit the target, all required a prescribed plan from the beginning. Salvadorscordova
August 17, 2006
August
08
Aug
17
17
2006
11:29 AM
11
11
29
AM
PDT
"Well, did he have some Chimpanzee create the fitness functions in his software for him?" I don't understand this. Why does the fitness function have to be random, chimpanzee programmed, or evolve itself? Doesn't the fitnes function represent a particular environment that the evolving creature survives in, and the pressures it faces? Perhaps you can answer the question with an example. How should genetic algorithms look if they are to accurately demonstrate evolution?Strangelove
August 17, 2006
August
08
Aug
17
17
2006
11:18 AM
11
11
18
AM
PDT
scordova (see above): "I fully take pride in the smoke and mirrors I used, I never pretended otherwise." from the previous "Panda Food" Thread: ofro wrote: "What I don’t understand is the basic premise of your example, which apparently already has an explicit solution of the problem built into the program." scordova replied: "I’m afraid that isn’t quite correct because if you go to ga.c, and do a text search for 500500 you won’t find it. The solution was never explicitly stored anywhere." I would have eventually figured it out myself that the Gauss solution to the problem was part of your program, but your admission makes it easier. I have to say now that your reply was anything but "thruth and nothing but the thruth", and more like "I have sinned through my own fault, in my thoughts and in my words, in what I have done, and in what I have _failed to do_." I am convinced now that at that point you wanted to "code-bluff" me (see https://uncommondescent.com/index.php/archives/1449). And I am not pleased.ofro
August 17, 2006
August
08
Aug
17
17
2006
10:58 AM
10
10
58
AM
PDT
Thanks, scott. Isn't it charming how pastor Dave Thomas feeds his flock the standard line that his program illustrates the miracle of evolution. His congregation over at yonder Pandas Thumb website swallows the his magic tricks uncritically. "Wow pastor Dave, isn't wonderful what the miracle of evolution can do in your computer program. From this day forward, I put my faith and trust in Charles Darwin, and I'll even donate to the cause by buying a Darwin Bobble head."scordova
August 17, 2006
August
08
Aug
17
17
2006
10:42 AM
10
10
42
AM
PDT
It's easy to see their desperation in trying to demonstrate that these simulations represent what actually happens in nature. People who are terribly insecure about the notion that there might a designing intelligence behind it all rather than the Steamboat-era mythology they've held so dear to their hearts for so long, will go to great lengths to support their faith. Here are some other discussions from this blog which discuss the silliness of such simulations: https://uncommondescent.com/index.php/archives/907 https://uncommondescent.com/index.php/archives/802 https://uncommondescent.com/index.php/archives/166Scott
August 17, 2006
August
08
Aug
17
17
2006
10:29 AM
10
10
29
AM
PDT
1 2 3

Leave a Reply