====== Models ====== We used task-analytic methodology to develop a unified model of temporal aberrancy detection. This model clarifies the common features and meaningful distinctions among a variety of detection algorithms used in public health surveillance, and provides an extensible framework for gathering evidence about the relative performance of these algorithms. In particular, the model identifies the hierarchical task structure of aberrancy detection process, includes concepts related to control and data flow, and describes characteristics of individual methods that are used to accomplish various tasks involved in aberrancy detection. Due to its modular nature, our model supports the reuse and parallel execution of the software components, which is critical in both high-throughput evaluation analyses of aberrancy detection, and in building scalable online surveillance systems. ==== General task structure of aberrancy detection ==== \\ [[results:models:general|{{:results:models:general_model_of_aberrancy_detection.png?400 |General task structure of aberrancy detection algorithms}}]] Based on our experience and the surveillance literature, we identified subtasks of temporal aberrancy detection process. Each of these tasks can be accomplished by one or more eligible methods, which define “how to perform a task”. A method can either accomplish a task directly (a //primitive method//), or decompose a task into subtasks (a //task-decomposition method//, or //TDM//). This recursive decomposition produces a tree-like structure shown in the picture. A single method may be reused to accomplish multiple different tasks.\\ To represent any particular aberrancy detection algorithm, a single method is selected for each task from the list of eligible methods, producing a sub-tree, as we show by the [[models#examples_of_algorithm_representation|examples]] below. <- Click on the image for explanation.
==== Representation of control and data flow ==== \\ We have extended our model beyond decomposition to include concepts for encoding data and control flow within task-decomposition methods. A key concept is an //algorithm// – a collection of tasks and control elements in the form of a directed graph. In addition to tasks, an algorithm may include //iterations// as the nodes of the graph. Iteration is used when a subset of tasks in a TDM must be repeated multiple times. Tasks and iterations are linked by //connectors//, [[results:models:flow|{{:results:models:flow_concepts.png?400 |Relationship among tasks, methods, iterations and algorithms}}]] which indicate that the output of the predecessor node is used by the successor node as its input. Connectors represent data dependencies between tasks and iteration units, and provide information necessary for inferring control flow knowledge from the graph structure.\\ <- Click on the image for explanation.
==== Task structure of evaluation analysis ==== \\ [[results:models:evaluation|{{:results:models:model_of_evaluation_analysis.png?400 |Model of aberrancy detection as part of evaluation analysis}}]] The focus of BioSTORM project is evaluating aberrancy detection algorithms, which normally involves applying these algorithms to surveillance data and measuring their performance characteristics such as sensitivity, specificity and timeliness. In this context, it is possible to consider aberrancy detection as a subtask of a more complex //Evaluation// task.\\ \\ <- Click on the image for explanation.
==== Examples of algorithm representation ==== == 1. C-family algorithms from the CDC EARS == \\ [[results:models:EARS|{{:results:models:cfamily_alg.png?400 |Representation of the EARS C-family algorithms}}]] C1, C2 and C3 of the CDC Early Aberration Reporting System (EARS) suite are simple adaptive algorithms based on a CUSUM control chart concept. These algorithms compute expected values by analyzing a short sliding period of historical data. The task structure of all 3 algorithms is identical, and the differences are limited to variations in two configuration parameters used by primitive methods.\\ \\ <- Click on the image for explanation.
== 2. Holt-Winters forecasting == \\ [[results:models:holtwinters|{{:results:models:holtwinters_alg.png?400 |Representation of a detection algorithm based on Holt-Winters forecasting}}]] The Holt-Winters approach is used mainly for data forecasting, but can be incorporated into an aberrancy detection system. The forecasts produced by this algorithm are based on a weighted average of past observations, where the weights decay exponentially with the age of observations. This algorithm acts as a filter and extends the exponential smoothing principle to re-estimate level, trend and seasonal component at each observation step.\\ \\ <- Click on the image for explanation.
== 3. Hybrid algorithm combining regression and control chart == \\ [[results:models:hybrid|{{:results:models:2stage_hybrid_alg.png?400 |Representation of a two-stage detection algorithm}}]] This algorithm is an example of a 2-stage aberrancy detection approach, in which at first, regression is used to model the baseline data and generate forecasts, and then the forecast residuals are passed through a CUSUM control chart to generate alarm. The method, which processes residuals can be represented using the same general task structure for the aberrancy detection algorithms, though largely simplified due to omitted subtasks.\\ \\ <- Click on the image for explanation.