[back to home page]

WEB-SNAP: POMDP-based Knowledge Engineering for Assistive Systems

The Underlying Methodology

The following paper explains this software and the underlying methodology that should be followed when this software is used. Section 4 contains a quite detailed case study which shows step-by-step how to create a working model using this software.

Marek Grzes, Jesse Hoey, Shehroz Khan, Alex Mihailidis, Stephen Czarnuch, Dan Jackson and Andrew Monk:
Relational Approach to Knowledge Engineering for POMDP-based Assistance Systems as a Translation of a Psychological Model. International Journal of Approximate Reasoning (IJAR). Special Issue of Applications of Bayesian Networks. Elsevier, 2013. [pdf] [doi]


  1. The first screen after logging in. The snap instance to work with has to be selected here. One snap instance (i.e., one logical database in PostgreSQL) corresponds to one particular model, and one model corresponds to one POMDP file that can be generated by the software. (png)
  2. The main window after selecting an instance to work with. It allows backing up and copying instances. (png)
  3. Task and environment features. Here, environment variables and their values are specified. (png)
  4. A window to specify abilities (png) and default probabilities for abilities (png).
  5. Behaviours (png), effects of behaviours (png), their preconditions (png), and STRIPS-like summary (png). Behaviours are represented as a special variable in the POMDP where values of that variable correspond to behaviours of the person.
  6. Rewards (png) and specification of states for those rewards (png). These two things should be really specified in one window. Now, rewards are specified per groups of states (table t_rewards) whereas groups of states are defined in table t_rewards_desc.
  7. The sensor model (png) specifies the observation function for the POMDP.
  8. The IU table: view (png) and edit (png) modes. NB: Entries in every column need to be saved individually.
  9. SNAP generator (png). Here, search for the "Generate" button. Once clicked, the POMDP model should be generated and you can save the output on your local machine.
[back to home page]