Abstract

This thesis describes a formal model of a subtype of humour, and the implementation of that model in a program that generates jokes of that subtype. Although there is a great deal of literature on humour in general, very little formal work has been done on puns, and none has been implemented. All current linguistic theories of humour are over-general and not falsifiable. Our model, which is specific, formal, implemented and evaluated, makes a significant contribution to the field. Punning riddles are our chosen subtype of verbal humour, for several reasons. They are very common, they exhibit certain regular structures and mechanisms, and they have been studied previously by linguists. Our model is based on our extensive analysis of large numbers of punning riddles, taken from children's joke books. The implementation of the model, JAPE (Joke Analysis and Production Engine), generates punning riddles, from a humour independent lexicon. Pun generation requires much less world knowledge than pun comprehension, making it feasible for implementation. To support our claim that all of JAPE's output is punning riddles, we conducted an evaluatory experiment. We took JAPE texts, human-generated texts, nonsense non-jokes and sensible non-jokes, and asked joke experts to evaluate them. For joke experts, we used 8-11 year old children, since psychological research suggests that this age group enjoys, and can recognize, punning riddles better than other age groups. The results showed that JAPE's output texts are, in fact, recognizably jokes. The evaluation showed that our model adequately describes a significant subtype of verbal humour. We believe that this model can now be expanded to cover puns in general, as well as other types of linguistic humour.