Computational Creativity and Humor

3 min read

Computational creativity is a multidisciplinary study that combines the fields of artificial intelligence, cognitive psychology, philosophy, and the arts. Its goal is to model, simulate, or replicate creativity using a computer to achieve one of the following ends: construct a computer program capable of human-level creativity, better understand human creativity and formulate an algorithmic perspective on creative behaviors in humans, or design programs that can enhance human creativity without necessarily being creative themselves.

The field of computational creativity has some fundamental problems. “Creativity” is difficult to define objectively in humans and machines. Furthermore, is computational creativity truly creative if the computer is programmed for the task by humans? For example, is machine translation creative? While it is certainly difficult to define creativity, it may be even more difficult to define what is funny.



An early example of a computer program that can generate jokes is the Joke Analysis and Production Engine (JAPE). The program started out by creating simple puns from a database of words based on a three-step process: 1) Make a new word by substitution: “spook-tacles” for “spectacles”. 2) Find a plausible description for the item: “glasses for ghosts”. 3) Arrange the relationship in a question-and-answer form: “What do nearsighted ghosts wear? Spooktacles.”


A more difficult type of comedy to decipher is double entendre. Chloé Kiddon and Yuriy Brun of the University of Washington developed a method to parse this type of humor. They took two corpora — 1.5 million erotic sentences and 57,000 non-erotic sentences — and then measured how closely related “a noun, an adjective, and a verb phrase are to the erotica domain.” By doing this, they were able to come up with a “sexiness rating” for words. After feeding the algorithm some data on what is and, more importantly, what isn’t double entendre, the researchers started feeding sentences to the algorithm to see whether it could detect double entendre. The results found that the algorithm was able to detect double entendre 71% of the time.


Abhinav Moudgil, a graduate student at the International Institute for Information Technology, told TED about how he is exploring his interest in computational humor in his spare time. A unique part of his research is that he is working with a neural network instead of the older rule-based algorithms like JAPE. The older algorithms require coders to provide specific directions and rules for the program, while neural networks are fed hundreds of thousands of examples, from which they pick out patterns and then try to emulate those patterns. In this case, the network was fed a data set of 231,657 short jokes from the Internet. Because the network doesn’t understand anything beyond characters, there is little wordplay in its jokes, and most of the jokes follow the examples that were put in: “What do you call…” or “Why did the…” While the humor can be seen in some jokes (Why did the chicken cross the road? To see the punchline), others don’t make much sense and some don’t even have a punchline (What is the best thing about a good joke?). Moudgil plans on training his network on a large set of English sentences before introducing the joke data set to eliminate nonsensical results.




Newsletter Subscription

If you want to subscribe to our monthly newsletter, please submit the form below.

Also published on Medium.

Launching your engineering career at Japan’s top IT companies: an interview with two engineers from Taiwan

As the internationalization trend accelerates among Japanese companies, there’s never been a better opportunity for Taiwanese students and graduates to pursue a career in...
4 min read