Tuesday, December 1, 2015

2015 Tiltyard Open format

Here's a somewhat more in-depth explanation of the sets of matches that will be played in the 2015 Tiltyard Open. Hopefully this will help make sense of the overall tournament structure and how match results affect the final results.

We expect to use version 0.0.7 of the ggp-tournament library for scheduling the matches, so you can check out that library for details beyond the explanations here.

Wednesday, November 4, 2015

Bases and inputs

I don't know if there are any clear full descriptions of how base and input sentences work in GDL. (They were added to GDL since the last full specification was written.) So, here's a brief write-up of how they work.

The base and input keywords are used to specify the possible true sentences (i.e., components of the game state) and legal moves that could occur over the course of the game.

GDL perf framework preview

I've been working on and off on a performance-testing framework for interpreters of GDL games (i.e. rule engines). There's still more work to be done before it's sufficiently complete and well-documented for others to use, but here's a sneak peek of output. Suggestions are welcome on the Github issues page.

Sunday, August 2, 2015

RuleEngine interface

I've mostly been forgoing work on the current version of Alloy in favor of a newer, better-factored framework with better logging support. Partly I'm working to support a new interface to replace StateMachine.

Saturday, June 20, 2015

Amazons and Efficient Recursion

I recently rewrote Amazons to make it more efficient, and thus more attractive as a GGP game. I've also been doing some unrelated work on a compiled prover rules engine, which is much faster than the ProverStateMachine GGP-Base. In the process, I've had some ideas about how to deal with recursion efficiently in provers, which could have implications for many other important games.

Sunday, June 7, 2015

Griddle: a GDL editor for Eclipse

Griddle is an Eclipse plugin that provides a specialized GDL editor for game files. The editor makes it easier to write new games while avoiding typos and syntax errors.

Sunday, May 10, 2015

Implication deduction: Logic over propnets

Today I'd like to share a simple and surprisingly useful algorithm for making logical inferences about games using propositional networks.

I developed this as part of the implementation for a more specific feature (one of the applications listed below). Although it was developed in the context of a larger feature, I wrote the code for this step to stand alone, and it has proved useful in quickly writing other features that involve understanding games more deeply.

The question that it answers is simple: given a set of components that we know to be true or false in a propnet, which other components are also guaranteed to be true or false? I call this implication deduction.