Below we describe ongoing and past projects.

Ostari: Modeling Belief and Intention in Virtual Agents (Markus Eger). 2016--2018.

Social reasoning, such as theory of mind, supposes that people have mental models of other people's mental models, and will act on those mental models intentionally. We examine contexts in which this form of social reasoning is important, such as board and card games that involve coöperation, bluffing, and partial information. We have created a programming framework called Ostari with explicit support for belief (epistemic reasoning) with authoring affordances for intentions that drive agents through planning.


Modeling Social and Cultural Norms through Interactive Narrative and Conversational Agents (Hannah Morrison and Louis Jacobowitz; students needed). 2016--present

Conversational agents are typically limited to passive, 1:1 conversations with a single presumed-human interactor. We are exploring the space of possible agent simulations involving combinations of many simultaneous conversational participants, the upholding or breaking of social norms, and agents that exhibit intention and pursue goals. Possible applications include non-player characters for interactive stories, social skills training, therapeutic tools, interactive tutors, and collaborative systems. Currently we are working on adapting our models to a cultural competency training tool in collaboration with the Global Training Initiative.


Ceptre: Editing and analysis support for interactive simulations (Alexander Card, Kamai Guillory). 2015--present

Supported by NSF Award #1755922.

Ceptre is a forward-chaining logic programming language based on linear logic, which can be used to model simulations of complex systems made from sets of rules. We have used this language to model games such as Minecraft and Overwatch, to model the dynamics of group conversations, and to generate stories with social simulation. The next generation of the Ceptre language is geared towards interdisciplinary communication; we aim to broaden participation in use of the tool to experts in other domains (such as chemistry, systems biology, and psychology). We are building a web-based structure editor with simulation analysis and debugging tools. This project will combine software engineering, human-computer interaction, and systems thinking disciplines such as game design, to create a rich modeling environment to bridge domains requiring system simulation.


Villanelle: Autonomous Character Authoring for Interactive Stories (Emma McCamey, Janna Timmer, Owais Iqbal, Sasha Azad, Tony Mosolf, Maddie Ingling, Siyu Zhang; students needed). 2016--present

Autonomous characters have the potential to transform game experiences as NPCs (non-player characters), interactive narratives, user interfaces, our understanding of human social interaction through formal models, and much more. Currently, authoring autonomous characters and generative storylines is seen as an esoteric and inaccessible practice for interactive narrative designers. We aim to provide accessible tools for character authoring.

We are building a web-based Javascript-interfacing framework called Villanelle for specifying world models, player actions, and non-player-character behavior.


Terra Rima: Population Simulation for Narrative Generation and Opinion Change (Sasha Azad; students needed). 2017--present.

The goal of this project is to model and study large populations of humans by simulating small-scale social interactions that take into account real-world geographic constraints, logistics, lifestyles, and social influence dynamics. We aim to support a variety of applications, such as examining the implications of social science theories and developing playable, explorable story worlds.


Puzzle Game Design and Generation for Mental Model Alignment (Ryan Alexander and Aaron Williams; students needed). 2018--present.

Puzzle game players and designers tend to agree on the ingredients of a satisfying and instructive puzzle: the player builds a mental model of the game's mechanics as she plays, and then the puzzle throws a wrench in her assumptions. After struggling, having an "aha" moment, and finally understanding and correcting the misleading assumption, the player's skill with the mechanics deepens. In this project, we're designing Laserverse, a set of game mechanics and levels in PuzzleScript, designed to compose modularly to form different test conditions for this hypothesis. In the long term, we're interested in generating puzzled toward specific experiential and educational ends.


Logic-Based Narrative Generation (Henry Mohr; Markus Eger; Rogelio Cardona-Rivera). 2015--present.

We use logical formalisms such as linear logic to specify templates for narrative events, then use logic programming engines to produce stories from these specifications. We are interested in modeling properties such as causality and continuity through logical consistency.