Post on 05-Jul-2020
1
Catch-up Scheduling for Childhood Immunization
Faramroze Engineer 1Pinar Keskinocak 2Larry Pickering 3
1 University of Newcastle2 Georgia Institute of Technology
3 Centers of Disease Control and Prevention
ISYE 4803 – Fall 2009
• The catch-up scheduling problemC t di
Outline
• Current paradigm
• The need for an automated tool
• Problem description
• A Dynamic Programming (DP) algorithm
• Usage and dissemination
Catch-up Scheduling for Childhood immunization
• Summary and ongoing work
2
Problem Description: The Recommended Schedule
Catch-up Scheduling for Childhood immunization
Problem Description: The Catch-up Guidelines
Catch-up Scheduling for Childhood immunization
3
Problem Description: Untimely Vaccination
• Only 9% of children received all recommended vaccines at the
recommended ages.
Statistics from Luman et al. 20021:
• 55% of children did not receive all recommended doses by 2 years of
age.
• 8% of children received at least 1 vaccination dose too early to be
considered valid.
Catch-up Scheduling for Childhood immunization
More recent statistics from NIS 2 suggest only slight improvements.
1 E.T. Luman, M.M. Mc Cauley, S. Stokley, S.Y. Chu, and L.K. Pickering, Timeliness of Childhood Immunizations, American Journal of Preventive Medicine 110 (2002).
2 http://www.cdc.gov/vaccines/stats-surv
Problem Description: Causes of Untimely Vaccination
• parental negligence and misinformation
• incomplete or incorrect schedules constructed by health professionals due to:
Reasons often cited for incorrect and untimely vaccination:
3 P LaRussa S Chen P Sternfels L Cooper A Caesar M Ewing M Irigoyen and S Findley Impact of immunization
• insufficient knowledge and addition of new vaccines to the lineup, 3, 4
• problem complexity and tedious process of manual construction.
• missed opportunities for vaccination 5
• environmental and socioeconomic standings.
Catch-up Scheduling for Childhood immunization 6/28
3 P. LaRussa, S. Chen, P. Sternfels, L. Cooper, A. Caesar, M. Ewing, M. Irigoyen and S. Findley, Impact of immunization schedule changes on missed opportunities for vaccination, The 37th National Immunization Conference Chicago, IL, 2003.
4 N.J. Cohen, D.S. Lauderdale, P.B. Shete, J.B. Seal, and R.S. Daum, Physician knowledge of catch-up regimens and contraindications for childhood immunizations, Pediatrics 111 (2003).
5 P.G. Szilagyi, L.E. Rodewald, S.G. Humiston, R.F. Raubertas, L.A. Cove, C.B. Doane, P.H. Lind, M.S. Tobin,
K.L. Roghmann, and C.B. Hall, Missed opportunities for childhood vaccination in office practices and the effect on vaccination status, Pediatrics 91 (1993).
4
Problem Description: The Remedy
Aim
Provide a freely available and easy to use automated tool forconstructing catch-up schedules aimed at providers and caretakers
• Eliminate human error.
• Speedup process
Immediate benefits:
• Alleviate missed opportunities.
• Improve timely vaccination rates
Long-term benefits:
Catch-up Scheduling for Childhood immunization 7/28
• Speedup process.
• Improve public access to vital
information.
• Improve timely vaccination rates.
• Improve awareness and parental
participation.
The Catch-up Scheduling Problem
Paradigm
Given past vaccination history for a child, each remaining dose that can be feasibly administered and not contraindicated must be scheduled.
• minimum and maximum age requirement for each dose of each
vaccine.
• Gap between (not necessarily successive) doses of the same vaccine
must not violate the minimum allowed This gap may vary by vaccine
Feasibility requirements:
Catch-up Scheduling for Childhood immunization 8/28
must not violate the minimum allowed. This gap may vary by vaccine,
dose, current age and/or age at which pervious dose is administered.
• “Live-virus” vaccines may be administered during the same visit or at
least 28 days apart.
5
The Catch-up Scheduling Problem
Paradigm
Given past vaccination history for a child, each remaining dose that can be feasibly administered and not contraindicated must be scheduled.
Possible contraindications:
• The previous dose is administered at an age that no longer warrants
further vaccination.
• The current age of the child no longer warrants further vaccination.
Catch-up Scheduling for Childhood immunization. 9/28
Example (Contraindicating PCV)The second dose of PCV is deemed final if the first dose is administered after age 12months or the current age is 24-59 months. In either case, the third and fourth dosesare unnecessary.
The Catch-up Scheduling Problem
Paradigm
Given past vaccination history for a child, each remaining dose that can be feasibly administered and not contraindicated must be scheduled.
Discretionary measures:
• The aggressiveness of catch-up regime, i.e.
Administer when recommended
Vs
Administer as soon as feasibly possible
Catch-up Scheduling for Childhood immunization 10/28
• The maximum number of simultaneous administrations.
• The number of doctor’s visits.
6
The Catch-up Scheduling Problem & Machine Scheduling
Machine scheduling Catch-up SchedulingSimilarities
Jobs Vaccine doses
Release and due dates Window for each dose
Number of processors Number of simultaneous d i i t ti
Proposition
The catch-up scheduling problem remains administrations
Separation time between jobs Spacing between doses
(Chain) Precedence Doses must be given in sequence
Dissimilarities
Processing time Doses can be administered instantly
Typically single objective (i.e. makespan, tardiness etc.)
Multilevel objective:1. Maximize completable
p g pNP-hard:
1. without minimum gap between doses and live vaccines,
2. without any maximum age for a dose and without live vaccines, and
3. without a limit on the number of simultaneous administrations.
The catch-up scheduling problem ispolynomially solvable without live vaccines
Catch-up Scheduling for Childhood immunization 11/28
p , ) pvaccination series.
2. Maximize number of administered doses.
3. Minimize total delay in administering doses.
Typically constant separation times or setup time depends only on previous job
Spacing may vary by age and age any previous dose is given
polynomially solvable without live vaccinesand without any limit on the number ofsimultaneous administrations.
The Tool
Child’s vaccination history.
OUTPUT
Charts containing schedule for all remaining doses
SCHEDULER
Algorithms to construct schedule
INPUT
Vaccine Modeling Language (VML).
Catch-up Scheduling for Childhood immunization 12/28
for all remaining doses.construct schedule.
7
The Tool (User Input and Interface)
Catch-up Scheduling for Childhood immunization 13/28
Example (VML for PCV)
The Tool (Vaccine Modeling Language)
ID Name Live? Num. Doses Num. Dose Constraints
5 PCV No 4 6
Next Dose Prev DoseCurrent Age Age of Prev Dose Min Gap
Between Dose
Final Dose?Min Max Min Max
Dose Min Age Max AgeMax Age
Prev. DoseRec. Age Rec. Gap to
Next Dose
Min Max Min Max
1 6w 5y _ 2m 2m 4w 4w
2 10w 5y 2y 4m 4m 8w 8w
3 14w 5y 2y 6m 6m 6m 6m
4 12m 5y 2y 12m 15m _ _
Catch-up Scheduling for Childhood immunization 14/28
DoseMin Max Min Max
2 1 0 <24m 0 <12m 4w No
2 1 0 _ 12m _ 8w Yes
2 1 24m 59m 0 _ 8w Yes
3 2 0 <12m 0 _ 4w No
3 2 12m _ 0 _ 8w Yes
4 3 0 _ 0 _ 8w Yes
8
Optimization Models (Integer Programming)Optimization Models (Integer Programming)
Mi i i Li Obj ti F ti f( )
- Decision variables:xt = 1 if a doctor’s visit is scheduled on day t; 0 otherwise.
y(v,k,t) = 1 if the kth dose of vaccine v is administered on day t; 0 otherwise.
Penalize deviation from discretionary objectives such
min and max age requirements
- Subject to Linear Constraints:Constraint 1: h1(x,y) < b1
Constraint 2: h2(x,y) < b2
Constraint 3: h3(x,y) < b3
:
:
- Minimize Linear Objective Function: f(x,y) as:
• Delay in administering doses
• Deviation form recommended gaps
• Number of Doctor visits
Min gap constraints
Catchup Scheduling for Childhood Immunization
:
:
:
:
:
Constraint k: hk(x,y) < bk
Premature series termination constraints
• Max age of prev dose
• Prev dose deemed final
• Prev dose skipped and may not be replaced
Optimization Models (Integer Programming)Optimization Models (Integer Programming)Parameters:τ = time horizon
V = set of vaccines
n(v) = number of doses of vaccine v ∈ V
τ(v k) = {t τ : minAge(v k) ≤ t ≤ maxAge(v k) }τ(v, k) = {t τ : minAge(v, k) ≤ t ≤ maxAge(v, k) }
Decision variables:xt = 1 if a doctor’s visit is scheduled on day t; 0 otherwise.
y(v,k,t) = 1 if the kth dose of vaccine v is administered on day t; 0 otherwise.
Constraints:
C1. Administer each dose at-most once:
Catchup Scheduling for Childhood Immunization
9
Optimization Models (Integer Programming)Optimization Models (Integer Programming)Parameters:τ = time horizon, V = set of vaccines, n(v) = number of doses of vaccine v ∈ V
R(v) = the number of rows from the second part of the VML inputRows r = 1, . . . ,R(v)
Decision variables:Decision variables:xt = 1 if a doctor’s visit is scheduled on day t and 0 otherwise.
y(v,k,t) = 1 if the kth dose of vaccine v is administered on day t and 0 otherwise.
Constraints:
C3. Regulating gap between doses:
Catchup Scheduling for Childhood ImmunizationEngineer
Optimization Models (Integer Programming)Optimization Models (Integer Programming)Parameters:τ = time horizon
V = set of vaccines
n(v) = number of doses of vaccine v ∈ V
Decision variables:Decision variables:xt = 1 if a doctor’s visit is scheduled on day t and 0 otherwise.
y(v,k,t) = 1 if the kth dose of vaccine v is administered on day t and 0 otherwise.
Constraints:
C4. Scheduling doctor visits:
Catchup Scheduling for Childhood ImmunizationEngineer
10
Optimization Models (Integer Programming)Optimization Models (Integer Programming)Parameters:τ = time horizon
V = set of vaccines
n(v) = number of doses of vaccine v ∈ V
Decision variables:Decision variables:xt = 1 if a doctor’s visit is scheduled on day t and 0 otherwise.
y(v,k,t) = 1 if the kth dose of vaccine v is administered on day t and 0 otherwise.
Constraints:
C5. Limiting number of simultaneous administrations:
Catchup Scheduling for Childhood ImmunizationEngineer
Optimization Models (Integer Programming)Optimization Models (Integer Programming)Parameters:τ = time horizon
V = set of vaccines
n(v) = number of doses of vaccine v ∈ V
Decision variables:Decision variables:xt = 1 if a doctor’s visit is scheduled on day t and 0 otherwise.
y(v,k,t) = 1 if the kth dose of vaccine v is administered on day t and 0 otherwise.
Objective Function:Large reward for
administering dosePenalize delay in
administering dose
Catchup Scheduling for Childhood ImmunizationEngineer
Penalize deviation from recommended gap
11
A DP Algorithm
S0
Day t + 1
Day tSchedule vaccine ASchedule vaccine BSchedule vaccine A & BNo vaccine scheduled
Partial (initial) Schedule
Day t + 2
Catch-up Scheduling for Childhood immunization 21/28
Day t + 3
A DP Algorithm
S0
Day t + 1
Day tSchedule vaccine ASchedule vaccine BSchedule vaccine A & BNo vaccine scheduled
S1 S3 S4S2
Partial (initial) Schedule
Day t + 2
Catch-up Scheduling for Childhood immunization 22/28
Day t + 3
12
A DP Algorithm
S0
Day t + 1
Day tSchedule vaccine ASchedule vaccine BSchedule vaccine A & BNo vaccine scheduled
S1 S3 S4S2
Partial (initial) Schedule
Day t + 2
Catch-up Scheduling for Childhood immunization 23/28
Day t + 3
A DP Algorithm
S0
Day t + 1
Day tSchedule vaccine ASchedule vaccine BSchedule vaccine A & BNo vaccine scheduled
S1 S3 S4S2
Partial (initial) Schedule
Day t + 2 S5 S6 S7 S8 S5 S6 S7 S8
Catch-up Scheduling for Childhood immunization 24/28
Day t + 3
13
A DP Algorithm
S0
Day t + 1
Day tSchedule vaccine ASchedule vaccine BSchedule vaccine A & BNo vaccine scheduled
S1 S3 S4S2
Partial (initial) Schedule
Day t + 2
S9 S10 S11 S12
S13 S14 S15 S16
S5 S6 S7 S8 S5 S6 S7 S8
Catch-up Scheduling for Childhood immunization 25/28
Day t + 3 S29 S30 S31 S32 S17 S18 S19 S20
S21 S22 S23 S24
S25 S26 S27 S28
A DP Algorithm
Dominance criteria
Schedule SX dominates SY if:
1 The number of doses administered in
d1 d2 d3
d1 d2
A
B
SX
di Scheduled dose
1. The number of doses administered in
SX is no less than SY for each vaccine,
2. The timing of each critical dose
administered in SY is no earlier than in
SX, and
3. The total delay in administering doses in
d1
Time
C
d1 d2
d1 d2
d1
A
B
C
SY
Catch-up Scheduling for Childhood immunization 26/28
Proposition
If SX dominates SY then any completion of SY cannot be better than the best completion of SX and thus, SY is unwarranted.
common is less in SX.Today
d1
Time
C
14
A DP Algorithm
Dominance criteria
Schedule SX dominates SY if:
1 The number of doses administered in
d1 d2 d3
d1 d2
A
B
SX
d3
Min-Gap between dosesDelay in administering dose
di Scheduled doseDose to be scheduleddj
1. The number of doses administered in
SX is no less than SY for each vaccine,
2. The timing of each critical dose
administered in SY is no earlier than in
SX, and
3. The total delay in administering doses in
d1
Time
C
d1 d2
d1 d2
d1
A
B
C
SY
d2
d3
d3
d2
Catch-up Scheduling for Childhood immunization 27/28
Proposition
If SX dominates SY then any completion of SY cannot be better than the best completion of SX and thus, SY is unwarranted.
common is less in SX.Today
d1
Time
C d2
A DP Algorithm
d1 d2 d3
d1 d2
A
B
SX
d3
Min-Gap between dosesDelay in administering dose
Dominance criteria
Schedule SX dominates SY if:
1 The number of doses administered in
di Scheduled doseDose to be scheduleddj
d1
Time
C
d1 d2
d1 d2
d1
A
B
C
SY
d2
d3
d3
d2
1. The number of doses administered in
SX is no less than SY for each vaccine,
2. The timing of each critical dose
administered in SY is no earlier than in
SX, and
3. The total delay in administering doses in
critical dose
Catch-up Scheduling for Childhood immunization 28/28
Today
d1
Time
C d2
Proposition
If SX dominates SY then any completion of SY cannot be better than the best completion of SX and thus, SY is unwarranted.
common is less in SX.
15
The Tool (Output Charts)
Scenario 1
A 4 month old child who has received 1 dose of HepB at birth and one each of DTaP, Hib and PCV at 2 months of age.
Catch-up Scheduling for Childhood immunization 29/28
Scenario 1… cont.
A 4 month old child who has received 1 dose of HepB at birth and one each of DTaP, Hib and PCV at 2 months of age.
The Tool (Output Charts)
Catch-up Scheduling for Childhood immunization 30/28
16
The Tool (Output Charts)
Scenario 2
A 1 year old child who is presumed not received any vaccination to date.
Catch-up Scheduling for Childhood immunization
The Tool (Output Charts)
Scenario 2… cont.
A 1 year old child who is presumed not received any vaccination to date.
Catch-up Scheduling for Childhood immunization
17
Usage and Dissemination
www.cdc.gov/vaccines/recs/scheduler/catchup.htm
Catch-up Scheduling for Childhood immunization
• 36,000+ downloads since June 2008
• Referenced in AAP Red Book
• Tested by CDC and AAP
• Used by physicians at CHOA
Summary and Ongoing Work
• Prototype• Handover to CDC/AAP for piloting
and validation • Disseminate through wwwDisseminate through www …
36,000+ downloads since June 08
• Guide rule makers in stating rules for new vaccines
• Combination vaccines• Adolescent and adult vaccination
Catch-up Scheduling for Childhood immunization
• Adolescent and adult vaccination• Schedules for immunosuppressed
children (children with diabetes, HIV, undergoing therapy, etc.)
• Extend to other countries