springsim 2016 data driven healthcare tutorial
TRANSCRIPT
Brunel University London
Data Driven Healthcare Tutorial
David Bell
Contributors:Armin Kashefi
Chidozie Mgbemena Nurul Saleh
Tommaso TurchiTerry Young
Department of Computer Science SpringSim 2016
Brunel University London Department of Computer Science 2
Introduction• Dr David Bell• Brunel University London
Google Map
Brunel University London Department of Computer Science 3
Interests
Brunel University London
Agenda
1. Context2. Evidence Capture (Tea-PoCT) 3. Agent Based Simulation (Tea-SIM)
Brunel University London Department of Computer Science 5
Background
• UK EPSRC funded MATCH project• Innovate UK funded Tea-PoCT project• Cumberland Initiative
Brunel University London
Data
http://www.incrowdnow.com
Health Episode Statistics (HES)Clinical Trials
Brunel University London
Typical Data Usage
Brunel University London
Typical Simulation
Brunel University London
Project Drivers
• Data-driven modelling (data versus expert)• Data-reuse• Heterogeneous data support• Data-driven model building• Usability – Human-Data Interaction (HDI)
Brunel University London
Making Sense of Data
•A bag of approaches
Guardian.com
Brunel University London
Data Types• Unstructured: Social Media• Structured: Health Databases• Static: Trials & Evidence• Dynamic: Model Outputs
Brunel University London
Nvivo – Text Analysis
Qsrinternational.com
Brunel University London Department of Computer Science 13
Existing Models: Nice Pathway for TB
National Institute for Health and Care ExcellenceNice.org.uk
Brunel University London Department of Computer Science 14
ONS Data
Office for National Statisticshttps://www.ons.gov.uk/
Brunel University London
R Clustering - Personas
Digital Personhood
Brunel University London
Decision Trees
Brunel University London
Applying techniques
• Economic Modelling• Agent Modelling
Brunel University London
TEA-POCT• Evidence Capture Tutorial
Brunel University London
About Tea-PoCT• Tea-PoCT aims at providing diagnostics developers and manufacturers with a
simple tool for early economic evaluation with the supporting data. The package will involve three elements:
An on-line version of a MATCH Headroom Method, customised for Point of Care.
An library of data, with a Wiki portal for suppliers to add evidence. A set of open interface standards for apps and data extraction (the Wiki is
free-format input). Embedded economic modelling and scenario analysis
Brunel University London
About Tea-PoCT project disease areas• Clinical areas
I. Tuberculosis (TB)II. SepsisIII. Antimicrobial resistance (Hospital acquired infection, community acquired pneumonia and
antibiotic prescribing in primary care)IV. Chlamydia and Gonorrhoea
Brunel University London
About Tea-PoCT• Early economic evaluation:
The Headroom Method
It is used to assess the cost-effectiveness of a new technology in comparison to some existing gold standard technology, by defining a maximum cost (the headroom) that the adopter of the technology would be willing to incur.
Brunel University London Department of Computer Science 22
Existing Models: Nice Pathway for TB
National Institute for Health and Care ExcellenceNice.org.uk
Brunel University London
The headroom method in healthcare• At the design stage, it allows analysis from the supply side,
unlike the typical cost-effectiveness analysis, which is usually conducted from the demand side, i.e. after the product has been developed (McAteer & Lilford, 2012).
• Suitable for the healthcare sector, given the increasing scarcity of resources and the need to show value-for-money (McAteer & Lilford, 2012).
Brunel University London
The headroom method in healthcare• The headroom of the new technology is a practical implementation of the Incremental Cost-
Effectiveness Ratio (ICER), i.e. the extra cost per unit of benefit that the new technology offers
ECICER
Brunel University London
The headroom method in healthcare• Measure of effectiveness: Quality Adjusted Life Year (QALY)
QALY = Health Utility x Life Duration
Health utility = A measure of quality between 0 (death) and 1 (perfect health) according to each specific condition
Life duration = A measure of quantity of health, measured in years of life
Brunel University London
The headroom method in healthcare• The ICER formula can be revised to
• The ICER can further be replaced by the maximum amount that the healthcare provider is willing to spend for every unit of benefit, i.e. the willingness-to-pay threshold (WTP), typically between £20k-£30k per QALY
ICERQALYCQALYCICER
Brunel University London
The headroom method in healthcare• Therefore, the headroom formula (maximum added cost)
QALYWTPC
QALYWTPC maxmax
Brunel University London
The headroom method in healthcare• From the developer’s point of view, it is more interesting to know the maximum price that the
healthcare provider will pay, instead of the maximum added cost.
• The added cost of the headroom consists of the change in the service cost and the difference in the prices between the new technology and the gold standard
12 PPSCPSCC
Brunel University London
The headroom method in healthcare• By substitution to the headroom formula we get the maximum reimbursable price (MRP)
SCPQALYWTPPMRP 12
Brunel University London
The headroom method in healthcare• On the cost-effectiveness plane
SC2, QALY2
SC1 ,P1 ,QALY1
∆ Cost :
∆ QALY
Healthcare service costs: SCPrice of device: P
Brunel University London
The headroom method in healthcare• On the cost-effectiveness plane (Chapman 2013)
Maximum WTP for extra health generated: ∆QALY x £20,000
Maximum WTP for reduced service costs (∆SC) and disinvesting in old device / procedure (P1)
WTP per QALY: £20,000
∆ Cost :
∆ QALY
Healthcare service costs: SCPrice of device: P
∆QALY
∆Cost
Brunel University London
The headroom method in healthcare• On the cost-effectiveness plane
WTP per QALY: £20,000
∆ Cost :
∆ QALY
Healthcare service costs: SCPrice of device: P
∆QALY
∆Cost
MRP
Brunel University London
The headroom method in healthcare• On the cost-effectiveness plane
WTP per QALY: £20,000
∆ Cost :
∆ QALY
Healthcare service costs: SCPrice of device: P
∆QALY∆CostMRP
Brunel University London
The headroom method in healthcare• On the cost-effectiveness plane
WTP per QALY: £20,000
∆ Cost :
∆ QALY
Healthcare service costs: SCPrice of device: P
∆Cost MRP
Brunel University London
The Tea-PoCT novelties• Improved data organisation and extraction
• Data annotation: metadata (e.g. a comment, explanation, presentational markup) attached to text, image, or other data. Annotated text often visually distinguishable from the rest of the text. Annotations can be used to highlight or add information about the desired visual presentation; or add machine-readable semantic information (Semantic Web)
• Wikis and PICTAGs offer a novel way by which we can capture/collate versioned “Headroom” data and take this data offline for analysis (extraction).
Brunel University London
Tea-PoCT architecture
Brunel University London
Extended MediaWiki (www.tea-poct.com)
Brunel University London Department of Computer Science 38
PicTags• Name | value | basic type | ontological type or supertype• e.g. #pictag:NumDeathsPerYear.jpg|37000|number | uri
Brunel University London
Extracted or Embedded Economics
WikiHierarchy of named pages*Annotation is using PICTAGS
Public data
PICTAGrendering
PICTAGextractor
Ontology(Device and medical
taxonomy *)
Brunel University London
Tea-PoCT Data
Brunel University London
Data Extraction
Brunel University London
Embedded economics
…..
Brunel University London
Tea-PoCThttp://www.tea-poct.com- View data for Sepsis- Edit evidence- View embedded economic models
Brunel University London
TEA-SIM• ABS Tutorial
Brunel University London Department of Computer Science 45
Data Annotation• Knowledge Gathering
Brunel University London Department of Computer Science 46
PicTags• Name | value | basic type | ontological type or supertype• e.g. #pictag:NumDeathsPerYear.jpg|37000|number | uri
Brunel University London Department of Computer Science 47
Data Structures• Property-Value• Table
TableData
Columns describing data
TableData
Columns prop & value
Brunel University London Department of Computer Science 48
Agent Platform Choices• Visual model – Easy to use• Code based model – harder to use but flexible
Netlogo Repast
Brunel University London Department of Computer Science 49
Relational modelling of Agents
Agent Super type
ArN
Agent TypeRow
Table
PHP Extractor
Columns define ID and agent properties (with values for each agent type)
x N
ArxAr2Ar1
Brunel University London
Agent-Based Simulation
A modeling technique for simulating the interactions between autonomous agents, assessing their effects on the system as a
whole
Brunel University London
Modeling Agents• Define the behaviour of each class of agents inside step.php• The stepper function step() describes how each agent of a specific
type progresses from an iteration to another
class people_male extends Agent {function step($step) {
// Males’ behaviour}
}
Brunel University London
Agents’ Variables• $this->_supertype – Agent’s supertype (e.g. people)• $this->_type – Agent’s type id (e.g. 1 - male)• $this->_id – Specific agent’s instance id• $this->_img - Image path used on the grid GUI• $step – Step # in the current simulation
Brunel University London
Agents’ Functions• getPosition() – Returns the agent’s grid coordinates• move($distance) – Randomly moves by $distance positions• morph($type) – Change the agent’s type to $type, copying its
default attributes’ values
Brunel University London
Neighbours’ Queries• anyNeighbour($distance [, $type [, $select [, $update]]]) – Queries if any
neighbour matches the conditions• anyNeighbour($distance) – Checks for empty positions at
distance $distance• anyNeighbour($distance, $type) – Checks for agents of type
$type at distance $distance• anyNeighbour($distance, $type, array($attribute,
$value)) – Checks for agents of type $type at distance $distance with $attribute = $value (multiple attributes and values can be specified, all need to be true)
• anyNeighbour($distance, $type, array($attribute, $value), array($uattribute, $uvalue)) – Same as before, but performs an update on $uattribute of the matched agents to $uvalue (multiple updates can be specified)
• allNeighbours($distance [, $type [, $select [, $update]]]) – Queries if all neigthbours match the conditions
Brunel University London
Setting up a simulation{ "supertype" : [ { "id" : typeid, "name" : typename, "attributes": [ { "name" : attributename, "value" : attributevalue } ] } ]}
model.json
{
"grid" : {
"n" : rows,
"m" : column
}, "agents" : [
{ "type" : "supertype.typeid",
"instances" : agents,
"position" : "rnd"
}
], "simulation" : {
"start" : stepnumber,
"end" : stepnumber|null
}
}
init.json
Brunel University London
Simulating in Visual Mode
1. Start-up TEA-GRID server$ cd TEA-GRID$ ./tea-grid.php
2. Fire-up the simulation in your browserhttp://tea-grid-server/GRID/index.html?simulation=simname[&logging=(N)|S|V]
Brunel University London
Simulating in Batch Mode$ cd TEA-SIM$ ./tea-sim.php --helpTEA-SIM
Usage: teasim.php [--simple | --verbose] [--iterations=N] <simulation name> teasim.php (-v | --version)
Options: -h --help Show this screen. -v --version Show version. --iterations=N Specify the number of iterations. --simple Simple logging. --verbose Verbose logging.
Brunel University London
TEA-SIM Architecture
TEAGRID TEASIM
Index.html
Brunel University London
TEA-SIM Architecture• TEA-SIM – tea-sim.php
• Grid• Agent• Callback• LogLevel• TEASIM
• TEA-GRID Server – tea-grid.php• WebSocketServer
• TEA-GRID Client – index.html
Brunel University London Department of Computer Science 60
Agent Modeling – a simple exampleSepsis simulation with three types of agent, critical_patient, not_critical_patient and nurse
Brunel University London Department of Computer Science 61
Example code – PHP (step functions)
Brunel University London Department of Computer Science 62
Agent Modelingcritical_patient become not_critical_patient and not_critical_patient become normal_patient with calculated cost and number of days in ward
Brunel University London Department of Computer Science 63
Agent Modelingcritical_patient become dead_patient after mortality reaches 80% or more
Brunel University London Department of Computer Science 64
Questions• Code – available from [email protected] (small zip can be
emailed)• Used on Linux (easiest), MAMP, WAMP
• Open-source via GitHub later this year • Possible futures:
• Hosted simulation (via Tea-PoCT)