Sunday, May 10, 2009

My "dumb is smarter" spidey-sense is tingling again

But first, a digression.

Way back in high school it was time to pick semester projects for computer science class. To give you some idea of how long ago this was, the project was to be written in FORTRAN -- that's FORTRAN in all caps -- on the local university's "time-sharing system." At the time I thought AI was about the coolest thing you could do with a computer*. I started casting about for a worthy problem.

It seemed all the good ones were taken. Conversing in English in the manner of a non-directive therapist? Done. Moving blocks around in an imaginary world in response to natural-language commands? Solved problem. Chess? Well, folks were working on it, but everyone knew chess was hard. Could a computer ever surpass a human master's deep positional understanding? Doubtful. Certainly this was too much for a semester project.

After some pondering, I hit on the idea of "how come?" puzzles. Example: A man is found murdered in a room with 53 bicycles. How come? Answer: The man is a gambler, the bicycles are playing cards, and two of the 53 cards are the ace of spades. One is expected to solve the puzzle by asking yes or no questions which the computer would answer ("Were the bicycles stolen?" "No.") The yes/no format is nicely circumscribed. The questions less so, but therein lies the challenge, no?

I'm sure the teacher must have entertained, if only for a fleeting second, the idea of letting me actually try this. I'm grateful he didn't go that route. By the time I'd finished bashing my head against the finer points of parsing natural language and representing facts about the world, and realized that the resulting hash could not be made into something coherent, it would have been too late to do an actual project.

Instead, I reluctantly agreed to write an adventure program along the lines of ADVENT. Such "text adventures" were popular on the PCs of the day. You moved and acted in a fantasy world by typing one or two word commands (LOOK ... TAKE ROCK ... THROW ROCK ...RUN) and the game would give you a more or less sensible description of what happened (You see a dragon ... You pick up the rock ... The rock hits the dragon. The dragon appears angry.)

ADVENT was available on the time-sharing system. I forget just how we got away with playing it -- perhaps after classes or as a reward for finishing assignments early? -- but I had managed to find my way through the mazes of twisty little passages and figure out everything but how to solve the final puzzle. More importantly, through experimentation, study and the help of Byte and Dr. Dobb's I had formed a pretty good theory of how such games worked (patience, I'm getting back to the web.stuff) and how to write them.

The project was a success. I got a good grade, my friends thought it was cool and I learned quite a bit about data structures (and this was in FORTRAN, Sonny, none of this newfangled OO stuff). But it was also a bit disillusioning. The program wasn't doing anything deep or smart. It certainly didn't understand English. It understood two lists of words, namely a verb list and a noun list, comprising a few dozen words in all. It could parse a "sentence" consisting of a verb optionally followed by a noun. The model of the world was a few arrays. The prose descriptions were canned, of course, essentially the same from run to run.

And yet it was by far the best thing I'd written up to that point, and much better than anything I could have produced in a full-blown tilt at the AI windmills.

Now, where was I?

Wolfram Research, which has more than earned its keep by producing Mathematica, Mathworld and a smörgåsbord of other useful resources on mathematics in general, is announcing a new portal called Wolfram Alpha, set to open for business sometime this month. It aims to “compute whatever can be computed about the world.” Nothing small, then.

Not being one of the "few select individuals" to see the thing in beta, I can't say exactly what it does, but evidently it's meant to answer general questions on the order of "How many broadband connections are there in Sweden?" and point you at the web resources it used to come up with its answer. Nice.

Also according to some of the select individuals in question, it has mixed success in doing this. When it hits, it often hits a home run. But it seems to strike out a fair bit as well. Hmm ... haven't I seen this movie before?

But for the caliber of the folks behind it, I wouldn't really pay much attention to Alpha. Given that it's Wolfram, I'll certainly give it a try. Not too long ago I spent quite a bit of time trying to track down a seemingly simple figure, something like "the number of hosts on the internet" only to find myself lost in a twisty maze of little tabulations, all different. If Wolfram can pull together such things, accounting reasonably for differences in format, not to mention methodology, I'll certainly be interested.

If they're expecting something to replace Google and Wikipedia, I doubt that will happen, even if the thing works perfectly. On the other hand, if they're shooting for steady traffic from people who occasionally need to know facts that aren't in Wikipedia yet but maybe should be, that might work. I don't know how or whether you make a viable business of that, but Wolfram seems content in at least some cases just to put good stuff out there for the good of both their brand and the ecosystem at large. And more power to them.

[As noted elsewhere, I still use Wolfram Alpha for a certain class of questions --D.H. May 2015]

* Taking into account that "AI" and "computer" mean considerably different things now than they did then, I'd still put AI fairly high on the list.

No comments: