Probabilistic Model Checking of DTMC Models of User Activity Patterns

Probabilistic Model Checking of DTMC Models of User Activity Patterns
Notice: This research summary and analysis were automatically generated using AI technology. For absolute accuracy, please refer to the [Original Paper Viewer] below or the Original ArXiv Source.

Software developers cannot always anticipate how users will actually use their software as it may vary from user to user, and even from use to use for an individual user. In order to address questions raised by system developers and evaluators about software usage, we define new probabilistic models that characterise user behaviour, based on activity patterns inferred from actual logged user traces. We encode these new models in a probabilistic model checker and use probabilistic temporal logics to gain insight into software usage. We motivate and illustrate our approach by application to the logged user traces of an iOS app.


💡 Research Summary

The paper addresses the challenge that software developers often cannot predict how users will actually interact with their applications, especially in mobile contexts where usage varies widely across individuals and sessions. To provide quantitative insight, the authors propose a systematic framework that transforms raw logged user traces into probabilistic models and then applies formal model‑checking techniques to answer developer‑posed usage questions.

Core Concepts

  1. Activity Patterns as DTMCs – The authors define a finite set of K activity patterns, each represented by a discrete‑time Markov chain (DTMC) sharing the same state space and labeling but differing in transition probabilities.
  2. User Strategy Vector (θ) – For each user m, a strategy vector θₘ = (θₘ(1)…θₘ(K)) encodes the probability that the user follows pattern k at any decision point. This captures the intuition that a user may switch between distinct behavioural modes over time.
  3. Mixture Model and EM Inference – The observed trace data are assumed to be generated by a mixture of the K DTMCs according to the user’s θ. Parameters (the transition matrices of each pattern and the θ vectors) are estimated by maximizing the likelihood via the Expectation‑Maximisation (EM) algorithm. Multiple random restarts are used to mitigate local optima.

User Metamodel (UMM)
The authors combine the K DTMCs and a user’s strategy into a single “user metamodel” DTMC whose state space is the Cartesian product S × {1,…,K}. A state (s,k) denotes being in base state s while currently following pattern k; it is labelled with atomic proposition α=k. Transition probabilities are computed as θₘ(k′)·P_{k′}(s,s′), i.e., at each step the user may stay in the current pattern or switch to another according to θ, then move according to the selected pattern’s transition matrix.

PRISM Encoding and Temporal Logic
The metamodel is encoded in the PRISM probabilistic model checker using its reactive module language. Atomic propositions α=k enable the expression of properties that refer to specific activity patterns. The authors employ PCTL and its extension PCTL* to formulate quantitative questions such as “what is the probability of reaching a goal state within n steps while staying in pattern α₁?” or “after switching patterns, what is the probability of feeding a Yoshi within m actions?”. Because PRISM currently supports only a single bounded‑U operator, the authors combine filtered probabilities (min, max, avg) to emulate more complex bounded‑until specifications.

Case Study: Hungry Yoshi
The methodology is illustrated on a real iOS game, Hungry Yoshi, for which the developers provided extensive logs from 164 users. Two activity patterns (K = 2) are inferred:

  • Pattern α₁ corresponds to a “goal‑oriented” flow where users quickly move from seeing a Yoshi to feeding it.
  • Pattern α₂ captures a “exploratory” or inefficient flow with many pick‑fruit actions before feeding.

For each user, the EM algorithm yields a θ vector indicating the relative weight of each pattern. The authors then construct the corresponding UMMs and query PRISM to answer concrete developer questions:

  1. Strategy after achieving five feeds – The probability that a user repeats a pick‑feed cycle versus a single feed event is higher in α₁.
  2. Effect of reading instructions – Users who open the instruction screen are more likely to transition to α₁ and reach the feeding goal in fewer steps.
  3. Pattern‑triggering events – Certain UI actions (e.g., selecting a plantation) increase the likelihood of switching from α₂ to α₁.
  4. Inappropriate actions – The occurrence of “pick fruit six times in a row” (basket capacity is five) is significantly more frequent in α₂, indicating a less efficient usage pattern.

The quantitative results provide actionable insights: developers can identify which UI flows are efficient, which events cause beneficial pattern switches, and where to focus redesign or tutorial improvements.

Contributions

  • A formal, data‑driven approach to infer user activity patterns as DTMCs.
  • Definition of a user‑centric metamodel that integrates multiple patterns via a strategy vector.
  • Practical encoding of the metamodel in PRISM and demonstration of PCTL/PCTL* property verification.
  • Empirical validation on a real‑world mobile game, showing how the framework answers realistic usage questions.

Limitations and Future Work
The approach requires pre‑specifying the number of patterns K; automatic model selection is not addressed. PRISM’s limited support for complex bounded‑until operators forces the use of filtered probabilities, which may be cumbersome for larger specifications. The EM algorithm can be sensitive to initialization and may not scale easily to very large state spaces. Future directions include Bayesian non‑parametric extensions to infer K, integration with more expressive model checkers (e.g., Storm), and coupling with deep sequence models to capture richer contextual information.

Overall Assessment
By bridging log‑based statistical inference with formal probabilistic model checking, the paper delivers a powerful toolkit for developers and evaluators seeking quantitative, verifiable insights into user behaviour. The case study convincingly demonstrates that the method can uncover nuanced usage patterns, predict the impact of UI changes, and guide data‑driven development decisions.


Comments & Academic Discussion

Loading comments...

Leave a Comment