Dragons and Data: Final Update


After my research and development process, I have created a program that can play a simple text-based adventure game! In order to successfully play the game, the program will make random choices when faced with a decision in order to build a dictionary of words associated with winning and words associated with losing. Then, once it has played the game enough times randomly (‘enough’ here is defined by a decision tree algorithm that I will detail later in this update), it will start to make educated guesses as to which choice will lead to a victory, using a scoring system that I discussed in my previous update. Before I get into a discussion of the nitty-gritty of my program, I’m going to provide a brief summary of my research on machine learning and natural language processing.

[Read more…]

Dragons and Data: Update #2

The most wonderful thing about computer science is that the smallest change to a program can throw the entire thing off balance.

[Read more…]

Dragons and Data: Update #1

Teaching a computer to play a game is much more complicated than it sounds.

[Read more…]

Dragons and Data: Teaching a Computer to Play an Interactive Story

The purpose of this research project is to learn more about the world of machine learning and ultimately develop a program that allows the computer to make its way through a simple interactive story (written by me, but in the vein of older text-adventure games like Zork), learning from its failures without my input. The questions I hope to answer are how does a computer learn, to what is the extent to which a computer learns, and how can I apply that learning ability to storytelling? The way stories are told can be innovated to make stories that are more personal, unique, and emotionally powerful, and I believe that one of the ways to do that is to explore stories built by computers and artificial intelligence. If there is a way to personally experience a story that’s different every time it’s played, storytelling would be revolutionized. For me, this project is a stepping stone towards that greater goal, seeing as I will learn all about machine learning. If I can understand how a computer plays a game, I will be one step closer to understanding how a computer might craft a game/narrative experience. I will keep a log of my research on unsupervised machine learning, then use those notes to develop a simple algorithm that reads, stores, and makes inferences about data. I will then craft a plethora of interactive stories, each with a similar structure but slightly different choices for the computer to make, and then run the stories through the algorithm to see if the computer can learn to successfully progress through the stories by learning from past experiences. This project will reveal more about the intricacies of machine learning, which is a constantly growing field in the 21st century technological landscape.