June 3, 2003

Methinks I see some crooked mimic jeer

by Nick Montfort · , 5:23 pm

I caught up with Michael in Atlanta on my way back from ACH/ALLC. Michael and I got to talking about (among other things) programs to generate stories, poems, and other creative texts. He mentioned that he benefits from looking at thoughtful symbolic architectures for this sort of thing, such as Minstrel, but really finds nothing of interest in the statistical approaches taken by systems like Gnoetry and Ray Kurzweil’s Cybernetic Poet.(Correct me if I’m misrepresenting you, Michael!) On the other hand, I do think there’s something to the way that these statistical systems manage to knit together a new sort of voice – something that makes the process of the generator interesting to consider – and I’ve written about this a bit in an article that is forthcoming in The Cybertext Yearbook 2003. Interestingly, a paper by Greg Lessard at ACH/ALLC described a limerick generator he had developed, called VINCI, so this topic is still a current one.

Our discussion led to questions about how, in this specific case of creative text generation, symbolic/rule-based AI can be integrated with statistical AI to achieve some of the advantages of each. …

The curious thing here is that a symbolic approach is not just a technique, but also a framework, a way of thinking about how to approach a problem at a high level – and similarly for a statistical approach. It isn’t as if you can just naturally plug in a symbolic AI module to a statistical AI module and have a working hybrid poetry generator. You have to figure out how these are going to work together. Getting your prosody guy and your meter guy and your sonnet tradition guy to sit down and try to produce something might, likewise, be pretty difficult.

Unfortunately, I don’t have much but questions about this matter so far. Let’s take the specific case of generating poetry. One guess about how different “modules” (or “agents,” if we’re talking about a Minskyesque “society of poets”) might operate would involve the “high-level” agents (dealing with theme, say, or perhaps narrative in the case of a narrative poem) having control over activating what the “low-level” (prosody, meter) agents do. But it’s obvious to me, from my experience as a poet, that poems are seldom if ever written by people in this way – a word can turn the theme as easily as the theme the word. That’s not to say that a “society of poets” approach wouldn’t work, just that it doesn’t seem right to organize it in the way that might at first seem reasonable.

I don’t write poetry or story generators, and I’m not even very widely read on the topic, but both the problem domain and the computer science issues are of great interest to me. Perhaps Michael and some of our poetry-generator-generating readers, if there are such, can chime in about whether my architectural/framework question is a meaningful one, and, if so, whether there are good guesses (or URLs pointing to good guesses) about how to answer it.