ANN for logic learning penultimate update

Weka’s multilayer perceptron proved to be too slow to handle the newer, more expressive instance encoding. I found a much faster ANN library called FANN (Fast Artificial Neural Network) that also has Python bindings and can easily save and load neural networks. Now I can script the whole process: data generation, ANN training, testing a learned network over multiple test sets, and writing the performance results to a file. I’m working today to finish the experiments and write-up, to be sent out by tonight/tomorrow morning with any luck.

ANN for logic rules initial results

Played around with an initial go at training Weka’s Multilayer Perceptron to learn pattern matching for logic rules. The first dataset I used consisted of positive instances of MP and negative instances of affirming the consequent. I also tried a dataset with positive instances of MT and negative instances of denying the antecedent.

I had hoped that the network would learn the matching rule “If the main connectives in the instance match the connectives in the rule pattern and the variables in the instance are in the same relations to each other as the corresponding variables in the rule pattern, then the instance fits the rule.” Unfortunately, training on one rule’s dataset and testing on the other yielded bad performance. Interestingly, training on the MT dataset and testing on the MP set yielded an inverted classification: the network classified fitting instances as non-fitting and vice versa. Finally, combining the two datasets and using a percentage split for training/testing yielded good results.

Individual Study Update

Met with Dr. Croy yesterday to discuss connectionist model for JT. Got a copy of W. Bechtel “Natural Deduction in Connectionist Systems” and an excerpt from Bechtel & Abrahamsen Connectionism and the Mind, which describe related work in modeling deductive logic using a connectionist model. Basic idea for JT model: input = (problem instance, rule pattern 1, rule pattern 2), output = rule 1, rule 2, or neither

Game plan: Read these articles and figure out a good way to encode the JT data in an ANN, and at least have some initial results to talk about next week at the CAS symposium.

Todo week of 10/5

Stuff that needs to be done by the end of the week:

  1. Find a venue for the aborted IUI paper (possibly TOCHI?)
  2. Develop schedule for NLP independent study, to start the week after AIIDE
  3. Another draft of Y2 scenario narratives
  4. Think about the kind of data we want to collect for the Y2 language study
  5. Think about ideas for FLAIRS, FDG, etc.
  6. BehaviorShop-1.5:
    • Inventory (by Wednesday)
    • Save and load agent brains
    • Overhaul of help language

Week #18 Status

Scientific Section
Accomplishments:

  1. FDG ‘09 : got lots of positive feedback on BehaviorShop, as well as suggestions for improvement and references relevant to the language analysis work

Problems:

Engineering Section
Accomplishments:

Problems:

  1. Hyper-busy until end of semester finishing up projects/papers/exams

Week #16 Status

Scientific Section
Accomplishments:

Problems:

Engineering Section
Accomplishments:

  1. Posted recommendations for changed vocabulary/sentence structure in BehaviorShop based on analysis of Study 1 Data

Problems:

Week #15 Status

Scientific Section
Accomplishments:

  1. Started brainstorming/designing some experiments to test Whorfian effects in game design/user interfaces

Problems:

Engineering Section
Accomplishments:

  1. Updated language analysis data with fresh plots/word clouds, including plots for each scene/role pair.
  2. Added list of top collocations for each scenario
  3. Language analysis reports are now generated programmatically, except for the word clouds.

Problems:

Next Steps:

  1. Need to start looking for clusters in the study 1 data

Sapir-Whorf and Game Design

The Sapir-Whorf Hypothesis states that thought is limited (the Strong version) or at least strongly influenced (the Weak version) by language. Game designers must consider their target culture in order to make a successful game, but I think that currently the extent of that cultural consideration is mainly in the choice of game themes/archetypes, perhaps some cultural references in translations, and avoidance of taboos. In other words, there doesn’t seem to be much consideration of how a player’s language influences his thoughts while playing. Designers could use experimental results from cognitive science to improve their games; for example, in-game tutorials/instructions may need to be structured differently to match the style of thinking imposed by the player’s language, information on the screen may need to be presented differently, and levels may need to be laid out differently.

Week #14 Status

Scientific Section
Accomplishments:

  1. Started researching how to make word clouds automatically, since Wordle doesn’t provide an API

Problems:

  1. Having trouble finding/developing an algorithm for laying out the words in the cloud (all the papers I found discussed tag clouds, where the problem is how to choose a font scaling to show relative word frequency in a nice way)

Engineering Section
Accomplishments:

  1. Finished installing/configuring phpMyAdmin on playground for easier DB administration. It can be accessed from http://playground.uncc.edu/phpMyAdmin/ (only accessible from behind the lab router).
  2. Updated word frequency charts based on study 1 data that Hunter repaired (missing scenario numbers filled in)
  3. Figured out how to generate my language analysis reports programmatically, except for the word clouds

Problems:

  1. Not really a “major” problem, but I still have to generate the word clouds manually by cut-and-paste into Wordle, until I can find a word cloud API or roll my own.