Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/aherriot/story-generator

Using Natural Language Generation (NLG) to create a random short story.
https://github.com/aherriot/story-generator

Last synced: 3 months ago
JSON representation

Using Natural Language Generation (NLG) to create a random short story.

Awesome Lists containing this project

README

        

Random Story Generator
======================
Andrew Herriot
2011 - 2012

OVERVIEW
--------
The Turing-test has always been a fascinating proposition for me. Computers that are able to mimic human behaviour has been dream of scientists since the invention of the computer. For a directed studies, I would like the explore the generation of a short story with the goal that it will be funny, compelling to read, unpredictable, and grammatically correct. I intend to study the field of Natural Language Generation (NLG) through reading papers and apply what I learn to the story generator.

PROJECT
-------
The NLG will be created using Object-Oriented design patterns to shape the structure of the program and also Backus-Naur Form (BNF) to implement a generative grammar for the system. I will need to design a message passing system to track the communication and events of the story as it progresses. The state and behaviour of the characters in the scene also need to be modeled along with how they interact with each other. Finally, the creation of grammatically correct sentences for the description and dialogue passages need to be implemented, so they do not sound recycled or fake. By researching, designing, and implementing these characteristics, I believe this will make an excellent directed studies.

IMPLEMENTATION
--------------
I am using JavaScript to implement the design of the project, as it is easy to share with family and friends across the internet without the need for people to have the Java Runtime Environment or the need to run executable files on their computers.