• No results found

Emergency transshipment and rebalancing policies in a library system

N/A
N/A
Protected

Academic year: 2021

Share "Emergency transshipment and rebalancing policies in a library system"

Copied!
33
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Emergency transshipment and rebalancing policies in a

library system

Gerlach van der Heide

Supervisors:

Prof. Dr. K.J. Roodbergen Prof. Dr. R.H. Teunter

(2)

1

Introduction

Worldwide, libraries are faced with various threatening developments. During the last two decades, demand for books has decreased1. An important reason for the decrease has been the availability of electronic resources, such as internet and ebooks (van der Velde and Ernst, 2009). Customers are less inclined to go to a physical library. On the other hand, the subsidies for libraries shrink every time the government decides to cut costs. This leaves libraries with tight budgets. It is vital for the libraries to reduce their expenses. In fact, library locations are threatened to be closed because it has become too expensive to keep them open2. In response to these developments, regional libraries have decided to reorganize the library system. Before, the library system consisted of individual libraries that each had their own collection and that could be visited regularly. Now, a transition is made to a system where there are a few main libraries, and several satellite locations where the customers can periodically (weekly) obtain the books that were ordered online. In this system, many movements of books have to be made to meet the demand. When a customer orders a book online, and the book is not available at the location of preference, the book has to be shipped from another library. These so-called emergency transshipments are costly, because the library employees have to spend time on reserving the books and keeping track of where the book should be sent to. There are also costs directly related to the actual transshipment of the book, such as fuel costs and costs for hiring personnel. Because the libraries have to cut costs, it is our goal to find out how these emergency transshipments can be coordinated in a least costly way. Moreover, periodic rebalancing of the books is considered. Rebalancing means that the books in the system are reallocated over the libraries. Future emergency transshipment costs can potentially be prevented by rebalancing. This setting does not only apply to libraries, but also to other inventory problems with returns such as tool rentals.

To illustrate the novelty of this article, we compare and contrast our model with recent lit-erature on library and inventory control. The library control problem can be seen a part of the literature on lateral transshipments (Paterson et al., 2011). There are two types of trans-shipment movements in our model, interlibrary lending (ILL) and rebalancing. Interlibrary lending is the ability for the consumer to request a book from another library location. In the classification of Paterson et al. (2011), ILL can be regarded as an reactive transshipment, and rebalancing as a proactive transshipment. Reactive transshipments are movements of stock that happen at the moment when there is a stockout (an emergency). Proactive transship-ments are movetransship-ments of stock in order to prevent future stockouts or to reallocate the goods in a system. Since libraries are not competitors, there can be complete pooling. Complete pooling means that all stock in the system is shared among the locations. An important focus of the lateral transshipment field is determining optimal order quantities and reorder points (Olsson, 2009). Others look at the optimal transshipment policy (Herer et al., 2006) or rebalancing (Tiacci & Saetta, 2011). However, many of the models in this field are applied in a setting without returns, whereas libraries are characterized by almost 100% returns. Inven-tory control with returned products is better known as reverse logistics (Fleischmann et al., 1997; Shi et al., 2011). Ching et al. (2003) is one of the few papers that consider both returns and lateral transshipments. A novelty aspect of our problem is that we consider reactive transshipments, proactive transshipments and returns at the same time. A related problem

1

http://en.wikipedia.org/wiki/Decline of library usage

(3)

is that of car rentals (George and Xia, 2011). Rental cars are also characterized by 100% returns. In George anx Xia (2011), the rental cars are assumed to arrive at a random location at the end of the renting period, whereas library books generally return at the location of rental. Rebalancing of cars in the system is an important feature in these types of models, but there are generally no emergency transshipments. Approach-wise, this article is in the dynamic programming corner. Dynamic programming has successfully been applied before in inventory control (Agrawal et al., 2004; Olsson, 2009) and car rentals (George and Xia, 2011; Adelman, 2007). There are various streams in the literature that focus on library collection control. Examples include acquisition of books (Allen et al., 2003), budgeting (Chan, 2008), interlibrary lending (McGrath, 2009; Corthouts et al, 2011), user categorization (Boter and Wedel, 2005) and allocation of books (Bijvank, 2009). None of the above consider active rebalancing of books. Corthouts et al. (2011) consider returns to the original library when interlibrary lending (ILL) takes place. Van den Noordaa (2011) looks at the case when there is a ‘floating’ collection, where a book is not returned to the original library, but stays at the location where it was requested. In contrast, in our paper the books can be transshipped from and to any library; there is no fixed rebalancing rule. The available literature on library control often discusses service targets, but the costs of controlling the collection are usually not mentioned, let alone minimized. This article contrasts with the current library literature in the way that we specifically look for cost minimizing transshipment movements.

For a general number of satellite locations, a dynamic programming approach is applied to determine a cost-minimizing emergency transshipment and rebalancing policy for one book title. For every state in our system and every demand that is observed, the emergency trans-shipment and rebalancing choice that leads to the lowest expected future costs is determined. The optimal procedure faces a high degree of complexity in the size of the input. Hence, alternative heuristic procedures are proposed for models of larger size. These heuristics are tested and compared to the optimal solution.

Section 2 explains the modelling steps and assumptions more concisely. In section 3, the model and dynamic programming algorithm are mathematically formalized. Moreover, several extensions to the model are proposed. In section 4 heuristic methods for solving the problem are provided and explained. Section 5 shows the resulting output of the dynamic programming algorithm and the heuristics.

2

Model and assumptions

The goal of this section is to carefully explain the situation that is modeled, as well as the assumptions. For a given book title, we want to optimize the emergency transshipment and rebalancing rules. The expected costs (now and in the future) corresponding to these trans-shipment movements are minimized. The steps of the model are presented in the flowchart of figure 1. The timing in the model corresponds to most inventory control models with emergency transshipments (Paterson et al., 2011). At the start the decision on stock levels is made, and later emergency transshipments take place.

(4)

decision depends on the random future demand. Therefore, the rebalancing decision should be such that it, in expectation, minimizes costs. Next, the weekly random demand for each library for the book title arrives. The demand has to be satisfied from the available stock of books. When there is a stock-out for the title, books are transshipped from the other libraries in the system. Demand should always be met when it can be fulfilled, since service is of great importance to the library and its customers. There are, generally, several options for emergency transshipments. When there are multiple locations with stock available, the books can be transshipped from either of the locations. Transshipment movements are costly. After the transshipments have been done, the returned books come back into the libraries. The returned books will be available for hiring in the next period. The same procedure is repeated every period. By making rebalancing and emergency transshipment decisions, expected future costs are minimized. This is similar to Olsson (2009), where the policy that minimizes expected costs is determined by means of stochastic dynamic programming. The difference is that we have two decisions each period.

Various assumptions are made to model the situation as described in figure 1. The assump-tions are listed below, and where required further explanation is provided.

• The model considers the behavior of the system for one book title at the time.

• All demand that can be fulfilled must be fulfilled. As the goal of the library is to serve its customers to the fullest degree, every demand that is observed should be fulfilled when there are still books of the book title available. Unmet demand can be penalized by introducing artificial penalty costs.

• Demand that cannot be fulfilled is lost. If the customer demands a book that is nowhere available, the demand is assumed to be lost. In practice, the customer looks for a different book, makes a reservation, or leaves the library. At the end of section 3, an extended model with inclusion of reservations (backorders) is discussed. Lost sales are a common assumption (Bijvank and Vis, 2011).

• Demand probabilities are library dependent. Because some library locations have more customers than others, it is reasonable to assume that the probability of hiring a book is not necessarily equal for each library.

• Demands are observed at the start of the new period. Customers can order their books at any time during the week, but only at the start of the delivery day the demands are fully known. This is similar to material requirements planning (MRP) in supply chain management, where at a certain point in time the current orders are observed and a planning is made. Of course, some of the demand information that arrives early could be applied. But this increases the complexity of the model, and may in fact lead to suboptimal decisions.

(5)

Figure 1: Flowchart of the decision process

Start of the period in a given state.

The periodic demands arrive

Demand at a location is satisfied from the available stock

Rebalancing of the available books Emergency transshipment to fulfil excess demands. Previously borrowed books return to the

libraries.

End of the period

available for fulfilling demand, since it is unsure at which moment of the day the book returns.

• The decision for emergency transshipments takes place after observing demand. There is a fixed cost for each transshipped book. Fixed costs are realistic if emergency trans-shipments are handled by mail (Corthouts et al., 2011), and less realistic when the libraries use their own transportation system. However, we discuss an extension of the model that allows for an alternate transshipment cost structure.

(6)

for emergency transshipments.

The assumptions above are not very restrictive, because most of them are pretty close to how a system with online demand works. For the assumptions that are unrealistic (such as fixed returns), viable alternatives are provided in section 3.8. The main reason for using these simplifying assumptions is to provide a more comprehensive and clear presentation of the model.

3

Stochastic dynamic programming formulation

This section describes the formulation and the algorithm for solving the book transshipment and rebalancing problem to optimality. The dynamic programming algorithm has two decision moments each period. One decision takes place after demand has occurred. Demand that cannot immediately be met from stock has to be met by means of emergency transshipments from the other library locations (if possible). The other decision takes place after previously borrowed books have been returned. A decision on reallocating the books in the system is made. In order to describe the algorithm, notation is introduced here. In table 1 all variables are listed, as well as the interpretation. The notational style in this article draws partially from Powell & Topaloglu (2003). The methodology for the stochastic dynamic program comes from Puterman (1994).

Table 1: Nomenclature

T Number of periods

N Number of libraries

K Total number of books for the book title under consideration t Index for the periods, t = 1, . . . , T .

i Index for the libraries, i = 1, . . . , N .

At Vector of available books in period t, At= (A1t, . . . , AN t).

Bt Vector of borrowed books in period t, Bt= (B1t, . . . , BN t).

St State at period t represented by the vectors At and Bt.

Dt Vector of demands at each library in period t.

xEt Emergency transshipment decision. xRt Rebalancing decision.

cE Unit costs for an emergency transshipment cR Unit costs for a rebalancing movement cU Unit penalty cost for an unfulfilled demand

CR(St, xt) Rebalance cost function in state Stwhen rebalance choice xt is made.

CE(St, Dt, yt) Emergency transshipment cost function.

VtR(St) Value function for the rebalancing in state St in period t.

VtE(St, Dt) Value function for the emergency transshipments in state St in period t

when the demand is Dt.

3.1 State space

The state space, St, is characterized by the vector of available books and borrowed books

(7)

At = (1 0 1) and the number of borrowed books by Bt = (0 1 1), the state space variable

is St = (At, Bt) = (1 0 1; 0 1 1). The sum of available and borrowed books should always

add up to K, the total amount of books. Because there are two decision moments in the model, the superscripts E (emergency transshipment) and R (rebalancing) are added in the notation to distinguish between the states. The state after rebalancing is thus denoted by SRt = (ARt , BtR) and the state after emergency transshipments and returns by StE = (AEt , BEt ). In Olsson (2009), the state space is very similar: it consists of the items in stock and the outstanding items.

3.2 Demand distribution

The periodic vector of demands, Dt, has a discrete distribution. For library i, i = 1, . . . , N ,

the periodic demand takes on a value of 0,1 and 2 with probabilities pi0,pi1 and pi2, with

P2

j=0pij = 1. Suppose that the demand vector for 3 libraries is Dt= (1, 2, 0). The probability

of this event is P (Dt= (1 2 0)) = p11· p22· p30. The maximum demand per period can easily

be adjusted.

3.3 Transition functions

To model the system as explained in section 2, the transitions between the rebalancing and emergency transshipment state have to be described concisely.

3.3.1 Transition from the emergency transshipment to the rebalancing phase Let SE

t = (AEt, BtE) be the state after transshipments have taken place and the returned books

are back. The following functions describe the transition from the emergency transshipment state to the rebalance state. Since rebalancing takes place in the new period, it is indexed by t + 1 rather than t. The vector of available books, AR

t+1, when choosing the rebalancing

option xRt+1, is given by ARt+1 = AEt + xRt+1, (1) with N X i=1 xRi,t+1= 0, and AEt + xRt+1≥ 0. (2) In equation (1), xRt+1 is the vector of mutations. When xRt+1 is positive for a library location, one or more books are transshipped to this location. When it is negative, one or more books are transshipped away from this location. Since each book that is transshipped should arrive at another location, the sum of all mutations adds up to zero. It should also not be possible to arrive at a negative stock after rebalancing. The conditions in equation (2) assure that xRt+1 is feasible.

The vector of borrowed books, Bt+1R , cannot be influenced, since the books are still at the customer. Therefore the transition function for borrowed books is:

BRt+1= BtE. (3)

The new state after rebalancing is then given by:

(8)

Suppose that the available stock is AEt = (3, 0, 1), and borrowed books is BtE = (0, 2, 1). When we decide to do the transshipment xRt+1 = (−1 1 0), the new state is given by ARt+1= (2 1 1) and Bt+1R = (0 2 1). In the example, the transshipment has led to a more equal division of the books over the library locations.

3.3.2 Transition from the rebalancing to the emergency transshipment phase The transition from the rebalancing to the emergency transshipment phase is complicated, since in this phase we observe the demand and returns, and have to make a difficult decision depending on these. Let (x)+, the positive part function, be defined as

(x)+= max(x, 0) and (x)−, the negative part function, as

(x)−= − min(x, 0),

where when x is a vector the function is applied element wise. The state after rebalancing was denoted by SR

t = (ARt, BtR). The new vector of available stock AEt , after demand Dt,

emergency transshipment decision xEt and returns BtR, is given by:

AEt = ARt − Dt+ xEt + mt+ BRt . (5) with N X i=1 xEit = 0, (6) xEt ≥ −(ARt − Dt)+, (7) xEt ≤ (ARt − Dt)−, (8) N X i=1 (xEit)+ = min  N X i=1 (ARit− Dit)+, N X i=1 (ARit− Dit)−  (9) and mt= (ARt − Dt+ xEt ) − (10) In equation (5), ARt − Dt denotes the level of the stock after the demand and before

trans-shipments. The decision vector xEt is the vector of transshipments. When an element of xE

t is positive, it means that we transship xEit books to the corresponding library, and when

it is negative −xEit books are transshipped away from this library. The variable mt, is the

nonnegative vector of unfulfilled demands after the transshipment (lost sales). Finally, BtR denotes the books that return at the end of the period.

(9)

can be fulfilled will be fulfilled. The total number of the transshipped books must be equal to the total available stock after demands,PN

i=1(ARit− Dit)+, or the total demand in excess,

PN

i=1(ARit− Dit)−, whichever is lowest.

The vector borrowed books, BEt , is given by:

BtE = BtR− BtR+ Dt− mt= Dt− mt. (11)

The new amount of borrowed books are thus the previously borrowed books, BtR, minus what has come back (BtR under the assumption of fixed returns). Of course, the newly demanded books, Dt, are now borrowed to customers, except for the demand that could not be fulfilled,

mt. The new state is then given by

StE = (AEt , BEt ) (12)

As before, we provide an example. Suppose that ARt = (1 1 1) and BtR= (0 2 0). This periods demand is Dt= (2 2 0). The after demand stocks are given by ARt − Dt= (−1 −1 1). There

are two transshipment possibilities, xEt = (1 0 −1) or xEt = (0 1 −1). Suppose that we choose xEt = (1 0 −1). Then the unfulfilled demand is mt = (0 1 0). After the returns come back,

the stock level AEt = (0 2 0) and the future returns are given by BtE = Dt− mt= (2 1 0).

3.4 Rebalancing and emergency transshipment cost functions

The costs for rebalancing, after observing state St−1E and choosing the rebalancing mutation xRt, is: CR(St−1E , xRt) = cR· N X i=1 (xRit)+, (13)

where xt is an implicit function of the state St−1E , as described in equation (1). In the cost

function, the number of book movements is multiplied by the cost of a movement.

The costs for transshipments and unfulfilled demand for a given state StRand demand Dtare

given by: CE(SRt , Dt) = cE · min( N X i=1 (ARit− Dit)+, N X i=1 (ARit− Dit)−) + cU· ( N X i=1 ARit− N X i=1 Dit)−, (14)

which is independent of the transshipment choice xEt , because the unit transshipment costs are the same for transshipments from each location. The number of transshipments is the minimum of the excess stock and the excess demand. The number of unmet demands is the negative part of the total stock minus the total demand. These amounts are multiplied by their corresponding unit costs in equation (14).

3.5 Bellman’s equations

(10)

3.5.1 Value function of rebalancing

Let VtR(St−1E ) denote the value function of rebalancing in period t. The value function gives the future rebalance costs for when we reach state St−1E . In period t when we observe that, before rebalancing, we are in state St−1E , the rebalance decision is such that the immediate rebalancing costs and the expected future emergency transshipment and rebalancing costs are minimized. Of course, the optimal rebalance choice depends on the (uncertain) future emergency transshipment state that is reached after observing the demand. Let the value of the transshipment state be denoted by VtE(StR, Dt). Then the Bellman equation is given by:

VtR(St−1E ) = min xR t CR(St−1E , xRt ) + EDVtE(StR, Dt)  , (15)

where for xRt the conditions in (2) should hold. The costs are the immediate rebalancing costs, and the expected costs in the future of the post-rebalance state StRand random demands Dt.

3.5.2 Value function of emergency transshipment

Because the value function of emergency transshipment depends on the realization of the de-mand, it is denoted by VtE(StR, Dt). For the transshipment decision, immediate transshipment

costs and future rebalancing costs are minimized: VtE(StR, Dt) = min

xE t

CE(StR, Dt) + VtR(StE). (16)

Here, xEt is the choice of transshipment and StE is the state we reach after the transshipment. Since the returns are not random, there is no expectation in this function. Given the demand and state, the transshipment is chosen that gives us the lowest expected costs in the future.

3.6 Dynamic programming algorithm

(11)

Figure 2: Schematic view of the dynamic programming model

Rebalancing phase

Demand, transshipment and

return phase

Period 1 Period 2 Period T

Demand, transshipment and return phase Demand, transshipment and return phase Rebalancing phase Rebalancing phase

3.6.1 Initialization

Before the value of being in a state can be iteratively calculated, we need to initialize the value function in the final period T . For each state SR

T and demand DT in the final period

T the value function for the transshipment are the final period transshipment costs. There are no future rebalance costs that we have to take into account, since the time horizon has ended. Any transshipment choice has equal costs, so that there is no minimization needed. The value function of emergency transshipments for state STR and demand DT is given by:

VTE(STR, DT) = CE(STR, DT).

The value function of rebalancing costs in the final period are given by the direct rebalance costs of decision xRT and expected transshipment costs in the final period.

VTR(ST −1E ) = CR(ST −1E , xRT) + ED(VTE(STR, DT)).

3.6.2 Description of the algorithm

Below, the steps of the algorithm are presented. Before we start, the final state value functions are initialized. Then, we step back in time and iteratively calculate the value functions until we are back in period 0.

Step 0. Initialization:

(12)

Step 1. Calculate the value function for emergency transshipments: VET t (StR, Dt) = minxE t C E(SR t , Dt) + VtR(StE)

for each rebalancing state StR and demand Dt.

Step 2. Calculate the value function for rebalancing: VtR(SEt ) = minxR t C R(SE t , xRt ) + ED  VtE(StR, Dt) 

for each emergency transshipment state StE.

Step 3. If t > 0, decrement t and return to step 1. Else, stop.

3.7 Complexity and tractability

There are several sources of complexity in the dynamic programming model. This leads to intractability of the exact model when both the number of libraries increases beyond N = 5 and the number of books increases beyond K = 10. Three main reasons cause the complexity: the size of the state space, the demand distribution and the number of transitions between states.

3.7.1 Number of states

The state space grows fast in the total number of books and the number of libraries. Because there are fixed returns, and the maximum demand in a period per library is 2 books, the number of possibilities is limited, because the amount of books that are borrowed at a location are at most 2. When there are random returns, in principle all K books can be borrowed from one library location. In this case, the cardinality of the state space, |S|, when there is a total of K books and N libraries is given by

|S| = ΠKi=1i + 2N − 1

i . (17)

The size of state space is approximately of order O(NK). The state space is particularly explosive in the number of libraries, and also grows fast when the number of books increases. Equation (17) gives an upper bound for the number of states in the case with fixed returns. 3.7.2 Demand distribution

Under the assumption that demands at each of the N libraries takes on the values 0,1 or 2, there are 3N possible realizations of the demand. Since for every state and for every demand the optimal action has to be determined, the amount of steps in the algorithm increases explosively in the demand distribution. The complexity that comes from the demand distribution is of order O(3N).

3.7.3 Number of rebalancing and transshipment possibilities

(13)

K. The total number of permutations for which each number takes on the values 0, 1, . . . , K is KN. Since the rebalancing possibilities are a subset of all permutations, the number of options for rebalancing is of order O(KN).

The worst case for the number of feasible transshipments is difficult to determine, since the feasible region has many constraints. It grows in N and K, but we do not know the exact relation. The transshipment possibilities seem to grow less fast than the number of rebalancing options, due to the higher number of constraints. For the N = 3, K = 6 case we found that the maximum number of transshipment options was 3. For N = 4, K = 8 it was 10. For N = 5, K = 10 the highest observed was 13, for N = 6, K = 12 and N = 7, K = 14 it was 31 and 56, respectively. The relation seems to be exponential. We believe that the worst case for the number of transshipment possibilities is of order O(2N).

3.7.4 Determining the one step transition matrix

The algorithm requires us at each step to know the future states after seeing a demand and transshipment. The determination of the transition matrix for the transshipment phase is especially time consuming. In polynomial time, the future state for a given demand and transshipment option can be determined. It is a simple addition of vectors, and thus of order O(N ). The future state has to be compared with all states in the state space, which is a step of O(NK). The comparison has to be repeated for each state, demand and transshipment option. The number of steps for determining the transition matrix is thus of order O(N · NK· 3N· NK· 2N) = O(N2K+1· 3N· 2N). The number of steps is extreme when N and K become

large. Storing and calculating the transitions is very memory intensive for large problems. When we decide not to use the one step transition matrix, the number of steps are higher. When the transitions are determined on the fly, the number of steps has to be multiplied by the number of periods the algorithm is run.

It also takes many steps to determine the transition matrix for rebalancing. Determining the future state after rebalancing is of order O(N ) and comparing it with the states in the state space is of order O(NK). Since the comparisons have to be done for each state and rebalancing option, the number of steps for creating the rebalancing transition matrix is of order O(N · NK· NK· KN) = O(N2K+1· KN). The complexity numbers above are very raw

and inaccurate. The message we want to convey is that there is a large degree of complexity in N and K.

3.8 Model extensions

This section discusses extensions for the model. Certain assumptions are relaxed to make the model more realistic. The extensions are generally simple to implement, and many of the extensions do not require drastic changes.

(14)

probability of r = 1. The return probability models that there is randomness in the book returns. Implementation of return probabilities requires changes to the transition function and Bellman equation for emergency transshipments, but does not increase the complexity of the model a lot. When using a time independent return probabilities, it can be the case that a particular book never returns. Therefore, a better option could be time dependent return probabilities.

3.8.2 Random returns with time dependent probabilities

In practice, returns generally follow a distribution that depends on the amount of time that a book has been borrowed. If readers usually take two weeks to read a book, it is not very likely that the book will return in one week, but the probability that it returns the second week will be a lot higher. Therefore, a concise way of modelling returns might be preferable. Based on renting data of books, the return distribution can be determined empirically. Once the return distribution is known, it can be used to model the returns in our model. Since the return distribution is time dependent, for each book we need to keep track of when it was hired in our state space variable. This drastically increases the size of the state space and it requires an adjusted state space variable. However, algorithmically it is a small adjustment. 3.8.3 Stock dependent demand

In practice, we often observe that the demand for items depends on the amount of available stock. When a customer comes to a library, often he makes a selection out of the books that are available at that time. In public libraries, a customer is only sporadically interested in a particular book. Therefore, we introduce stock dependent demand probabilities. The probability of a certain book being demanded is a lot lower when that book is unavailable at the library. The stock dependent demand probabilities are trivial to implement. The probabilities only influence the weights used in the expectation in equation (15).

3.8.4 Unequal transshipment costs

In reality, the transshipment costs between libraries are not necessarily the same. When the distance between two libraries is large, the fuel costs are generally higher, for instance. By introducing cost matrices with the interlibrary transshipment and rebalancing costs, this can be modelled. It will lead to a change in the cost functions that were previously introduced. For each possibility for transshipment and rebalancing, the minimal costs associated with the stock movement have to be determined.

3.8.5 Backorders/reservations

(15)

4

Heuristic methods

The complexity of the model in section 3 grows quickly in the number of libraries (and books). Hence, we will look into heuristic procedures that can be performed for larger models. The main technique is clustering of libraries. Clustering means that the library locations are divided into clusters of a size that we can solve with the optimal model. The information that is available about the optimal solution within clusters is applied to construct a heuristic solution for all locations in the state space. The reason for clustering is twofold. The first reason, is that the size of the state space for a cluster is a lot smaller than for the full problem. It is easier to solve several smaller subproblems, than to solve one big problem. Secondly, a division of libraries into clusters is very natural, since it corresponds to the situation often seen in practice. Libraries in the same region often cooperate. Only when the cooperating libraries face a demand for an unavailable book, it is requested from another region. Therefore, clustering heuristics should actually provide a good benchmark for what is happening in practice. When further research on simple decision rules is done, the effectiveness of a decision can be compared to the benchmark that is given by the clustering solution. There are several alternative methods for deriving a policy by means of clustering. Two variants are introduced: the independent and dependent clustering.

4.1 Independent clusters

The simplest clustering technique is independent clustering. First, small groups of libraries are placed in clusters. The clusters are acting as completely independent entities, and rebalancing and emergency transshipments only take place within the cluster. There are no rebalancing movements from cluster to cluster. The number of books in each cluster thus remains constant. It should be evident that the model with independent clusters can be solved with the dynamic programming algorithm from section 3. We simply run the optimal algorithm for each cluster. The problem can be solved for as many clusters as needed. The number of libraries in a cluster cannot exceed 5, since the optimal algorithm cannot properly solve for a higher number of libraries than this. For the independent cluster method, the running time for generating a decision does not grow polynomially anymore in the number of libraries and books. The running time grows only in the number of clusters. If all clusters have the same size and number of books, the running time increases linearly in the number of clusters.

In the case of independent clusters the service level is not always maximized, since certain transshipment movements are restricted (the transshipments between libraries in different clusters). In some situations, this may in fact lead to lower costs, since not having to transship may lead to a larger inventory in the next period, and thus preventing some future stockout costs. In the results section the influence of independent clustering on the costs is examined. The ‘schematic’ view of the independent cluster method is presented in figure 3, for the case when there are two clusters.

4.2 Dependent cluster method

(16)

Cl

us

t

er

Cl

us

t

er

Figure 3: Independent method

another cluster. Rebalancing can still take place between any of the libraries. Schematically, figure 4 shows the dependent cluster method for three clusters. The most intensive step in section 3 is the emergency transshipment phase. In the dependent cluster method we are particularly interested in resolving the issues in the emergency transshipment phase.

Cl

us

t

er

Cl

us

t

er

Cl

us

t

er

Figure 4: Dependent cluster method for three clusters

4.2.1 Individual cluster solutions in the dependent cluster method

Let St = (At, Bt) be the state-space for N locations and K books, and Dt the demand

distribution at time t, as in section 3. Let there by J clusters. The number of libraries in cluster j, j = 1, . . . , J is given by Nj, withPJj=1Nj = N . Let the clusters be indexed by Cj,

with cluster j containing the original libraries Pj−1

i=1Ni+ 1, . . . ,

Pj

i=1Ni.

(17)

the cluster. The modified state space for cluster 1, SC1 t , is given by: SC1 t = (A C1 t , B C1 t ), with AC1 t = (A1t, . . . , AN1t, N X i=N1+1 Ait), and BC1 t = (B1t, . . . , BN1t, N X i=N1+1 Bit).

The state-space for cluster 1 thus consists of the state of the libraries in the cluster, and the state of an artificial library location that contains the aggregate available and borrowed books in all other clusters. For cluster 2, . . . , J the state space can be defined in the same way. We simplified the state space by introducing J smaller state spaces. The modified demand for the state space of cluster 1 is given by:

DC1 t = (D1t, . . . , DN1t, N X i=N1+1 Dit),

and similarly for the other clusters. The probability distribution of the demand vectors is straightforward to determine, by means of aggregation. For the modified state spaces and demand distributions, we can solve the original model again. These problems consist of Nj+1

libraries with K books each. This is considerably smaller than the complete problem with N libraries.

The rule for transshipments has to be modified to make sure that transshipments are handled within the cluster before we transship outside the cluster. When in cluster j, a demand DCj

t

from the modified distribution is observed, and the state is SCj

t , the amount we transship to

the artificial library location Nj+ 1 is given by:

xENj+1,t= min  ( Nj X i=1 Ait−Dit)+, (ANj+1,t−DNj+1,t) −  −min  ( Nj X i=1 Ait−Dit)−, (ANj+1,t−DNj+1,t) +  . In the equation we dropped the indices for the cluster to reduce notational clutter. When

both the cluster and the artificial library have positive stock, there is no transshipment, nor when both have negative stock. Only when one of the two runs out of stock there is a transshipment. The restrictions for the libraries within the cluster are very similar to the restrictions in equations (6) - (9), and they are given by:

Nj X i=1 xEit = −xE Nj+1,t, xEit ≥ −(Ait− Dit)+, for i = 1, . . . , Nj xEit ≤ (Ait− Dit)−, for i = 1, . . . , Nj Nj X i=1 (xEit)+ = min  Nj X i=1 (Ait− Dit)+, Nj X i=1 (Ait− Dit)−  .

(18)

4.2.2 Building the emergency transshipment policy

For the individual clusters, the rebalancing and transshipment policy has been derived. Now this policy should be translated into a solution for the original state space with N libraries. For the emergency transshipment the following is proposed. Let StRbe the state after rebalancing. Let Dtbe the demand. The corresponding cluster states and demands are given by StCj,R and

DCj

t ,j = 1, . . . , J . The optimal decisions x Cj,E

t have been determined already. The following

procedure describes the decision for the N library case: Step 1.

Construct the transshipment decision: xEt = (xC1,E 1t , . . . , x C1,E N1t , x C2,E 1t , . . . , x C2,E N2t , . . . , x CJ,E 1t , . . . , x CJ,E NJt ). IfPN

i=1xEt = 0, then xEt is feasible. Stop. Else go to step 2.

Step 2.

Calculate the (currently) unfulfilled demands: mt= (At− Dt+ xEt )+.

Subtract in total −PN

i=1xEt from the elements of mt and add these to the

corresponding elements of xEt. The transshipments should go to the library with the least number of outstanding returns, and in case of a tie to the first library in the list.

Note that for two clusters, step 1 always gives a feasible transshipment. This holds because the total number of ingoing transshipments in cluster 1 equals the number of outgoing transship-ments in cluster 2. For the case where there are three or more clusters this is not necessarily true, as we will show in an example.

Example: Let the stock after demand in the cluster A, B and C be -1, 1 and -1, respectively. Then the demand in cluster A could be fulfilled by transshipping it from cluster B. However, when cluster A looks at the aggregate stock of the other clusters, there are no books available for transshipment (1 + -1 = 0). From the point of view of cluster B, the aggregate demand in the rest of the system is -2, and a transshipment will take place. Similarly, for C, there will be no transshipment. The sum of outgoing transshipments (=1) will not be equal to the sum of ingoing transshipments (=0), and books disappear from the system.

(19)

Transshipment decisions are dependent on the remaining time horizon. However, unlike rebalancing, we are always forced to do an emergency transshipment when there is a stockout somewhere. The direct costs are independent of the decision, but only the future costs are influenced by the decision. It is reasonable to believe that the optimal decision for T periods ahead should also be suitable in the final period. Therefore, we propose to apply the optimal transshipment decisions in the first period for each period, i.e.:

xEt = xE1, for t = 1, . . . , T.

The policy has become time independent now. Determining a time independent policy takes T times less time. The advantage of the heuristic transshipment decision is that it is fixed: there is no more optimization involved. The disadvantage is that it is in general not optimal, since several transshipment options have been excluded in the optimization for the modified state spaces. The time to determine an emergency transshipment grows polynomially in the number of clusters (and hence in N), but is still growing exponentially in the number of books. 4.2.3 Rebalancing in the dependent cluster method

For rebalancing we would also like to use the knowledge from the optimal policy in the modified state spaces. Again, the optimal rebalancing decisions in the modified state spaces do not necessarily give a feasible solution for the original state space. Let xCtj,R be the rebalancing decisions in the modified state spaces for the same state at time t. The following procedure leads to a feasible rebalancing decision:

Step 1.

Construct the rebalancing decision: xRt = (xC1,R 1t , . . . , x C1,R N1t , x C2,R 1t , . . . , x C2,R N2t , . . . , x CJ,R 1t , . . . , x CJ,R NJt ). IfPN

i=1xRt = 0, then xRt is feasible. Stop. Else go to step 2.

Step 2.

WhenPN

i=1xRt < 0, add

PN

i=1xRt in total to the negative elements of xRt .

WhenPN

i=1xRt > 0, subtract

PN

i=1xRt in total from the positive elements of xRt.

Store all possibilities and let the algorithm determine the best solution.

The method for determining the possibilities is defined implicitly here. It should be clear that the approach leads to a feasible solution. The advantage of the approach is that the number of possible rebalancing options is much more limited than in the optimal approach. In cases where the state space is relatively small, we could even use the rebalancing possibilities from the optimal approach.

4.2.4 Sampling approach for the rebalancing policy

(20)

is taken. Instead of weighing the effectiveness of a rebalancing decision over all possible future demands, we could instead look at a sample of n < 3N realizations from the demand distribution. The rebalancing decision is optimized over the sample, rather than over the complete distribution. Then we can take an expectation over n sampled demands, rather than over all 3N possibilities. The sample does not have to be random; it is best to choose a sample of demand realizations that leads to a close to optimal solution. Sampling reduces the running time of the algorithm considerably, while still providing a policy for each possible situation. The disadvantage is that the costs are incomparable with the costs of the optimal policy. When the sample contains all 3N realizations, we get the same solution as before. The sampling approach removes the complexity from the demand distribution, but the algorithm still has to be run over all the states. Since the states are exponentially increasing in the number of libraries and books this might be problematic. For large state spaces it might therefore be more suitable to use a fixed decision rule for rebalancing, as for the emergency transshipment decision.

4.3 Choice for the number of clusters and assignment of libraries

When applying a clustering method, a decision on cluster sizes and an assignment of libraries to the clusters has to be made. Generally, there are many ways in which the libraries can be clustered. Because the state spaces for the clusters can become fairly large, it is best to have clusters with two or three libraries, since these models can be solved quickly. Below is a very simple decision rule for determining cluster sizes, where we take as many clusters of size two as possible. The reason for taking clusters of size two is that the within cluster solution can be calculated quickly.

Decision rule for cluster sizes: When N ≥ 4 and N is even, we create N2 clusters of size of size two. When N ≥ 5 and N is odd, we make N −32 clusters of size two and 1 cluster of size three.

After the cluster sizes have been determined, libraries have to be assigned to the clusters. Should high demand libraries be placed in the same cluster? Or should there be a mix of high and low demand libraries? Intuitively, it seems best to have a mix of different types of libraries in the same cluster. The risk of having stockouts can perhaps then be hedged. In the results section, the allocation of libraries to clusters is examined. For several allocations of libraries into two clusters we try to find out what is a cost-minimizing assignment.

5

Results

The effectiveness of the optimal algorithm and heuristics are tested in this section. The first step is to determine the number of periods that the algorithm is run. For the optimal algorithm the N = 3 case is investigated thoroughly. The costs and the optimal policy are compared in various experiments with varying cost parameters and demand distributions. For the N = 4 and N = 5 case the optimal costs and running times are discussed. Then the independent and dependent cluster approaches are compared with the optimal algorithm. The programming environment in which the problem is solved is R3. The computer has a Core2Duo e6750 (2.66GHz) processor and 1 GB working memory.

(21)

5.1 Convergence and choice for the number of periods

The decisions in the model are decisions that should minimize costs in the long run. Because the time horizon is finite, a sufficiently long horizon is needed to determine the long run decisions. When the time horizon is very short, rebalancing may not be profitable, while it is profitable in the long run. Therefore, we need to know the number of periods that are required for the policy to converge. On one side, we want the number of periods to be as small as possible to reduce the amount of work. On the other hand it should be large enough for ‘convergence’ to take place.

The procedure for determining the number of periods is described now. For the case with N = 3 libraries, with identical demand distributions, the algorithm is run for 100 periods. We keep track of the number of changes in the rebalancing policy from period to period. Since there are 297 states, 297 rebalancing decisions are calculated each period. When the number of changes becomes zero (and remains at zero for the rest of the time horizon) the decision has ‘converged’. The minimum time instance for which all the 297 rebalancing decisions have converged determines the time horizon. For several configurations, with varying costs and demand distributions as given in table 2, the period of convergence is determined. The convergence time has also been checked for the N = 4 case, but in table 2 only example is shown.

Table 2: Configurations for testing the convergence of the optimal algorithm Variable Cfg. 1 Cfg. 2 Cfg. 3 Cfg. 4 Cfg. 5 Cfg. 6 N 3 3 3 3 3 4 K 6 6 6 6 6 8 p0 0.8 0.8 0.8 0.7 0.4 0.8 p1 0.18 0.18 0.18 0.26 0.5 0.18 p2 0.02 0.02 0.02 0.04 0.1 0.02 cU 1 1 1 1 1 1 cR 1 1 1 1 1 1 cE 2 3 5 3 3 3 Periods 23 16 9 10 3 17

The results in table 2 indicate that convergence is dependent on the distribution of the de-mands and the costs. When costs for transshipping (cE) are high compared to the costs for rebalancing, and the probabilities for demands (p1 and p2) are high, the algorithm converges

fast. This is reasonable, since higher costs and higher demands lead to higher costs for stock-outs. Rebalancing quickly leads to a reduced chance of stockstock-outs. We have also repeated the experiment for libraries with asymmetric demand distributions, and generally the convergence is within 20 periods. Taking a horizon of T = 20 periods seems to be reasonable to make sure that there is convergence. Therefore, the time horizon of 20 periods will be used in all the variations.

5.2 Optimal algorithm

(22)

optimal policy and costs for the N = 3 case and also focus on the speed of the algorithm in larger problems. There are two steps in the computation. The first step is generating the transition matrix, which tells how the transitions between states take place. The transitions depend on the demand and the rebalancing/transshipment decision. The transition matrix is required to perform the second step: running the actual algorithm. A lot of time is invested in determining the transition matrix (which only has to be done once) to run the algorithm quickly. Without the transition matrix, the same calculations have to be repeated each period again. The problem with using a transition matrix is that it requires a lot of memory storage. 5.2.1 Three library case

The case with three libraries is very insightful for various reasons. We need at least three libraries, because with only two libraries the transshipment policy is fixed: the books can only be transshipped from one location to the other. Three libraries is the minimum number for observing the emergency transshipment policy in work. Another advantage of the three library case is that the state space is relatively small. A small state space makes it possible to keep track of the decisions in the rebalancing and emergency transshipment policy without getting lost in the sheer number of decisions.

5.2.2 Cost-minimizing states in varying configurations

Before looking into the policies, we look at the influence of cost parameters and demand distributions on the costs. We look at the case with N = 3 libraries that have K = 6 books of a given type in their stock. The setup of the experiment is shown in table 3. The configurations are combinations of varying cost parameters and demand distributions. The rebalance costs are always kept at unit cost. The unit transshipment cost, cE, varies between 2,3 and 5. The artificial penalty cost for unfulfilled demand, cU, equals 0, the rebalance cost,

or the transshipment cost. For the demand distribution there are three situations: the high (H), medium (M) and low (L) demand situation. The probabilities of 1 and 2 books demanded are higher in the high demand situation than in the low. The probabilities corresponding to the H, M and L situation are given by:

H : (pi0, pi1, pi2) = (0.4, 0.5, 0.1)

M : (pi0, pi1, pi2) = (0.65, 0.30, 0.05)

L : (pi0, pi1, pi2) = (0.8, 0.18, 0.02)

For all of the configurations, table 3 shows minimum costs and the state in which these costs are obtained. The state shows the allocation of the available and borrowed books in the system. The numbers for the states in table 3 correspond to the following states:

State 1 : (At, Bt) = (0 0 0; 2 2 2)

State 2 : (At, Bt) = (2 2 2; 0 0 0)

State 3 : (At, Bt) = (2 2 1; 1 0 0)

State 4 : (At, Bt) = (2 1 2; 1 0 0)

(23)

Table 3: Configurations for the experiment and the best states of the system

Experiment Costs Demand Results

cR cE cU p1 p2 p3 Best state Costs No rebalancing

(24)

good state from a cost savings perspective. The only exception is the case where there is one library with high demand, and two libraries with low demand. The high demand library is better off with a large starting stock (State 3 and 4).

When the penalty cost is higher we see more intuitive answers. In the situation where there is only low demand (LLL) or one medium and two low (MLL), State 2 is the cost-minimizing starting state. Because the demands are almost the same for each library, it makes sense to distribute the books equally to the libraries. When there is one library with high demand, one with medium and one with low demand (HML), State 3 is best. The high and medium demand library both get two books, while the low demand library gets only 1. We see that it is best for the high demand library to have one book borrowed to a customer. The reason is that the high library certainly has one book available in the next period. This could save us possible transshipment and rebalancing costs in future periods. When there is one high demand library and two low demand libraries (HLL), there are two best starting states (State 3 and 4). State 3 and 4 are symmetric, and hence the costs are the same.

The minimum costs are increasing in the unit transshipment cost, unit penalty cost and in the average demand, which should not be surprising. When the average demand is higher, the libraries have to transship more often and thus higher costs are faced. The final column shows the expected costs in the cost-minimizing state when there is no rebalancing. Naturally, there are cost savings when we allow for rebalancing. Not rebalancing is an option in the rebalance policy. If we choose to rebalance, we should be at least as good off as when not rebalancing. When costs of transshipping are higher and when the average demand is higher, rebalancing leads to greater savings. In experiment 31 the difference in cost between rebalancing and no rebalancing is as high as 16.2%. In all experiments, the costs for no rebalancing are determined assuming an optimal emergency transshipment policy. When we also use a suboptimal transshipment policy (as often happens in practice), the cost savings are even larger.

5.2.3 Rebalancing policy

For each possible starting state, the rebalancing decision that minimizes future costs can be calculated. Before these decisions are discussed, we would like to see in how many states rebalancing actually happens, and how the rebalancing costs influence this decision. Experi-ment 2 from table 3 is the setup: the case with three ‘low demand’ libraries, with rebalance costs and penalty costs of 1. The transshipment costs are varied between 1 and 5. In figure 5, the number of states in which rebalancing takes place is shown as a function of the costs for transshipping. When the cost for transshipping, cE, equals 1.03, it is already feasible to

do rebalancing in 68 of the 297 states. As the costs for transshipping grow higher, there are more and more states in which we rebalance.

The case with three symmetric low demand libraries is further investigated now, with cE = 2. When the transshipment costs are 2, there are 174 (of the 297) states in which rebalancing takes place. The states with rebalancing have the following characteristics:

1. Any state in which a rebalancing movement takes place has an empty inventory at one or two locations.

(25)

Figure 5: Number of the 297 states in which we rebalance as a function of the transshipment costs 1 2 3 4 5 0 50 100 150 200 Transshipment cost

Amount of states with rebalancing

Total rebalancing movements for varying costs

However, these are not necessary conditions for rebalancing to take place. There is also dependence on the outstanding returns. When a library has plenty outstanding returns, often it is not fruitful to rebalance when the library is out of books. An example of a state in which there is no rebalancing is: S = (1 0 3; 0 2 0). In the ‘similar’ state ¯S = (1 0 3; 1 1 0) rebalancing does take place. In state S, the second library has 2 books returning the next period. Therefore, we are willing to take the risk of having a stockout at the second library, because we know we have enough stock in the period after. Moreover, there is a serious chance that when we do rebalance, we end up with 3 books in the second library in the next period. Then we might end up having to send it to another location, which is costly. In the state ¯S this is not the case and hence we rebalance and end up in state (1 1 2; 1 1 0).

The rebalancing movements in the symmetric low demand case usually consist of sending one unit from the library with the highest stock level to the library that is out of inventory. In some of the more ‘extreme’ allocations in the system, such as S = (6 0 0; 0 0 0), books are sent to all locations that are out of stock. We end up in S = (4 1 1; 0 0 0) after rebalancing. In most cases, a more equal distribution of stock is strived for.

(26)

policy will be different. Therefore, the rebalancing policy in experiment 8 from table 3 is further examined, where the three libraries each have a different demand distribution. Again the transshipment costs are cE = 2. In the asymmetric demand case, there are 190 states in which rebalancing is preferable to not rebalancing. Due to the high probabilities of having a demand, sometimes books are shipped to the high demand library even when there still is stock available. Particularly when the low demand library has high stock levels, a rebalance movement takes place. There is only one state in which no rebalancing takes place when the low demand library has more than 2 books: S = (1 0 3; 0 2 0). The costs of rebalancing do not outweigh the future expected costs. When the costs of emergency transshipment become higher, it is probably better to transship here.

5.2.4 Transshipment policy

For the transshipment policy there is different choice for each state and demand. There are 297 · 33 = 8019 decisions each period. In the N = 3, K = 6 case there is often only one choice for the transshipment policy, because there is either no stockout, or the demanded book can be transshipped from only one library. From an algorithmic point of view, these cases are not interesting because there is no optimization involved. Therefore, we give three examples in which there are multiple possible transshipments and see what the optimal choice is. Case 1: The setting is the same as in experiment 2 from table 3. The state is S = (3 0 2; 0 1 0) and demand is D = (0 2 0). There are three transshipment choices: xE = (−2 2 0) or (−1 2 −1) and (0 2 −2). The algorithm is indifferent between select-ing xE = (−1 2 −1) and xE = (−2 2 0). After the transshipment and returns we end up in the state S = (2 1 1; 0 2 0) or S = (1 1 2; 0 2 0). Since the demands distributions are equal, the states are symmetric and hence the future costs will be the same. The transshipment choice leads to a state with the least expected future cost.

Case 2: Again the setting is experiment 2 from table 3. The state is given by S = (0 3 0; 2 0 1) and the demand by D = (2 1 2). The transshipment possibilities are xE = (2 −2 0), (1 −2 1) and (0 −2 2). Here, the demand exceeds the total available stock. The libraries have to decide which demands to fulfill and which not. The algorithm picks xE = (1 −2 1) and the state after returns is S = (2 0 1; 1 1 1). This state is the most balanced one for the future.

Case 3: Now consider case 1 in the setting of experiment 8 from table 3. The optimal choice is now unique and given by xE = (−1 2 −1). Because there is a high demand library, it is important that it has a higher stock level after transshipment.

The examples should provide enough insight in the transshipment policy and the dependence on the demand distributions.

5.3 Comparison of running times for larger models

(27)

are determined. This step only needs to be done once. If there is no preparation step, the transitions have to be determined on the fly in the execution step, and these transitions are the same each period. The execution step would then take approximately the number of periods times the preparation time. In the initialization step the transshipment costs for the states and demands are assigned, and the rebalance decision for the final period is taken. In the execution step the algorithm calculates the costs and optimal decisions for the T = 20 periods.

Table 4: Comparison of running times in several cases N K States Preparation Initialization Execution Total

time in sec. time in sec. time in sec.

3 6 297 4.8 0.2 1.8 6.8

4 7 2160 110 4.3 29.2 143.5

4 8 3483 198 7 48.6 253.6

5 8 14850 4585 86.7 594.2 5265.9

5 9 25785 11942 148.9 977.1 13068

In table 4 there is a clear increase in running times of the algorithm as the state space and number of libraries grow. The running time of the execution step is still acceptable for N = 5, but the running time of the preparation step grows extremely fast. Moreover, the transition matrix becomes huge quickly. For the transitions in the emergency transshipment phase in the N = 5, K = 9 case, we need to store 25785 · 35 = 6.265.755 vectors with possible states after transshipment. A heuristic solution is required to solve the problem for a higher number of libraries.

5.4 Independent clustering

In independent clustering there are no transshipments and rebalancing movements between states, so that the optimal algorithm can be run for each cluster independently. For the N = 4 and K = 8 case for few variations in cost and demand distributions the differences are compared. The running time for each of the two independent clusters (of size 2) is 0.5 seconds (including preparation). Larger clusters will take the same time as in table 4. The percentage in table 5 denotes the average difference in costs over all states for the independent cluster method compared to optimal algorithm. We have that N1 = 2 and N2 = 2, and that

both clusters contain 4 books each. The demand distributions in cluster 1 are p1 and p2

and in cluster 2 p3 and p4. We observe that the independent solution leads to lower costs

(28)

Table 5: Comparison of costs for the independent cluster and optimal algorithm cR cE cU p1 p2 p3 p4 Cost increase (%) 1 3 0 L L L L -6.5 1 3 1 L L L L -4.1 1 3 3 L L L L 0.7 1 3 1 M L H L -4.8 1 3 1 H L H L -8.6 1 3 3 H L H L 1.7 1 3 1 H H L L 10.7 1 3 1 H H H H -21.5

5.5 Dependent cluster method

First the cost and time effectiveness of the dependent cluster method are compared with the optimal N = 4 and N = 5 case. For N = 4, there are two clusters that are both of size two. When N = 5 again we have two clusters, of size 3 and size 2. The running times for preparing the transition matrices, the transshipment policy and the possibilities for rebalancing are listed in table 6, as well as the time that is required to initialize the final state costs and the time the algorithm takes to calculate the optimal rebalancing decisions. The running times in table 6 are still quite large, albeit less in total than for the optimal algorithm. As before, the time spent on preparing before running the algorithm is huge. Moreover, the time to determine cluster solutions is still increasing fast in the number of books, due to the larger state spaces for the clusters. The preparation time for determining rebalancing possibilities is the same as for the optimal case since we consider the complete rebalancing policy here.

Table 6: Running times in seconds for the dependent cluster method

N K Cluster Preparing Preparing Initial- Algorithm Total Original solutions transshipments rebalancing ization

4 7 31.4 7.5 11.1 4.4 1.2 55.6 143.5

4 8 47.7 20.1 22.6 7 2.1 99.5 253.6

5 8 474 586.6 964.1 90.9 12.8 2128.4 5265.9

5 9 976 2416.4 3195.2 148.9 22.1 6758.6 13068

For all symmetric libraries with low demand, cE = 3 and cU = 1, the average increase in costs for the dependent cluster method compared to the optimal method is given in table 7. The average is taken over all states. For the case with low demand libraries, the costs of the transshipment policy generated from the cluster solutions is on average located within 3.5% from the optimal solution.

Table 7: Comparison of dependent cluster and optimal costs N K % from optimal

4 7 3.2

4 8 1.8

5 8 3.4

(29)

For N = 4 and K = 8 further cost comparisons of the method have been made. In table 8 the costs (in the cost-minimizing state) of the dependent cluster method have been compared with the optimal case for varying demand distributions. In cluster 1 the demand distributions are p1

and p2, and in cluster 2 p3 and p4. When all libraries have equal demand, the costs in the best

state are at most 3% higher. This is fairly decent, considering that we enforced transshipment to be done within clusters first before transshipping from the other cluster. When the cost structure is such that transshipping within a cluster is cheaper than transshipping between clusters, the difference with the optimal solution will be smaller. From a practical point of view this is realistic, since within cluster stock movements can be handled manually because locations are located in the same region. Transshipments between clusters are often handled by mail due to the larger distance.

Table 8: Cost comparison for dependent cluster and optimal case with N = 4 and K = 8 cR cE cU p1 p2 p3 p4 costs optimal % difference

1 3 1 L L L L 2.056 2.016 2.0 1 3 1 M M M M 8.565 8.321 2.9 1 3 1 H H H H 22.703 22.172 2.4 1 3 1 H H L L 9.130 8.347 9.4 1 3 1 H L H L 8.714 8.347 4.4 1 3 1 H M M L 8.828 8.254 6.9

Table 8 also gives insight in how libraries should be allocated to clusters. When the two high demand libraries are in the same cluster, the solution is 9.4% worse than optimal. When high demand libraries are grouped with low demand clusters, the difference is only 4.4%. These two observations provide some evidence that it is good to group libraries with varying demand distributions together.

5.5.1 Sampling in the dependent cluster method

Whenever some parameters in the model are changed, we need to recalculate the within-cluster solutions, as well as the transshipment policy corresponding to this solution again from scratch. This is extremely costly, and therefore a method with sampling is proposed. When we restrict ourselves to a sample of n realizations from the demand distribution, the time to determine the transshipment and rebalancing policy reduces quickly. For the N = 5 and K = 8 case, the running times of the algorithm with a sample of n = 10 and without sampling are compared with each other in table 9.

Table 9: Running time comparison for dependent cluster with and without sampling

Step No sampling (sec.) Sampling (sec.)

Transshipment policy 964.1 40.2

Initialization 90.9 5.1

Algorithm 12.8 8.9

Total 1067.8 54.2

(30)

choose in our sample? In a simulation experiment, random samples without replacement are taken from the demand distribution. The libraries have symmetric low demand, and costs cE = 3, cR = 1 and cU = 1. As a start, a sample size of n = 10 is taken. The costs of the resulting rebalancing policy are compared with the costs in the optimal case. We keep track of the average cost increase compared to the optimal policy. For 250 random samples the experiment is repeated. Summarizing statistics of the experiment can be found in table 10.

Table 10: Difference in percentage when sampling Statistic % from optimal

No sampling 3.4

Mean 12.2

Minimum 4.6

Maximum 46.8

There are 17 of the 250 samples that are less than 5% from the optimal solution. The best solution we found was located 4.6% from optimal. The samples that did well were characterized by the fact that no low probability realizations were sampled. That leads us to the following decision rule for selecting a sample:

Sample selection method: The sample should contain the n realizations with the highest probability. When there are multiple realization tied for n-th highest probability, add all the realizations with that probability to the sample. The probabilities of the sampled elements are scaled to add up to 1.

For the case with 5 symmetric libraries, there are various realizations that tie for the 10th place. In total we end up with 16 realizations in the sample. The corresponding costs are 3.6% higher than the optimal solution. This makes the solution only 0.2% worse than the solution without a sample. Sampling has led to a great increase in speed, and only a slight performance loss.

The decision rule has been evaluated for an N = 5, K = 8 case where the demand is not distributed the same for each library. The demands in cluster 1 have the high, medium and low distribution from section 5.2.2. The demands in cluster 2 are high and low. Figure 6 shows the average difference with the optimal solution for various (small) sample sizes. The line in the graph denotes the costs when the complete distribution is used. Any sample size below 7 gives solutions that lead to over 20% higher costs than optimal. The solution improves for a sample size higher than 7, and at 17 realizations the solution is at 4.2% from optimal. This is very close to the full distribution solution, which was 4.0% from optimal. The 4.0% level can be seen as a lower bound for the average quality of a sample. In fact, it can even occur that we find a sample that gives a better solution than the average lower bound. Basing a decision on less information can sometimes lead to simpler rebalancing policies that work (slightly) better.

(31)

Figure 6: Solution quality for the N = 5, K = 8 case with asymmetric libraries and varying sample size 2 3 4 5 6 7 8 9 11 13 15 17 19 Sample size % from optimal 0 5 10 15 20 25 30

Solution with full distribution

Influence of sample size on the quality of the solution

6

Conclusion

In this article a novel problem for library control was presented and solved by means of stochastic dynamic programming. In contrast with previous library literature, we considered active rebalancing of books. Optimal rebalancing and emergency transshipment policies are derived in the model, that yield great information for practice. The main message of the model is that libraries can achieve lower costs at the same service level by coordinating transshipments cooperatively. By addressing emergency transshipments correctly and by actively rebalancing books in the system, costs can be reduced. We also introduced an interesting clustering heuristic, that models the situation in practice very closely and that is easier to solve than the optimal algorithm. The policy for emergency transshipments that we found in the clustering heuristic is not much worse than optimal. The policy will most likely perform even better when the costs for within-cluster transshipments are low and the costs for transshipping between clusters are high. The clustering method also provides a good benchmark for testing the effectiveness of simple heuristic decision rules.

(32)

the size of the state space. Secondly, it would be a great improvement if a variation of the dependent cluster method can be found that is independent of the number of books, but where there is still interaction between clusters. This variation would make determining policies completely polynomial in the number of libraries. Finally, the effectiveness of the method should be evaluated in a simulation experiment with actual book renting data.

References

Adelman, D. 2007,“Price-directed control of a closed logistics queueing network”, Operations research, vol. 55, no. 6, pp. 1022-1038.

Agrawal, V., Chao, X. & Seshadri, S. 2004, “Dynamic balancing of inventory in supply chain”, European Journal of Operational Research, vol. 159, no. 2 SPEC. ISS., pp. 296-317.

Allen, M., Ward, S.M., Wray, T. & Debus-L´opez, K.E. 2003, “Patron-focused services in three US libraries: Collaborative interlibrary loan, collection development and acquisitions”, Interlending and Document Supply, vol. 31, no. 2, pp. 138-141.

Bellman, R.E. 1957, Dynamic Programming. Princeton University Press.

Boter, J. & Wedel, M. 2005, “User categorization of public library collection”, Library and Information Science Research, vol. 27, no. 2, pp. 190-202.

Bijvank, M. 2009, Service inventory management: Solution techniques to inventory systems without backorders, Master Thesis, VU University Amsterdam.

Bijvank, M. & Vis, I.F.A. 2011,“Lost-sales inventory theory: A review”, European Journal of Operational Research, vol. 215, no. 1, pp. 1-13.

Chan, G.R.Y.C. 2008, “Aligning collections budget with program priorities: A modified zero-based approach”, Library Collections, Acquisition and Technical Services, vol. 32, no. 1, pp. 46-52.

Corthouts, J., van Borm, J. & van den Eynde, M. 2011, “Impala 1991-2011: 20 years of ILL in Belgium”, Interlending and Document Supply, vol. 39, no. 2, pp. 101-110.

Fleischmann, M., Bloemhof-Ruwaard, J.M., Dekker, R., Van Der Laan, E., Van Nunen, J.A.E.E. & Van Wassenhove, L.N. 1997, “Quantitative models for reverse logistics: A review”, European Journal of Operational Research, vol. 103, no. 1, pp. 1-17.

George, D.K. & Xia, C.H. 2011,“Fleet-sizing and service availability for a vehicle rental system via closed queueing network”, European Journal of Operational Research, vol. 211, no. 1, pp. 198-207.

Herer, Y.T., Tzur, M. & Ycesan, E. 2006, “The multilocation transshipment problem”, IIE Transactions (Institute of Industrial Engineers), vol. 38, no. 3, pp. 185-200.

Referenties

GERELATEERDE DOCUMENTEN

This table compares the performance for 10 momentum strategies with NYSE/AMEX listed stocks. J represents the horizon of ranking period, where the past performance is measured. Based

privacy!seal,!the!way!of!informing!the!customers!about!the!privacy!policy!and!the!type!of!privacy!seal!(e.g.! institutional,! security! provider! seal,! privacy! and! data!

Publisher’s PDF, also known as Version of Record (includes final page, issue and volume numbers) Please check the document version of this publication:.. • A submitted manuscript is

Process for preparing polyolefin gel articles as well as for preparing herefrom articles having a high tensile strength and modulus.. Document status and date:

Process for preparing polyolefin gel articles as well as for preparing herefrom articles having a high tensile strength and modulus.. Document status and date: Published:

Process for preparing polyolefin gel articles as well as for preparing herefrom articles having a high tensile strength and modulus.. Document status and date:

Process for preparing polyolefin gel articles as well as for preparing herefrom articles having a high tensile strength and modulus.. Document status and date: Published:

That is, we determine the optimal decision on how to fulfill a demand, in order to minimize the long-run average running costs of the system: (i) directly from own stock, (ii) via