Title: Management of Blood Component Preparation
1Management ofBlood Component Preparation
- Speaker Chun-Cheng Lin
- National Taiwan University
- Co-authors Chang-Sung Yu, Yin-Yih Chang
2Outline
- Introduction to
- the blood component preparation problem (BCPP)
- A linear time algorithm for the BCPP
- Some variants of the BCPP
- Conclusion and future work
3Introduction
- Transfusion therapy
- to transfuse the specific blood components
- needed to replace particular deficits
- for some medical purposes.
- Whole blood
- contain all blood elements
- a source for blood component production.
- Blood component preparation
- the indication for the use of unfractionated
whole blood - ? almost does not exist now
- separating specific cell components from the
whole blood - a lot of different methods (processes) or
equipment - ? different use, efficiency and quality
4A Process of Separating Blood Components
Whole Blood
soft-spin centrifugation
Packed Red Blood Cells
Platelet-Rich Plasma
hard-spin centrifugation
washing
Washed Red Blood Cells
Platelet Concentrate
Fresh Plasma
freezing
Fresh Frozen Plasma
thawing centrifugation freezing
Frozen Plasma
Cryoprecipitate
- Implied value (ai) Consider both the revenue
contributed by patients or insurance and the
costs induced by blood of collection, testing,
preparation, preservation, storage, processing
time, etc. - Demand limit (di).
5Blood Component Preparation Problem
- Blood Component tree
- vertex vi a blood component
- with value ai and demand limit di
- the amount xi of vi is derived from
- the amount of its parent
- according to a given ratio ri
- Initial assignment of xi
- x1 Q other xi 0
- The Blood Component Preparation Problem (BCPP)
- Given an initial volume Q of the whole blood and
- an n-vertex blood component tee T
- (where demand limit di implied value ai),
- determine the assignments of xi
- so that (1) the total value is maximized
- (2) while the demand limit of each
component is satisfied
6A linear programming approach
- The BCPP problem can be solved by linear
programming. -
Comment There exist a lot of software tools for
the linear programming problem, users just need
to describe the BCPP as a linear program and then
use those tools to solve it without implement it.
7Example
Q 100
8Motivations
- Linear programming (LP) problem
- 2 drawbacks to solve the BCPP by LP
- The worst-case algorithm for the LP problem may
not be executed efficiently (its time complexity
is nonlinear) - It may not be convenient for users to directly
describe the constraints of the LP for a general
derivatives tree.
9Main result
- Main Theorem There exists a linear time
algorithm for the BCPP in the size of vertices. - Characteristic value ? (vi) of vi
- Compute the following formula in the bottom-up
fashion - e.g.,
- ? (v8) 2 ? (v9) 6
- ? (v6) max( 3, 0.7?2 0.3?6 ) 3.2
10Our linear time algorithm (1/4)
- Step 1 ? vertex vi in top-down fashion of T,
- xi is assigned di, and then the remaining amount
is forwarded to the next level - if not enough to satisfy any demand limit, then
return false. - for convenience, we express that xi di yi.
3
10
100
0.8
0.2
4
4
8
5
x4
x2
40
50
x1
0.2
x5
0.5
1
0.3
x8
2
12
1
7
3
8
1
9
x9
x6
x3
x7
121.6
713.4
80
94
0.7
0.3
2
13
6
6
135.2
61.8
11Our linear time algorithm (2/4)
- Step 2 ? vertex vi in bottom-up fashion of T,
- If vi is a leaf, then yiM yi
- o.w., yiM minvj?Child(vi) yjM / rj ,
- yim yj rj yiM for each vj ? Child(vi).
- (In fact, yiM is the maximal possible amount of
vi flowed from its descendents and yim is the
amount of every descendent of vj of vi after yiM
is achieved)
y1m
0
10
y1M
y2m
y3m
0
2
8
4
y2M
y3M
y7m
y6m
y4m
0
11
2
0
1.6
13.4
6
4
y7M
y6M
y4M
y8m
y9m
1
0
5.2
1.8
y8M
y9M
12Our linear time algorithm (3/4)
- Step 3
- Initially, all the leaves of T are marked.
- For each internal vertex vi in the bottom-up
fashion of T, compute?? (vi). If ? (vi) ai,
then vertex vi is marked.
v4, v5, v7, v8, v9 are leaves, and hence,
marked. ? (v6) max(3, 0.7?20.3?6) 3.2 gt 3
a6 ? v6 is unmarked. ? (v3) max(8, 1?1)
8 a3 ? v3 is marked. ? (v2) max(4,
0.2?20.3?10.5?3.2) 4 a2 ? v2 is marked. ?
(v1) max(3, 0.8?40.2?8) 4.8 gt 3 a1 ? v1 is
unmarked.
y1m
0
10
y1M
y2m
y3m
0
2
8
4
y2M
y3M
y7m
y6m
y4m
0
11
2
0
1.6
13.4
6
4
y7M
y6M
y4M
y8m
y9M
1
0
5.2
1.8
y8M
y9M
13Our linear time algorithm (4/4)
- Step 4 Let U V. ? vi ? U in top-down fashion
of T, if vi is unmarked then output xi di 0
otherwise, do the following - Output xi di yiM
- ?? vj in the top-down fashion of the subtree Tvi
rooted at vi, if vj is marked, then output xj
dj yjm otherwise, for evry children vk of vj,
ykm ? ykm rk yjm, and then output xj dj 0
(i.e., yjm 0) - U?? U \ V(Tvi)
3
10
y1m
0
100
10
y1M
0.8
0.2
4
4
8
5
y2m
y3m
0
2
40
50
4
y2M
8
y3M
0.2
0.5
1
0
0.3
y6m
2
12
1
7
3
8
1
9
11
2
0
y7m
y4m
0
121.6
713.4
80
94
y6m
1.6
13.4
6
4
y4M
y7M
0.3
0.7
2.4
0.6
2
13
6
6
y8m
y9m
1
0
135.2
61.8
5.2
1.8
y8M
y9M
14Observations of our outputs
- Observation 1.
- Observation 2. In the output of our algorithm,
- For every vertex vi in R1, ai ?lt ? (vi).
- For every vertex vi in R2, ai ? ? (vi).
- Observation 3. Any feasible solution of the BCPP
is reachable from the output of our algorithm.
R1
above the band
on the band
R2
R3
below the band
Output of Step 1 of our algorithm
Output of our algorithm
15Comparison of solutions
R1
above the band
on the band
R2
R3
below the band
Output of Step 1 of our algorithm
Output of our algorithm
R11
R12
R1
R13
band
R2
R3
Any feasible solution
16Blood Component Preparation Problem
- Theorem. The BCPP can be solved in O(n) time.
- Proof. Skipped.
- Extension How to choose multiple standardized
processes so that the total value is maximized? - The preparation and preservation of blood
components are considered within a time frame. - In practice, we may execute more than one
process simultaneously within a certain time
frame. - Fortunately, for the standardization of executing
processes, the number of alternative processes is
fixed constant. - The extended problem can be solved roughly in
polynomial time.
17Modified Blood Component Preparation Problem
- The deriving operation may be nonreversible.
- ? require the volume of the components at
higher levels ?is more. - The Modified Blood Component Preparation Problem
(BCPP) - Given the initial volume Q of the whole blood
and - an n-vertex blood component tree T
- (every vertex has its demand limit),
- determine the assignments of xi
- so that (1) the volume of the components at
higher levels - is remained as more as possible
- (2) while the demand limit of every
component is satisfied. - Algorithm
- Steps 1 and 2 are the same as those of the
previous. - Step 3 Output x1 d1 y1M xi di yim, ?
vi ? V \ v1. - Corollary. The BCPP can be solved in O(n) time.
18Conclusion and future work
- We have defined a new problem called the blood
component preparation problem (BCPP), and
proposed not only a linear programming solution
but also a linear time algorithm for the BCPP. - Some variants are also given in this work.
- A line of future work includes
- to investigate the tractability of the
derivatives graph problem on some special cases
of graphs - to take more factors (e.g., time and inventory)
into account in the BCPP - to evaluate the effectiveness of the BCPP applied
in practical environment - to investigate the sensitivity analysis and the
critical paths of the BCPP.
19Thank you for your attention!