Brute Force and Ignorance
by Dwayne Phillips
Sometimes you just lower your head against a wall and push as hard as you can.
Let’s begin this little blog post by noting that I attended LSU—not MIT, Carnegie Mellon, Stanford or any of those places known for producing really smart people. At LSU, we may not be able to spell L-S-U, but we can whip you in football and baseball and a few other things.
One thing we did learn how to spell at LSU is B-F-I, which is short for brute force and ignorance. This brings me to the tale of how I solved an unsolvable problem in super computing and digital signal processing when I didn’t have the credentials (still don’t) for either of those fields.
Another organization, a.k.a., the rich kids, owned a super duper computer on which they were past the leading edge in digital signal processing. The organization I was in, a.k.a., beggars can’t be choosy, owned a super computer, sort of, that cost half of what the rich kids had. The rich kids wrote software that did things us beggars wanted to do. All we had to do was make their software run on our computer to produce the same results to ten significant digits.
领英推荐
I was the lead of the beggars team. I couldn’t spell digital signal processing, but could manage to spell D-S-P (I am still in this situation and still can’t get a job in DSP because beggars can’t be choosy but the rich kids who own those DSP companies can be and still are choosy). The rich kids’ software wasn’t producing the same answers on the beggars’ computer as it did on the rich kids’ computer. The precision wandered off somewhere.
We brought in all manner of assistance. We even brought in the folks who wrote the compilers on the super computers to find the problem. All these folks (who were all paid twice my salary) had all sorts of sophisticated methods of attacking the problem. I, being from L-S-U and only knowing B-F-I, sat in a corner and attacked the problem using the only thing I knew how to do: I ran the software one statement at a time on both computers and compared the answers. I didn’t use any of the super debuggers and other super software tools the smart kids knew how to use. I just stepped through the software one brute-force step at a time.
Three days later, I found it; I found the place where the answers deviated. I solved the problem on the beggars’ computer and we had the same answers to ten significant digits as the rich kids did. For this triumph of brute force and ignorance, I was given what we called a large, round cash award. A large round number, i.e., zero. But that is another story.
Still, sometimes you do the simplest thing one step at a time repeatedly while the rich kids and smart kids use their rich and smart tools. Sometimes that works. Put your head down and push.