A Blood Bank Center manufactures and supplies cryoprecipitate, a peris
hable blood derivative, to many hospitals. The quantity of cryoprecipi
tate requested in each order often contains multiple units, and is a r
andom variable with a known discrete probabilistic distribution. Curre
ntly, the Blood Bank stores cryoprecipitate in bags containing single
units of frozen product and whenever an order is placed, these units a
re taken from the inventory, unfrozen and pooled together so that the
requested order quantity can be supplied. The time length of this fina
l preparation may be significant and may have a large impact on the qu
ality of the service and of the cryoprecipitate provided. One way to d
ecrease the final preparation time is to store cryoprecipitate in diff
erent bag sizes. By doing so, the expected number of bags which must b
e combined together to attend a given demand would decrease and so wou
ld the response time. The pre-pooling of cryoprecipitate, to respond t
o a discrete uncertain demand, requires to answer the following questi
ons: (1) how many different bag sizes or pre-pooled quantities should
be kept in inventory; (2) how to identify and what are these quantitie
s; (3) which fraction of the inventory should be packaged according to
each of these bag sizes. This paper answers these questions by develo
ping an integer nonlinear programming model and solving it using a ver
y efficient dynamic programming approach. The data concerning the dema
nd for cryoprecipitate in the Blood Bank Center is used to illustrate
the whole procedure.