Skip to main content

Research Question

Research Goal(s)

Sep 28th, 2018

Below is an outline of the research direction this project will pursue. This is a big set of problems, and can't be solved in one independent-study. I'd like to get as far as possible with this problem over my remaining undergraduate years, spinning an Honor's Thesis out of it.


Build a natural language to symbolic language interpreter with the following capabilities:
  • Given a domain, current state, and a natural language player request, can translate that request into symbolic actions, objects, and predicates.
    • The translated symbols should make sense, be reasonable, and have some support for influencing (i.e. search within a genre)
    • The translated symbols can then be incorporated into the domain and state, for a narrative planner to work with as appropriate. (Incorporation may even involve modifying existing symbols, or previous states in a plan.)
    • I.e. if the domain is blocks world and user input is "drop block A off the table," the interpreter might create an action drop(?o1) which has effect not o1 on table and modify the current state by the action drop(A) -> not A on table.
      • If the player then asks to "place B next to A on the floor", the interpreter might create an object floor and modify the drop action to also have effect A on floor, altering any previous states where things were dropped. Then, recognizing existing action place, place(B, floor) -> B on floor.
      • If the player had instead asked to "place B next to A on the forest floor," the interpreter might reject this as out-of-genre, since the blocks world is an office-drama story domain.
      • If the player had instead asked to "place A on itself," the interpreter should reject this as contradictory. If the player had asked "place A on camel", the interpreter should reject this as not possible, since it's unreasonable for a non-existant and unrelated object to be here.
  • Stretch goal: Using similar techniques, the interpreter could generate new (reasonable) symbols relating to a few symbols in a domain. This is so a narrative planner isn't constrained in its search space by what humans have authored.
    • Ideally, the interpreter could generate symbols that are likely to enable some effect in the world. This is stretchiest stretch goal, allowing a narrative planner to free itself of tricky dead ends.
This interpreter would be implemented into a text adventure game. The game would mediate between the player, interpreter, and planner. (The game might respond to statements, requests (actions), and questions differently, using the tools at its disposal appropriately)

This is, of course, a ridiculously hard problem to solve. My anticipated order of attack is below, starting with a very simple "hello-world" type problem. (pddl excerpt->domain object)
  • Translate natural language into symbols from a domain/problem
    1. Correctly identify existing symbols from PDDL excerpts
    2. Relax input requirements to more natural text
  • Translate natural language into symbols not found in domain/problem
    • Actions / questions about actions into action schemas
    • Statements/ questions about world into objects and predicates
  • Recognize unreasonable input. (Contradictory, nonsensical, outside of player's control or view, non-genre, etc.)
  • Categorize player inputs by how a game ought to deal with them. (Questions about world vs questions about actions vs actual actions, etc.)
  • Incorporating new symbols into existing symbols. Validity? Modifications?
  • How could a planner filter these symbols by desirability?


  1. Thanks for sharing this informative blog. I have read your blog and I gathered some valuable information from this
    blog. Keep posting.

    Article submission sites


Post a Comment

Popular posts from this blog

Independent Study Coursework Plan

Early posts to this website will relate to an Independent Study course I'm completing this semester.  This post is the bulk of my Independent Study coursework plan. It's subject to change at regular intervals, with instructor permission.
Title of CourseExtracting Symbolic World-States for Open-World Interactive Storytelling Credit Hours3 OverviewIndividual investigation of advanced topics under the discretion and direction of the instructor. Course Independent Study Goal/Statement of PurposeI’m using this independent study as an introduction to conducting impactful self-directed research. I want to tackle graduate-level problems while the stakes are still low as an undergraduate. I hope to learn to read like a researcher, model interesting and hard problems, and put that model into practice. Course Objectives1. Describe, discuss, and explain the research problem studied, the approach taken, the experimental design, the analysis of data, and any conclus…

Foundational Literature Review 1

For this review I read 2 papers and a textbook chapter. This will be followed up by a more detailed review of the paper on learning STRIPS actions.

Apologies for not embedding this literature review directly into the post. I wrote it in markdown, hoping that would translate easier to the web, but I also used lots of LaTeX and a few diagrams in Mermaid. For now, I have a pdf.

Foundational Literature Review