Springsim 2016 data driven healthcare tutorial

Post on 15-Apr-2017

79 views 0 download

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 david.bell@brunel.ac.uk (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)